SPIGOT-5237: Horses, pigs do not drop their inventory

This commit is contained in:
md_5 2019-08-02 19:13:16 +10:00
parent 06efc9ec1f
commit 7881d2ae15

View File

@ -504,7 +504,11 @@
}
}
@@ -1115,6 +1351,12 @@
@@ -1112,12 +1348,19 @@
boolean flag = this.lastDamageByPlayerTime > 0;
+ this.cF(); // CraftBukkit - from below // PAIL
if (this.isDropExperience() && this.world.getGameRules().getBoolean(GameRules.DO_MOB_LOOT)) {
this.a(damagesource, flag);
this.dropDeathLoot(damagesource, i, flag);
@ -516,8 +520,12 @@
+ // CraftBukkit end
}
this.cF();
@@ -1218,8 +1460,13 @@
- this.cF();
+ // this.cF();// CraftBukkit - moved up
}
protected void cF() {}
@@ -1218,8 +1461,13 @@
int i = MathHelper.f((f - 3.0F - f2) * f1);
if (i > 0) {
@ -532,7 +540,7 @@
int j = MathHelper.floor(this.locX);
int k = MathHelper.floor(this.locY - 0.20000000298023224D);
int l = MathHelper.floor(this.locZ);
@@ -1246,7 +1493,7 @@
@@ -1246,7 +1494,7 @@
protected float applyArmorModifier(DamageSource damagesource, float f) {
if (!damagesource.ignoresArmor()) {
@ -541,7 +549,7 @@
f = CombatMath.a(f, (float) this.getArmorStrength(), (float) this.getAttributeInstance(GenericAttributes.ARMOR_TOUGHNESS).getValue());
}
@@ -1259,7 +1506,8 @@
@@ -1259,7 +1507,8 @@
} else {
int i;
@ -551,7 +559,7 @@
i = (this.getEffect(MobEffects.RESISTANCE).getAmplifier() + 1) * 5;
int j = 25 - i;
float f1 = f * (float) j;
@@ -1290,28 +1538,170 @@
@@ -1290,28 +1539,170 @@
}
}
@ -732,7 +740,7 @@
}
public CombatTracker getCombatTracker() {
@@ -1379,6 +1769,7 @@
@@ -1379,6 +1770,7 @@
public AttributeMapBase getAttributeMap() {
if (this.attributeMap == null) {
this.attributeMap = new AttributeMapServer();
@ -740,7 +748,7 @@
}
return this.attributeMap;
@@ -1725,6 +2116,7 @@
@@ -1725,6 +2117,7 @@
}
if (this.onGround && !this.world.isClientSide) {
@ -748,7 +756,7 @@
this.setFlag(7, false);
}
} else {
@@ -2106,6 +2498,7 @@
@@ -2106,6 +2499,7 @@
}
if (!this.world.isClientSide) {
@ -756,7 +764,7 @@
this.setFlag(7, flag);
}
@@ -2234,12 +2627,12 @@
@@ -2234,12 +2628,12 @@
@Override
public boolean isInteractable() {
@ -771,7 +779,7 @@
}
@Override
@@ -2410,7 +2803,27 @@
@@ -2410,7 +2804,27 @@
protected void q() {
if (!this.activeItem.isEmpty() && this.isHandRaised()) {
this.b(this.activeItem, 16);
@ -800,7 +808,7 @@
this.dp();
}
@@ -2495,10 +2908,18 @@
@@ -2495,10 +2909,18 @@
}
if (flag2) {
@ -822,7 +830,7 @@
}
}
@@ -2585,7 +3006,7 @@
@@ -2585,7 +3007,7 @@
}
public void dy() {
@ -831,7 +839,7 @@
World world = this.world;
this.world.getClass();
@@ -2647,7 +3068,7 @@
@@ -2647,7 +3069,7 @@
Pair<MobEffect, Float> pair = (Pair) iterator.next();
if (!world.isClientSide && pair.getLeft() != null && world.random.nextFloat() < (Float) pair.getRight()) {