Files
CatServer/patches/net/minecraft/entity/monster/EntityEnderman.java.patch

30 lines
1.6 KiB
Diff

--- ../src-base/minecraft/net/minecraft/entity/monster/EntityEnderman.java
+++ ../src-work/minecraft/net/minecraft/entity/monster/EntityEnderman.java
@@ -517,8 +517,13 @@
if (iblockstate2 != null && this.canPlaceBlock(world, blockpos, iblockstate2.getBlock(), iblockstate, iblockstate1))
{
+
+ // CraftBukkit start - Place event
+ if (!org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(this.enderman, blockpos, this.enderman.getHeldBlockState().getBlock(), this.enderman.getHeldBlockState().getBlock().getMetaFromState(this.enderman.getHeldBlockState())).isCancelled()) {
world.setBlockState(blockpos, iblockstate2, 3);
this.enderman.setHeldBlockState((IBlockState)null);
+ }
+ // CraftBukkit end
}
}
@@ -557,8 +562,12 @@
if (EntityEnderman.CARRIABLE_BLOCKS.contains(block) && flag)
{
+ // CraftBukkit start - Pickup event
+ if (!org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(this.enderman, this.enderman.worldObj.getWorld().getBlockAt(blockpos.getX(), blockpos.getY(), blockpos.getZ()), org.bukkit.Material.AIR).isCancelled()) {
this.enderman.setHeldBlockState(iblockstate);
world.setBlockToAir(blockpos);
+ }
+ // CraftBukkit end
}
}
}