diff --git a/patches/server/0215-Fix-MC-229490.patch b/patches/server/0215-Fix-MC-229490.patch index c95335c8b..21445c94b 100644 --- a/patches/server/0215-Fix-MC-229490.patch +++ b/patches/server/0215-Fix-MC-229490.patch @@ -5,34 +5,45 @@ Subject: [PATCH] Fix MC-229490 diff --git a/src/main/java/net/minecraft/world/entity/animal/Chicken.java b/src/main/java/net/minecraft/world/entity/animal/Chicken.java -index a907520c2cd9eacf2fe80d87004afc5f30b6a630..49e26bf3cb8e7de1071a4893a7ea1ceba9912d6a 100644 +index a907520c2cd9eacf2fe80d87004afc5f30b6a630..38b260fd4b202d4ec3e97a407171d60c09d4eeed 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Chicken.java +++ b/src/main/java/net/minecraft/world/entity/animal/Chicken.java -@@ -112,6 +112,7 @@ public class Chicken extends Animal { - // CraftBukkit start - if (this.isChickenJockey()) { - this.persistenceRequired = !this.removeWhenFarAway(0); -+ if (this.level.purpurConfig.chickenFixMC229490) this.persist = false; // Purpur - fix MC-229490 +@@ -45,6 +45,7 @@ public class Chicken extends Animal { + private float nextFlap = 1.0F; + public int eggTime; + public boolean isChickenJockey; ++ public boolean jockey; // Purpur + + public Chicken(EntityType type, Level world) { + super(type, world); +@@ -194,7 +195,7 @@ public class Chicken extends Animal { + @Override + public void readAdditionalSaveData(CompoundTag nbt) { + super.readAdditionalSaveData(nbt); +- this.isChickenJockey = nbt.getBoolean("IsChickenJockey"); ++ this.jockey = nbt.getBoolean("IsChickenJockey"); // Purpur + if (nbt.contains("EggLayTime")) { + this.eggTime = nbt.getInt("EggLayTime"); } - // CraftBukkit end - super.aiStep(); -diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6eb1b895517436a552796d416c3785556fe57c05..2354c740741597271273a1980b3e3ac984d524d3 100644 ---- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -874,6 +874,7 @@ public class PurpurWorldConfig { - public double chickenMaxHealth = 4.0D; - public boolean chickenRetaliate = false; - public int chickenBreedingTicks = 6000; -+ public boolean chickenFixMC229490 = true; - private void chickenSettings() { - chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable); - chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater); -@@ -885,6 +886,7 @@ public class PurpurWorldConfig { - chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth); - chickenRetaliate = getBoolean("mobs.chicken.retaliate", chickenRetaliate); - chickenBreedingTicks = getInt("mobs.chicken.breeding-delay-ticks", chickenBreedingTicks); -+ chickenFixMC229490 = getBoolean("mobs.chicken.fix-mc-229490", chickenFixMC229490); +@@ -204,7 +205,7 @@ public class Chicken extends Animal { + @Override + public void addAdditionalSaveData(CompoundTag nbt) { + super.addAdditionalSaveData(nbt); +- nbt.putBoolean("IsChickenJockey", this.isChickenJockey); ++ nbt.putBoolean("IsChickenJockey", this.jockey); // Purpur + nbt.putInt("EggLayTime", this.eggTime); } - public boolean codRidable = false; +@@ -229,10 +230,10 @@ public class Chicken extends Animal { + } + + public boolean isChickenJockey() { +- return this.isChickenJockey; ++ return this.jockey; // Purpur + } + + public void setChickenJockey(boolean hasJockey) { +- this.isChickenJockey = hasJockey; ++ this.jockey = hasJockey; // Purpur + } + }