diff --git a/patches/server/0003-decompile-fixes.patch b/patches/server/0003-decompile-fixes.patch index a0123f330..395d7c867 100644 --- a/patches/server/0003-decompile-fixes.patch +++ b/patches/server/0003-decompile-fixes.patch @@ -1,4 +1,4 @@ -From 84e0ebc4f52da8780a603b9031798db34e88726e Mon Sep 17 00:00:00 2001 +From a8c2e4c0b159d27d014a1b64ce56f11e3b184014 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Thu, 27 Feb 2020 13:39:06 -0600 Subject: [PATCH] decompile-fixes @@ -78,7 +78,16 @@ Subject: [PATCH] decompile-fixes .../java/net/minecraft/server/BiomeVoid.java | 2 +- .../minecraft/server/BiomeWarmDeepOcean.java | 8 +++--- .../net/minecraft/server/BiomeWarmOcean.java | 10 +++---- - 74 files changed, 210 insertions(+), 210 deletions(-) + .../net/minecraft/server/EntityBlaze.java | 2 +- + .../java/net/minecraft/server/EntityCat.java | 2 +- + .../net/minecraft/server/EntityEndermite.java | 2 +- + .../net/minecraft/server/EntityEvoker.java | 2 +- + .../java/net/minecraft/server/EntityFish.java | 6 +---- + .../net/minecraft/server/EntityParrot.java | 4 +-- + .../net/minecraft/server/EntitySheep.java | 6 ++--- + .../net/minecraft/server/EntityWitch.java | 4 +-- + .../server/WorldGenFeatureConfigured.java | 2 +- + 83 files changed, 222 insertions(+), 228 deletions(-) diff --git a/src/main/java/net/minecraft/server/BiomeBambooJungle.java b/src/main/java/net/minecraft/server/BiomeBambooJungle.java index de831ed87e..9c38f8907a 100644 @@ -1394,6 +1403,147 @@ index dd7916c090..e4dc7d198c 100644 BiomeDecoratorGroups.ap(this); this.a(EnumCreatureType.WATER_CREATURE, new BiomeBase.BiomeMeta(EntityTypes.SQUID, 10, 4, 4)); this.a(EnumCreatureType.WATER_CREATURE, new BiomeBase.BiomeMeta(EntityTypes.PUFFERFISH, 15, 1, 3)); +diff --git a/src/main/java/net/minecraft/server/EntityBlaze.java b/src/main/java/net/minecraft/server/EntityBlaze.java +index 5b1d2c7f50..da6a3fa2c8 100644 +--- a/src/main/java/net/minecraft/server/EntityBlaze.java ++++ b/src/main/java/net/minecraft/server/EntityBlaze.java +@@ -24,7 +24,7 @@ public class EntityBlaze extends EntityMonster { + this.goalSelector.a(7, new PathfinderGoalRandomStrollLand(this, 1.0D, 0.0F)); + this.goalSelector.a(8, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); + this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this)); +- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[0])).a()); ++ this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); + } + +diff --git a/src/main/java/net/minecraft/server/EntityCat.java b/src/main/java/net/minecraft/server/EntityCat.java +index 57af3835ee..b3bdc194ab 100644 +--- a/src/main/java/net/minecraft/server/EntityCat.java ++++ b/src/main/java/net/minecraft/server/EntityCat.java +@@ -16,7 +16,7 @@ public class EntityCat extends EntityTameableAnimal { + private static final DataWatcherObject bC = DataWatcher.a(EntityCat.class, DataWatcherRegistry.i); + private static final DataWatcherObject bD = DataWatcher.a(EntityCat.class, DataWatcherRegistry.i); + private static final DataWatcherObject bE = DataWatcher.a(EntityCat.class, DataWatcherRegistry.b); +- public static final Map bz = (Map) SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error ++ public static final Map bz = SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error // Purpur - decompile error + hashmap.put(0, new MinecraftKey("textures/entity/cat/tabby.png")); + hashmap.put(1, new MinecraftKey("textures/entity/cat/black.png")); + hashmap.put(2, new MinecraftKey("textures/entity/cat/red.png")); +diff --git a/src/main/java/net/minecraft/server/EntityEndermite.java b/src/main/java/net/minecraft/server/EntityEndermite.java +index b34695f2d0..e4bd2796a4 100644 +--- a/src/main/java/net/minecraft/server/EntityEndermite.java ++++ b/src/main/java/net/minecraft/server/EntityEndermite.java +@@ -19,7 +19,7 @@ public class EntityEndermite extends EntityMonster { + this.goalSelector.a(3, new PathfinderGoalRandomStrollLand(this, 1.0D)); + this.goalSelector.a(7, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); + this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this)); +- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[0])).a()); ++ this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); + } + +diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java +index 886268b09e..b030fe9577 100644 +--- a/src/main/java/net/minecraft/server/EntityEvoker.java ++++ b/src/main/java/net/minecraft/server/EntityEvoker.java +@@ -24,7 +24,7 @@ public class EntityEvoker extends EntityIllagerWizard { + this.goalSelector.a(8, new PathfinderGoalRandomStroll(this, 0.6D)); + this.goalSelector.a(9, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 3.0F, 1.0F)); + this.goalSelector.a(10, new PathfinderGoalLookAtPlayer(this, EntityInsentient.class, 8.0F)); +- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a()); ++ this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, EntityRaider.class).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300)); + this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300)); + this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, false)); +diff --git a/src/main/java/net/minecraft/server/EntityFish.java b/src/main/java/net/minecraft/server/EntityFish.java +index d332907b3b..b853fd0d9b 100644 +--- a/src/main/java/net/minecraft/server/EntityFish.java ++++ b/src/main/java/net/minecraft/server/EntityFish.java +@@ -73,11 +73,7 @@ public abstract class EntityFish extends EntityWaterAnimal { + protected void initPathfinder() { + super.initPathfinder(); + this.goalSelector.a(0, new PathfinderGoalPanic(this, 1.25D)); +- PathfinderGoalSelector pathfindergoalselector = this.goalSelector; +- Predicate predicate = IEntitySelector.f; +- +- predicate.getClass(); +- pathfindergoalselector.a(2, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, predicate::test)); ++ this.goalSelector.a(2, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, IEntitySelector.f::test)); // Purpur - decompile error + this.goalSelector.a(4, new EntityFish.b(this)); + } + +diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java +index 1402087612..94e57a2d85 100644 +--- a/src/main/java/net/minecraft/server/EntityParrot.java ++++ b/src/main/java/net/minecraft/server/EntityParrot.java +@@ -20,8 +20,8 @@ public class EntityParrot extends EntityPerchable implements EntityBird { + } + }; + private static final Item bF = Items.COOKIE; +- private static final Set bG = Sets.newHashSet(new Item[]{Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, Items.BEETROOT_SEEDS}); +- private static final Map, SoundEffect> bH = (Map) SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error ++ private static final Set bG = Sets.newHashSet(Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, Items.BEETROOT_SEEDS); // Purpur - decompile error ++ private static final Map, SoundEffect> bH = SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error // Purpur - decompile error + hashmap.put(EntityTypes.BLAZE, SoundEffects.ENTITY_PARROT_IMITATE_BLAZE); + hashmap.put(EntityTypes.CAVE_SPIDER, SoundEffects.ENTITY_PARROT_IMITATE_SPIDER); + hashmap.put(EntityTypes.CREEPER, SoundEffects.ENTITY_PARROT_IMITATE_CREEPER); +diff --git a/src/main/java/net/minecraft/server/EntitySheep.java b/src/main/java/net/minecraft/server/EntitySheep.java +index a8ef98981d..d5ffdc110d 100644 +--- a/src/main/java/net/minecraft/server/EntitySheep.java ++++ b/src/main/java/net/minecraft/server/EntitySheep.java +@@ -18,7 +18,7 @@ import org.bukkit.inventory.InventoryView; + public class EntitySheep extends EntityAnimal { + + private static final DataWatcherObject bw = DataWatcher.a(EntitySheep.class, DataWatcherRegistry.a); +- private static final Map bx = (Map) SystemUtils.a(Maps.newEnumMap(EnumColor.class), (enummap) -> { // CraftBukkit - decompile error ++ private static final Map bx = SystemUtils.a(Maps.newEnumMap(EnumColor.class), (enummap) -> { // CraftBukkit - decompile error // Purpur - decompile error + enummap.put(EnumColor.WHITE, Blocks.WHITE_WOOL); + enummap.put(EnumColor.ORANGE, Blocks.ORANGE_WOOL); + enummap.put(EnumColor.MAGENTA, Blocks.MAGENTA_WOOL); +@@ -36,9 +36,7 @@ public class EntitySheep extends EntityAnimal { + enummap.put(EnumColor.RED, Blocks.RED_WOOL); + enummap.put(EnumColor.BLACK, Blocks.BLACK_WOOL); + }); +- private static final Map by = Maps.newEnumMap((Map) Arrays.stream(EnumColor.values()).collect(Collectors.toMap((enumcolor) -> { +- return enumcolor; +- }, EntitySheep::c))); ++ private static final Map by = Arrays.stream(EnumColor.values()).collect(Collectors.toMap((enumcolor) -> enumcolor, EntitySheep::c)); // Purpur - decompile error + private int bz; + private PathfinderGoalEatTile bA; + +diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java +index 7b6b1ad17b..1432d3f6bf 100644 +--- a/src/main/java/net/minecraft/server/EntityWitch.java ++++ b/src/main/java/net/minecraft/server/EntityWitch.java +@@ -30,13 +30,13 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { + this.bz = new PathfinderGoalNearestHealableRaider<>(this, EntityRaider.class, true, (entityliving) -> { + return entityliving != null && this.eF() && entityliving.getEntityType() != EntityTypes.WITCH; + }); +- this.bA = new PathfinderGoalNearestAttackableTargetWitch<>(this, EntityHuman.class, 10, true, false, (Predicate) null); ++ this.bA = new PathfinderGoalNearestAttackableTargetWitch<>(this, EntityHuman.class, 10, true, false, null); // Purpur - decompile error + this.goalSelector.a(1, new PathfinderGoalFloat(this)); + this.goalSelector.a(2, new PathfinderGoalArrowAttack(this, 1.0D, 60, 10.0F)); + this.goalSelector.a(2, new PathfinderGoalRandomStrollLand(this, 1.0D)); + this.goalSelector.a(3, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); + this.goalSelector.a(3, new PathfinderGoalRandomLookaround(this)); +- this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})); ++ this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, EntityRaider.class)); // Purpur - decompile error + this.targetSelector.a(2, this.bz); + this.targetSelector.a(3, this.bA); + } +diff --git a/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java b/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java +index de8f1874af..73402f2b5a 100644 +--- a/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java ++++ b/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java +@@ -25,7 +25,7 @@ public class WorldGenFeatureConfigured a(WorldGenDecoratorConfigured worldgendecoratorconfigured) { + WorldGenerator worldgenerator = this.b instanceof WorldGenFlowers ? WorldGenerator.DECORATED_FLOWER : WorldGenerator.DECORATED; + +- return worldgenerator.b((WorldGenFeatureConfiguration) (new WorldGenFeatureCompositeConfiguration(this, worldgendecoratorconfigured))); ++ return worldgenerator.b(new WorldGenFeatureCompositeConfiguration(this, worldgendecoratorconfigured)); // Purpur - decompile error + } + + public WorldGenFeatureRandomChoiceConfigurationWeight a(float f) { -- 2.24.0 diff --git a/patches/server/0005-Ridables.patch b/patches/server/0005-Ridables.patch index 51db410e1..773377836 100644 --- a/patches/server/0005-Ridables.patch +++ b/patches/server/0005-Ridables.patch @@ -1,4 +1,4 @@ -From 19fc6d780a89bfd5eacf9e6bad6f4ef6d6dbd589 Mon Sep 17 00:00:00 2001 +From 6b71b8574fcb2e53399aba042bce5540fec02463 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Thu, 6 Feb 2020 19:53:59 -0600 Subject: [PATCH] Ridables @@ -10,8 +10,8 @@ Subject: [PATCH] Ridables .../net/minecraft/server/EntityAgeable.java | 2 +- .../java/net/minecraft/server/EntityBat.java | 40 ++ .../java/net/minecraft/server/EntityBee.java | 106 +++- - .../net/minecraft/server/EntityBlaze.java | 35 +- - .../java/net/minecraft/server/EntityCat.java | 36 +- + .../net/minecraft/server/EntityBlaze.java | 33 + + .../java/net/minecraft/server/EntityCat.java | 34 +- .../minecraft/server/EntityCaveSpider.java | 17 + .../net/minecraft/server/EntityChicken.java | 19 + .../java/net/minecraft/server/EntityCod.java | 17 + @@ -21,9 +21,9 @@ Subject: [PATCH] Ridables .../net/minecraft/server/EntityDrowned.java | 24 +- .../minecraft/server/EntityEnderDragon.java | 22 + .../net/minecraft/server/EntityEnderman.java | 33 +- - .../net/minecraft/server/EntityEndermite.java | 21 +- - .../net/minecraft/server/EntityEvoker.java | 24 +- - .../java/net/minecraft/server/EntityFish.java | 25 +- + .../net/minecraft/server/EntityEndermite.java | 19 + + .../net/minecraft/server/EntityEvoker.java | 22 + + .../java/net/minecraft/server/EntityFish.java | 21 +- .../java/net/minecraft/server/EntityFox.java | 57 +- .../net/minecraft/server/EntityGhast.java | 28 +- .../minecraft/server/EntityGiantZombie.java | 25 + @@ -46,7 +46,7 @@ Subject: [PATCH] Ridables .../minecraft/server/EntityMushroomCow.java | 17 + .../net/minecraft/server/EntityOcelot.java | 19 + .../net/minecraft/server/EntityPanda.java | 47 +- - .../net/minecraft/server/EntityParrot.java | 69 ++- + .../net/minecraft/server/EntityParrot.java | 65 +- .../net/minecraft/server/EntityPhantom.java | 59 +- .../java/net/minecraft/server/EntityPig.java | 48 +- .../net/minecraft/server/EntityPigZombie.java | 17 + @@ -56,7 +56,7 @@ Subject: [PATCH] Ridables .../net/minecraft/server/EntityRabbit.java | 79 ++- .../net/minecraft/server/EntityRavager.java | 19 + .../net/minecraft/server/EntitySalmon.java | 17 + - .../net/minecraft/server/EntitySheep.java | 24 +- + .../net/minecraft/server/EntitySheep.java | 18 + .../net/minecraft/server/EntityShulker.java | 21 +- .../minecraft/server/EntitySilverfish.java | 20 + .../net/minecraft/server/EntitySkeleton.java | 17 + @@ -75,7 +75,7 @@ Subject: [PATCH] Ridables .../net/minecraft/server/EntityVillager.java | 22 + .../server/EntityVillagerTrader.java | 18 + .../minecraft/server/EntityVindicator.java | 19 + - .../net/minecraft/server/EntityWitch.java | 23 +- + .../net/minecraft/server/EntityWitch.java | 21 +- .../net/minecraft/server/EntityWither.java | 26 +- .../java/net/minecraft/server/EntityWolf.java | 121 ++-- .../net/minecraft/server/EntityZombie.java | 19 + @@ -95,7 +95,7 @@ Subject: [PATCH] Ridables .../controller/ControllerMoveWASDWater.java | 43 ++ .../pathfinder/PathfinderGoalHasRider.java | 21 + .../craftbukkit/entity/CraftEntity.java | 27 + - 91 files changed, 3035 insertions(+), 203 deletions(-) + 91 files changed, 3026 insertions(+), 188 deletions(-) create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java @@ -501,7 +501,7 @@ index c7d79efdf6..0918beac90 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityBlaze.java b/src/main/java/net/minecraft/server/EntityBlaze.java -index 5b1d2c7f50..5d2d69cbf4 100644 +index da6a3fa2c8..5d2d69cbf4 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 { @@ -512,7 +512,7 @@ index 5b1d2c7f50..5d2d69cbf4 100644 this.a(PathType.WATER, -1.0F); this.a(PathType.LAVA, 8.0F); this.a(PathType.DANGER_FIRE, 0.0F); -@@ -17,14 +18,38 @@ public class EntityBlaze extends EntityMonster { +@@ -17,13 +18,37 @@ public class EntityBlaze extends EntityMonster { this.f = 10; } @@ -546,12 +546,10 @@ index 5b1d2c7f50..5d2d69cbf4 100644 this.goalSelector.a(7, new PathfinderGoalRandomStrollLand(this, 1.0D, 0.0F)); this.goalSelector.a(8, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this)); -- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[0])).a()); + this.targetSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur -+ this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this).a(new Class[0])); // Purpur - decompile error this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); } - @@ -87,6 +112,14 @@ public class EntityBlaze extends EntityMonster { this.damageEntity(DamageSource.DROWN, 1.0F); } @@ -568,18 +566,9 @@ index 5b1d2c7f50..5d2d69cbf4 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 57af3835ee..1f80686368 100644 +index b3bdc194ab..8b9222d778 100644 --- a/src/main/java/net/minecraft/server/EntityCat.java +++ b/src/main/java/net/minecraft/server/EntityCat.java -@@ -16,7 +16,7 @@ public class EntityCat extends EntityTameableAnimal { - private static final DataWatcherObject bC = DataWatcher.a(EntityCat.class, DataWatcherRegistry.i); - private static final DataWatcherObject bD = DataWatcher.a(EntityCat.class, DataWatcherRegistry.i); - private static final DataWatcherObject bE = DataWatcher.a(EntityCat.class, DataWatcherRegistry.b); -- public static final Map bz = (Map) SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error -+ public static final Map bz = SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error // Purpur decompile error - hashmap.put(0, new MinecraftKey("textures/entity/cat/tabby.png")); - hashmap.put(1, new MinecraftKey("textures/entity/cat/black.png")); - hashmap.put(2, new MinecraftKey("textures/entity/cat/red.png")); @@ -42,6 +42,23 @@ public class EntityCat extends EntityTameableAnimal { super(entitytypes, world); } @@ -1203,10 +1192,10 @@ index 212636dcb2..de30ce483f 100644 if (iblockdata2 != null && this.a(world, blockposition, iblockdata2, iblockdata, iblockdata1, blockposition1)) { // CraftBukkit start - Place event diff --git a/src/main/java/net/minecraft/server/EntityEndermite.java b/src/main/java/net/minecraft/server/EntityEndermite.java -index b34695f2d0..026043da34 100644 +index e4bd2796a4..5eaf1920b2 100644 --- a/src/main/java/net/minecraft/server/EntityEndermite.java +++ b/src/main/java/net/minecraft/server/EntityEndermite.java -@@ -12,14 +12,33 @@ public class EntityEndermite extends EntityMonster { +@@ -12,13 +12,32 @@ public class EntityEndermite extends EntityMonster { this.f = 3; } @@ -1235,14 +1224,12 @@ index b34695f2d0..026043da34 100644 this.goalSelector.a(3, new PathfinderGoalRandomStrollLand(this, 1.0D)); this.goalSelector.a(7, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this)); -- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[0])).a()); + this.targetSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur -+ this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this)).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this).a(new Class[0])); // Purpur - decompile error this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)); } - diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java -index 886268b09e..a3d8b99742 100644 +index b030fe9577..179a261296 100644 --- a/src/main/java/net/minecraft/server/EntityEvoker.java +++ b/src/main/java/net/minecraft/server/EntityEvoker.java @@ -12,10 +12,28 @@ public class EntityEvoker extends EntityIllagerWizard { @@ -1274,16 +1261,14 @@ index 886268b09e..a3d8b99742 100644 this.goalSelector.a(1, new EntityEvoker.b()); this.goalSelector.a(2, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 0.6D, 1.0D)); this.goalSelector.a(4, new EntityEvoker.c()); -@@ -24,7 +42,8 @@ public class EntityEvoker extends EntityIllagerWizard { +@@ -24,6 +42,7 @@ public class EntityEvoker extends EntityIllagerWizard { this.goalSelector.a(8, new PathfinderGoalRandomStroll(this, 0.6D)); this.goalSelector.a(9, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 3.0F, 1.0F)); this.goalSelector.a(10, new PathfinderGoalLookAtPlayer(this, EntityInsentient.class, 8.0F)); -- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a()); + this.targetSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur -+ this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, EntityRaider.class)).a(new Class[0])); // Purpur - decompile error + this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, EntityRaider.class).a(new Class[0])); // Purpur - decompile error this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300)); this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300)); - this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, false)); @@ -108,6 +127,7 @@ public class EntityEvoker extends EntityIllagerWizard { public d() { @@ -1309,28 +1294,24 @@ index 886268b09e..a3d8b99742 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityFish.java b/src/main/java/net/minecraft/server/EntityFish.java -index d332907b3b..6cb22df32e 100644 +index b853fd0d9b..b8d786fad5 100644 --- a/src/main/java/net/minecraft/server/EntityFish.java +++ b/src/main/java/net/minecraft/server/EntityFish.java -@@ -72,13 +72,10 @@ public abstract class EntityFish extends EntityWaterAnimal { +@@ -72,9 +72,10 @@ public abstract class EntityFish extends EntityWaterAnimal { @Override protected void initPathfinder() { super.initPathfinder(); - this.goalSelector.a(0, new PathfinderGoalPanic(this, 1.25D)); -- PathfinderGoalSelector pathfindergoalselector = this.goalSelector; -- Predicate predicate = IEntitySelector.f; -- -- predicate.getClass(); -- pathfindergoalselector.a(2, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, predicate::test)); +- this.goalSelector.a(2, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, IEntitySelector.f::test)); // Purpur - decompile error - this.goalSelector.a(4, new EntityFish.b(this)); + this.goalSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur + this.goalSelector.a(1, new PathfinderGoalPanic(this, 1.25D)); // Purpur -+ this.goalSelector.a(3, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, IEntitySelector.f::test)); // Purpur - decompile fix ++ this.goalSelector.a(3, new PathfinderGoalAvoidTarget<>(this, EntityHuman.class, 8.0F, 1.6D, 1.4D, IEntitySelector.f::test)); // Purpur - decompile error + this.goalSelector.a(5, new EntityFish.b(this)); // Purpur } @Override -@@ -89,7 +86,7 @@ public abstract class EntityFish extends EntityWaterAnimal { +@@ -85,7 +86,7 @@ public abstract class EntityFish extends EntityWaterAnimal { @Override public void e(Vec3D vec3d) { if (this.doAITick() && this.isInWater()) { @@ -1339,7 +1320,7 @@ index d332907b3b..6cb22df32e 100644 this.move(EnumMoveType.SELF, this.getMot()); this.setMot(this.getMot().a(0.9D)); if (this.getGoalTarget() == null) { -@@ -160,7 +157,7 @@ public abstract class EntityFish extends EntityWaterAnimal { +@@ -156,7 +157,7 @@ public abstract class EntityFish extends EntityWaterAnimal { return SoundEffects.ENTITY_FISH_SWIM; } @@ -1348,19 +1329,19 @@ index d332907b3b..6cb22df32e 100644 private final EntityFish i; -@@ -169,8 +166,16 @@ public abstract class EntityFish extends EntityWaterAnimal { +@@ -165,8 +166,16 @@ public abstract class EntityFish extends EntityWaterAnimal { this.i = entityfish; } + // Purpur start -+ @Override + @Override +- public void a() { + public void tick(EntityHuman rider) { + super.tick(rider); + this.i.setMot(this.i.getMot().add(0.0D, 0.005D, 0.0D)); + } + - @Override -- public void a() { ++ @Override + public void tick() { + // Purpur end if (this.i.a(TagsFluid.WATER)) { @@ -2557,20 +2538,9 @@ index f50ed19080..87ed9a8ca0 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java -index 1402087612..95b786a5a6 100644 +index 94e57a2d85..95b786a5a6 100644 --- a/src/main/java/net/minecraft/server/EntityParrot.java +++ b/src/main/java/net/minecraft/server/EntityParrot.java -@@ -20,8 +20,8 @@ public class EntityParrot extends EntityPerchable implements EntityBird { - } - }; - private static final Item bF = Items.COOKIE; -- private static final Set bG = Sets.newHashSet(new Item[]{Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, Items.BEETROOT_SEEDS}); -- private static final Map, SoundEffect> bH = (Map) SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error -+ private static final Set bG = Sets.newHashSet(Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, Items.BEETROOT_SEEDS); // Purpur - decompile error -+ private static final Map, SoundEffect> bH = SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error // Purpur - decompile error - hashmap.put(EntityTypes.BLAZE, SoundEffects.ENTITY_PARROT_IMITATE_BLAZE); - hashmap.put(EntityTypes.CAVE_SPIDER, SoundEffects.ENTITY_PARROT_IMITATE_SPIDER); - hashmap.put(EntityTypes.CREEPER, SoundEffects.ENTITY_PARROT_IMITATE_CREEPER); @@ -62,12 +62,71 @@ public class EntityParrot extends EntityPerchable implements EntityBird { public EntityParrot(EntityTypes entitytypes, World world) { @@ -3287,30 +3257,10 @@ index 6be29f3078..189515b0ff 100644 public int es() { return 5; diff --git a/src/main/java/net/minecraft/server/EntitySheep.java b/src/main/java/net/minecraft/server/EntitySheep.java -index a8ef98981d..d4f2642d3d 100644 +index d5ffdc110d..d4f2642d3d 100644 --- a/src/main/java/net/minecraft/server/EntitySheep.java +++ b/src/main/java/net/minecraft/server/EntitySheep.java -@@ -18,7 +18,7 @@ import org.bukkit.inventory.InventoryView; - public class EntitySheep extends EntityAnimal { - - private static final DataWatcherObject bw = DataWatcher.a(EntitySheep.class, DataWatcherRegistry.a); -- private static final Map bx = (Map) SystemUtils.a(Maps.newEnumMap(EnumColor.class), (enummap) -> { // CraftBukkit - decompile error -+ private static final Map bx = SystemUtils.a(Maps.newEnumMap(EnumColor.class), (enummap) -> { // CraftBukkit - decompile error // Purpur - decompile error - enummap.put(EnumColor.WHITE, Blocks.WHITE_WOOL); - enummap.put(EnumColor.ORANGE, Blocks.ORANGE_WOOL); - enummap.put(EnumColor.MAGENTA, Blocks.MAGENTA_WOOL); -@@ -36,9 +36,7 @@ public class EntitySheep extends EntityAnimal { - enummap.put(EnumColor.RED, Blocks.RED_WOOL); - enummap.put(EnumColor.BLACK, Blocks.BLACK_WOOL); - }); -- private static final Map by = Maps.newEnumMap((Map) Arrays.stream(EnumColor.values()).collect(Collectors.toMap((enumcolor) -> { -- return enumcolor; -- }, EntitySheep::c))); -+ private static final Map by = Arrays.stream(EnumColor.values()).collect(Collectors.toMap((enumcolor) -> enumcolor, EntitySheep::c)); // Purpur - decompile error - private int bz; - private PathfinderGoalEatTile bA; - -@@ -57,10 +55,28 @@ public class EntitySheep extends EntityAnimal { +@@ -55,10 +55,28 @@ public class EntitySheep extends EntityAnimal { super(entitytypes, world); } @@ -4166,10 +4116,10 @@ index c974c02e92..6ba920134a 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 7b6b1ad17b..a792fbd5e2 100644 +index 1432d3f6bf..447387bd78 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java -@@ -24,18 +24,37 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { +@@ -24,6 +24,23 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { super(entitytypes, world); } @@ -4193,12 +4143,11 @@ index 7b6b1ad17b..a792fbd5e2 100644 @Override protected void initPathfinder() { super.initPathfinder(); - this.bz = new PathfinderGoalNearestHealableRaider<>(this, EntityRaider.class, true, (entityliving) -> { +@@ -31,11 +48,13 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { return entityliving != null && this.eF() && entityliving.getEntityType() != EntityTypes.WITCH; }); -- this.bA = new PathfinderGoalNearestAttackableTargetWitch<>(this, EntityHuman.class, 10, true, false, (Predicate) null); + this.bA = new PathfinderGoalNearestAttackableTargetWitch<>(this, EntityHuman.class, 10, true, false, null); // Purpur - decompile error - this.goalSelector.a(1, new PathfinderGoalFloat(this)); -+ this.bA = new PathfinderGoalNearestAttackableTargetWitch<>(this, EntityHuman.class, 10, true, false, null); // Purpur - fix decompile error + this.goalSelector.a(0, new PathfinderGoalFloat(this)); // Purpur + this.goalSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur this.goalSelector.a(2, new PathfinderGoalArrowAttack(this, 1.0D, 60, 10.0F)); @@ -4206,7 +4155,7 @@ index 7b6b1ad17b..a792fbd5e2 100644 this.goalSelector.a(3, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F)); this.goalSelector.a(3, new PathfinderGoalRandomLookaround(this)); + this.targetSelector.a(0, new net.pl3x.purpur.pathfinder.PathfinderGoalHasRider(this)); // Purpur - this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})); + this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, EntityRaider.class)); // Purpur - decompile error this.targetSelector.a(2, this.bz); this.targetSelector.a(3, this.bA); diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java diff --git a/patches/server/0006-Logger-settings-suppressing-pointless-logs.patch b/patches/server/0006-Logger-settings-suppressing-pointless-logs.patch index b591b6276..4afde1347 100644 --- a/patches/server/0006-Logger-settings-suppressing-pointless-logs.patch +++ b/patches/server/0006-Logger-settings-suppressing-pointless-logs.patch @@ -1,14 +1,14 @@ -From 5eb128f8c8253f499824ed0788de2d6c6277909b Mon Sep 17 00:00:00 2001 +From 66c0fc05bde3188495b1ace6d9a2199a0e826a78 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Sat, 19 Oct 2019 00:52:12 -0500 Subject: [PATCH] Logger settings (suppressing pointless logs) --- .../java/net/minecraft/server/GenericAttributes.java | 1 + - .../net/minecraft/server/WorldGenFeatureConfigured.java | 3 ++- + .../net/minecraft/server/WorldGenFeatureConfigured.java | 1 + src/main/java/net/pl3x/purpur/PurpurConfig.java | 9 +++++++++ .../java/org/bukkit/craftbukkit/legacy/CraftLegacy.java | 1 + - 4 files changed, 13 insertions(+), 1 deletion(-) + 4 files changed, 12 insertions(+) diff --git a/src/main/java/net/minecraft/server/GenericAttributes.java b/src/main/java/net/minecraft/server/GenericAttributes.java index 469e293c25..ca58302cf7 100644 @@ -23,18 +23,9 @@ index 469e293c25..ca58302cf7 100644 } else { a(attributeinstance, nbttagcompound); diff --git a/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java b/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java -index de8f1874af..1c2320cc54 100644 +index 73402f2b5a..1c2320cc54 100644 --- a/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java +++ b/src/main/java/net/minecraft/server/WorldGenFeatureConfigured.java -@@ -25,7 +25,7 @@ public class WorldGenFeatureConfigured a(WorldGenDecoratorConfigured worldgendecoratorconfigured) { - WorldGenerator worldgenerator = this.b instanceof WorldGenFlowers ? WorldGenerator.DECORATED_FLOWER : WorldGenerator.DECORATED; - -- return worldgenerator.b((WorldGenFeatureConfiguration) (new WorldGenFeatureCompositeConfiguration(this, worldgendecoratorconfigured))); -+ return worldgenerator.b(new WorldGenFeatureCompositeConfiguration(this, worldgendecoratorconfigured)); // Purpur - decompile error - } - - public WorldGenFeatureRandomChoiceConfigurationWeight a(float f) { @@ -47,6 +47,7 @@ public class WorldGenFeatureConfigured(worldgenerator, dynamic.get("config").orElseEmptyMap());