mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-01 12:41:50 +01:00
a981965852
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: b302317a SPIGOT-5877: Add scaffolding for custom dimensions and biomes ccccb625 SPIGOT-6417: Add Creeper fuse ticks API CraftBukkit Changes: 0e26ddb6 SPIGOT-5877: Add scaffolding for custom dimensions and biomes 170d6feb SPIGOT-6417: Add Creeper fuse ticks API
32 lines
1.8 KiB
Diff
32 lines
1.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
Date: Thu, 2 Jan 2020 12:25:07 -0600
|
|
Subject: [PATCH] Add effect to block break naturally
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
index aab855c64507e4a695c1be8693522b91b24b9cdd..650b80b6e38dffa6b6b211cf4ea1125105748935 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
@@ -633,6 +633,13 @@ public class CraftBlock implements Block {
|
|
|
|
@Override
|
|
public boolean breakNaturally(ItemStack item) {
|
|
+ // Paper start
|
|
+ return breakNaturally(item, false);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public boolean breakNaturally(ItemStack item, boolean triggerEffect) {
|
|
+ // Paper end
|
|
// Order matters here, need to drop before setting to air so skulls can get their data
|
|
net.minecraft.world.level.block.state.IBlockData iblockdata = this.getNMS();
|
|
net.minecraft.world.level.block.Block block = iblockdata.getBlock();
|
|
@@ -642,6 +649,7 @@ public class CraftBlock implements Block {
|
|
// Modelled off EntityHuman#hasBlock
|
|
if (block != Blocks.AIR && (item == null || !iblockdata.isRequiresSpecialTool() || nmsItem.canDestroySpecialBlock(iblockdata))) {
|
|
net.minecraft.world.level.block.Block.dropItems(iblockdata, world.getMinecraftWorld(), position, world.getTileEntity(position), null, nmsItem);
|
|
+ if (triggerEffect) world.triggerEffect(org.bukkit.Effect.STEP_SOUND.getId(), position, net.minecraft.world.level.block.Block.getCombinedId(block.getBlockData())); // Paper
|
|
result = true;
|
|
}
|
|
|