SPIGOT-1816: Rework drop capture.

By: md_5 <git@md-5.net>
This commit is contained in:
CraftBukkit/Spigot
2016-03-07 19:51:42 +11:00
parent 406b2d6204
commit ced78d5d27
6 changed files with 30 additions and 113 deletions

View File

@@ -104,7 +104,7 @@
entityvillager.addEffect(new MobEffect(MobEffects.CONFUSION, 200, 0));
this.world.a((EntityHuman) null, 1027, new BlockPosition((int) this.locX, (int) this.locY, (int) this.locZ), 0);
}
@@ -514,12 +541,16 @@
@@ -514,11 +541,12 @@
}
public void die(DamageSource damagesource) {
@@ -112,14 +112,9 @@
+ // super.die(damagesource); // CraftBukkit
if (damagesource.getEntity() instanceof EntityCreeper && !(this instanceof EntityPigZombie) && ((EntityCreeper) damagesource.getEntity()).isPowered() && ((EntityCreeper) damagesource.getEntity()).canCauseHeadDrop()) {
((EntityCreeper) damagesource.getEntity()).setCausedHeadDrop();
- this.a(new ItemStack(Items.SKULL, 1, 2), 0.0F);
+ // CraftBukkit start
+ // this.a(new ItemStack(Items.SKULL, 1, 2), 0.0F);
+ headDrop = new ItemStack(Items.SKULL, 1, 2);
+ // CraftBukkit end
this.a(new ItemStack(Items.SKULL, 1, 2), 0.0F);
}
+ super.die(damagesource); // CraftBukkit - moved from above
}
static class SyntheticClass_1 { }