Update to Minecraft 1.15

By: md_5 <git@md-5.net>
This commit is contained in:
CraftBukkit/Spigot
2019-12-11 09:00:00 +11:00
parent 1400103b2f
commit 0e142c7f03
293 changed files with 2875 additions and 2648 deletions

View File

@@ -21,12 +21,12 @@
private static final DataWatcherObject<Byte> b = DataWatcher.a(EntityInsentient.class, DataWatcherRegistry.a);
@@ -27,7 +39,7 @@
public final float[] dropChanceHand;
private final NonNullList<ItemStack> bB;
private final NonNullList<ItemStack> by;
public final float[] dropChanceArmor;
- private boolean canPickUpLoot;
+ // private boolean canPickUpLoot; // CraftBukkit - moved up to EntityLiving
public boolean persistent;
private final Map<PathType, Float> bE;
private final Map<PathType, Float> bB;
public MinecraftKey lootTableKey;
@@ -63,6 +75,9 @@
this.initPathfinder();
@@ -77,7 +77,7 @@
}
@Override
@@ -346,11 +392,20 @@
@@ -348,11 +394,20 @@
@Override
public void a(NBTTagCompound nbttagcompound) {
super.a(nbttagcompound);
@@ -100,7 +100,7 @@
NBTTagList nbttaglist;
int i;
@@ -404,6 +459,11 @@
@@ -406,6 +461,11 @@
super.a(damagesource, flag);
this.lootTableKey = null;
}
@@ -112,7 +112,7 @@
@Override
protected LootTableInfo.Builder a(boolean flag, DamageSource damagesource) {
@@ -463,11 +523,17 @@
@@ -465,11 +525,17 @@
ItemStack itemstack1 = this.getEquipment(enumitemslot);
boolean flag = this.a(itemstack, itemstack1, enumitemslot);
@@ -124,14 +124,14 @@
+ // CraftBukkit end
double d0 = (double) this.d(enumitemslot);
if (!itemstack1.isEmpty() && (double) (this.random.nextFloat() - 0.1F) < d0) {
if (!itemstack1.isEmpty() && (double) Math.max(this.random.nextFloat() - 0.1F, 0.0F) < d0) {
+ this.forceDrops = true; // CraftBukkit
this.a(itemstack1);
+ this.forceDrops = false; // CraftBukkit
}
this.setSlot(enumitemslot, itemstack);
@@ -545,11 +611,11 @@
@@ -554,11 +620,11 @@
if (entityhuman != null) {
double d0 = entityhuman.h(this);
@@ -145,7 +145,7 @@
this.die();
} else if (d0 < 1024.0D) {
this.ticksFarFromPlayer = 0;
@@ -945,12 +1011,24 @@
@@ -951,12 +1017,24 @@
if (!this.isAlive()) {
return false;
} else if (this.getLeashHolder() == entityhuman) {
@@ -170,7 +170,7 @@
this.setLeashHolder(entityhuman, true);
itemstack.subtract(1);
return true;
@@ -996,6 +1074,7 @@
@@ -1002,6 +1080,7 @@
if (this.leashHolder != null) {
if (!this.isAlive() || !this.leashHolder.isAlive()) {
@@ -178,7 +178,7 @@
this.unleash(true, true);
}
@@ -1011,7 +1090,9 @@
@@ -1017,7 +1096,9 @@
this.leashHolder = null;
if (!this.world.isClientSide && flag1) {
@@ -188,7 +188,7 @@
}
if (!this.world.isClientSide && flag && this.world instanceof WorldServer) {
@@ -1080,6 +1161,7 @@
@@ -1086,6 +1167,7 @@
this.setLeashHolder(EntityLeash.a(this.world, blockposition), true);
} else {
@@ -196,7 +196,7 @@
this.unleash(false, true);
}
@@ -1187,7 +1269,14 @@
@@ -1193,7 +1275,14 @@
int i = EnchantmentManager.getFireAspectEnchantmentLevel(this);
if (i > 0) {