diff --git a/patches/server/0126-Ridables.patch b/patches/server/0126-Ridables.patch index c4cd8f82d..4b4078e04 100644 --- a/patches/server/0126-Ridables.patch +++ b/patches/server/0126-Ridables.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ridables diff --git a/src/main/java/net/minecraft/server/AttributeDefaults.java b/src/main/java/net/minecraft/server/AttributeDefaults.java -index da66cf0a45..3aa05a80fe 100644 +index da66cf0a4..3aa05a80f 100644 --- a/src/main/java/net/minecraft/server/AttributeDefaults.java +++ b/src/main/java/net/minecraft/server/AttributeDefaults.java @@ -9,7 +9,80 @@ import org.apache.logging.log4j.Logger; @@ -91,7 +91,7 @@ index da66cf0a45..3aa05a80fe 100644 public static AttributeProvider a(EntityTypes entitytypes) { return (AttributeProvider) AttributeDefaults.b.get(entitytypes); diff --git a/src/main/java/net/minecraft/server/AttributeProvider.java b/src/main/java/net/minecraft/server/AttributeProvider.java -index dd235a6fc4..ac902c614d 100644 +index dd235a6fc..ac902c614 100644 --- a/src/main/java/net/minecraft/server/AttributeProvider.java +++ b/src/main/java/net/minecraft/server/AttributeProvider.java @@ -101,6 +101,7 @@ public class AttributeProvider { @@ -103,7 +103,7 @@ index dd235a6fc4..ac902c614d 100644 this.b = true; return new AttributeProvider(this.a); diff --git a/src/main/java/net/minecraft/server/ControllerLookDolphin.java b/src/main/java/net/minecraft/server/ControllerLookDolphin.java -index e5bdddfc14..8200ba60b7 100644 +index e5bdddfc1..8200ba60b 100644 --- a/src/main/java/net/minecraft/server/ControllerLookDolphin.java +++ b/src/main/java/net/minecraft/server/ControllerLookDolphin.java @@ -1,6 +1,6 @@ @@ -124,7 +124,7 @@ index e5bdddfc14..8200ba60b7 100644 this.d = false; this.a.aC = this.a(this.a.aC, this.h() + 20.0F, this.b); diff --git a/src/main/java/net/minecraft/server/ControllerMove.java b/src/main/java/net/minecraft/server/ControllerMove.java -index 8f9fb058c1..eaf4469468 100644 +index 8f9fb058c..eaf446946 100644 --- a/src/main/java/net/minecraft/server/ControllerMove.java +++ b/src/main/java/net/minecraft/server/ControllerMove.java @@ -6,9 +6,9 @@ public class ControllerMove { @@ -141,7 +141,7 @@ index 8f9fb058c1..eaf4469468 100644 public ControllerMove(EntityInsentient entityinsentient) { diff --git a/src/main/java/net/minecraft/server/DamageSource.java b/src/main/java/net/minecraft/server/DamageSource.java -index bd0267ee4b..8b36ac2b09 100644 +index bd0267ee4..8b36ac2b0 100644 --- a/src/main/java/net/minecraft/server/DamageSource.java +++ b/src/main/java/net/minecraft/server/DamageSource.java @@ -56,6 +56,7 @@ public class DamageSource { @@ -161,7 +161,7 @@ index bd0267ee4b..8b36ac2b09 100644 this.B = true; return this; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 4282baab07..14332bf205 100644 +index 7a6283897..497bee376 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -81,7 +81,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -327,10 +327,10 @@ index 4282baab07..14332bf205 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java -index b84aa1db83..ab7c43a5c2 100644 +index b84aa1db8..34b7424c4 100644 --- a/src/main/java/net/minecraft/server/EntityBat.java +++ b/src/main/java/net/minecraft/server/EntityBat.java -@@ -14,9 +14,47 @@ public class EntityBat extends EntityAmbient { +@@ -14,9 +14,48 @@ public class EntityBat extends EntityAmbient { public EntityBat(EntityTypes entitytypes, World world) { super(entitytypes, world); @@ -356,6 +356,7 @@ index b84aa1db83..ab7c43a5c2 100644 + + @Override + public void onMount(EntityHuman entityhuman) { ++ super.onMount(entityhuman); + if (isAsleep()) { + setAsleep(false); + world.playEffect(null, 1025, new BlockPosition(this).up(), 0); @@ -378,7 +379,7 @@ index b84aa1db83..ab7c43a5c2 100644 @Override protected void initDatawatcher() { super.initDatawatcher(); -@@ -61,7 +99,7 @@ public class EntityBat extends EntityAmbient { +@@ -61,7 +100,7 @@ public class EntityBat extends EntityAmbient { protected void collideNearby() {} public static AttributeProvider.Builder m() { @@ -387,7 +388,7 @@ index b84aa1db83..ab7c43a5c2 100644 } public boolean isAsleep() { -@@ -93,6 +131,13 @@ public class EntityBat extends EntityAmbient { +@@ -93,6 +132,13 @@ public class EntityBat extends EntityAmbient { @Override protected void mobTick() { @@ -402,7 +403,7 @@ index b84aa1db83..ab7c43a5c2 100644 BlockPosition blockposition = this.getChunkCoordinates(); BlockPosition blockposition1 = blockposition.up(); diff --git a/src/main/java/net/minecraft/server/EntityBee.java b/src/main/java/net/minecraft/server/EntityBee.java -index b1ff30fb15..0ed37e18f7 100644 +index b1ff30fb1..0ed37e18f 100644 --- a/src/main/java/net/minecraft/server/EntityBee.java +++ b/src/main/java/net/minecraft/server/EntityBee.java @@ -37,6 +37,7 @@ public class EntityBee extends EntityAnimal implements IEntityAngerable, EntityB @@ -533,7 +534,7 @@ index b1ff30fb15..0ed37e18f7 100644 } diff --git a/src/main/java/net/minecraft/server/EntityBlaze.java b/src/main/java/net/minecraft/server/EntityBlaze.java -index f55f125306..22b9c84b02 100644 +index f55f12530..22b9c84b0 100644 --- a/src/main/java/net/minecraft/server/EntityBlaze.java +++ b/src/main/java/net/minecraft/server/EntityBlaze.java @@ -10,6 +10,7 @@ public class EntityBlaze extends EntityMonster { @@ -613,7 +614,7 @@ index f55f125306..22b9c84b02 100644 if (this.c <= 0) { this.c = 100; diff --git a/src/main/java/net/minecraft/server/EntityCat.java b/src/main/java/net/minecraft/server/EntityCat.java -index 79de11ce2f..eba8e77ca7 100644 +index 79de11ce2..eba8e77ca 100644 --- a/src/main/java/net/minecraft/server/EntityCat.java +++ b/src/main/java/net/minecraft/server/EntityCat.java @@ -41,6 +41,25 @@ public class EntityCat extends EntityTameableAnimal { @@ -693,7 +694,7 @@ index 79de11ce2f..eba8e77ca7 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityCaveSpider.java b/src/main/java/net/minecraft/server/EntityCaveSpider.java -index 776f3d25a6..2e1f2dec17 100644 +index 776f3d25a..2e1f2dec1 100644 --- a/src/main/java/net/minecraft/server/EntityCaveSpider.java +++ b/src/main/java/net/minecraft/server/EntityCaveSpider.java @@ -8,6 +8,18 @@ public class EntityCaveSpider extends EntitySpider { @@ -716,7 +717,7 @@ index 776f3d25a6..2e1f2dec17 100644 return EntitySpider.eK().a(GenericAttributes.MAX_HEALTH, 12.0D); } diff --git a/src/main/java/net/minecraft/server/EntityChicken.java b/src/main/java/net/minecraft/server/EntityChicken.java -index 26dee32bfe..feca1b3693 100644 +index 26dee32bf..feca1b369 100644 --- a/src/main/java/net/minecraft/server/EntityChicken.java +++ b/src/main/java/net/minecraft/server/EntityChicken.java @@ -18,6 +18,16 @@ public class EntityChicken extends EntityAnimal { @@ -753,7 +754,7 @@ index 26dee32bfe..feca1b3693 100644 } else { this.goalSelector.a(1, new PathfinderGoalPanic(this, 1.4D)); diff --git a/src/main/java/net/minecraft/server/EntityCod.java b/src/main/java/net/minecraft/server/EntityCod.java -index 9a99af6e9c..039fae4c29 100644 +index 9a99af6e9..039fae4c2 100644 --- a/src/main/java/net/minecraft/server/EntityCod.java +++ b/src/main/java/net/minecraft/server/EntityCod.java @@ -6,6 +6,18 @@ public class EntityCod extends EntityFishSchool { @@ -776,7 +777,7 @@ index 9a99af6e9c..039fae4c29 100644 protected ItemStack eK() { return new ItemStack(Items.COD_BUCKET); diff --git a/src/main/java/net/minecraft/server/EntityComplexPart.java b/src/main/java/net/minecraft/server/EntityComplexPart.java -index c1b1bd123e..26ff230ef7 100644 +index c1b1bd123..26ff230ef 100644 --- a/src/main/java/net/minecraft/server/EntityComplexPart.java +++ b/src/main/java/net/minecraft/server/EntityComplexPart.java @@ -47,4 +47,11 @@ public class EntityComplexPart extends Entity { @@ -792,7 +793,7 @@ index c1b1bd123e..26ff230ef7 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index cfb009c811..18c2d53937 100644 +index cfb009c81..18c2d5393 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -11,9 +11,22 @@ public class EntityCow extends EntityAnimal { @@ -876,7 +877,7 @@ index cfb009c811..18c2d53937 100644 this.world.addEntity(mooshroom); this.die(); diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java -index 013639cc90..3ddfb5f340 100644 +index 013639cc9..3ddfb5f34 100644 --- a/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java @@ -18,12 +18,27 @@ public class EntityCreeper extends EntityMonster { @@ -994,7 +995,7 @@ index 013639cc90..3ddfb5f340 100644 } // Paper end diff --git a/src/main/java/net/minecraft/server/EntityDolphin.java b/src/main/java/net/minecraft/server/EntityDolphin.java -index 0f51dbf8dd..09a3a00e3a 100644 +index 0f51dbf8d..09a3a00e3 100644 --- a/src/main/java/net/minecraft/server/EntityDolphin.java +++ b/src/main/java/net/minecraft/server/EntityDolphin.java @@ -17,6 +17,7 @@ public class EntityDolphin extends EntityWaterAnimal { @@ -1127,7 +1128,7 @@ index 0f51dbf8dd..09a3a00e3a 100644 this.i.setMot(this.i.getMot().add(0.0D, 0.005D, 0.0D)); } diff --git a/src/main/java/net/minecraft/server/EntityDrowned.java b/src/main/java/net/minecraft/server/EntityDrowned.java -index 6853ba3194..8aa53c617b 100644 +index 6853ba319..8aa53c617 100644 --- a/src/main/java/net/minecraft/server/EntityDrowned.java +++ b/src/main/java/net/minecraft/server/EntityDrowned.java @@ -22,6 +22,16 @@ public class EntityDrowned extends EntityZombie implements IRangedEntity { @@ -1183,7 +1184,7 @@ index 6853ba3194..8aa53c617b 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index d617b5345d..088aede370 100644 +index d617b5345..088aede37 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -46,6 +46,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { @@ -1333,7 +1334,7 @@ index d617b5345d..088aede370 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index fde60d6c89..7687649300 100644 +index fde60d6c8..768764930 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java @@ -30,9 +30,22 @@ public class EntityEnderman extends EntityMonster implements IEntityAngerable { @@ -1401,7 +1402,7 @@ index fde60d6c89..7687649300 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityEndermite.java b/src/main/java/net/minecraft/server/EntityEndermite.java -index c4b1f318f7..30f602bbc4 100644 +index c4b1f318f..30f602bbc 100644 --- a/src/main/java/net/minecraft/server/EntityEndermite.java +++ b/src/main/java/net/minecraft/server/EntityEndermite.java @@ -12,14 +12,28 @@ public class EntityEndermite extends EntityMonster { @@ -1435,7 +1436,7 @@ index c4b1f318f7..30f602bbc4 100644 } diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java -index 4bea4ca7e4..533b2bd4f4 100644 +index 4bea4ca7e..533b2bd4f 100644 --- a/src/main/java/net/minecraft/server/EntityEvoker.java +++ b/src/main/java/net/minecraft/server/EntityEvoker.java @@ -12,10 +12,23 @@ public class EntityEvoker extends EntityIllagerWizard { @@ -1495,7 +1496,7 @@ index 4bea4ca7e4..533b2bd4f4 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityFish.java b/src/main/java/net/minecraft/server/EntityFish.java -index 27d0f93510..d281114e5a 100644 +index 27d0f9351..d281114e5 100644 --- a/src/main/java/net/minecraft/server/EntityFish.java +++ b/src/main/java/net/minecraft/server/EntityFish.java @@ -70,13 +70,12 @@ public abstract class EntityFish extends EntityWaterAnimal { @@ -1557,7 +1558,7 @@ index 27d0f93510..d281114e5a 100644 this.i.setMot(this.i.getMot().add(0.0D, 0.005D, 0.0D)); } diff --git a/src/main/java/net/minecraft/server/EntityFishSchool.java b/src/main/java/net/minecraft/server/EntityFishSchool.java -index 08372b7226..6a8e15f016 100644 +index 08372b722..6a8e15f01 100644 --- a/src/main/java/net/minecraft/server/EntityFishSchool.java +++ b/src/main/java/net/minecraft/server/EntityFishSchool.java @@ -16,7 +16,7 @@ public abstract class EntityFishSchool extends EntityFish { @@ -1570,7 +1571,7 @@ index 08372b7226..6a8e15f016 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java -index f47a78e567..a3447a5302 100644 +index f47a78e56..a3447a530 100644 --- a/src/main/java/net/minecraft/server/EntityFox.java +++ b/src/main/java/net/minecraft/server/EntityFox.java @@ -55,6 +55,39 @@ public class EntityFox extends EntityAnimal { @@ -1694,7 +1695,7 @@ index f47a78e567..a3447a5302 100644 } diff --git a/src/main/java/net/minecraft/server/EntityGhast.java b/src/main/java/net/minecraft/server/EntityGhast.java -index a67611c4f9..e857d6f854 100644 +index a67611c4f..e857d6f85 100644 --- a/src/main/java/net/minecraft/server/EntityGhast.java +++ b/src/main/java/net/minecraft/server/EntityGhast.java @@ -14,11 +14,42 @@ public class EntityGhast extends EntityFlying implements IMonster { @@ -1768,7 +1769,7 @@ index a67611c4f9..e857d6f854 100644 if (this.j-- <= 0) { this.j += this.i.getRandom().nextInt(5) + 2; diff --git a/src/main/java/net/minecraft/server/EntityGiantZombie.java b/src/main/java/net/minecraft/server/EntityGiantZombie.java -index 8dce2aad77..24eb6dca5e 100644 +index 8dce2aad7..24eb6dca5 100644 --- a/src/main/java/net/minecraft/server/EntityGiantZombie.java +++ b/src/main/java/net/minecraft/server/EntityGiantZombie.java @@ -11,16 +11,28 @@ public class EntityGiantZombie extends EntityMonster { @@ -1801,7 +1802,7 @@ index 8dce2aad77..24eb6dca5e 100644 this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillager.class, false)); diff --git a/src/main/java/net/minecraft/server/EntityGuardian.java b/src/main/java/net/minecraft/server/EntityGuardian.java -index 2d0f64d3be..be060cfbdf 100644 +index 2d0f64d3b..be060cfbd 100644 --- a/src/main/java/net/minecraft/server/EntityGuardian.java +++ b/src/main/java/net/minecraft/server/EntityGuardian.java @@ -24,15 +24,36 @@ public class EntityGuardian extends EntityMonster { @@ -1897,7 +1898,7 @@ index 2d0f64d3be..be060cfbdf 100644 Vec3D vec3d = new Vec3D(this.b - this.i.locX(), this.c - this.i.locY(), this.d - this.i.locZ()); double d0 = vec3d.f(); diff --git a/src/main/java/net/minecraft/server/EntityGuardianElder.java b/src/main/java/net/minecraft/server/EntityGuardianElder.java -index 5d2870f0e8..8148bc8b4e 100644 +index 5d2870f0e..8148bc8b4 100644 --- a/src/main/java/net/minecraft/server/EntityGuardianElder.java +++ b/src/main/java/net/minecraft/server/EntityGuardianElder.java @@ -16,6 +16,18 @@ public class EntityGuardianElder extends EntityGuardian { @@ -1920,7 +1921,7 @@ index 5d2870f0e8..8148bc8b4e 100644 return EntityGuardian.eM().a(GenericAttributes.MOVEMENT_SPEED, 0.30000001192092896D).a(GenericAttributes.ATTACK_DAMAGE, 8.0D).a(GenericAttributes.MAX_HEALTH, 80.0D); } diff --git a/src/main/java/net/minecraft/server/EntityHoglin.java b/src/main/java/net/minecraft/server/EntityHoglin.java -index cf64c8ca2c..7f642fe674 100644 +index cf64c8ca2..7f642fe67 100644 --- a/src/main/java/net/minecraft/server/EntityHoglin.java +++ b/src/main/java/net/minecraft/server/EntityHoglin.java @@ -13,13 +13,25 @@ public class EntityHoglin extends EntityAnimal implements IMonster, IOglin { @@ -1977,7 +1978,7 @@ index cf64c8ca2c..7f642fe674 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityHorse.java b/src/main/java/net/minecraft/server/EntityHorse.java -index 069111952a..bd63a25e2c 100644 +index 069111952..bd63a25e2 100644 --- a/src/main/java/net/minecraft/server/EntityHorse.java +++ b/src/main/java/net/minecraft/server/EntityHorse.java @@ -12,6 +12,13 @@ public class EntityHorse extends EntityHorseAbstract { @@ -1995,7 +1996,7 @@ index 069111952a..bd63a25e2c 100644 protected void eK() { this.getAttributeInstance(GenericAttributes.MAX_HEALTH).setValue((double) this.fp()); diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java -index 8cfbf8abf6..c14889b094 100644 +index 8cfbf8abf..c14889b09 100644 --- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java +++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java @@ -39,12 +39,27 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven @@ -2035,7 +2036,7 @@ index 8cfbf8abf6..c14889b094 100644 } diff --git a/src/main/java/net/minecraft/server/EntityHorseDonkey.java b/src/main/java/net/minecraft/server/EntityHorseDonkey.java -index 767d18d5a0..cb8aee5691 100644 +index 767d18d5a..cb8aee569 100644 --- a/src/main/java/net/minecraft/server/EntityHorseDonkey.java +++ b/src/main/java/net/minecraft/server/EntityHorseDonkey.java @@ -8,6 +8,13 @@ public class EntityHorseDonkey extends EntityHorseChestedAbstract { @@ -2053,7 +2054,7 @@ index 767d18d5a0..cb8aee5691 100644 protected SoundEffect getSoundAmbient() { super.getSoundAmbient(); diff --git a/src/main/java/net/minecraft/server/EntityHorseMule.java b/src/main/java/net/minecraft/server/EntityHorseMule.java -index 3dd4d4f0f3..243aeb736e 100644 +index 3dd4d4f0f..243aeb736 100644 --- a/src/main/java/net/minecraft/server/EntityHorseMule.java +++ b/src/main/java/net/minecraft/server/EntityHorseMule.java @@ -8,6 +8,12 @@ public class EntityHorseMule extends EntityHorseChestedAbstract { @@ -2070,7 +2071,7 @@ index 3dd4d4f0f3..243aeb736e 100644 protected SoundEffect getSoundAmbient() { super.getSoundAmbient(); diff --git a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java -index abbc12c8e0..b39feed7a9 100644 +index abbc12c8e..b39feed7a 100644 --- a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java +++ b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java @@ -12,6 +12,18 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { @@ -2111,7 +2112,7 @@ index abbc12c8e0..b39feed7a9 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityHorseZombie.java b/src/main/java/net/minecraft/server/EntityHorseZombie.java -index acc5b8ca90..6e9806662d 100644 +index acc5b8ca9..6e9806662 100644 --- a/src/main/java/net/minecraft/server/EntityHorseZombie.java +++ b/src/main/java/net/minecraft/server/EntityHorseZombie.java @@ -8,6 +8,18 @@ public class EntityHorseZombie extends EntityHorseAbstract { @@ -2141,7 +2142,7 @@ index acc5b8ca90..6e9806662d 100644 + protected void eV() { if (world.purpurConfig.zombieHorseCanSwim) goalSelector.a(0, new PathfinderGoalFloat(this)); } // Purpur } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 48f9feaea1..6c2b57a294 100644 +index 48f9feaea..6c2b57a29 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -2148,4 +2148,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -2161,7 +2162,7 @@ index 48f9feaea1..6c2b57a294 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java -index 7b2c459adc..b9c4ead235 100644 +index 7b2c459ad..b9c4ead23 100644 --- a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java +++ b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java @@ -20,6 +20,16 @@ public class EntityIllagerIllusioner extends EntityIllagerWizard implements IRan @@ -2198,7 +2199,7 @@ index 7b2c459adc..b9c4ead235 100644 this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300)); this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300)); diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java -index 7f5095f7ef..bb4994c444 100644 +index 7f5095f7e..bb4994c44 100644 --- a/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java @@ -29,7 +29,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -2310,7 +2311,7 @@ index 7f5095f7ef..bb4994c444 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityIronGolem.java b/src/main/java/net/minecraft/server/EntityIronGolem.java -index bdff236883..954000a7b4 100644 +index bdff23688..954000a7b 100644 --- a/src/main/java/net/minecraft/server/EntityIronGolem.java +++ b/src/main/java/net/minecraft/server/EntityIronGolem.java @@ -22,9 +22,22 @@ public class EntityIronGolem extends EntityGolem implements IEntityAngerable { @@ -2361,7 +2362,7 @@ index bdff236883..954000a7b4 100644 float f1 = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F; diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 8071816d10..0d9dcd6b22 100644 +index 8071816d1..0d9dcd6b2 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -465,7 +465,7 @@ public abstract class EntityLiving extends Entity { @@ -2396,7 +2397,7 @@ index 8071816d10..0d9dcd6b22 100644 this.bu = f; } diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java -index e90ff597d1..a6ca8e68e4 100644 +index e90ff597d..a6ca8e68e 100644 --- a/src/main/java/net/minecraft/server/EntityLlama.java +++ b/src/main/java/net/minecraft/server/EntityLlama.java @@ -18,7 +18,46 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn @@ -2472,7 +2473,7 @@ index e90ff597d1..a6ca8e68e4 100644 return i == -1 ? null : EnumColor.fromColorIndex(i); diff --git a/src/main/java/net/minecraft/server/EntityLlamaTrader.java b/src/main/java/net/minecraft/server/EntityLlamaTrader.java -index 665a9e8524..f65e93b742 100644 +index 665a9e852..f65e93b74 100644 --- a/src/main/java/net/minecraft/server/EntityLlamaTrader.java +++ b/src/main/java/net/minecraft/server/EntityLlamaTrader.java @@ -11,6 +11,23 @@ public class EntityLlamaTrader extends EntityLlama { @@ -2500,7 +2501,7 @@ index 665a9e8524..f65e93b742 100644 protected EntityLlama fz() { return (EntityLlama) EntityTypes.TRADER_LLAMA.a(this.world); diff --git a/src/main/java/net/minecraft/server/EntityMagmaCube.java b/src/main/java/net/minecraft/server/EntityMagmaCube.java -index 8f9813ddd6..9babff772b 100644 +index 8f9813ddd..9babff772 100644 --- a/src/main/java/net/minecraft/server/EntityMagmaCube.java +++ b/src/main/java/net/minecraft/server/EntityMagmaCube.java @@ -8,6 +8,23 @@ public class EntityMagmaCube extends EntitySlime { @@ -2542,7 +2543,7 @@ index 8f9813ddd6..9babff772b 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityMushroomCow.java b/src/main/java/net/minecraft/server/EntityMushroomCow.java -index 38df17bd20..7966b34f8d 100644 +index 38df17bd2..7966b34f8 100644 --- a/src/main/java/net/minecraft/server/EntityMushroomCow.java +++ b/src/main/java/net/minecraft/server/EntityMushroomCow.java @@ -20,6 +20,18 @@ public class EntityMushroomCow extends EntityCow implements IShearable { @@ -2583,7 +2584,7 @@ index 38df17bd20..7966b34f8d 100644 Pair pair = (Pair) optional.get(); diff --git a/src/main/java/net/minecraft/server/EntityOcelot.java b/src/main/java/net/minecraft/server/EntityOcelot.java -index 9dc55b7832..9bd6bc7d18 100644 +index 9dc55b783..9bd6bc7d1 100644 --- a/src/main/java/net/minecraft/server/EntityOcelot.java +++ b/src/main/java/net/minecraft/server/EntityOcelot.java @@ -16,6 +16,18 @@ public class EntityOcelot extends EntityAnimal { @@ -2621,7 +2622,7 @@ index 9dc55b7832..9bd6bc7d18 100644 this.targetSelector.a(1, new PathfinderGoalNearestAttackableTarget<>(this, EntityTurtle.class, 10, false, false, EntityTurtle.bo)); } diff --git a/src/main/java/net/minecraft/server/EntityPanda.java b/src/main/java/net/minecraft/server/EntityPanda.java -index 01cc3d94d3..4379380c25 100644 +index 01cc3d94d..4379380c2 100644 --- a/src/main/java/net/minecraft/server/EntityPanda.java +++ b/src/main/java/net/minecraft/server/EntityPanda.java @@ -46,6 +46,27 @@ public class EntityPanda extends EntityAnimal { @@ -2757,7 +2758,7 @@ index 01cc3d94d3..4379380c25 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java -index 6bb73f869b..822fe26913 100644 +index 6bb73f869..822fe2691 100644 --- a/src/main/java/net/minecraft/server/EntityParrot.java +++ b/src/main/java/net/minecraft/server/EntityParrot.java @@ -65,12 +65,58 @@ public class EntityParrot extends EntityPerchable implements EntityBird { @@ -2833,7 +2834,7 @@ index 6bb73f869b..822fe26913 100644 this.goalSelector.a(2, new PathfinderGoalSit(this)); this.goalSelector.a(2, new PathfinderGoalFollowOwner(this, 1.0D, 5.0F, 1.0F, true)); diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java -index 706760bae2..aea27a098a 100644 +index 706760bae..aea27a098 100644 --- a/src/main/java/net/minecraft/server/EntityPhantom.java +++ b/src/main/java/net/minecraft/server/EntityPhantom.java @@ -25,6 +25,58 @@ public class EntityPhantom extends EntityFlying implements IMonster { @@ -3004,7 +3005,7 @@ index 706760bae2..aea27a098a 100644 EntityPhantom.this.yaw += 180.0F; this.j = 0.1F; diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java -index 87caac62b0..43eaba96e1 100644 +index 87caac62b..43eaba96e 100644 --- a/src/main/java/net/minecraft/server/EntityPig.java +++ b/src/main/java/net/minecraft/server/EntityPig.java @@ -19,9 +19,22 @@ public class EntityPig extends EntityAnimal implements ISteerable, ISaddleable { @@ -3031,7 +3032,7 @@ index 87caac62b0..43eaba96e1 100644 this.goalSelector.a(3, new PathfinderGoalBreed(this, 1.0D)); this.goalSelector.a(4, new PathfinderGoalTempt(this, 1.2D, RecipeItemStack.a(Items.CARROT_ON_A_STICK), false)); diff --git a/src/main/java/net/minecraft/server/EntityPigZombie.java b/src/main/java/net/minecraft/server/EntityPigZombie.java -index 194b76059c..dbc5a74f6e 100644 +index 194b76059..dbc5a74f6 100644 --- a/src/main/java/net/minecraft/server/EntityPigZombie.java +++ b/src/main/java/net/minecraft/server/EntityPigZombie.java @@ -22,6 +22,16 @@ public class EntityPigZombie extends EntityZombie implements IEntityAngerable { @@ -3052,7 +3053,7 @@ index 194b76059c..dbc5a74f6e 100644 public boolean jockeyOnlyBaby() { return world.purpurConfig.zombifiedPiglinJockeyOnlyBaby; diff --git a/src/main/java/net/minecraft/server/EntityPiglin.java b/src/main/java/net/minecraft/server/EntityPiglin.java -index e1b4330074..55739e52e1 100644 +index e1b433007..55739e52e 100644 --- a/src/main/java/net/minecraft/server/EntityPiglin.java +++ b/src/main/java/net/minecraft/server/EntityPiglin.java @@ -25,6 +25,18 @@ public class EntityPiglin extends EntityPiglinAbstract implements ICrossbow { @@ -3103,7 +3104,7 @@ index e1b4330074..55739e52e1 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityPiglinBrute.java b/src/main/java/net/minecraft/server/EntityPiglinBrute.java -index 00db2d1668..c672e31fcb 100644 +index 00db2d166..c672e31fc 100644 --- a/src/main/java/net/minecraft/server/EntityPiglinBrute.java +++ b/src/main/java/net/minecraft/server/EntityPiglinBrute.java @@ -15,6 +15,18 @@ public class EntityPiglinBrute extends EntityPiglinAbstract { @@ -3145,7 +3146,7 @@ index 00db2d1668..c672e31fcb 100644 PiglinBruteAI.b(this); PiglinBruteAI.c(this); diff --git a/src/main/java/net/minecraft/server/EntityPillager.java b/src/main/java/net/minecraft/server/EntityPillager.java -index a3a428da99..bf5669c305 100644 +index a3a428da9..bf5669c30 100644 --- a/src/main/java/net/minecraft/server/EntityPillager.java +++ b/src/main/java/net/minecraft/server/EntityPillager.java @@ -13,15 +13,29 @@ public class EntityPillager extends EntityIllagerAbstract implements ICrossbow { @@ -3179,7 +3180,7 @@ index a3a428da99..bf5669c305 100644 this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)); diff --git a/src/main/java/net/minecraft/server/EntityPolarBear.java b/src/main/java/net/minecraft/server/EntityPolarBear.java -index cd6d2e07ec..c74a10d9b6 100644 +index cd6d2e07e..c74a10d9b 100644 --- a/src/main/java/net/minecraft/server/EntityPolarBear.java +++ b/src/main/java/net/minecraft/server/EntityPolarBear.java @@ -18,12 +18,34 @@ public class EntityPolarBear extends EntityAnimal implements IEntityAngerable { @@ -3254,7 +3255,7 @@ index cd6d2e07ec..c74a10d9b6 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityPufferFish.java b/src/main/java/net/minecraft/server/EntityPufferFish.java -index 10c8e22886..b22d5b377a 100644 +index 10c8e2288..b22d5b377 100644 --- a/src/main/java/net/minecraft/server/EntityPufferFish.java +++ b/src/main/java/net/minecraft/server/EntityPufferFish.java @@ -17,6 +17,18 @@ public class EntityPufferFish extends EntityFish { @@ -3286,7 +3287,7 @@ index 10c8e22886..b22d5b377a 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityRabbit.java b/src/main/java/net/minecraft/server/EntityRabbit.java -index 98baf24bde..c5a9d7310f 100644 +index 98baf24bd..c5a9d7310 100644 --- a/src/main/java/net/minecraft/server/EntityRabbit.java +++ b/src/main/java/net/minecraft/server/EntityRabbit.java @@ -20,6 +20,18 @@ public class EntityRabbit extends EntityAnimal { @@ -3451,10 +3452,10 @@ index 98baf24bde..c5a9d7310f 100644 this.d = flag; } diff --git a/src/main/java/net/minecraft/server/EntityRavager.java b/src/main/java/net/minecraft/server/EntityRavager.java -index 7064a12c89..fbb4c2e384 100644 +index 7064a12c8..c6d149061 100644 --- a/src/main/java/net/minecraft/server/EntityRavager.java +++ b/src/main/java/net/minecraft/server/EntityRavager.java -@@ -20,14 +20,28 @@ public class EntityRavager extends EntityRaider { +@@ -20,14 +20,37 @@ public class EntityRavager extends EntityRaider { this.f = 20; } @@ -3468,6 +3469,15 @@ index 7064a12c89..fbb4c2e384 100644 + public boolean isRidableInWater() { + return world.purpurConfig.ravagerRidableInWater; + } ++ ++ @Override ++ public void onMount(EntityHuman entityhuman) { ++ super.onMount(entityhuman); ++ getNavigation().stopPathfinding(); ++ ++ double speed = this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).getBaseValue(); ++ getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(speed); ++ } + // Purpur end + @Override @@ -3483,8 +3493,17 @@ index 7064a12c89..fbb4c2e384 100644 this.targetSelector.a(2, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a(new Class[0])); // CraftBukkit - decompile error this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); this.targetSelector.a(4, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, true)); +@@ -99,7 +122,7 @@ public class EntityRavager extends EntityRaider { + @Override + public void movementTick() { + super.movementTick(); +- if (this.isAlive()) { ++ if (this.isAlive() && !hasRider()) { + if (this.isFrozen()) { + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.0D); + } else { diff --git a/src/main/java/net/minecraft/server/EntitySalmon.java b/src/main/java/net/minecraft/server/EntitySalmon.java -index 51ec634133..6dfcee2c9b 100644 +index 51ec63413..6dfcee2c9 100644 --- a/src/main/java/net/minecraft/server/EntitySalmon.java +++ b/src/main/java/net/minecraft/server/EntitySalmon.java @@ -6,6 +6,18 @@ public class EntitySalmon extends EntityFishSchool { @@ -3507,7 +3526,7 @@ index 51ec634133..6dfcee2c9b 100644 public int eN() { return 5; diff --git a/src/main/java/net/minecraft/server/EntitySheep.java b/src/main/java/net/minecraft/server/EntitySheep.java -index 2908e9cc47..04e585f44c 100644 +index 2908e9cc4..04e585f44 100644 --- a/src/main/java/net/minecraft/server/EntitySheep.java +++ b/src/main/java/net/minecraft/server/EntitySheep.java @@ -56,10 +56,23 @@ public class EntitySheep extends EntityAnimal implements IShearable { @@ -3535,7 +3554,7 @@ index 2908e9cc47..04e585f44c 100644 this.goalSelector.a(2, new PathfinderGoalBreed(this, 1.0D)); this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.1D, RecipeItemStack.a(Items.WHEAT), false)); diff --git a/src/main/java/net/minecraft/server/EntityShulker.java b/src/main/java/net/minecraft/server/EntityShulker.java -index a990af15d5..11bf731d7d 100644 +index a990af15d..11bf731d7 100644 --- a/src/main/java/net/minecraft/server/EntityShulker.java +++ b/src/main/java/net/minecraft/server/EntityShulker.java @@ -29,12 +29,26 @@ public class EntityShulker extends EntityGolem implements IMonster { @@ -3575,7 +3594,7 @@ index a990af15d5..11bf731d7d 100644 @Override public boolean a() { diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java -index 35f15c8ddd..0ea7af0850 100644 +index 35f15c8dd..0ea7af085 100644 --- a/src/main/java/net/minecraft/server/EntitySilverfish.java +++ b/src/main/java/net/minecraft/server/EntitySilverfish.java @@ -11,13 +11,27 @@ public class EntitySilverfish extends EntityMonster { @@ -3615,7 +3634,7 @@ index 35f15c8ddd..0ea7af0850 100644 public void g() { diff --git a/src/main/java/net/minecraft/server/EntitySkeleton.java b/src/main/java/net/minecraft/server/EntitySkeleton.java -index 7c39bec831..3f130e03bf 100644 +index 7c39bec83..3f130e03b 100644 --- a/src/main/java/net/minecraft/server/EntitySkeleton.java +++ b/src/main/java/net/minecraft/server/EntitySkeleton.java @@ -6,6 +6,18 @@ public class EntitySkeleton extends EntitySkeletonAbstract { @@ -3638,7 +3657,7 @@ index 7c39bec831..3f130e03bf 100644 protected SoundEffect getSoundAmbient() { return SoundEffects.ENTITY_SKELETON_AMBIENT; diff --git a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java -index 1f7b50b559..72f59b0ec4 100644 +index 1f7b50b55..72f59b0ec 100644 --- a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java +++ b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java @@ -28,12 +28,14 @@ public abstract class EntitySkeletonAbstract extends EntityMonster implements IR @@ -3657,7 +3676,7 @@ index 1f7b50b559..72f59b0ec4 100644 this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, true)); diff --git a/src/main/java/net/minecraft/server/EntitySkeletonStray.java b/src/main/java/net/minecraft/server/EntitySkeletonStray.java -index f985caada0..d123fb82b6 100644 +index f985caada..d123fb82b 100644 --- a/src/main/java/net/minecraft/server/EntitySkeletonStray.java +++ b/src/main/java/net/minecraft/server/EntitySkeletonStray.java @@ -8,6 +8,18 @@ public class EntitySkeletonStray extends EntitySkeletonAbstract { @@ -3680,7 +3699,7 @@ index f985caada0..d123fb82b6 100644 return b(entitytypes, worldaccess, enummobspawn, blockposition, random) && (enummobspawn == EnumMobSpawn.SPAWNER || worldaccess.e(blockposition)); } diff --git a/src/main/java/net/minecraft/server/EntitySkeletonWither.java b/src/main/java/net/minecraft/server/EntitySkeletonWither.java -index c872be77a6..96cb080d94 100644 +index c872be77a..96cb080d9 100644 --- a/src/main/java/net/minecraft/server/EntitySkeletonWither.java +++ b/src/main/java/net/minecraft/server/EntitySkeletonWither.java @@ -9,6 +9,18 @@ public class EntitySkeletonWither extends EntitySkeletonAbstract { @@ -3703,7 +3722,7 @@ index c872be77a6..96cb080d94 100644 protected void initPathfinder() { this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityPiglinAbstract.class, true)); diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java -index f74c827850..8483458e41 100644 +index f74c82785..8483458e4 100644 --- a/src/main/java/net/minecraft/server/EntitySlime.java +++ b/src/main/java/net/minecraft/server/EntitySlime.java @@ -34,12 +34,45 @@ public class EntitySlime extends EntityInsentient implements IMonster { @@ -3819,7 +3838,7 @@ index f74c827850..8483458e41 100644 } diff --git a/src/main/java/net/minecraft/server/EntitySnowman.java b/src/main/java/net/minecraft/server/EntitySnowman.java -index dfe615814d..bc3ac62b45 100644 +index dfe615814..bc3ac62b4 100644 --- a/src/main/java/net/minecraft/server/EntitySnowman.java +++ b/src/main/java/net/minecraft/server/EntitySnowman.java @@ -14,12 +14,26 @@ public class EntitySnowman extends EntityGolem implements IShearable, IRangedEnt @@ -3876,7 +3895,7 @@ index dfe615814d..bc3ac62b45 100644 } diff --git a/src/main/java/net/minecraft/server/EntitySpider.java b/src/main/java/net/minecraft/server/EntitySpider.java -index 42f02b03b1..889712b799 100644 +index 42f02b03b..889712b79 100644 --- a/src/main/java/net/minecraft/server/EntitySpider.java +++ b/src/main/java/net/minecraft/server/EntitySpider.java @@ -11,14 +11,28 @@ public class EntitySpider extends EntityMonster { @@ -3909,7 +3928,7 @@ index 42f02b03b1..889712b799 100644 this.targetSelector.a(2, new EntitySpider.PathfinderGoalSpiderNearestAttackableTarget<>(this, EntityHuman.class)); this.targetSelector.a(3, new EntitySpider.PathfinderGoalSpiderNearestAttackableTarget<>(this, EntityIronGolem.class)); diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java -index 028a7fe2cd..c9d2461318 100644 +index 028a7fe2c..c9d246131 100644 --- a/src/main/java/net/minecraft/server/EntitySquid.java +++ b/src/main/java/net/minecraft/server/EntitySquid.java @@ -26,17 +26,38 @@ public class EntitySquid extends EntityWaterAnimal { @@ -4009,7 +4028,7 @@ index 028a7fe2cd..c9d2461318 100644 if (i > 100) { diff --git a/src/main/java/net/minecraft/server/EntityStrider.java b/src/main/java/net/minecraft/server/EntityStrider.java -index 3bd9b53d4c..3069a408a4 100644 +index 3bd9b53d4..3069a408a 100644 --- a/src/main/java/net/minecraft/server/EntityStrider.java +++ b/src/main/java/net/minecraft/server/EntityStrider.java @@ -28,6 +28,18 @@ public class EntityStrider extends EntityAnimal implements ISteerable, ISaddleab @@ -4049,7 +4068,7 @@ index 3bd9b53d4c..3069a408a4 100644 if (flag && !this.isSilent()) { this.world.playSound((EntityHuman) null, this.locX(), this.locY(), this.locZ(), SoundEffects.ENTITY_STRIDER_EAT, this.getSoundCategory(), 1.0F, 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F); diff --git a/src/main/java/net/minecraft/server/EntityTameableAnimal.java b/src/main/java/net/minecraft/server/EntityTameableAnimal.java -index 9e008d56bb..8f227678dc 100644 +index 9e008d56b..8f227678d 100644 --- a/src/main/java/net/minecraft/server/EntityTameableAnimal.java +++ b/src/main/java/net/minecraft/server/EntityTameableAnimal.java @@ -130,6 +130,7 @@ public abstract class EntityTameableAnimal extends EntityAnimal { @@ -4061,7 +4080,7 @@ index 9e008d56bb..8f227678dc 100644 return entityliving == this.getOwner(); } diff --git a/src/main/java/net/minecraft/server/EntityTropicalFish.java b/src/main/java/net/minecraft/server/EntityTropicalFish.java -index 495c28ccb8..2c9df356e6 100644 +index 495c28ccb..2c9df356e 100644 --- a/src/main/java/net/minecraft/server/EntityTropicalFish.java +++ b/src/main/java/net/minecraft/server/EntityTropicalFish.java @@ -19,6 +19,18 @@ public class EntityTropicalFish extends EntityFishSchool { @@ -4084,7 +4103,7 @@ index 495c28ccb8..2c9df356e6 100644 protected void initDatawatcher() { super.initDatawatcher(); diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java -index 430f9d23a2..2f7570dd68 100644 +index 430f9d23a..2f7570dd6 100644 --- a/src/main/java/net/minecraft/server/EntityTurtle.java +++ b/src/main/java/net/minecraft/server/EntityTurtle.java @@ -27,6 +27,18 @@ public class EntityTurtle extends EntityAnimal { @@ -4166,7 +4185,7 @@ index 430f9d23a2..2f7570dd68 100644 if (this.h == ControllerMove.Operation.MOVE_TO && !this.i.getNavigation().m()) { double d0 = this.b - this.i.locX(); diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java -index ae05856f25..a708552358 100644 +index ae05856f2..a70855235 100644 --- a/src/main/java/net/minecraft/server/EntityVex.java +++ b/src/main/java/net/minecraft/server/EntityVex.java @@ -19,6 +19,45 @@ public class EntityVex extends EntityMonster { @@ -4263,7 +4282,7 @@ index ae05856f25..a708552358 100644 Vec3D vec3d = new Vec3D(this.b - EntityVex.this.locX(), this.c - EntityVex.this.locY(), this.d - EntityVex.this.locZ()); double d0 = vec3d.f(); diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index 7add2fca10..a5f114933d 100644 +index 7add2fca1..a5f114933 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -75,8 +75,19 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @@ -4307,7 +4326,7 @@ index 7add2fca10..a5f114933d 100644 this.h(entityhuman); } diff --git a/src/main/java/net/minecraft/server/EntityVillagerTrader.java b/src/main/java/net/minecraft/server/EntityVillagerTrader.java -index 96dda6a14f..7420ec2eae 100644 +index 96dda6a14..7420ec2ea 100644 --- a/src/main/java/net/minecraft/server/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/server/EntityVillagerTrader.java @@ -23,6 +23,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { @@ -4347,7 +4366,7 @@ index 96dda6a14f..7420ec2eae 100644 this.setTradingPlayer(entityhuman); this.openTrade(entityhuman, this.getScoreboardDisplayName(), 1); diff --git a/src/main/java/net/minecraft/server/EntityVindicator.java b/src/main/java/net/minecraft/server/EntityVindicator.java -index a945a0a073..5e702f97a1 100644 +index a945a0a07..5e702f97a 100644 --- a/src/main/java/net/minecraft/server/EntityVindicator.java +++ b/src/main/java/net/minecraft/server/EntityVindicator.java @@ -17,14 +17,28 @@ public class EntityVindicator extends EntityIllagerAbstract { @@ -4380,7 +4399,7 @@ index a945a0a073..5e702f97a1 100644 this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, true)); diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java -index 0ef981e5ad..76fd72f33c 100644 +index 0ef981e5a..76fd72f33 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java @@ -24,6 +24,18 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { @@ -4416,7 +4435,7 @@ index 0ef981e5ad..76fd72f33c 100644 this.targetSelector.a(2, this.br); this.targetSelector.a(3, this.bs); diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java -index 29bb74e51e..6c48c9659d 100644 +index 29bb74e51..1054b492c 100644 --- a/src/main/java/net/minecraft/server/EntityWither.java +++ b/src/main/java/net/minecraft/server/EntityWither.java @@ -32,6 +32,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { @@ -4427,7 +4446,7 @@ index 29bb74e51e..6c48c9659d 100644 public EntityWither(EntityTypes entitytypes, World world) { super(entitytypes, world); -@@ -39,15 +40,121 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -39,15 +40,122 @@ public class EntityWither extends EntityMonster implements IRangedEntity { this.setHealth(this.getMaxHealth()); this.getNavigation().d(true); this.f = 50; @@ -4464,6 +4483,7 @@ index 29bb74e51e..6c48c9659d 100644 + + @Override + public void onMount(EntityHuman entityhuman) { ++ super.onMount(entityhuman); + this.datawatcher.set(bo.get(0), 0); + this.datawatcher.set(bo.get(1), 0); + this.datawatcher.set(bo.get(2), 0); @@ -4550,7 +4570,7 @@ index 29bb74e51e..6c48c9659d 100644 this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, new Class[0])); this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityInsentient.class, 0, false, false, EntityWither.by)); } -@@ -189,6 +296,16 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -189,6 +297,16 @@ public class EntityWither extends EntityMonster implements IRangedEntity { @Override protected void mobTick() { @@ -4567,7 +4587,7 @@ index 29bb74e51e..6c48c9659d 100644 int i; if (this.getInvul() > 0) { -@@ -372,7 +489,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -372,7 +490,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { this.bossBattle.removePlayer(entityplayer); } @@ -4576,7 +4596,7 @@ index 29bb74e51e..6c48c9659d 100644 if (i <= 0) { return this.locX(); } else { -@@ -383,11 +500,11 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -383,11 +501,11 @@ public class EntityWither extends EntityMonster implements IRangedEntity { } } @@ -4590,7 +4610,7 @@ index 29bb74e51e..6c48c9659d 100644 if (i <= 0) { return this.locZ(); } else { -@@ -511,7 +628,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -511,7 +629,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { } public static AttributeProvider.Builder eK() { @@ -4599,7 +4619,7 @@ index 29bb74e51e..6c48c9659d 100644 } public int getInvul() { -@@ -523,11 +640,11 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -523,11 +641,11 @@ public class EntityWither extends EntityMonster implements IRangedEntity { } public int getHeadTarget(int i) { @@ -4613,7 +4633,7 @@ index 29bb74e51e..6c48c9659d 100644 } public boolean S_() { -@@ -541,7 +658,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -541,7 +659,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { @Override protected boolean n(Entity entity) { @@ -4623,7 +4643,7 @@ index 29bb74e51e..6c48c9659d 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityWolf.java b/src/main/java/net/minecraft/server/EntityWolf.java -index 5779d1c9f9..506b2a96f2 100644 +index 5779d1c9f..506b2a96f 100644 --- a/src/main/java/net/minecraft/server/EntityWolf.java +++ b/src/main/java/net/minecraft/server/EntityWolf.java @@ -33,9 +33,27 @@ public class EntityWolf extends EntityTameableAnimal implements IEntityAngerable @@ -4663,7 +4683,7 @@ index 5779d1c9f9..506b2a96f2 100644 this.targetSelector.a(2, new PathfinderGoalOwnerHurtTarget(this)); this.targetSelector.a(3, (new PathfinderGoalHurtByTarget(this, new Class[0])).a(new Class[0])); // CraftBukkit - decompile error diff --git a/src/main/java/net/minecraft/server/EntityZoglin.java b/src/main/java/net/minecraft/server/EntityZoglin.java -index 55df54733d..ce4072f6ea 100644 +index 55df54733..ce4072f6e 100644 --- a/src/main/java/net/minecraft/server/EntityZoglin.java +++ b/src/main/java/net/minecraft/server/EntityZoglin.java @@ -21,6 +21,18 @@ public class EntityZoglin extends EntityMonster implements IMonster, IOglin { @@ -4727,7 +4747,7 @@ index 55df54733d..ce4072f6ea 100644 this.eL(); } diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java -index 1ea68f6172..89135d9030 100644 +index 1ea68f617..89135d903 100644 --- a/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java @@ -46,6 +46,16 @@ public class EntityZombie extends EntityMonster { @@ -4760,7 +4780,7 @@ index 1ea68f6172..89135d9030 100644 } diff --git a/src/main/java/net/minecraft/server/EntityZombieHusk.java b/src/main/java/net/minecraft/server/EntityZombieHusk.java -index ce6d797801..02b0ae550a 100644 +index ce6d79780..02b0ae550 100644 --- a/src/main/java/net/minecraft/server/EntityZombieHusk.java +++ b/src/main/java/net/minecraft/server/EntityZombieHusk.java @@ -9,6 +9,16 @@ public class EntityZombieHusk extends EntityZombie { @@ -4781,7 +4801,7 @@ index ce6d797801..02b0ae550a 100644 public boolean jockeyOnlyBaby() { return world.purpurConfig.huskJockeyOnlyBaby; diff --git a/src/main/java/net/minecraft/server/EntityZombieVillager.java b/src/main/java/net/minecraft/server/EntityZombieVillager.java -index 69e98dcebe..cdcf3d1cf5 100644 +index 69e98dceb..cdcf3d1cf 100644 --- a/src/main/java/net/minecraft/server/EntityZombieVillager.java +++ b/src/main/java/net/minecraft/server/EntityZombieVillager.java @@ -29,6 +29,16 @@ public class EntityZombieVillager extends EntityZombie implements VillagerDataHo @@ -4802,7 +4822,7 @@ index 69e98dcebe..cdcf3d1cf5 100644 public boolean jockeyOnlyBaby() { return world.purpurConfig.zombieVillagerJockeyOnlyBaby; diff --git a/src/main/java/net/minecraft/server/GeneratorAccess.java b/src/main/java/net/minecraft/server/GeneratorAccess.java -index b67aede005..ed09fe7fdd 100644 +index b67aede00..ed09fe7fd 100644 --- a/src/main/java/net/minecraft/server/GeneratorAccess.java +++ b/src/main/java/net/minecraft/server/GeneratorAccess.java @@ -37,6 +37,7 @@ public interface GeneratorAccess extends ICombinedAccess, IWorldTime { @@ -4814,7 +4834,7 @@ index b67aede005..ed09fe7fdd 100644 default int getHeight() { diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java -index 0bac6b0506..9a17eb6066 100644 +index 0bac6b050..9a17eb606 100644 --- a/src/main/java/net/minecraft/server/IProjectile.java +++ b/src/main/java/net/minecraft/server/IProjectile.java @@ -12,7 +12,7 @@ public abstract class IProjectile extends Entity { @@ -4844,7 +4864,7 @@ index 0bac6b0506..9a17eb6066 100644 Entity entity1 = this.getShooter(); // Paper start - Cancel hit for vanished players diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 7096e5aab8..507291f2b4 100644 +index 7096e5aab..507291f2b 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2145,6 +2145,8 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -4857,7 +4877,7 @@ index 7096e5aab8..507291f2b4 100644 if ((entity instanceof EntityFish && origItem != null && origItem.getItem() == Items.WATER_BUCKET) && (event.isCancelled() || this.player.inventory.getItemInHand() == null || this.player.inventory.getItemInHand().getItem() != origItem)) { this.sendPacket(new PacketPlayOutSpawnEntityLiving((EntityFish) entity)); diff --git a/src/main/java/net/minecraft/server/ProjectileHelper.java b/src/main/java/net/minecraft/server/ProjectileHelper.java -index b2c64b3144..515ba50aec 100644 +index b2c64b314..515ba50ae 100644 --- a/src/main/java/net/minecraft/server/ProjectileHelper.java +++ b/src/main/java/net/minecraft/server/ProjectileHelper.java @@ -7,6 +7,7 @@ import javax.annotation.Nullable; @@ -4869,7 +4889,7 @@ index b2c64b3144..515ba50aec 100644 Vec3D vec3d = entity.getMot(); World world = entity.world; diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java -index 84858ba392..9b8114d769 100644 +index 84858ba39..9b8114d76 100644 --- a/src/main/java/net/minecraft/server/Vec3D.java +++ b/src/main/java/net/minecraft/server/Vec3D.java @@ -39,6 +39,7 @@ public class Vec3D implements IPosition { @@ -4897,7 +4917,7 @@ index 84858ba392..9b8114d769 100644 return new Vec3D(this.x * d0, this.y * d1, this.z * d2); } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a4bb581367..8ce1173eba 100644 +index a4bb58136..8ce1173eb 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1516,5 +1516,10 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -4912,7 +4932,7 @@ index a4bb581367..8ce1173eba 100644 // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -index 8714d1574d..af3739c79a 100644 +index 8714d1574..af3739c79 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -134,11 +134,13 @@ public class PurpurConfig { @@ -4930,7 +4950,7 @@ index 8714d1574d..af3739c79a 100644 public static int dungeonSeed = -1; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 421781136c..aa2c41e4d4 100644 +index 421781136..aa2c41e4d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -42,11 +42,6 @@ public class PurpurWorldConfig { @@ -5576,10 +5596,10 @@ index 421781136c..aa2c41e4d4 100644 zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens); diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java new file mode 100644 -index 0000000000..828e1b8730 +index 000000000..0b16a7b63 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java -@@ -0,0 +1,75 @@ +@@ -0,0 +1,76 @@ +package net.pl3x.purpur.controller; + +import net.minecraft.server.ControllerLook; @@ -5620,6 +5640,7 @@ index 0000000000..828e1b8730 + entity.yaw = normalizeYaw(yaw + yawOffset); + entity.lastYaw = entity.yaw; + entity.setBodyYaw(entity.yaw); ++ entity.setRenderYawOffset(entity.yaw); + entity.setHeadRotation(entity.yaw); + entity.pitch = normalizePitch(pitch + pitchOffset); + @@ -5657,7 +5678,7 @@ index 0000000000..828e1b8730 +} diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java new file mode 100644 -index 0000000000..426688b3a6 +index 000000000..426688b3a --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java @@ -0,0 +1,92 @@ @@ -5755,7 +5776,7 @@ index 0000000000..426688b3a6 +} diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java new file mode 100644 -index 0000000000..33c51460ab +index 000000000..33c51460a --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java @@ -0,0 +1,61 @@ @@ -5822,7 +5843,7 @@ index 0000000000..33c51460ab +} diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java new file mode 100644 -index 0000000000..f753759361 +index 000000000..f75375936 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java @@ -0,0 +1,61 @@ @@ -5889,7 +5910,7 @@ index 0000000000..f753759361 +} diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java new file mode 100644 -index 0000000000..1b08a0905b +index 000000000..1b08a0905 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java @@ -0,0 +1,50 @@ @@ -5945,7 +5966,7 @@ index 0000000000..1b08a0905b +} diff --git a/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java b/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java new file mode 100644 -index 0000000000..3b777c54f9 +index 000000000..3b777c54f --- /dev/null +++ b/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java @@ -0,0 +1,115 @@ @@ -6066,7 +6087,7 @@ index 0000000000..3b777c54f9 +} diff --git a/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java new file mode 100644 -index 0000000000..f5da00b100 +index 000000000..f5da00b10 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java @@ -0,0 +1,120 @@ @@ -6192,7 +6213,7 @@ index 0000000000..f5da00b100 +} diff --git a/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHasRider.java b/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHasRider.java new file mode 100644 -index 0000000000..68acd09a6e +index 000000000..68acd09a6 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHasRider.java @@ -0,0 +1,21 @@ @@ -6219,7 +6240,7 @@ index 0000000000..68acd09a6e +} diff --git a/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHorseHasRider.java b/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHorseHasRider.java new file mode 100644 -index 0000000000..c0ead608ed +index 000000000..c0ead608e --- /dev/null +++ b/src/main/java/net/pl3x/purpur/pathfinder/PathfinderGoalHorseHasRider.java @@ -0,0 +1,18 @@ @@ -6242,7 +6263,7 @@ index 0000000000..c0ead608ed + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index f1710a53fa..ecba7b02f0 100644 +index f1710a53f..ecba7b02f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1133,4 +1133,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -6273,7 +6294,7 @@ index f1710a53fa..ecba7b02f0 100644 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 68e3d29787..ca4dacdae0 100644 +index 68e3d2978..ca4dacdae 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -501,6 +501,18 @@ public class CraftEventFactory { diff --git a/patches/server/0132-Customizable-WitherBoss-Health-and-Healing.patch b/patches/server/0132-Customizable-WitherBoss-Health-and-Healing.patch index dfb436db3..7090df8ff 100644 --- a/patches/server/0132-Customizable-WitherBoss-Health-and-Healing.patch +++ b/patches/server/0132-Customizable-WitherBoss-Health-and-Healing.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Customizable WitherBoss Health and Healing Adds the ability to customize the health of the Wither Boss, as well as the amount that it heals, and how often in the PurpurWorldConfig. diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java -index 6c48c9659d..624821be11 100644 +index 1054b492c..2a288d372 100644 --- a/src/main/java/net/minecraft/server/EntityWither.java +++ b/src/main/java/net/minecraft/server/EntityWither.java -@@ -144,6 +144,12 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -145,6 +145,12 @@ public class EntityWither extends EntityMonster implements IRangedEntity { skull.setPositionRaw(headX, headY, headZ); world.addEntity(skull); } @@ -22,7 +22,7 @@ index 6c48c9659d..624821be11 100644 // Purpur end @Override -@@ -347,7 +353,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -348,7 +354,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { this.setInvul(i); if (this.ticksLived % 10 == 0) { @@ -31,7 +31,7 @@ index 6c48c9659d..624821be11 100644 } } else { -@@ -456,8 +462,10 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -457,8 +463,10 @@ public class EntityWither extends EntityMonster implements IRangedEntity { } } @@ -44,7 +44,7 @@ index 6c48c9659d..624821be11 100644 } //this.bossBattle.setProgress(this.getHealth() / this.getMaxHealth()); // Paper - Moved down -@@ -472,6 +480,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { +@@ -473,6 +481,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { public void beginSpawnSequence() { this.setInvul(220); this.setHealth(this.getMaxHealth() / 3.0F); @@ -53,7 +53,7 @@ index 6c48c9659d..624821be11 100644 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 66ac267f00..c7ccc896a0 100644 +index 66ac267f0..c7ccc896a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -887,10 +887,16 @@ public class PurpurWorldConfig {