[Bleeding] Made Iron Golems and Ocelots throw EntityDeathEvent. This fixes BUKKIT-1010.

This commit is contained in:
aPunch 2012-03-05 16:32:09 -06:00 committed by EvilSeph
parent 1c641ed982
commit 0ba2d285f0
2 changed files with 12 additions and 3 deletions

View file

@ -1,5 +1,7 @@
package net.minecraft.server;
import org.bukkit.craftbukkit.inventory.CraftItemStack; // CraftBukkit
public class EntityIronGolem extends EntityGolem {
private int b = 0;
@ -133,19 +135,24 @@ public class EntityIronGolem extends EntityGolem {
}
protected void dropDeathLoot(boolean flag, int i) {
// CraftBukkit start
java.util.List<org.bukkit.inventory.ItemStack> loot = new java.util.ArrayList<org.bukkit.inventory.ItemStack>();
int j = this.random.nextInt(3);
int k;
for (k = 0; k < j; ++k) {
this.b(Block.RED_ROSE.id, 1);
loot.add(new CraftItemStack(Block.RED_ROSE.id, 1));
}
k = 3 + this.random.nextInt(3);
for (int l = 0; l < k; ++l) {
this.b(Item.IRON_INGOT.id, 1);
loot.add(new CraftItemStack(Item.IRON_INGOT.id, 1));
}
org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(this, loot);
// CraftBukkit end
}
public int m_() {

View file

@ -100,7 +100,9 @@ public class EntityOcelot extends EntityTameableAnimal {
return super.damageEntity(damagesource, i);
}
protected void dropDeathLoot(boolean flag, int i) {}
protected void dropDeathLoot(boolean flag, int i) {
super.dropDeathLoot(flag, i); // CraftBukkit - Calls EntityDeathEvent
}
public boolean b(EntityHuman entityhuman) {
ItemStack itemstack = entityhuman.inventory.getItemInHand();