From 6b2b1373de471665a7d4c08d7aeec0b665782970 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Sat, 17 Oct 2020 16:03:14 -0500 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appears to apply and compile correctly Paper Changes: cfc098be BukkitValues was renamed ChunkBukkitValues (#4664) 63d6aac4 Updated Upstream (CraftBukkit) (#4663) 8319e912 Fix SafeNBTCopy#hasKey semantics 85eccb57 Don't assume that entries exist for SafeNBTCopy 595734a5 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#4659) fa990d26 Revert "Updated Upstream (Bukkit/CraftBukkit/Spigot)" 23826a3f Updated Upstream (Bukkit/CraftBukkit/Spigot) --- Paper | 2 +- current-paper | 2 +- .../server/0001-Tuinity-Server-Changes.patch | 178 +++++++-------- patches/server/0009-AFK-API.patch | 22 +- .../0021-Player-invulnerabilities.patch | 12 +- patches/server/0118-Ridables.patch | 210 +++++++++--------- ...tent-TileEntity-Lore-and-DisplayName.patch | 10 +- 7 files changed, 218 insertions(+), 218 deletions(-) diff --git a/Paper b/Paper index fabf213e9..cfc098be5 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit fabf213e918df07d3f62917a03f3514e36a9dd3d +Subproject commit cfc098be5cad41d16fe6c8f042c6458565e7a7cf diff --git a/current-paper b/current-paper index c45d57218..84facb70c 100644 --- a/current-paper +++ b/current-paper @@ -1 +1 @@ -1.16.3--3aebf776907035ee3a8ece5129c13f2e0d0bd1e1 +1.16.3--780f0992380edf85b75734fa90ec209bb0653057 diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index fdccedac9..875a644b0 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -271,7 +271,7 @@ Temporarily Revert usage of Region Manager Has some stability issues. diff --git a/pom.xml b/pom.xml -index add3a9c1a9..5e25ae55e4 100644 +index 9211fac20..e5b74fbf2 100644 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,11 @@ @@ -330,7 +330,7 @@ index add3a9c1a9..5e25ae55e4 100644 diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java -index 884b59d478..68ab5ccb2f 100644 +index 884b59d47..68ab5ccb2 100644 --- a/src/main/java/co/aikar/timings/MinecraftTimings.java +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -43,6 +43,9 @@ public final class MinecraftTimings { @@ -344,7 +344,7 @@ index 884b59d478..68ab5ccb2f 100644 private MinecraftTimings() {} diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java -index e33e889c29..5dfa065883 100644 +index e33e889c2..5dfa06588 100644 --- a/src/main/java/co/aikar/timings/TimingsExport.java +++ b/src/main/java/co/aikar/timings/TimingsExport.java @@ -229,7 +229,8 @@ public class TimingsExport extends Thread { @@ -358,7 +358,7 @@ index e33e889c29..5dfa065883 100644 new TimingsExport(listeners, parent, history).start(); diff --git a/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java -index 49a38c6608..255bbd6e48 100644 +index 49a38c660..255bbd6e4 100644 --- a/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java +++ b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java @@ -24,8 +24,8 @@ public class PaperVersionFetcher implements VersionFetcher { @@ -389,7 +389,7 @@ index 49a38c6608..255bbd6e48 100644 switch (distance) { case -1: diff --git a/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java b/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java -index e7624948ea..77df688880 100644 +index e7624948e..77df68888 100644 --- a/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java +++ b/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java @@ -186,6 +186,7 @@ public final class PaperTickList extends TickListServer { // extend to avo @@ -473,7 +473,7 @@ index e7624948ea..77df688880 100644 int ret = 0; diff --git a/src/main/java/com/mojang/brigadier/CommandDispatcher.java b/src/main/java/com/mojang/brigadier/CommandDispatcher.java -index 103576715e..e8fdbe7b8d 100644 +index 103576715..e8fdbe7b8 100644 --- a/src/main/java/com/mojang/brigadier/CommandDispatcher.java +++ b/src/main/java/com/mojang/brigadier/CommandDispatcher.java @@ -590,10 +590,11 @@ public class CommandDispatcher { @@ -490,7 +490,7 @@ index 103576715e..e8fdbe7b8d 100644 } futures[i++] = future; diff --git a/src/main/java/com/mojang/brigadier/arguments/BoolArgumentType.java b/src/main/java/com/mojang/brigadier/arguments/BoolArgumentType.java -index cb993ca102..849686f7b2 100644 +index cb993ca10..849686f7b 100644 --- a/src/main/java/com/mojang/brigadier/arguments/BoolArgumentType.java +++ b/src/main/java/com/mojang/brigadier/arguments/BoolArgumentType.java @@ -34,10 +34,10 @@ public class BoolArgumentType implements ArgumentType { @@ -507,7 +507,7 @@ index cb993ca102..849686f7b2 100644 } return builder.buildFuture(); diff --git a/src/main/java/com/mojang/brigadier/suggestion/SuggestionsBuilder.java b/src/main/java/com/mojang/brigadier/suggestion/SuggestionsBuilder.java -index bc0024adb8..0343f6663c 100644 +index bc0024adb..0343f6663 100644 --- a/src/main/java/com/mojang/brigadier/suggestion/SuggestionsBuilder.java +++ b/src/main/java/com/mojang/brigadier/suggestion/SuggestionsBuilder.java @@ -14,9 +14,16 @@ public class SuggestionsBuilder { @@ -528,7 +528,7 @@ index bc0024adb8..0343f6663c 100644 this.start = start; this.remaining = input.substring(start); diff --git a/src/main/java/com/mojang/brigadier/tree/LiteralCommandNode.java b/src/main/java/com/mojang/brigadier/tree/LiteralCommandNode.java -index 7720578796..e5db29d4ca 100644 +index 772057879..e5db29d4c 100644 --- a/src/main/java/com/mojang/brigadier/tree/LiteralCommandNode.java +++ b/src/main/java/com/mojang/brigadier/tree/LiteralCommandNode.java @@ -20,11 +20,11 @@ import java.util.concurrent.CompletableFuture; @@ -556,7 +556,7 @@ index 7720578796..e5db29d4ca 100644 return Suggestions.empty(); diff --git a/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java new file mode 100644 -index 0000000000..4cb10fe69c +index 000000000..4cb10fe69 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java @@ -0,0 +1,408 @@ @@ -971,7 +971,7 @@ index 0000000000..4cb10fe69c \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java new file mode 100644 -index 0000000000..996be9b7f1 +index 000000000..996be9b7f --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java @@ -0,0 +1,273 @@ @@ -1251,7 +1251,7 @@ index 0000000000..996be9b7f1 \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/util/CachedLists.java b/src/main/java/com/tuinity/tuinity/util/CachedLists.java new file mode 100644 -index 0000000000..a54f516ba7 +index 000000000..a54f516ba --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/CachedLists.java @@ -0,0 +1,53 @@ @@ -1310,7 +1310,7 @@ index 0000000000..a54f516ba7 +} diff --git a/src/main/java/com/tuinity/tuinity/util/TickThread.java b/src/main/java/com/tuinity/tuinity/util/TickThread.java new file mode 100644 -index 0000000000..08ed243259 +index 000000000..08ed24325 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/TickThread.java @@ -0,0 +1,41 @@ @@ -1358,7 +1358,7 @@ index 0000000000..08ed243259 \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java new file mode 100644 -index 0000000000..6d2851ffa3 +index 000000000..6d2851ffa --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java @@ -0,0 +1,288 @@ @@ -1652,7 +1652,7 @@ index 0000000000..6d2851ffa3 +} diff --git a/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java b/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java new file mode 100644 -index 0000000000..b321ad5163 +index 000000000..b321ad516 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java @@ -0,0 +1,162 @@ @@ -1819,7 +1819,7 @@ index 0000000000..b321ad5163 + } +} diff --git a/src/main/java/net/minecraft/server/AxisAlignedBB.java b/src/main/java/net/minecraft/server/AxisAlignedBB.java -index ed9b2f9adf..6aa9f07336 100644 +index ed9b2f9ad..6aa9f0733 100644 --- a/src/main/java/net/minecraft/server/AxisAlignedBB.java +++ b/src/main/java/net/minecraft/server/AxisAlignedBB.java @@ -13,6 +13,149 @@ public class AxisAlignedBB { @@ -1997,7 +1997,7 @@ index ed9b2f9adf..6aa9f07336 100644 return d0 >= this.minX && d0 < this.maxX && d1 >= this.minY && d1 < this.maxY && d2 >= this.minZ && d2 < this.maxZ; } diff --git a/src/main/java/net/minecraft/server/BaseBlockPosition.java b/src/main/java/net/minecraft/server/BaseBlockPosition.java -index 6b655b744d..e811295b4d 100644 +index 6b655b744..e811295b4 100644 --- a/src/main/java/net/minecraft/server/BaseBlockPosition.java +++ b/src/main/java/net/minecraft/server/BaseBlockPosition.java @@ -16,9 +16,9 @@ public class BaseBlockPosition implements Comparable { @@ -2033,7 +2033,7 @@ index 6b655b744d..e811295b4d 100644 } diff --git a/src/main/java/net/minecraft/server/BlockBase.java b/src/main/java/net/minecraft/server/BlockBase.java -index 5131d2172d..478950e5bf 100644 +index 5131d2172..478950e5b 100644 --- a/src/main/java/net/minecraft/server/BlockBase.java +++ b/src/main/java/net/minecraft/server/BlockBase.java @@ -182,8 +182,8 @@ public abstract class BlockBase { @@ -2109,7 +2109,7 @@ index 5131d2172d..478950e5bf 100644 public final boolean e() { // Paper diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java -index 12a0230448..9e5e6de52e 100644 +index 12a023044..9e5e6de52 100644 --- a/src/main/java/net/minecraft/server/BlockChest.java +++ b/src/main/java/net/minecraft/server/BlockChest.java @@ -195,7 +195,7 @@ public class BlockChest extends BlockChestAbstract implements I @@ -2122,7 +2122,7 @@ index 12a0230448..9e5e6de52e 100644 if (tileentity instanceof IInventory) { InventoryUtils.dropInventory(world, blockposition, (IInventory) tileentity); diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index 2d887af902..2291135eae 100644 +index 2d887af90..2291135ea 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -449,10 +449,10 @@ public class BlockPosition extends BaseBlockPosition { @@ -2219,7 +2219,7 @@ index 2d887af902..2291135eae 100644 @Override public BlockPosition immutableCopy() { diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 299d7d7a55..ac6e5e3309 100644 +index 083da88c1..018972007 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -91,6 +91,56 @@ public class Chunk implements IChunkAccess { @@ -2279,7 +2279,7 @@ index 299d7d7a55..ac6e5e3309 100644 public Chunk(World world, ChunkCoordIntPair chunkcoordintpair, BiomeStorage biomestorage, ChunkConverter chunkconverter, TickList ticklist, TickList ticklist1, long i, @Nullable ChunkSection[] achunksection, @Nullable Consumer consumer) { this.sections = new ChunkSection[16]; this.e = Maps.newHashMap(); -@@ -327,7 +377,7 @@ public class Chunk implements IChunkAccess { +@@ -330,7 +380,7 @@ public class Chunk implements IChunkAccess { Entry entry = (Entry) iterator.next(); if (ChunkStatus.FULL.h().contains(entry.getKey())) { @@ -2288,7 +2288,7 @@ index 299d7d7a55..ac6e5e3309 100644 } } -@@ -544,6 +594,7 @@ public class Chunk implements IChunkAccess { +@@ -547,6 +597,7 @@ public class Chunk implements IChunkAccess { @Override public void a(Entity entity) { @@ -2296,7 +2296,7 @@ index 299d7d7a55..ac6e5e3309 100644 this.q = true; int i = MathHelper.floor(entity.locX() / 16.0D); int j = MathHelper.floor(entity.locZ() / 16.0D); -@@ -590,7 +641,7 @@ public class Chunk implements IChunkAccess { +@@ -593,7 +644,7 @@ public class Chunk implements IChunkAccess { entity.chunkY = k; entity.chunkZ = this.loc.z; this.entities.add(entity); // Paper - per chunk entity list @@ -2305,7 +2305,7 @@ index 299d7d7a55..ac6e5e3309 100644 // Paper start if (entity instanceof EntityItem) { itemCounts[k]++; -@@ -613,6 +664,7 @@ public class Chunk implements IChunkAccess { +@@ -616,6 +667,7 @@ public class Chunk implements IChunkAccess { } public void a(Entity entity, int i) { @@ -2313,7 +2313,7 @@ index 299d7d7a55..ac6e5e3309 100644 if (i < 0) { i = 0; } -@@ -627,7 +679,7 @@ public class Chunk implements IChunkAccess { +@@ -630,7 +682,7 @@ public class Chunk implements IChunkAccess { entity.entitySlice = null; entity.inChunk = false; } @@ -2322,7 +2322,7 @@ index 299d7d7a55..ac6e5e3309 100644 return; } if (entity instanceof EntityItem) { -@@ -870,6 +922,7 @@ public class Chunk implements IChunkAccess { +@@ -873,6 +925,7 @@ public class Chunk implements IChunkAccess { } public void a(@Nullable Entity entity, AxisAlignedBB axisalignedbb, List list, @Nullable Predicate predicate) { @@ -2330,7 +2330,7 @@ index 299d7d7a55..ac6e5e3309 100644 int i = MathHelper.floor((axisalignedbb.minY - 2.0D) / 16.0D); int j = MathHelper.floor((axisalignedbb.maxY + 2.0D) / 16.0D); -@@ -909,6 +962,7 @@ public class Chunk implements IChunkAccess { +@@ -912,6 +965,7 @@ public class Chunk implements IChunkAccess { } public void a(@Nullable EntityTypes entitytypes, AxisAlignedBB axisalignedbb, List list, Predicate predicate) { @@ -2338,7 +2338,7 @@ index 299d7d7a55..ac6e5e3309 100644 int i = MathHelper.floor((axisalignedbb.minY - 2.0D) / 16.0D); int j = MathHelper.floor((axisalignedbb.maxY + 2.0D) / 16.0D); -@@ -939,6 +993,7 @@ public class Chunk implements IChunkAccess { +@@ -942,6 +996,7 @@ public class Chunk implements IChunkAccess { } public void a(Class oclass, AxisAlignedBB axisalignedbb, List list, @Nullable Predicate predicate) { @@ -2346,7 +2346,7 @@ index 299d7d7a55..ac6e5e3309 100644 int i = MathHelper.floor((axisalignedbb.minY - 2.0D) / 16.0D); int j = MathHelper.floor((axisalignedbb.maxY + 2.0D) / 16.0D); -@@ -1126,7 +1181,7 @@ public class Chunk implements IChunkAccess { +@@ -1129,7 +1184,7 @@ public class Chunk implements IChunkAccess { IBlockData iblockdata = this.getType(blockposition); IBlockData iblockdata1 = Block.b(iblockdata, (GeneratorAccess) this.world, blockposition); @@ -2356,7 +2356,7 @@ index 299d7d7a55..ac6e5e3309 100644 this.n[i].clear(); diff --git a/src/main/java/net/minecraft/server/ChunkMapDistance.java b/src/main/java/net/minecraft/server/ChunkMapDistance.java -index 3c7b225edb..1b750da9e0 100644 +index 3c7b225ed..1b750da9e 100644 --- a/src/main/java/net/minecraft/server/ChunkMapDistance.java +++ b/src/main/java/net/minecraft/server/ChunkMapDistance.java @@ -31,7 +31,7 @@ public abstract class ChunkMapDistance { @@ -2525,7 +2525,7 @@ index 3c7b225edb..1b750da9e0 100644 for (java.util.Iterator>>> iterator = this.tickets.long2ObjectEntrySet().fastIterator(); iterator.hasNext();) { diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 45c142c227..b74ff6b9f3 100644 +index 45c142c22..b74ff6b9f 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -22,6 +22,12 @@ import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; // Paper @@ -2944,7 +2944,7 @@ index 45c142c227..b74ff6b9f3 100644 try { boolean execChunkTask = com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollChunkWaitQueue() || ChunkProviderServer.this.world.asyncChunkTaskManager.pollNextChunkTask(); // Paper diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index a0353da423..c2adc7f522 100644 +index 8e7da2c5f..5eb14c4cd 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -24,6 +24,14 @@ public class ChunkRegionLoader { @@ -2962,7 +2962,7 @@ index a0353da423..c2adc7f522 100644 // Paper start - guard against serializing mismatching coordinates // TODO Note: This needs to be re-checked each update public static ChunkCoordIntPair getChunkCoordinate(NBTTagCompound chunkData) { -@@ -388,10 +396,10 @@ public class ChunkRegionLoader { +@@ -401,10 +409,10 @@ public class ChunkRegionLoader { NBTTagCompound nbttagcompound1 = new NBTTagCompound(); nbttagcompound.setInt("DataVersion", SharedConstants.getGameVersion().getWorldVersion()); @@ -2976,7 +2976,7 @@ index a0353da423..c2adc7f522 100644 nbttagcompound1.setString("Status", ichunkaccess.getChunkStatus().d()); ChunkConverter chunkconverter = ichunkaccess.p(); diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java -index e52df8096e..cebd808e27 100644 +index e52df8096..cebd808e2 100644 --- a/src/main/java/net/minecraft/server/ChunkSection.java +++ b/src/main/java/net/minecraft/server/ChunkSection.java @@ -96,6 +96,7 @@ public class ChunkSection { @@ -2988,7 +2988,7 @@ index e52df8096e..cebd808e27 100644 return this.nonEmptyBlockCount == 0; } diff --git a/src/main/java/net/minecraft/server/ChunkStatus.java b/src/main/java/net/minecraft/server/ChunkStatus.java -index f6c9bdbf52..51ea295d66 100644 +index f6c9bdbf5..51ea295d6 100644 --- a/src/main/java/net/minecraft/server/ChunkStatus.java +++ b/src/main/java/net/minecraft/server/ChunkStatus.java @@ -109,7 +109,7 @@ public class ChunkStatus { @@ -3010,7 +3010,7 @@ index f6c9bdbf52..51ea295d66 100644 } diff --git a/src/main/java/net/minecraft/server/DataBits.java b/src/main/java/net/minecraft/server/DataBits.java -index 26b48b5ffa..353b61aa57 100644 +index 26b48b5ff..353b61aa5 100644 --- a/src/main/java/net/minecraft/server/DataBits.java +++ b/src/main/java/net/minecraft/server/DataBits.java @@ -52,6 +52,7 @@ public class DataBits { @@ -3038,7 +3038,7 @@ index 26b48b5ffa..353b61aa57 100644 //Validate.inclusiveBetween(0L, (long) (this.e - 1), (long) i); // Paper int j = this.b(i); diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java -index 95ef962868..73163b417a 100644 +index 95ef96286..73163b417 100644 --- a/src/main/java/net/minecraft/server/DataPaletteBlock.java +++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java @@ -163,6 +163,7 @@ public class DataPaletteBlock implements DataPaletteExpandable { @@ -3050,7 +3050,7 @@ index 95ef962868..73163b417a 100644 T t0 = this.h.a(this.a.a(i)); diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index f55dc28f3e..8542f2f4d2 100644 +index f55dc28f3..8542f2f4d 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -166,6 +166,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -3062,7 +3062,7 @@ index f55dc28f3e..8542f2f4d2 100644 this.setPVP(dedicatedserverproperties.pvp); this.setAllowFlight(dedicatedserverproperties.allowFlight); diff --git a/src/main/java/net/minecraft/server/EULA.java b/src/main/java/net/minecraft/server/EULA.java -index 550232cb38..229c3b0f0c 100644 +index 550232cb3..229c3b0f0 100644 --- a/src/main/java/net/minecraft/server/EULA.java +++ b/src/main/java/net/minecraft/server/EULA.java @@ -70,7 +70,7 @@ public class EULA { @@ -3075,7 +3075,7 @@ index 550232cb38..229c3b0f0c 100644 throwable = throwable1; throw throwable1; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index b845e488e3..86903aaa02 100644 +index b845e488e..86903aaa0 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -136,7 +136,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -3392,7 +3392,7 @@ index b845e488e3..86903aaa02 100644 int j = MathHelper.floor(d1); int k = MathHelper.floor(d2); diff --git a/src/main/java/net/minecraft/server/EntityCat.java b/src/main/java/net/minecraft/server/EntityCat.java -index 3148863984..79de11ce2f 100644 +index 314886398..79de11ce2 100644 --- a/src/main/java/net/minecraft/server/EntityCat.java +++ b/src/main/java/net/minecraft/server/EntityCat.java @@ -292,7 +292,7 @@ public class EntityCat extends EntityTameableAnimal { @@ -3405,7 +3405,7 @@ index 3148863984..79de11ce2f 100644 this.setPersistent(); } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 76185f042d..0e000c7186 100644 +index 76185f042..0e000c718 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2847,7 +2847,11 @@ public abstract class EntityLiving extends Entity { @@ -3432,7 +3432,7 @@ index 76185f042d..0e000c7186 100644 } diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index 4efc40c01e..f322dccd83 100644 +index 4efc40c01..f322dccd8 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -74,6 +74,7 @@ public class EntityTrackerEntry { @@ -3444,7 +3444,7 @@ index 4efc40c01e..f322dccd83 100644 if (!list.equals(this.p)) { diff --git a/src/main/java/net/minecraft/server/HeightMap.java b/src/main/java/net/minecraft/server/HeightMap.java -index 068b92c5c4..a43c4ca3ea 100644 +index 068b92c5c..a43c4ca3e 100644 --- a/src/main/java/net/minecraft/server/HeightMap.java +++ b/src/main/java/net/minecraft/server/HeightMap.java @@ -19,7 +19,25 @@ public class HeightMap { @@ -3528,7 +3528,7 @@ index 068b92c5c4..a43c4ca3ea 100644 this.i = heightmap_use; this.j = predicate; diff --git a/src/main/java/net/minecraft/server/IChunkLoader.java b/src/main/java/net/minecraft/server/IChunkLoader.java -index 582a5695ba..5601088cd5 100644 +index 582a5695b..5601088cd 100644 --- a/src/main/java/net/minecraft/server/IChunkLoader.java +++ b/src/main/java/net/minecraft/server/IChunkLoader.java @@ -21,7 +21,7 @@ public class IChunkLoader implements AutoCloseable { @@ -3541,7 +3541,7 @@ index 582a5695ba..5601088cd5 100644 // Paper - nuke IOWorker } diff --git a/src/main/java/net/minecraft/server/ICollisionAccess.java b/src/main/java/net/minecraft/server/ICollisionAccess.java -index 25e54a1fad..b66c802d5e 100644 +index 25e54a1fa..b66c802d5 100644 --- a/src/main/java/net/minecraft/server/ICollisionAccess.java +++ b/src/main/java/net/minecraft/server/ICollisionAccess.java @@ -46,6 +46,11 @@ public interface ICollisionAccess extends IBlockAccess { @@ -3557,7 +3557,7 @@ index 25e54a1fad..b66c802d5e 100644 return this.d(entity, axisalignedbb, predicate).allMatch(VoxelShape::isEmpty); } finally { if (entity != null) entity.collisionLoadChunks = false; } // Paper diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index 1cb8ba7cd2..882b82d895 100644 +index 1cb8ba7cd..882b82d89 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -52,16 +52,26 @@ public interface IEntityAccess { @@ -3599,7 +3599,7 @@ index 1cb8ba7cd2..882b82d895 100644 } diff --git a/src/main/java/net/minecraft/server/LightEngineStorage.java b/src/main/java/net/minecraft/server/LightEngineStorage.java -index b98e60772b..e0bbfe1422 100644 +index b98e60772..e0bbfe142 100644 --- a/src/main/java/net/minecraft/server/LightEngineStorage.java +++ b/src/main/java/net/minecraft/server/LightEngineStorage.java @@ -23,7 +23,8 @@ public abstract class LightEngineStorage> e @@ -3631,7 +3631,7 @@ index b98e60772b..e0bbfe1422 100644 while (objectiterator.hasNext()) { entry = (Entry) objectiterator.next(); diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java -index ff74be1451..653ba0f1d8 100644 +index ff74be145..653ba0f1d 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -38,6 +38,7 @@ import java.util.function.Consumer; @@ -3643,7 +3643,7 @@ index ff74be1451..653ba0f1d8 100644 0, 2, 60L, TimeUnit.SECONDS, new LinkedBlockingQueue(), diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 26bbfeba13..c5a8d6d3fb 100644 +index 26bbfeba1..c5a8d6d3f 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -985,7 +985,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant> { @@ -3956,7 +3956,7 @@ index c9b36e6040..aa1597c772 100644 } return true; diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 5094a5d6fb..72fdbf1534 100644 +index 5094a5d6f..72fdbf153 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -19,7 +19,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -4101,7 +4101,7 @@ index 5094a5d6fb..72fdbf1534 100644 } } diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java -index 11a67ca18f..7cc6dfd3d7 100644 +index 11a67ca18..7cc6dfd3d 100644 --- a/src/main/java/net/minecraft/server/PlayerChunk.java +++ b/src/main/java/net/minecraft/server/PlayerChunk.java @@ -362,7 +362,7 @@ public class PlayerChunk { @@ -4234,7 +4234,7 @@ index 11a67ca18f..7cc6dfd3d7 100644 if (chunk != null) { playerchunkmap.callbackExecutor.execute(() -> { diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 6c399bcea0..087bbad025 100644 +index 6c399bcea..087bbad02 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -121,31 +121,28 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { @@ -4482,7 +4482,7 @@ index 6c399bcea0..087bbad025 100644 } // Paper end - optimised tracker diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 4b0ff3e1ac..da2039b536 100644 +index 4b0ff3e1a..da2039b53 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -372,7 +372,9 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -4532,7 +4532,7 @@ index 4b0ff3e1ac..da2039b536 100644 } else { // CraftBukkit start - fire PlayerMoveEvent diff --git a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java -index 7ea293f38d..e698dd2260 100644 +index 7ea293f38..e698dd226 100644 --- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java +++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java @@ -13,10 +13,30 @@ public class PlayerConnectionUtils { @@ -4580,7 +4580,7 @@ index 7ea293f38d..e698dd2260 100644 }); throw CancelledPacketHandleException.INSTANCE; diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java -index ac3bee9dfb..06a1b4b977 100644 +index ac3bee9df..06a1b4b97 100644 --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java @@ -21,14 +21,29 @@ public class PlayerInteractManager { @@ -4715,7 +4715,7 @@ index ac3bee9dfb..06a1b4b977 100644 this.player.playerConnection.sendPacket(new PacketPlayOutBlockChange(this.world, blockposition)); // CraftBukkit - SPIGOT-5196 } diff --git a/src/main/java/net/minecraft/server/ProtoChunk.java b/src/main/java/net/minecraft/server/ProtoChunk.java -index 5b0cd414ca..a3ac883500 100644 +index 5b0cd414c..a3ac88350 100644 --- a/src/main/java/net/minecraft/server/ProtoChunk.java +++ b/src/main/java/net/minecraft/server/ProtoChunk.java @@ -179,14 +179,11 @@ public class ProtoChunk implements IChunkAccess { @@ -4751,7 +4751,7 @@ index 5b0cd414ca..a3ac883500 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 1751fb6934..1ffa213a81 100644 +index 1751fb693..1ffa213a8 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -5,6 +5,7 @@ import java.io.BufferedInputStream; @@ -5377,7 +5377,7 @@ index 1751fb6934..1ffa213a81 100644 ((java.nio.Buffer) this.g).position(0); this.dataFile.write(this.g, 0L); diff --git a/src/main/java/net/minecraft/server/RegionFileBitSet.java b/src/main/java/net/minecraft/server/RegionFileBitSet.java -index 1ebdf73cc9..cfa3ecb031 100644 +index 1ebdf73cc..cfa3ecb03 100644 --- a/src/main/java/net/minecraft/server/RegionFileBitSet.java +++ b/src/main/java/net/minecraft/server/RegionFileBitSet.java @@ -4,18 +4,42 @@ import java.util.BitSet; @@ -5425,7 +5425,7 @@ index 1ebdf73cc9..cfa3ecb031 100644 int j = 0; diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index d64f7ad925..8b341c14e7 100644 +index d64f7ad92..8b341c14e 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -15,12 +15,43 @@ public class RegionFileCache implements AutoCloseable { // Paper - no final @@ -5517,7 +5517,7 @@ index d64f7ad925..8b341c14e7 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFileCompression.java b/src/main/java/net/minecraft/server/RegionFileCompression.java -index 3382d678e6..3b7894256d 100644 +index 3382d678e..3b7894256 100644 --- a/src/main/java/net/minecraft/server/RegionFileCompression.java +++ b/src/main/java/net/minecraft/server/RegionFileCompression.java @@ -13,7 +13,7 @@ import javax.annotation.Nullable; @@ -5557,7 +5557,7 @@ index 3382d678e6..3b7894256d 100644 return (InputStream) this.f.wrap(inputstream); } diff --git a/src/main/java/net/minecraft/server/StructureManager.java b/src/main/java/net/minecraft/server/StructureManager.java -index f199368a6d..2598ae3710 100644 +index f199368a6..2598ae371 100644 --- a/src/main/java/net/minecraft/server/StructureManager.java +++ b/src/main/java/net/minecraft/server/StructureManager.java @@ -35,8 +35,13 @@ public class StructureManager { @@ -5590,7 +5590,7 @@ index f199368a6d..2598ae3710 100644 if (!flag) { return structurestart; diff --git a/src/main/java/net/minecraft/server/Ticket.java b/src/main/java/net/minecraft/server/Ticket.java -index e41cb8613e..c19ffb925a 100644 +index e41cb8613..c19ffb925 100644 --- a/src/main/java/net/minecraft/server/Ticket.java +++ b/src/main/java/net/minecraft/server/Ticket.java @@ -5,17 +5,17 @@ import java.util.Objects; @@ -5627,7 +5627,7 @@ index e41cb8613e..c19ffb925a 100644 return j != 0L && i - this.d > j; } diff --git a/src/main/java/net/minecraft/server/TicketType.java b/src/main/java/net/minecraft/server/TicketType.java -index 5c789b25f1..25cff70b45 100644 +index 5c789b25f..25cff70b4 100644 --- a/src/main/java/net/minecraft/server/TicketType.java +++ b/src/main/java/net/minecraft/server/TicketType.java @@ -26,8 +26,19 @@ public class TicketType { @@ -5652,7 +5652,7 @@ index 5c789b25f1..25cff70b45 100644 return new TicketType<>(s, comparator, 0L); } diff --git a/src/main/java/net/minecraft/server/UserCache.java b/src/main/java/net/minecraft/server/UserCache.java -index 2484293b12..1496c43fc9 100644 +index 2484293b1..1496c43fc 100644 --- a/src/main/java/net/minecraft/server/UserCache.java +++ b/src/main/java/net/minecraft/server/UserCache.java @@ -49,6 +49,11 @@ public class UserCache { @@ -5737,7 +5737,7 @@ index 2484293b12..1496c43fc9 100644 private static JsonElement a(UserCache.UserCacheEntry usercache_usercacheentry, DateFormat dateformat) { diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java -index 7f05587d42..5af554870b 100644 +index 7f05587d4..5af554870 100644 --- a/src/main/java/net/minecraft/server/Vec3D.java +++ b/src/main/java/net/minecraft/server/Vec3D.java @@ -4,7 +4,7 @@ import java.util.EnumSet; @@ -5771,7 +5771,7 @@ index 7f05587d42..5af554870b 100644 return this.x * this.x + this.y * this.y + this.z * this.z; } diff --git a/src/main/java/net/minecraft/server/VillagePlace.java b/src/main/java/net/minecraft/server/VillagePlace.java -index b926cebd05..adacfce6f3 100644 +index b926cebd0..adacfce6f 100644 --- a/src/main/java/net/minecraft/server/VillagePlace.java +++ b/src/main/java/net/minecraft/server/VillagePlace.java @@ -165,7 +165,7 @@ public class VillagePlace extends RegionFileSection { @@ -5784,7 +5784,7 @@ index b926cebd05..adacfce6f3 100644 } // Paper end diff --git a/src/main/java/net/minecraft/server/VoxelShape.java b/src/main/java/net/minecraft/server/VoxelShape.java -index eb926b74e1..700660dd93 100644 +index eb926b74e..700660dd9 100644 --- a/src/main/java/net/minecraft/server/VoxelShape.java +++ b/src/main/java/net/minecraft/server/VoxelShape.java @@ -8,11 +8,11 @@ import javax.annotation.Nullable; @@ -5827,7 +5827,7 @@ index eb926b74e1..700660dd93 100644 List list = Lists.newArrayList(); diff --git a/src/main/java/net/minecraft/server/VoxelShapeArray.java b/src/main/java/net/minecraft/server/VoxelShapeArray.java -index 3c29cb1452..d318ec207c 100644 +index 3c29cb145..d318ec207 100644 --- a/src/main/java/net/minecraft/server/VoxelShapeArray.java +++ b/src/main/java/net/minecraft/server/VoxelShapeArray.java @@ -3,6 +3,7 @@ package net.minecraft.server; @@ -5931,7 +5931,7 @@ index 3c29cb1452..d318ec207c 100644 + // Tuinity end - optimise multi-aabb shapes } diff --git a/src/main/java/net/minecraft/server/VoxelShapeSpliterator.java b/src/main/java/net/minecraft/server/VoxelShapeSpliterator.java -index e841611bb7..259605daab 100644 +index e841611bb..259605daa 100644 --- a/src/main/java/net/minecraft/server/VoxelShapeSpliterator.java +++ b/src/main/java/net/minecraft/server/VoxelShapeSpliterator.java @@ -91,7 +91,7 @@ public class VoxelShapeSpliterator extends AbstractSpliterator { @@ -5944,7 +5944,7 @@ index e841611bb7..259605daab 100644 } diff --git a/src/main/java/net/minecraft/server/VoxelShapes.java b/src/main/java/net/minecraft/server/VoxelShapes.java -index e21c747b6c..4bdadffee0 100644 +index e21c747b6..4bdadffee 100644 --- a/src/main/java/net/minecraft/server/VoxelShapes.java +++ b/src/main/java/net/minecraft/server/VoxelShapes.java @@ -17,18 +17,80 @@ public final class VoxelShapes { @@ -6070,7 +6070,7 @@ index e21c747b6c..4bdadffee0 100644 return voxelshape != b() && voxelshape1 != b() ? (voxelshape.isEmpty() && voxelshape1.isEmpty() ? false : !c(b(), b(voxelshape, voxelshape1, OperatorBoolean.OR), OperatorBoolean.ONLY_FIRST)) : true; } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index d91124bc85..db90920c8d 100644 +index d91124bc8..db90920c8 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -94,6 +94,8 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -6177,7 +6177,7 @@ index d91124bc85..db90920c8d 100644 int j = MathHelper.floor((axisalignedbb.maxX + 2.0D) / 16.0D); int k = MathHelper.floor((axisalignedbb.minZ - 2.0D) / 16.0D); diff --git a/src/main/java/net/minecraft/server/WorldBorder.java b/src/main/java/net/minecraft/server/WorldBorder.java -index f011869880..26a8c4ffe2 100644 +index f01186988..26a8c4ffe 100644 --- a/src/main/java/net/minecraft/server/WorldBorder.java +++ b/src/main/java/net/minecraft/server/WorldBorder.java @@ -47,11 +47,43 @@ public class WorldBorder { @@ -6248,7 +6248,7 @@ index f011869880..26a8c4ffe2 100644 return this.j.d(); } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 95da2a5602..215789b762 100644 +index 95da2a560..215789b76 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -51,12 +51,13 @@ import org.bukkit.event.server.MapInitializeEvent; @@ -6933,7 +6933,7 @@ index 95da2a5602..215789b762 100644 this.tickingEntities = wasTicking; // Paper } diff --git a/src/main/java/net/minecraft/server/WorldUpgrader.java b/src/main/java/net/minecraft/server/WorldUpgrader.java -index 5ccdc0b87b..888dae2d5e 100644 +index 5ccdc0b87..888dae2d5 100644 --- a/src/main/java/net/minecraft/server/WorldUpgrader.java +++ b/src/main/java/net/minecraft/server/WorldUpgrader.java @@ -218,7 +218,7 @@ public class WorldUpgrader { @@ -6946,7 +6946,7 @@ index 5ccdc0b87b..888dae2d5e 100644 try { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d8d29d1455..786ddcee7e 100644 +index d8d29d145..786ddcee7 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -232,7 +232,7 @@ import javax.annotation.Nullable; // Paper @@ -7002,7 +7002,7 @@ index d8d29d1455..786ddcee7e 100644 public void restart() { org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 299f57ca2a..4de6252f07 100644 +index 299f57ca2..4de6252f0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -341,6 +341,14 @@ public class CraftWorld implements World { @@ -7054,7 +7054,7 @@ index 299f57ca2a..4de6252f07 100644 }, MinecraftServer.getServer()); } diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 26c0ced8c2..0f4503940a 100644 +index 26c0ced8c..0f4503940 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -138,6 +138,13 @@ public class Main { @@ -7081,10 +7081,10 @@ index 26c0ced8c2..0f4503940a 100644 //Thread.sleep(TimeUnit.SECONDS.toMillis(20)); // Paper End diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 6f59f8d454..704d000001 100644 +index f7d751348..f4d48753a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -501,27 +501,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -502,27 +502,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { entity.setHeadRotation(yaw); } @@ -7113,7 +7113,7 @@ index 6f59f8d454..704d000001 100644 @Override public boolean teleport(Location location) { -@@ -555,6 +535,37 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -556,6 +536,37 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return true; } @@ -7152,7 +7152,7 @@ index 6f59f8d454..704d000001 100644 public boolean teleport(org.bukkit.entity.Entity destination) { return teleport(destination.getLocation()); diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java -index fd32d1450a..c38e514b00 100644 +index fd32d1450..c38e514b0 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java @@ -25,6 +25,10 @@ class CraftAsyncTask extends CraftTask { @@ -7175,7 +7175,7 @@ index fd32d1450a..c38e514b00 100644 LinkedList getWorkers() { diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java -index 6fa2e271f7..3a9491e949 100644 +index 6fa2e271f..3a9491e94 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java @@ -113,9 +113,18 @@ public final class CraftScoreboardManager implements ScoreboardManager { @@ -7198,7 +7198,7 @@ index 6fa2e271f7..3a9491e949 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java b/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java -index f72c13beda..50f855b931 100644 +index f72c13bed..50f855b93 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java +++ b/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java @@ -119,6 +119,32 @@ public class UnsafeList extends AbstractList implements List, RandomAcc @@ -7235,7 +7235,7 @@ index f72c13beda..50f855b931 100644 public void clear() { // Create new array to reset memory usage to initial capacity diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java -index 674096cab1..001b1e5197 100644 +index 674096cab..001b1e519 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java @@ -11,7 +11,7 @@ public final class Versioning { @@ -7248,7 +7248,7 @@ index 674096cab1..001b1e5197 100644 if (stream != null) { diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java -index 9f7d2ef932..c3ac1a46c3 100644 +index 9f7d2ef93..c3ac1a46c 100644 --- a/src/main/java/org/spigotmc/AsyncCatcher.java +++ b/src/main/java/org/spigotmc/AsyncCatcher.java @@ -10,7 +10,7 @@ public class AsyncCatcher @@ -7261,7 +7261,7 @@ index 9f7d2ef932..c3ac1a46c3 100644 throw new IllegalStateException( "Asynchronous " + reason + "!" ); } diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 513c1041c3..4d31090848 100644 +index 513c1041c..4d3109084 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java @@ -61,6 +61,84 @@ public class WatchdogThread extends Thread diff --git a/patches/server/0009-AFK-API.patch b/patches/server/0009-AFK-API.patch index 0a0d839e4..ef15d7c5f 100644 --- a/patches/server/0009-AFK-API.patch +++ b/patches/server/0009-AFK-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index ce4ebc96c0..eb62555cb2 100644 +index ce4ebc96c..eb62555cb 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -84,6 +84,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -25,7 +25,7 @@ index ce4ebc96c0..eb62555cb2 100644 super(EntityTypes.PLAYER, world); this.bL = ItemStack.b; diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 8e1655a975..3d77298806 100644 +index 8e1655a97..3d7729880 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1719,8 +1719,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -84,7 +84,7 @@ index 8e1655a975..3d77298806 100644 return this.serverStatisticManager; } diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index 882b82d895..90c37e4a8e 100644 +index 882b82d89..90c37e4a8 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -149,28 +149,18 @@ public interface IEntityAccess { @@ -129,7 +129,7 @@ index 882b82d895..90c37e4a8e 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java -index a9b0c78d6d..c8e384ab69 100644 +index a9b0c78d6..c8e384ab6 100644 --- a/src/main/java/net/minecraft/server/IEntitySelector.java +++ b/src/main/java/net/minecraft/server/IEntitySelector.java @@ -7,6 +7,7 @@ import javax.annotation.Nullable; @@ -154,7 +154,7 @@ index a9b0c78d6d..c8e384ab69 100644 // Paper start public static final Predicate affectsSpawning = (entity) -> { diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index e4aab53484..02feb7beca 100644 +index da2039b53..ecc0e2e40 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -236,6 +236,12 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -198,7 +198,7 @@ index e4aab53484..02feb7beca 100644 if (from.getX() != Double.MAX_VALUE) { Location oldTo = to.clone(); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 215789b762..aac4e489a5 100644 +index 215789b76..aac4e489a 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -843,7 +843,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { @@ -220,7 +220,7 @@ index 215789b762..aac4e489a5 100644 } else if (entityplayer.isSleeping()) { ++j; diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -index 803a7ff92a..d699a91685 100644 +index 803a7ff92..d699a9168 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -1,6 +1,7 @@ @@ -248,7 +248,7 @@ index 803a7ff92a..d699a91685 100644 private static void timingsSettings() { timingsUrl = getString("settings.timings.url", timingsUrl); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 361f7857e4..2578a4677d 100644 +index 361f7857e..2578a4677 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -56,4 +56,15 @@ public class PurpurWorldConfig { @@ -268,10 +268,10 @@ index 361f7857e4..2578a4677d 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 715d2c5e88..4904cb2ff1 100644 +index fb1852ea6..d32c9c9cd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2155,4 +2155,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2178,4 +2178,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return spigot; } // Spigot end @@ -294,7 +294,7 @@ index 715d2c5e88..4904cb2ff1 100644 + // Purpur end } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 0b93635ba5..b47d6fa2de 100644 +index 0b93635ba..b47d6fa2d 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -207,6 +207,7 @@ public class ActivationRange diff --git a/patches/server/0021-Player-invulnerabilities.patch b/patches/server/0021-Player-invulnerabilities.patch index 5a5d5692f..5bf7e8cbf 100644 --- a/patches/server/0021-Player-invulnerabilities.patch +++ b/patches/server/0021-Player-invulnerabilities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Player invulnerabilities diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 3d77298806..58d042b473 100644 +index 3d7729880..58d042b47 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -144,6 +144,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -67,7 +67,7 @@ index 3d77298806..58d042b473 100644 public Scoreboard getScoreboard() { return getBukkitEntity().getScoreboard().getHandle(); diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 02feb7beca..61a4278c73 100644 +index ecc0e2e40..88254f69e 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1576,6 +1576,7 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -79,7 +79,7 @@ index 02feb7beca..61a4278c73 100644 this.server.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(getPlayer(), packStatus)); // Paper end diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 38f26e25cb..c92a703da4 100644 +index 38f26e25c..c92a703da 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -905,6 +905,8 @@ public abstract class PlayerList { @@ -92,7 +92,7 @@ index 38f26e25cb..c92a703da4 100644 return entityplayer1; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2578a4677d..c441fcea9b 100644 +index 2578a4677..c441fcea9 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -67,4 +67,11 @@ public class PurpurWorldConfig { @@ -108,10 +108,10 @@ index 2578a4677d..c441fcea9b 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4904cb2ff1..8cf61bf894 100644 +index d32c9c9cd..d074392be 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2171,5 +2171,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2194,5 +2194,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetIdleTimer() { getHandle().resetIdleTimer(); } diff --git a/patches/server/0118-Ridables.patch b/patches/server/0118-Ridables.patch index a6ad55a86..7bd5bf01f 100644 --- a/patches/server/0118-Ridables.patch +++ b/patches/server/0118-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 2b2911ca8e..48cd541912 100644 +index 2b2911ca8..48cd54191 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -80,7 +80,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -327,7 +327,7 @@ index 2b2911ca8e..48cd541912 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java -index f230d84faa..bbf61d0111 100644 +index f230d84fa..bbf61d011 100644 --- a/src/main/java/net/minecraft/server/EntityBat.java +++ b/src/main/java/net/minecraft/server/EntityBat.java @@ -14,9 +14,48 @@ public class EntityBat extends EntityAmbient { @@ -403,7 +403,7 @@ index f230d84faa..bbf61d0111 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 @@ -534,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 { @@ -614,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 { @@ -694,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 { @@ -717,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 { @@ -754,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 { @@ -777,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 { @@ -793,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 { @@ -877,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 { @@ -995,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 cde5c46fee..3064540602 100644 +index cde5c46fe..306454060 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 { @@ -1128,7 +1128,7 @@ index cde5c46fee..3064540602 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 { @@ -1184,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 { @@ -1334,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 { @@ -1402,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 { @@ -1436,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 ae7b269def..9abbbd59f4 100644 +index ae7b269de..9abbbd59f 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 { @@ -1496,7 +1496,7 @@ index ae7b269def..9abbbd59f4 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 { @@ -1558,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 { @@ -1571,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 04b2bbea0c..a73335e362 100644 +index 04b2bbea0..a73335e36 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 { @@ -1695,7 +1695,7 @@ index 04b2bbea0c..a73335e362 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 { @@ -1769,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 { @@ -1802,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 d42750fdd4..881b2dd45f 100644 +index d42750fdd..881b2dd45 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 { @@ -1898,7 +1898,7 @@ index d42750fdd4..881b2dd45f 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 { @@ -1921,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 { @@ -1978,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 { @@ -1996,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 c7757f9d0a..a490d0715d 100644 +index c7757f9d0..a490d0715 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 @@ -2036,7 +2036,7 @@ index c7757f9d0a..a490d0715d 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 { @@ -2054,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 { @@ -2071,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 { @@ -2112,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 { @@ -2142,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 { @@ -2162,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 f5c9e4e0ae..5e6c7e317a 100644 +index f5c9e4e0a..5e6c7e317 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 @@ -2199,7 +2199,7 @@ index f5c9e4e0ae..5e6c7e317a 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 7465e867ba..2bda9d6c6c 100644 +index 7465e867b..2bda9d6c6 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 { @@ -2320,7 +2320,7 @@ index 7465e867ba..2bda9d6c6c 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 { @@ -2371,7 +2371,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 a2d50a1fef..b8f59f29a4 100644 +index a2d50a1fe..b8f59f29a 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -466,7 +466,7 @@ public abstract class EntityLiving extends Entity { @@ -2406,7 +2406,7 @@ index a2d50a1fef..b8f59f29a4 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 @@ -2482,7 +2482,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 { @@ -2510,7 +2510,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 { @@ -2552,7 +2552,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 { @@ -2593,7 +2593,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 { @@ -2631,7 +2631,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 { @@ -2767,7 +2767,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 { @@ -2843,7 +2843,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 03c9a8d0c2..ee1ff6dc17 100644 +index 03c9a8d0c..ee1ff6dc1 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 { @@ -3014,7 +3014,7 @@ index 03c9a8d0c2..ee1ff6dc17 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 { @@ -3041,7 +3041,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 { @@ -3062,7 +3062,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 { @@ -3113,7 +3113,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 { @@ -3155,7 +3155,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 { @@ -3189,7 +3189,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 { @@ -3264,7 +3264,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 639af6bd3d..81e9185726 100644 +index 639af6bd3..81e918572 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 { @@ -3296,7 +3296,7 @@ index 639af6bd3d..81e9185726 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 { @@ -3461,7 +3461,7 @@ 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..c6d1490618 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,37 @@ public class EntityRavager extends EntityRaider { @@ -3512,7 +3512,7 @@ index 7064a12c89..c6d1490618 100644 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 { @@ -3535,7 +3535,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 { @@ -3563,7 +3563,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 f0394fe521..c5853f9f51 100644 +index f0394fe52..c5853f9f5 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 { @@ -3603,7 +3603,7 @@ index f0394fe521..c5853f9f51 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 { @@ -3643,7 +3643,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 { @@ -3666,7 +3666,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 513bb3087e..e21dbf46d6 100644 +index 513bb3087..e21dbf46d 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 @@ -3685,7 +3685,7 @@ index 513bb3087e..e21dbf46d6 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 { @@ -3708,7 +3708,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 { @@ -3731,7 +3731,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 { @@ -3847,7 +3847,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 @@ -3904,7 +3904,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 { @@ -3937,7 +3937,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 { @@ -4037,7 +4037,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 @@ -4077,7 +4077,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 { @@ -4089,7 +4089,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 { @@ -4112,7 +4112,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 e025eef476..c298033679 100644 +index e025eef47..c29803367 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 { @@ -4194,7 +4194,7 @@ index e025eef476..c298033679 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 { @@ -4291,7 +4291,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 @@ -4335,7 +4335,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 { @@ -4375,7 +4375,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 { @@ -4408,7 +4408,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 { @@ -4444,7 +4444,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..1054b492c2 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 { @@ -4652,7 +4652,7 @@ index 29bb74e51e..1054b492c2 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 @@ -4692,7 +4692,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 { @@ -4756,7 +4756,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 3e5c692876..d08747c66a 100644 +index 3e5c69287..d08747c66 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 { @@ -4789,7 +4789,7 @@ index 3e5c692876..d08747c66a 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 { @@ -4810,7 +4810,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 @@ -4831,7 +4831,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 { @@ -4843,7 +4843,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 { @@ -4873,7 +4873,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 1ff07a08dc..5b5e9211cd 100644 +index 666115743..6a81fec9f 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2149,6 +2149,8 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -4886,7 +4886,7 @@ index 1ff07a08dc..5b5e9211cd 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; @@ -4898,7 +4898,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 5af554870b..c59305ef7d 100644 +index 5af554870..c59305ef7 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 { @@ -4926,7 +4926,7 @@ index 5af554870b..c59305ef7d 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 caaab50153..c3dbe78027 100644 +index 856d849ab..e1c232d59 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 { @@ -4941,7 +4941,7 @@ index caaab50153..c3dbe78027 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 { @@ -4959,7 +4959,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 86a4ce5288..30fdfa6aa5 100644 +index 86a4ce528..30fdfa6aa 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 { @@ -5610,7 +5610,7 @@ index 86a4ce5288..30fdfa6aa5 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..0b16a7b634 +index 000000000..0b16a7b63 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java @@ -0,0 +1,76 @@ @@ -5692,7 +5692,7 @@ index 0000000000..0b16a7b634 +} 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 @@ @@ -5790,7 +5790,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 @@ @@ -5857,7 +5857,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 @@ @@ -5924,7 +5924,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 @@ @@ -5980,7 +5980,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 @@ @@ -6101,7 +6101,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 @@ @@ -6227,7 +6227,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 @@ @@ -6254,7 +6254,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 @@ @@ -6277,10 +6277,10 @@ 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 704d000001..2729f7283a 100644 +index f4d48753a..76e59ec1d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1137,4 +1137,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1148,4 +1148,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return getHandle().isTicking(); } // Paper end @@ -6308,7 +6308,7 @@ index 704d000001..2729f7283a 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 0f0d70c062..23df99e3ff 100644 +index 0f0d70c06..23df99e3f 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -502,6 +502,18 @@ public class CraftEventFactory { diff --git a/patches/server/0130-Persistent-TileEntity-Lore-and-DisplayName.patch b/patches/server/0130-Persistent-TileEntity-Lore-and-DisplayName.patch index 2aa8a10d0..f363afeb7 100644 --- a/patches/server/0130-Persistent-TileEntity-Lore-and-DisplayName.patch +++ b/patches/server/0130-Persistent-TileEntity-Lore-and-DisplayName.patch @@ -7,7 +7,7 @@ Makes it so that when a TileEntity is placed in the world and then broken, the dropped ItemStack retains any original custom display name/lore. diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index 4aa2b38f18..f863909992 100644 +index 4aa2b38f1..f86390999 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java @@ -207,6 +207,7 @@ public class Block extends BlockBase implements IMaterial { @@ -74,7 +74,7 @@ index 4aa2b38f18..f863909992 100644 public static void a(World world, BlockPosition blockposition, ItemStack itemstack) { if (!world.isClientSide && !itemstack.isEmpty() && world.getGameRules().getBoolean(GameRules.DO_TILE_DROPS)) { diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java -index bbb1de7d1a..d97efe3d47 100644 +index bbb1de7d1..d97efe3d4 100644 --- a/src/main/java/net/minecraft/server/ItemBlock.java +++ b/src/main/java/net/minecraft/server/ItemBlock.java @@ -96,7 +96,24 @@ public class ItemBlock extends Item { @@ -104,11 +104,11 @@ index bbb1de7d1a..d97efe3d47 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index d32540c88b..13460df026 100644 +index 58d958a88..8e8749095 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -90,9 +90,25 @@ public abstract class TileEntity implements KeyedObject { // Paper - this.persistentDataContainer.putAll(persistentDataTag); + this.persistentDataContainer.putAll((NBTTagCompound) persistentDataTag); } // CraftBukkit end + // Purpur start @@ -160,7 +160,7 @@ index d32540c88b..13460df026 100644 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b769a54fc3..400766dc76 100644 +index b769a54fc..400766dc7 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -184,6 +184,7 @@ public class PurpurWorldConfig {