summaryrefslogtreecommitdiffstats
path: root/nms-patches/BlockCactus.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches/BlockCactus.patch')
-rw-r--r--nms-patches/BlockCactus.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/nms-patches/BlockCactus.patch b/nms-patches/BlockCactus.patch
new file mode 100644
index 00000000..7159a89e
--- /dev/null
+++ b/nms-patches/BlockCactus.patch
@@ -0,0 +1,31 @@
+--- ../work/decompile-bb26c12b/net/minecraft/server/BlockCactus.java 2014-11-27 08:59:46.509422692 +1100
++++ src/main/java/net/minecraft/server/BlockCactus.java 2014-11-27 08:42:10.152850911 +1100
+@@ -3,6 +3,8 @@
+ import java.util.Iterator;
+ import java.util.Random;
+
++import org.bukkit.craftbukkit.event.CraftEventFactory; // CraftBukkit
++
+ public class BlockCactus extends Block {
+
+ public static final BlockStateInteger AGE = BlockStateInteger.of("age", 0, 15);
+@@ -31,7 +33,8 @@
+ world.setTypeUpdate(blockposition1, this.getBlockData());
+ IBlockData iblockdata1 = iblockdata.set(BlockCactus.AGE, Integer.valueOf(0));
+
+- world.setTypeAndData(blockposition, iblockdata1, 4);
++ CraftEventFactory.handleBlockGrowEvent(world, blockposition1.getX(), blockposition1.getY(), blockposition1.getZ(), this, 0); // CraftBukkit
++ // world.setTypeAndData(blockposition, iblockdata1, 4); // CraftBukkit
+ this.doPhysics(world, blockposition1, iblockdata1, this);
+ } else {
+ world.setTypeAndData(blockposition, iblockdata.set(BlockCactus.AGE, Integer.valueOf(j + 1)), 4);
+@@ -83,7 +86,9 @@
+ }
+
+ public void a(World world, BlockPosition blockposition, IBlockData iblockdata, Entity entity) {
++ CraftEventFactory.blockDamage = world.getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ()); // CraftBukkit
+ entity.damageEntity(DamageSource.CACTUS, 1.0F);
++ CraftEventFactory.blockDamage = null; // CraftBukkit
+ }
+
+ public IBlockData fromLegacyData(int i) {