summaryrefslogtreecommitdiffstats
path: root/src/main/java/net
diff options
context:
space:
mode:
authoraPunch <alexpuncochar@yahoo.com>2012-03-05 16:32:09 -0600
committerEvilSeph <evilseph@gmail.com>2012-03-08 02:17:46 -0500
commit0ba2d285f04238572f51dee3fd33dc6d08b7f8f0 (patch)
tree5eaeeed1a7952754211aa8bb37d5b147bbbd2525 /src/main/java/net
parent1c641ed98247f998e90e403cf951984860043430 (diff)
downloadcraftbukkit-0ba2d285f04238572f51dee3fd33dc6d08b7f8f0.tar
craftbukkit-0ba2d285f04238572f51dee3fd33dc6d08b7f8f0.tar.gz
craftbukkit-0ba2d285f04238572f51dee3fd33dc6d08b7f8f0.tar.lz
craftbukkit-0ba2d285f04238572f51dee3fd33dc6d08b7f8f0.tar.xz
craftbukkit-0ba2d285f04238572f51dee3fd33dc6d08b7f8f0.zip
[Bleeding] Made Iron Golems and Ocelots throw EntityDeathEvent. This fixes BUKKIT-1010.
Diffstat (limited to 'src/main/java/net')
-rw-r--r--src/main/java/net/minecraft/server/EntityIronGolem.java11
-rw-r--r--src/main/java/net/minecraft/server/EntityOcelot.java4
2 files changed, 12 insertions, 3 deletions
diff --git a/src/main/java/net/minecraft/server/EntityIronGolem.java b/src/main/java/net/minecraft/server/EntityIronGolem.java
index bd1bb2ab..e7da57c6 100644
--- a/src/main/java/net/minecraft/server/EntityIronGolem.java
+++ b/src/main/java/net/minecraft/server/EntityIronGolem.java
@@ -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_() {
diff --git a/src/main/java/net/minecraft/server/EntityOcelot.java b/src/main/java/net/minecraft/server/EntityOcelot.java
index cb71cfcb..0dce6fa0 100644
--- a/src/main/java/net/minecraft/server/EntityOcelot.java
+++ b/src/main/java/net/minecraft/server/EntityOcelot.java
@@ -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();