From 568fae2e863a41f168f10c77090d16fe67e293bb Mon Sep 17 00:00:00 2001 From: feildmaster Date: Sat, 28 Apr 2012 12:26:07 -0500 Subject: Trigger EntityBlockChangeEvent for Silverfish. Adds BUKKIT-1560 and BUKKIT-1593 --- src/main/java/net/minecraft/server/EntitySilverfish.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/main/java/net/minecraft') diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java index d41b68df..88a80d73 100644 --- a/src/main/java/net/minecraft/server/EntitySilverfish.java +++ b/src/main/java/net/minecraft/server/EntitySilverfish.java @@ -1,5 +1,7 @@ package net.minecraft.server; +import org.bukkit.craftbukkit.event.CraftEventFactory; // CraftBukkit + public class EntitySilverfish extends EntityMonster { private int a; @@ -96,6 +98,11 @@ public class EntitySilverfish extends EntityMonster { int k1 = this.world.getTypeId(i + i1, j + l, k + j1); if (k1 == Block.MONSTER_EGGS.id) { + // CraftBukkit start + if (CraftEventFactory.callEntityChangeBlockEvent(this, i + i1, j + l, k + j1, 0).isCancelled()) { + continue; + } + // CraftBukkit end this.world.triggerEffect(2001, i + i1, j + l, k + j1, Block.MONSTER_EGGS.id + (this.world.getData(i + i1, j + l, k + j1) << 12)); this.world.setTypeId(i + i1, j + l, k + j1, 0); Block.MONSTER_EGGS.postBreak(this.world, i + i1, j + l, k + j1, 0); @@ -118,6 +125,11 @@ public class EntitySilverfish extends EntityMonster { l = this.world.getTypeId(i + Facing.b[l1], j + Facing.c[l1], k + Facing.d[l1]); if (BlockMonsterEggs.d(l)) { + // CraftBukkit start + if (CraftEventFactory.callEntityChangeBlockEvent(this, i + Facing.b[l1], j + Facing.c[l1], k + Facing.d[l1], Block.MONSTER_EGGS.id).isCancelled()) { + return; + } + // CraftBukkit end this.world.setTypeIdAndData(i + Facing.b[l1], j + Facing.c[l1], k + Facing.d[l1], Block.MONSTER_EGGS.id, BlockMonsterEggs.e(l)); this.aC(); this.die(); -- cgit v1.2.3