geforkt von Mirrors/Paper
27 Zeilen
1.3 KiB
Diff
27 Zeilen
1.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sun, 31 Oct 2021 14:49:43 -0700
|
|
Subject: [PATCH] Call onRemove logic for breakNaturally
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
index fcf2e5b0b07d2884b678b9c39b72cc7dc5518163..ca320ef8a28fe15b32197669419981c4c2fcafd9 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
|
|
@@ -516,8 +516,14 @@ public class CraftBlock implements Block {
|
|
if (triggerEffect) world.levelEvent(org.bukkit.Effect.STEP_SOUND.getId(), position, net.minecraft.world.level.block.Block.getId(block.defaultBlockState())); // Paper
|
|
result = true;
|
|
}
|
|
+ // Paper start
|
|
+ net.minecraft.world.level.block.state.BlockState newBlockState = Blocks.AIR.defaultBlockState();
|
|
+ if (this.world instanceof net.minecraft.world.level.Level level) {
|
|
+ iblockdata.onRemove(level, position, newBlockState, false);
|
|
+ }
|
|
+ // Paper end
|
|
|
|
- return this.setTypeAndData(Blocks.AIR.defaultBlockState(), true) && result;
|
|
+ return this.setTypeAndData(newBlockState, true) && result; // Paper
|
|
}
|
|
|
|
@Override
|