Commits
Parker Hawke authored and md_5 committed 226db0eae7b
1 1 | --- a/net/minecraft/server/ItemArmor.java |
2 2 | +++ b/net/minecraft/server/ItemArmor.java |
3 3 | |
4 4 | import java.util.List; |
5 5 | import java.util.UUID; |
6 6 | |
7 7 | +// CraftBukkit start |
8 8 | +import org.bukkit.craftbukkit.inventory.CraftItemStack; |
9 - | +import org.bukkit.event.block.BlockDispenseEvent; |
9 + | +import org.bukkit.event.block.BlockDispenseArmorEvent; |
10 10 | +// CraftBukkit end |
11 11 | + |
12 12 | public class ItemArmor extends Item { |
13 13 | |
14 14 | private static final UUID[] k = new UUID[] { UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B"), UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D"), UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E"), UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150")}; |
15 15 | |
16 16 | EntityLiving entityliving = (EntityLiving) list.get(0); |
17 17 | EnumItemSlot enumitemslot = EntityInsentient.e(itemstack); |
18 18 | ItemStack itemstack1 = itemstack.cloneAndSubtract(1); |
19 19 | + // CraftBukkit start |
20 20 | + World world = isourceblock.getWorld(); |
21 21 | + org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockPosition().getX(), isourceblock.getBlockPosition().getY(), isourceblock.getBlockPosition().getZ()); |
22 22 | + CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1); |
23 23 | + |
24 - | + BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(0, 0, 0)); |
24 + | + BlockDispenseArmorEvent event = new BlockDispenseArmorEvent(block, craftItem.clone(), (org.bukkit.craftbukkit.entity.CraftLivingEntity) entityliving.bukkitEntity); |
25 25 | + if (!BlockDispenser.eventFired) { |
26 26 | + world.getServer().getPluginManager().callEvent(event); |
27 27 | + } |
28 28 | + |
29 29 | + if (event.isCancelled()) { |
30 30 | + itemstack.add(1); |
31 31 | + return itemstack; |
32 32 | + } |
33 33 | + |
34 34 | + if (!event.getItem().equals(craftItem)) { |