From 6b4bc4775d8b487e24d4a42f742b01247aabfa5e Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Sun, 16 Aug 2020 09:32:41 -0500 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appears to apply and compile correctly Paper Changes: 1daafe455 Updated Upstream (Bukkit/CraftBukkit) 98828b006 Merge pull request #4132 from Proximyst/progress/1.16.2 b23f27f8d Fix incorrect return for WorldServer#addAllEntitiesSafely (#3) 5085fa30c Fix MC-187716 Use configured height c44add5a0 Initialise a new chunk section if none was found yet updated 74a4d5f8b Remove armour stand double add to world 6d25cc4ec Don't mark null chunk sections for block updates --- Paper | 2 +- current-paper | 2 +- .../server/0001-Tuinity-Server-Changes.patch | 220 +++++++++--------- .../0025-Player-invulnerabilities.patch | 12 +- patches/server/0035-Giants-AI-settings.patch | 14 +- .../server/0047-Cat-spawning-options.patch | 14 +- patches/server/0049-Cows-eat-mushrooms.patch | 10 +- ...0065-Fix-the-dead-lagging-the-server.patch | 6 +- ...0081-Configurable-void-damage-height.patch | 6 +- ...-should-not-bypass-cramming-gamerule.patch | 24 +- .../server/0091-Add-item-entity-options.patch | 8 +- ...ed-to-crystals-and-crystals-shoot-ph.patch | 14 +- ...Stop-squids-floating-on-top-of-water.patch | 8 +- patches/server/0126-Ridables.patch | 22 +- ...d-height-for-nether-surface-builders.patch | 35 +-- ...turn-for-WorldServer-addAllEntitiesS.patch | 22 -- ...ull-chunk-sections-for-block-updates.patch | 18 -- ...ove-armour-stand-double-add-to-world.patch | 28 --- 18 files changed, 184 insertions(+), 281 deletions(-) delete mode 100644 patches/server/0128-Fix-incorrect-return-for-WorldServer-addAllEntitiesS.patch delete mode 100644 patches/server/0129-Don-t-mark-null-chunk-sections-for-block-updates.patch delete mode 100644 patches/server/0130-Remove-armour-stand-double-add-to-world.patch diff --git a/Paper b/Paper index 1ba2f2145..1daafe455 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit 1ba2f2145204893955e76f57dd306d1285131e97 +Subproject commit 1daafe45511c663ff2eb67d7af2716f9d10e1c2b diff --git a/current-paper b/current-paper index b6e36cd16..7966eca10 100644 --- a/current-paper +++ b/current-paper @@ -1 +1 @@ -1.16.2--e9c8bd97c3d95b61e87a7bea867e5e65317e13c1 +1.16.2--eac1013351d06899b39e1a319254c814a400fd2b diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index 60d0c5814..3d88c0a19 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Tuinity Server Changes diff --git a/pom.xml b/pom.xml -index 594ab9afb..ee19a2874 100644 +index 594ab9afbd..ee19a28744 100644 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,11 @@ @@ -65,7 +65,7 @@ index 594ab9afb..ee19a2874 100644 diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java -index dd0722397..85b25eace 100644 +index dd07223978..85b25eace7 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 { @@ -79,7 +79,7 @@ index dd0722397..85b25eace 100644 private MinecraftTimings() {} diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java -index e33e889c2..5dfa06588 100644 +index e33e889c29..5dfa065883 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 { @@ -93,7 +93,7 @@ index e33e889c2..5dfa06588 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 49a38c660..255bbd6e4 100644 +index 49a38c6608..255bbd6e48 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 { @@ -124,7 +124,7 @@ index 49a38c660..255bbd6e4 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 e7624948e..77df68888 100644 +index e7624948ea..77df688880 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 @@ -209,7 +209,7 @@ index e7624948e..77df68888 100644 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 000000000..f599725e1 +index 0000000000..f599725e17 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java @@ -0,0 +1,329 @@ @@ -545,7 +545,7 @@ index 000000000..f599725e1 \ 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 000000000..996be9b7f +index 0000000000..996be9b7f1 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java @@ -0,0 +1,273 @@ @@ -825,7 +825,7 @@ index 000000000..996be9b7f \ 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 000000000..a54f516ba +index 0000000000..a54f516ba7 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/CachedLists.java @@ -0,0 +1,53 @@ @@ -884,7 +884,7 @@ index 000000000..a54f516ba +} 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 000000000..08ed24325 +index 0000000000..08ed243259 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/TickThread.java @@ -0,0 +1,41 @@ @@ -932,7 +932,7 @@ index 000000000..08ed24325 \ 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 000000000..b0f1e21e6 +index 0000000000..b0f1e21e6e --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java @@ -0,0 +1,271 @@ @@ -1209,7 +1209,7 @@ index 000000000..b0f1e21e6 +} 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 000000000..56b955227 +index 0000000000..56b955227f --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java @@ -0,0 +1,237 @@ @@ -1451,7 +1451,7 @@ index 000000000..56b955227 + } +} diff --git a/src/main/java/net/minecraft/server/AxisAlignedBB.java b/src/main/java/net/minecraft/server/AxisAlignedBB.java -index ed9b2f9ad..d54bf7140 100644 +index ed9b2f9adf..d54bf71409 100644 --- a/src/main/java/net/minecraft/server/AxisAlignedBB.java +++ b/src/main/java/net/minecraft/server/AxisAlignedBB.java @@ -13,6 +13,119 @@ public class AxisAlignedBB { @@ -1599,7 +1599,7 @@ index ed9b2f9ad..d54bf7140 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 4d574f83a..f0e5ba3b2 100644 +index 4d574f83af..f0e5ba3b24 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 { @@ -1635,7 +1635,7 @@ index 4d574f83a..f0e5ba3b2 100644 } diff --git a/src/main/java/net/minecraft/server/BlockBase.java b/src/main/java/net/minecraft/server/BlockBase.java -index 440c959b1..82e07b357 100644 +index 440c959b1c..82e07b357e 100644 --- a/src/main/java/net/minecraft/server/BlockBase.java +++ b/src/main/java/net/minecraft/server/BlockBase.java @@ -176,8 +176,8 @@ public abstract class BlockBase { @@ -1758,7 +1758,7 @@ index 440c959b1..82e07b357 100644 public SoundEffectType getStepSound() { diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java -index 12a023044..9e5e6de52 100644 +index 12a0230448..9e5e6de52e 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 @@ -1771,7 +1771,7 @@ index 12a023044..9e5e6de52 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 2d887af90..2291135ea 100644 +index 2d887af902..2291135eae 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 { @@ -1868,7 +1868,7 @@ index 2d887af90..2291135ea 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 299d7d7a5..ac6e5e330 100644 +index 299d7d7a55..ac6e5e3309 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 { @@ -2005,7 +2005,7 @@ index 299d7d7a5..ac6e5e330 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 3c7b225ed..0c4aed5f5 100644 +index 3c7b225edb..0c4aed5f5f 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 { @@ -2174,7 +2174,7 @@ index 3c7b225ed..0c4aed5f5 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 45c142c22..6c41eb14d 100644 +index 45c142c227..6c41eb14dd 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 @@ -2614,7 +2614,7 @@ index 45c142c22..6c41eb14d 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 335bb1dcb..e74d21048 100644 +index 335bb1dcb7..e74d210489 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 { @@ -2646,7 +2646,7 @@ index 335bb1dcb..e74d21048 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 e52df8096..cebd808e2 100644 +index e52df8096e..cebd808e27 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 { @@ -2658,7 +2658,7 @@ index e52df8096..cebd808e2 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 f6c9bdbf5..51ea295d6 100644 +index f6c9bdbf52..51ea295d66 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 { @@ -2680,7 +2680,7 @@ index f6c9bdbf5..51ea295d6 100644 } diff --git a/src/main/java/net/minecraft/server/DataBits.java b/src/main/java/net/minecraft/server/DataBits.java -index 26b48b5ff..353b61aa5 100644 +index 26b48b5ffa..353b61aa57 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 { @@ -2708,7 +2708,7 @@ index 26b48b5ff..353b61aa5 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 95ef96286..73163b417 100644 +index 95ef962868..73163b417a 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 { @@ -2720,7 +2720,7 @@ index 95ef96286..73163b417 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 1c878265b..5907caa74 100644 +index 1c878265be..5907caa742 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -170,6 +170,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -2732,7 +2732,7 @@ index 1c878265b..5907caa74 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 550232cb3..229c3b0f0 100644 +index 550232cb38..229c3b0f0c 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 { @@ -2745,10 +2745,10 @@ index 550232cb3..229c3b0f0 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 c87de4b5b..42dd8a0e3 100644 +index 5dc8f87dae..6c0d8fdaf2 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 +@@ -137,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public double D; public double E; public double F; @@ -2757,7 +2757,7 @@ index c87de4b5b..42dd8a0e3 100644 public boolean noclip; public float I; protected final Random random; -@@ -207,6 +207,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -208,6 +208,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // CraftBukkit end @@ -2772,7 +2772,7 @@ index c87de4b5b..42dd8a0e3 100644 // Paper start - optimise entity tracking final org.spigotmc.TrackingRange.TrackingRangeType trackingRangeType = org.spigotmc.TrackingRange.getTrackingRangeType(this); -@@ -222,6 +230,41 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -223,6 +231,41 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // Paper end - optimise entity tracking @@ -2814,7 +2814,7 @@ index c87de4b5b..42dd8a0e3 100644 public Entity(EntityTypes entitytypes, World world) { this.id = Entity.entityCount.incrementAndGet(); this.passengers = Lists.newArrayList(); -@@ -590,7 +633,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -591,7 +634,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.onGround; } @@ -2854,7 +2854,7 @@ index c87de4b5b..42dd8a0e3 100644 if (this.noclip) { this.a(this.getBoundingBox().c(vec3d)); this.recalcPosition(); -@@ -618,7 +693,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -619,7 +694,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke // Paper end vec3d = this.a(vec3d, enummovetype); @@ -2863,7 +2863,7 @@ index c87de4b5b..42dd8a0e3 100644 if (vec3d1.g() > 1.0E-7D) { this.a(this.getBoundingBox().c(vec3d1)); -@@ -734,6 +809,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -735,6 +810,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.world.getMethodProfiler().exit(); } @@ -2877,7 +2877,7 @@ index c87de4b5b..42dd8a0e3 100644 } protected BlockPosition ao() { -@@ -814,6 +896,132 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -815,6 +897,132 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return d0; } @@ -3010,7 +3010,7 @@ index c87de4b5b..42dd8a0e3 100644 private Vec3D g(Vec3D vec3d) { AxisAlignedBB axisalignedbb = this.getBoundingBox(); VoxelShapeCollision voxelshapecollision = VoxelShapeCollision.a(this); -@@ -849,6 +1057,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -850,6 +1058,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return vec3d1; } @@ -3018,7 +3018,7 @@ index c87de4b5b..42dd8a0e3 100644 public static double c(Vec3D vec3d) { return vec3d.x * vec3d.x + vec3d.z * vec3d.z; } -@@ -1928,11 +2137,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1929,11 +2138,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return EnumInteractionResult.PASS; } @@ -3034,7 +3034,7 @@ index c87de4b5b..42dd8a0e3 100644 return false; } -@@ -3257,12 +3468,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3270,12 +3481,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.locBlock; } @@ -3051,7 +3051,7 @@ index c87de4b5b..42dd8a0e3 100644 } public void setMot(double d0, double d1, double d2) { -@@ -3317,7 +3532,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3330,7 +3545,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // Paper end if (this.loc.x != d0 || this.loc.y != d1 || this.loc.z != d2) { @@ -3062,7 +3062,7 @@ index c87de4b5b..42dd8a0e3 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 314886398..79de11ce2 100644 +index 3148863984..79de11ce2f 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 { @@ -3075,7 +3075,7 @@ index 314886398..79de11ce2 100644 this.setPersistent(); } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index b92e74349..aba9f08db 100644 +index b92e74349b..aba9f08db6 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2835,7 +2835,11 @@ public abstract class EntityLiving extends Entity { @@ -3102,7 +3102,7 @@ index b92e74349..aba9f08db 100644 } diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index 831298e3b..7ab013058 100644 +index 831298e3bb..7ab0130584 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 { @@ -3114,7 +3114,7 @@ index 831298e3b..7ab013058 100644 if (!list.equals(this.p)) { diff --git a/src/main/java/net/minecraft/server/Fluid.java b/src/main/java/net/minecraft/server/Fluid.java -index 05fa52c0b..8ffc5db50 100644 +index 05fa52c0b1..8ffc5db509 100644 --- a/src/main/java/net/minecraft/server/Fluid.java +++ b/src/main/java/net/minecraft/server/Fluid.java @@ -9,8 +9,12 @@ public final class Fluid extends IBlockDataHolder { @@ -3140,7 +3140,7 @@ index 05fa52c0b..8ffc5db50 100644 public float getHeight(IBlockAccess iblockaccess, BlockPosition blockposition) { diff --git a/src/main/java/net/minecraft/server/HeightMap.java b/src/main/java/net/minecraft/server/HeightMap.java -index 068b92c5c..a43c4ca3e 100644 +index 068b92c5c4..a43c4ca3ea 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 { @@ -3224,7 +3224,7 @@ index 068b92c5c..a43c4ca3e 100644 this.i = heightmap_use; this.j = predicate; diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java -index 10a5901db..911750476 100644 +index 10a5901db1..9117504767 100644 --- a/src/main/java/net/minecraft/server/IBlockData.java +++ b/src/main/java/net/minecraft/server/IBlockData.java @@ -8,6 +8,19 @@ public class IBlockData extends BlockBase.BlockData { @@ -3248,7 +3248,7 @@ index 10a5901db..911750476 100644 super(block, immutablemap, mapcodec); } diff --git a/src/main/java/net/minecraft/server/IChunkLoader.java b/src/main/java/net/minecraft/server/IChunkLoader.java -index 582a5695b..5601088cd 100644 +index 582a5695ba..5601088cd5 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 { @@ -3261,7 +3261,7 @@ index 582a5695b..5601088cd 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 25e54a1fa..b66c802d5 100644 +index 25e54a1fad..b66c802d5e 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 { @@ -3277,7 +3277,7 @@ index 25e54a1fa..b66c802d5 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 1cb8ba7cd..882b82d89 100644 +index 1cb8ba7cd2..882b82d895 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 { @@ -3319,7 +3319,7 @@ index 1cb8ba7cd..882b82d89 100644 } diff --git a/src/main/java/net/minecraft/server/LightEngineStorage.java b/src/main/java/net/minecraft/server/LightEngineStorage.java -index b98e60772..e0bbfe142 100644 +index b98e60772b..e0bbfe1422 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 @@ -3351,7 +3351,7 @@ index b98e60772..e0bbfe142 100644 while (objectiterator.hasNext()) { entry = (Entry) objectiterator.next(); diff --git a/src/main/java/net/minecraft/server/LightEngineThreaded.java b/src/main/java/net/minecraft/server/LightEngineThreaded.java -index ec8498c3d..ceaa92400 100644 +index ec8498c3db..ceaa924006 100644 --- a/src/main/java/net/minecraft/server/LightEngineThreaded.java +++ b/src/main/java/net/minecraft/server/LightEngineThreaded.java @@ -20,7 +20,7 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable { @@ -3364,7 +3364,7 @@ index ec8498c3d..ceaa92400 100644 return false; } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index bbe793ca3..615a71a78 100644 +index bbe793ca36..615a71a78c 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> { @@ -3713,7 +3713,7 @@ index 48fc9f400..66f239040 100644 } return true; diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 5094a5d6f..72fdbf153 100644 +index 5094a5d6fb..72fdbf1534 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 { @@ -3858,7 +3858,7 @@ index 5094a5d6f..72fdbf153 100644 } } diff --git a/src/main/java/net/minecraft/server/PathfinderNormal.java b/src/main/java/net/minecraft/server/PathfinderNormal.java -index a0555b132..9caf6598f 100644 +index a0555b132d..9caf6598f8 100644 --- a/src/main/java/net/minecraft/server/PathfinderNormal.java +++ b/src/main/java/net/minecraft/server/PathfinderNormal.java @@ -475,7 +475,7 @@ public class PathfinderNormal extends PathfinderAbstract { @@ -3880,10 +3880,10 @@ index a0555b132..9caf6598f 100644 return fluid.a((Tag) TagsFluid.WATER) ? PathType.WATER : (fluid.a((Tag) TagsFluid.LAVA) ? PathType.LAVA : (a(iblockdata) ? PathType.DAMAGE_FIRE : (BlockDoor.l(iblockdata) && !(Boolean) iblockdata.get(BlockDoor.OPEN) ? PathType.DOOR_WOOD_CLOSED : (block instanceof BlockDoor && material == Material.ORE && !(Boolean) iblockdata.get(BlockDoor.OPEN) ? PathType.DOOR_IRON_CLOSED : (block instanceof BlockDoor && (Boolean) iblockdata.get(BlockDoor.OPEN) ? PathType.DOOR_OPEN : (block instanceof BlockMinecartTrackAbstract ? PathType.RAIL : (block instanceof BlockLeaves ? PathType.LEAVES : (!block.a((Tag) TagsBlock.FENCES) && !block.a((Tag) TagsBlock.WALLS) && (!(block instanceof BlockFenceGate) || (Boolean) iblockdata.get(BlockFenceGate.OPEN)) ? (!iblockdata.a(iblockaccess, blockposition, PathMode.LAND) ? PathType.BLOCKED : PathType.OPEN) : PathType.FENCE)))))))); } diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java -index 92a5a5cef..9f1dd6e1a 100644 +index 835320bde4..577f0a234b 100644 --- a/src/main/java/net/minecraft/server/PlayerChunk.java +++ b/src/main/java/net/minecraft/server/PlayerChunk.java -@@ -501,6 +501,7 @@ public class PlayerChunk { +@@ -502,6 +502,7 @@ public class PlayerChunk { // Paper end - per player view distance } @@ -3891,7 +3891,7 @@ index 92a5a5cef..9f1dd6e1a 100644 public CompletableFuture> a(ChunkStatus chunkstatus, PlayerChunkMap playerchunkmap) { int i = chunkstatus.c(); CompletableFuture> completablefuture = (CompletableFuture) this.statusFutures.get(i); -@@ -556,6 +557,7 @@ public class PlayerChunk { +@@ -557,6 +558,7 @@ public class PlayerChunk { } protected void a(PlayerChunkMap playerchunkmap) { @@ -3899,7 +3899,7 @@ index 92a5a5cef..9f1dd6e1a 100644 ChunkStatus chunkstatus = getChunkStatus(this.oldTicketLevel); ChunkStatus chunkstatus1 = getChunkStatus(this.ticketLevel); boolean flag = this.oldTicketLevel <= PlayerChunkMap.GOLDEN_TICKET; -@@ -565,7 +567,8 @@ public class PlayerChunk { +@@ -566,7 +568,8 @@ public class PlayerChunk { // CraftBukkit start // ChunkUnloadEvent: Called before the chunk is unloaded: isChunkLoaded is still true and chunk can still be modified by plugins. if (playerchunk_state.isAtLeast(PlayerChunk.State.BORDER) && !playerchunk_state1.isAtLeast(PlayerChunk.State.BORDER)) { @@ -3909,7 +3909,7 @@ index 92a5a5cef..9f1dd6e1a 100644 Chunk chunk = (Chunk)either.left().orElse(null); if (chunk != null) { playerchunkmap.callbackExecutor.execute(() -> { -@@ -630,7 +633,8 @@ public class PlayerChunk { +@@ -631,7 +634,8 @@ public class PlayerChunk { if (!flag2 && flag3) { // Paper start - cache ticking ready status int expectCreateCount = ++this.fullChunkCreateCount; @@ -3919,7 +3919,7 @@ index 92a5a5cef..9f1dd6e1a 100644 if (either.left().isPresent() && PlayerChunk.this.fullChunkCreateCount == expectCreateCount) { // note: Here is a very good place to add callbacks to logic waiting on this. Chunk fullChunk = either.left().get(); -@@ -661,7 +665,8 @@ public class PlayerChunk { +@@ -662,7 +666,8 @@ public class PlayerChunk { if (!flag4 && flag5) { // Paper start - cache ticking ready status @@ -3929,7 +3929,7 @@ index 92a5a5cef..9f1dd6e1a 100644 if (either.left().isPresent()) { // note: Here is a very good place to add callbacks to logic waiting on this. Chunk tickingChunk = either.left().get(); -@@ -692,12 +697,20 @@ public class PlayerChunk { +@@ -693,12 +698,20 @@ public class PlayerChunk { } // Paper start - cache ticking ready status @@ -3952,7 +3952,7 @@ index 92a5a5cef..9f1dd6e1a 100644 -@@ -709,6 +722,17 @@ public class PlayerChunk { +@@ -710,6 +723,17 @@ public class PlayerChunk { if (flag6 && !flag7) { this.entityTickingFuture.complete(PlayerChunk.UNLOADED_CHUNK); this.isEntityTickingReady = false; // Paper - cache chunk ticking stage @@ -3970,7 +3970,7 @@ index 92a5a5cef..9f1dd6e1a 100644 this.entityTickingFuture = PlayerChunk.UNLOADED_CHUNK_FUTURE; } -@@ -735,7 +759,8 @@ public class PlayerChunk { +@@ -736,7 +760,8 @@ public class PlayerChunk { // CraftBukkit start // ChunkLoadEvent: Called after the chunk is loaded: isChunkLoaded returns true and chunk is ready to be modified by plugins. if (!playerchunk_state.isAtLeast(PlayerChunk.State.BORDER) && playerchunk_state1.isAtLeast(PlayerChunk.State.BORDER)) { @@ -3981,7 +3981,7 @@ index 92a5a5cef..9f1dd6e1a 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 8a069cfcb..66d6c15ab 100644 +index 8a069cfcbf..66d6c15ab9 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 { @@ -4204,7 +4204,7 @@ index 8a069cfcb..66d6c15ab 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 bc613281d..d32f423c5 100644 +index bc613281d1..d32f423c5e 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -322,19 +322,24 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -4309,7 +4309,7 @@ index bc613281d..d32f423c5 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 7ea293f38..e698dd226 100644 +index 7ea293f38d..e698dd2260 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 { @@ -4357,7 +4357,7 @@ index 7ea293f38..e698dd226 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 6d192b274..f5de49e3e 100644 +index 6d192b2744..f5de49e3e3 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 { @@ -4492,7 +4492,7 @@ index 6d192b274..f5de49e3e 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 5b0cd414c..a3ac88350 100644 +index 5b0cd414ca..a3ac883500 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 { @@ -4528,7 +4528,7 @@ index 5b0cd414c..a3ac88350 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 1751fb693..850673aa6 100644 +index 1751fb6934..850673aa69 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; @@ -5124,7 +5124,7 @@ index 1751fb693..850673aa6 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 1ebdf73cc..cfa3ecb03 100644 +index 1ebdf73cc9..cfa3ecb031 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; @@ -5172,7 +5172,7 @@ index 1ebdf73cc..cfa3ecb03 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 d64f7ad92..33624f838 100644 +index d64f7ad925..33624f838b 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 @@ -5263,7 +5263,7 @@ index d64f7ad92..33624f838 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFileCompression.java b/src/main/java/net/minecraft/server/RegionFileCompression.java -index 3382d678e..3b7894256 100644 +index 3382d678e6..3b7894256d 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; @@ -5303,7 +5303,7 @@ index 3382d678e..3b7894256 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 f199368a6..2598ae371 100644 +index f199368a6d..2598ae3710 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 { @@ -5336,7 +5336,7 @@ index f199368a6..2598ae371 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 e41cb8613..c19ffb925 100644 +index e41cb8613e..c19ffb925a 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; @@ -5373,7 +5373,7 @@ index e41cb8613..c19ffb925 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 5c789b25f..4657b05a4 100644 +index 5c789b25f1..4657b05a42 100644 --- a/src/main/java/net/minecraft/server/TicketType.java +++ b/src/main/java/net/minecraft/server/TicketType.java @@ -26,7 +26,8 @@ public class TicketType { @@ -5387,7 +5387,7 @@ index 5c789b25f..4657b05a4 100644 public static TicketType a(String s, Comparator comparator) { 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 2484293b1..1496c43fc 100644 +index 2484293b12..1496c43fc9 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 { @@ -5472,7 +5472,7 @@ index 2484293b1..1496c43fc 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 3048ba008..84858ba39 100644 +index 3048ba0081..84858ba392 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; @@ -5506,7 +5506,7 @@ index 3048ba008..84858ba39 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 b926cebd0..adacfce6f 100644 +index b926cebd05..adacfce6f3 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 { @@ -5519,7 +5519,7 @@ index b926cebd0..adacfce6f 100644 } // Paper end diff --git a/src/main/java/net/minecraft/server/VoxelShape.java b/src/main/java/net/minecraft/server/VoxelShape.java -index eb926b74e..700660dd9 100644 +index eb926b74e1..700660dd93 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; @@ -5562,7 +5562,7 @@ index eb926b74e..700660dd9 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 3c29cb145..43b0b4c34 100644 +index 3c29cb1452..43b0b4c34c 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; @@ -5669,7 +5669,7 @@ index 3c29cb145..43b0b4c34 100644 + // Tuinity end - optimise multi-aabb shapes } diff --git a/src/main/java/net/minecraft/server/VoxelShapes.java b/src/main/java/net/minecraft/server/VoxelShapes.java -index e21c747b6..6667e699c 100644 +index e21c747b6c..6667e699cc 100644 --- a/src/main/java/net/minecraft/server/VoxelShapes.java +++ b/src/main/java/net/minecraft/server/VoxelShapes.java @@ -17,18 +17,81 @@ public final class VoxelShapes { @@ -5796,7 +5796,7 @@ index e21c747b6..6667e699c 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 287db5203..4834f7569 100644 +index 287db5203f..4834f7569a 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -74,8 +74,8 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -5898,7 +5898,7 @@ index 287db5203..4834f7569 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 f01186988..f52132604 100644 +index f011869880..f52132604a 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 { @@ -5969,7 +5969,7 @@ index f01186988..f52132604 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 a21ce4855..abc6b6548 100644 +index 923efc17be..1ea026aeb4 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; @@ -6591,7 +6591,7 @@ index a21ce4855..abc6b6548 100644 } this.getMethodProfiler().exit(); -@@ -1263,7 +1733,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1267,7 +1737,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { Entity entity = (Entity) iterator.next(); if (!(entity instanceof EntityPlayer)) { @@ -6600,7 +6600,7 @@ index a21ce4855..abc6b6548 100644 throw (IllegalStateException) SystemUtils.c((Throwable) (new IllegalStateException("Removing entity while ticking!"))); } -@@ -1291,6 +1761,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1295,6 +1765,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { public void unregisterEntity(Entity entity) { org.spigotmc.AsyncCatcher.catchOp("entity unregister"); // Spigot @@ -6608,7 +6608,7 @@ index a21ce4855..abc6b6548 100644 // Paper start - fix entity registration issues if (entity instanceof EntityComplexPart) { // Usually this is a no-op for complex parts, and ID's should be removed, but go ahead and remove it anyways -@@ -1357,17 +1828,108 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1361,17 +1832,108 @@ public class WorldServer extends World implements GeneratorAccessSeed { this.getScoreboard().a(entity); // CraftBukkit start - SPIGOT-5278 if (entity instanceof EntityDrowned) { @@ -6720,7 +6720,7 @@ index a21ce4855..abc6b6548 100644 private void registerEntity(Entity entity) { org.spigotmc.AsyncCatcher.catchOp("entity register"); // Spigot // Paper start - don't double enqueue entity registration -@@ -1378,7 +1940,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1382,7 +1944,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { return; } // Paper end @@ -6729,7 +6729,7 @@ index a21ce4855..abc6b6548 100644 if (!entity.isQueuedForRegister) { // Paper this.entitiesToAdd.add(entity); entity.isQueuedForRegister = true; // Paper -@@ -1386,6 +1948,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1390,6 +1952,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { } else { entity.isQueuedForRegister = false; // Paper this.entitiesById.put(entity.getId(), entity); @@ -6737,7 +6737,7 @@ index a21ce4855..abc6b6548 100644 if (entity instanceof EntityEnderDragon) { EntityComplexPart[] aentitycomplexpart = ((EntityEnderDragon) entity).eJ(); int i = aentitycomplexpart.length; -@@ -1394,6 +1957,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1398,6 +1961,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { EntityComplexPart entitycomplexpart = aentitycomplexpart[j]; this.entitiesById.put(entitycomplexpart.getId(), entitycomplexpart); @@ -6745,7 +6745,7 @@ index a21ce4855..abc6b6548 100644 } } -@@ -1418,12 +1982,16 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1422,12 +1986,16 @@ public class WorldServer extends World implements GeneratorAccessSeed { // this.getChunkProvider().addEntity(entity); // Paper - moved down below valid=true // CraftBukkit start - SPIGOT-5278 if (entity instanceof EntityDrowned) { @@ -6765,7 +6765,7 @@ index a21ce4855..abc6b6548 100644 } entity.valid = true; // CraftBukkit this.getChunkProvider().addEntity(entity); // Paper - from above to be below valid=true -@@ -1439,7 +2007,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1443,7 +2011,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { } public void removeEntity(Entity entity) { @@ -6774,7 +6774,7 @@ index a21ce4855..abc6b6548 100644 throw (IllegalStateException) SystemUtils.c((Throwable) (new IllegalStateException("Removing entity while ticking!"))); } else { this.removeEntityFromChunk(entity); -@@ -1540,8 +2108,26 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1544,8 +2112,26 @@ public class WorldServer extends World implements GeneratorAccessSeed { VoxelShape voxelshape1 = iblockdata1.getCollisionShape(this, blockposition); if (VoxelShapes.c(voxelshape, voxelshape1, OperatorBoolean.NOT_SAME)) { @@ -6802,7 +6802,7 @@ index a21ce4855..abc6b6548 100644 while (iterator.hasNext()) { NavigationAbstract navigationabstract = (NavigationAbstract) iterator.next(); -@@ -1549,7 +2135,21 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -1553,7 +2139,21 @@ public class WorldServer extends World implements GeneratorAccessSeed { if (!navigationabstract.i()) { navigationabstract.b(blockposition); } @@ -6826,7 +6826,7 @@ index a21ce4855..abc6b6548 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 5ccdc0b87..888dae2d5 100644 +index 5ccdc0b87b..888dae2d5e 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 { @@ -6839,7 +6839,7 @@ index 5ccdc0b87..888dae2d5 100644 try { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java b/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java -index ff8ba5457..ecedc167d 100644 +index ff8ba54574..ecedc167db 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java @@ -79,7 +79,7 @@ public class CraftChunkSnapshot implements ChunkSnapshot { @@ -6852,7 +6852,7 @@ index ff8ba5457..ecedc167d 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 93c0afbfb..61e5a91a7 100644 +index 93c0afbfba..61e5a91a74 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -230,7 +230,7 @@ import javax.annotation.Nullable; // Paper @@ -6908,7 +6908,7 @@ index 93c0afbfb..61e5a91a7 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 fe7e8d97a..2ac199f91 100644 +index fe7e8d97a2..2ac199f91d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -336,6 +336,14 @@ public class CraftWorld implements World { @@ -6960,7 +6960,7 @@ index fe7e8d97a..2ac199f91 100644 }, MinecraftServer.getServer()); } diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 082a35004..0db533858 100644 +index 082a35004f..0db5338583 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 { @@ -6987,7 +6987,7 @@ index 082a35004..0db533858 100644 //Thread.sleep(TimeUnit.SECONDS.toMillis(20)); // Paper End diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index 733f2430d..6d1500cf1 100644 +index 733f2430d4..6d1500cf13 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -210,7 +210,7 @@ public class CraftBlock implements Block { @@ -7000,7 +7000,7 @@ index 733f2430d..6d1500cf1 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java -index 0f89e7768..f24d42345 100644 +index 0f89e77681..f24d423456 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java @@ -135,7 +135,7 @@ public class CraftBlockState implements BlockState { @@ -7013,7 +7013,7 @@ index 0f89e7768..f24d42345 100644 public void setFlag(int flag) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -index bbded5671..980890153 100644 +index bbded5671e..9808901532 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java @@ -44,7 +44,7 @@ public class CraftBlockData implements BlockData { @@ -7026,7 +7026,7 @@ index bbded5671..980890153 100644 public IBlockData getState() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index b1fdc5737..f1710a53f 100644 +index b1fdc5737d..f1710a53fa 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 { @@ -7097,7 +7097,7 @@ index b1fdc5737..f1710a53f 100644 public boolean teleport(org.bukkit.entity.Entity destination) { return teleport(destination.getLocation()); diff --git a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java -index 948a59217..ab43c97e8 100644 +index 948a59217c..ab43c97e8f 100644 --- a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java +++ b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java @@ -73,7 +73,7 @@ public final class CraftChunkData implements ChunkGenerator.ChunkData { @@ -7110,7 +7110,7 @@ index 948a59217..ab43c97e8 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java -index fd32d1450..c38e514b0 100644 +index fd32d1450a..c38e514b00 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 { @@ -7133,7 +7133,7 @@ index fd32d1450..c38e514b0 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 ca2be3060..2c5701376 100644 +index ca2be30609..2c57013765 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java @@ -100,9 +100,18 @@ public final class CraftScoreboardManager implements ScoreboardManager { @@ -7156,7 +7156,7 @@ index ca2be3060..2c5701376 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java b/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java -index f72c13bed..50f855b93 100644 +index f72c13beda..50f855b931 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 @@ -7193,7 +7193,7 @@ index f72c13bed..50f855b93 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 674096cab..001b1e519 100644 +index 674096cab1..001b1e5197 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 { @@ -7206,7 +7206,7 @@ index 674096cab..001b1e519 100644 if (stream != null) { diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java -index 9f7d2ef93..c3ac1a46c 100644 +index 9f7d2ef932..c3ac1a46c3 100644 --- a/src/main/java/org/spigotmc/AsyncCatcher.java +++ b/src/main/java/org/spigotmc/AsyncCatcher.java @@ -10,7 +10,7 @@ public class AsyncCatcher @@ -7219,7 +7219,7 @@ index 9f7d2ef93..c3ac1a46c 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 513c1041c..4d3109084 100644 +index 513c1041c3..4d31090848 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/0025-Player-invulnerabilities.patch b/patches/server/0025-Player-invulnerabilities.patch index 3fbf03701..3880eb8d3 100644 --- a/patches/server/0025-Player-invulnerabilities.patch +++ b/patches/server/0025-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 b67611b11..2738194fc 100644 +index 8638d46229..71d2a658d8 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 { @@ -39,7 +39,7 @@ index b67611b11..2738194fc 100644 return false; } else { if (damagesource instanceof EntityDamageSource) { -@@ -997,6 +1005,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -983,6 +991,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { // CraftBukkit end } @@ -67,7 +67,7 @@ index b67611b11..2738194fc 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 6c1438f7d..8fa91b8f5 100644 +index 6c1438f7da..8fa91b8f59 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1572,6 +1572,7 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -79,7 +79,7 @@ index 6c1438f7d..8fa91b8f5 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 f9eb17cb6..75b0565df 100644 +index f9eb17cb6e..75b0565df0 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -903,6 +903,8 @@ public abstract class PlayerList { @@ -92,7 +92,7 @@ index f9eb17cb6..75b0565df 100644 return entityplayer1; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2578a4677..c441fcea9 100644 +index 2578a4677d..c441fcea9b 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,7 +108,7 @@ index 2578a4677..c441fcea9 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 087cb11b5..eefb4bd74 100644 +index 087cb11b5d..eefb4bd74b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2168,5 +2168,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0035-Giants-AI-settings.patch b/patches/server/0035-Giants-AI-settings.patch index 0dd1c098c..f95656395 100644 --- a/patches/server/0035-Giants-AI-settings.patch +++ b/patches/server/0035-Giants-AI-settings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Giants AI settings diff --git a/src/main/java/net/minecraft/server/AttributeMapBase.java b/src/main/java/net/minecraft/server/AttributeMapBase.java -index c57e23e16..92aa104dc 100644 +index c57e23e16b..92aa104dc5 100644 --- a/src/main/java/net/minecraft/server/AttributeMapBase.java +++ b/src/main/java/net/minecraft/server/AttributeMapBase.java @@ -41,6 +41,7 @@ public class AttributeMapBase { @@ -17,10 +17,10 @@ index c57e23e16..92aa104dc 100644 public AttributeModifiable a(AttributeBase attributebase) { return (AttributeModifiable) this.b.computeIfAbsent(attributebase, (attributebase1) -> { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 42dd8a0e3..2ea06a85f 100644 +index 6c0d8fdaf2..fa60014088 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 +@@ -137,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public double D; public double E; public double F; @@ -30,7 +30,7 @@ index 42dd8a0e3..2ea06a85f 100644 public float I; protected final Random random; diff --git a/src/main/java/net/minecraft/server/EntityGiantZombie.java b/src/main/java/net/minecraft/server/EntityGiantZombie.java -index 9f4f56c47..8dce2aad7 100644 +index 9f4f56c47e..8dce2aad77 100644 --- a/src/main/java/net/minecraft/server/EntityGiantZombie.java +++ b/src/main/java/net/minecraft/server/EntityGiantZombie.java @@ -4,9 +4,68 @@ public class EntityGiantZombie extends EntityMonster { @@ -112,7 +112,7 @@ index 9f4f56c47..8dce2aad7 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java -index 36df27024..b7fcade36 100644 +index 36df27024c..b7fcade369 100644 --- a/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java @@ -939,6 +939,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -146,7 +146,7 @@ index 36df27024..b7fcade36 100644 return false; } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 17128d5aa..82cf853ab 100644 +index 17128d5aae..82cf853ab3 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2148,7 +2148,7 @@ public abstract class EntityLiving extends Entity { @@ -159,7 +159,7 @@ index 17128d5aa..82cf853ab 100644 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 88e271574..b1aca6526 100644 +index 88e2715744..b1aca65267 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -106,6 +106,23 @@ public class PurpurWorldConfig { diff --git a/patches/server/0047-Cat-spawning-options.patch b/patches/server/0047-Cat-spawning-options.patch index 136229f09..f8d269d73 100644 --- a/patches/server/0047-Cat-spawning-options.patch +++ b/patches/server/0047-Cat-spawning-options.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Cat spawning options diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index 90c37e4a8..7a42feb16 100644 +index 90c37e4a8e..7a42feb16e 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -44,6 +44,7 @@ public interface IEntityAccess { @@ -17,7 +17,7 @@ index 90c37e4a8..7a42feb16 100644 return this.a(oclass, axisalignedbb, IEntitySelector.g); } diff --git a/src/main/java/net/minecraft/server/MobSpawnerCat.java b/src/main/java/net/minecraft/server/MobSpawnerCat.java -index 5e17868a7..6d0ebd8af 100644 +index 5e17868a76..6d0ebd8afe 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerCat.java +++ b/src/main/java/net/minecraft/server/MobSpawnerCat.java @@ -16,7 +16,7 @@ public class MobSpawnerCat implements MobSpawner { @@ -62,7 +62,7 @@ index 5e17868a7..6d0ebd8af 100644 } diff --git a/src/main/java/net/minecraft/server/VillagePlace.java b/src/main/java/net/minecraft/server/VillagePlace.java -index adacfce6f..21e401acd 100644 +index adacfce6f3..21e401acd7 100644 --- a/src/main/java/net/minecraft/server/VillagePlace.java +++ b/src/main/java/net/minecraft/server/VillagePlace.java @@ -45,6 +45,7 @@ public class VillagePlace extends RegionFileSection { @@ -74,7 +74,7 @@ index adacfce6f..21e401acd 100644 return this.c(predicate, blockposition, i, villageplace_occupancy).count(); } diff --git a/src/main/java/net/minecraft/server/VillagePlaceType.java b/src/main/java/net/minecraft/server/VillagePlaceType.java -index a5718af9b..b6b4c8c49 100644 +index a5718af9b6..b6b4c8c491 100644 --- a/src/main/java/net/minecraft/server/VillagePlaceType.java +++ b/src/main/java/net/minecraft/server/VillagePlaceType.java @@ -44,7 +44,7 @@ public class VillagePlaceType { @@ -95,10 +95,10 @@ index a5718af9b..b6b4c8c49 100644 return this.E; } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 699a03a9e..004cc8616 100644 +index b0b49c866c..72958601e6 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -2530,6 +2530,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { +@@ -2534,6 +2534,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { } } @@ -107,7 +107,7 @@ index 699a03a9e..004cc8616 100644 return this.getChunkProvider().j(); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b41d4959c..55e609cc1 100644 +index b41d4959c1..55e609cc1c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -111,6 +111,15 @@ public class PurpurWorldConfig { diff --git a/patches/server/0049-Cows-eat-mushrooms.patch b/patches/server/0049-Cows-eat-mushrooms.patch index e1a9364d7..73483e2b4 100644 --- a/patches/server/0049-Cows-eat-mushrooms.patch +++ b/patches/server/0049-Cows-eat-mushrooms.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cows eat mushrooms diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 2ea06a85f..5fc69bc95 100644 +index fa60014088..74d26aad1d 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2723,6 +2723,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2724,6 +2724,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.invulnerable = flag; } @@ -17,7 +17,7 @@ index 2ea06a85f..5fc69bc95 100644 this.setPositionRotation(entity.locX(), entity.locY(), entity.locZ(), entity.yaw, entity.pitch); } diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index 42e6761c8..cfb009c81 100644 +index 42e6761c8b..cfb009c811 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -16,6 +16,7 @@ public class EntityCow extends EntityAnimal { @@ -110,7 +110,7 @@ index 42e6761c8..cfb009c81 100644 public EntityCow createChild(WorldServer worldserver, EntityAgeable entityageable) { return (EntityCow) EntityTypes.COW.a((World) worldserver); diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 82cf853ab..5e9849a46 100644 +index 82cf853ab3..5e9849a466 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -80,7 +80,7 @@ public abstract class EntityLiving extends Entity { @@ -123,7 +123,7 @@ index 82cf853ab..5e9849a46 100644 public float aC; public float aD; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 55e609cc1..3d78ac90c 100644 +index 55e609cc1c..3d78ac90c1 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -125,6 +125,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0065-Fix-the-dead-lagging-the-server.patch b/patches/server/0065-Fix-the-dead-lagging-the-server.patch index fdd2f5fe0..9ad5e2d0d 100644 --- a/patches/server/0065-Fix-the-dead-lagging-the-server.patch +++ b/patches/server/0065-Fix-the-dead-lagging-the-server.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix the dead lagging the server diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 5fc69bc95..179e470fe 100644 +index 74d26aad1d..8bc2e7c988 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1500,6 +1500,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1501,6 +1501,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.pitch = MathHelper.a(f1, -90.0F, 90.0F) % 360.0F; this.lastYaw = this.yaw; this.lastPitch = this.pitch; @@ -17,7 +17,7 @@ index 5fc69bc95..179e470fe 100644 public void f(double d0, double d1, double d2) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 618faae95..51b2aa3e2 100644 +index 618faae958..51b2aa3e20 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2466,7 +2466,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0081-Configurable-void-damage-height.patch b/patches/server/0081-Configurable-void-damage-height.patch index e6ef14b1b..21c0c2c05 100644 --- a/patches/server/0081-Configurable-void-damage-height.patch +++ b/patches/server/0081-Configurable-void-damage-height.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable void damage height diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f3e9c8460..40fad381e 100644 +index e208190073..305b63b295 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -611,7 +611,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -612,7 +612,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke // Paper start protected void performVoidDamage() { @@ -18,7 +18,7 @@ index f3e9c8460..40fad381e 100644 && this.locY() >= world.paperConfig.netherVoidTopDamageHeight)) { this.doVoidDamage(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6ac786206..a071129db 100644 +index 6ac7862063..a071129db0 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -115,12 +115,14 @@ public class PurpurWorldConfig { diff --git a/patches/server/0088-Climbing-should-not-bypass-cramming-gamerule.patch b/patches/server/0088-Climbing-should-not-bypass-cramming-gamerule.patch index 0da5acc9d..b9686ef09 100644 --- a/patches/server/0088-Climbing-should-not-bypass-cramming-gamerule.patch +++ b/patches/server/0088-Climbing-should-not-bypass-cramming-gamerule.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 40fad381e..db7ac28da 100644 +index 305b63b295..b3a28d1b8d 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1691,6 +1691,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1692,6 +1692,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public boolean isCollidable() { @@ -22,7 +22,7 @@ index 40fad381e..db7ac28da 100644 } diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index eb32abc5d..6a505b3b0 100644 +index eb32abc5d1..6a505b3b04 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -320,7 +320,7 @@ public class EntityArmorStand extends EntityLiving { @@ -35,7 +35,7 @@ index eb32abc5d..6a505b3b0 100644 } diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java -index a726dd676..b84aa1db8 100644 +index a726dd6768..b84aa1db83 100644 --- a/src/main/java/net/minecraft/server/EntityBat.java +++ b/src/main/java/net/minecraft/server/EntityBat.java @@ -50,7 +50,7 @@ public class EntityBat extends EntityAmbient { @@ -48,7 +48,7 @@ index a726dd676..b84aa1db8 100644 } diff --git a/src/main/java/net/minecraft/server/EntityBoat.java b/src/main/java/net/minecraft/server/EntityBoat.java -index 0f25d7cd6..5887b7a26 100644 +index 0f25d7cd61..5887b7a26e 100644 --- a/src/main/java/net/minecraft/server/EntityBoat.java +++ b/src/main/java/net/minecraft/server/EntityBoat.java @@ -106,7 +106,7 @@ public class EntityBoat extends Entity { @@ -61,7 +61,7 @@ index 0f25d7cd6..5887b7a26 100644 } diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java -index da79c7e63..8cfbf8abf 100644 +index da79c7e631..8cfbf8abf6 100644 --- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java +++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java @@ -165,7 +165,7 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven @@ -74,7 +74,7 @@ index da79c7e63..8cfbf8abf 100644 } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 51b2aa3e2..9398fa680 100644 +index 51b2aa3e20..9398fa6801 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2854,7 +2854,7 @@ public abstract class EntityLiving extends Entity { @@ -98,7 +98,7 @@ index 51b2aa3e2..9398fa680 100644 // CraftBukkit start - collidable API diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java -index d5e129678..5e64ca8a0 100644 +index d5e129678d..5e64ca8a03 100644 --- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java +++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java @@ -107,7 +107,7 @@ public abstract class EntityMinecartAbstract extends Entity { @@ -111,7 +111,7 @@ index d5e129678..5e64ca8a0 100644 } diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java -index 34e08dda2..6bb73f869 100644 +index 34e08dda2e..6bb73f869b 100644 --- a/src/main/java/net/minecraft/server/EntityParrot.java +++ b/src/main/java/net/minecraft/server/EntityParrot.java @@ -314,8 +314,8 @@ public class EntityParrot extends EntityPerchable implements EntityBird { @@ -126,7 +126,7 @@ index 34e08dda2..6bb73f869 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 47f48d3b7..e524705bf 100644 +index 65c241d88e..9b6e356bb3 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1771,8 +1771,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -141,7 +141,7 @@ index 47f48d3b7..e524705bf 100644 // Purpur end diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java -index 939535cb2..70eb26304 100644 +index 939535cb22..70eb26304d 100644 --- a/src/main/java/net/minecraft/server/IEntitySelector.java +++ b/src/main/java/net/minecraft/server/IEntitySelector.java @@ -45,11 +45,17 @@ public final class IEntitySelector { @@ -164,7 +164,7 @@ index 939535cb2..70eb26304 100644 } else if (entity.world.isClientSide && (!(entity1 instanceof EntityHuman) || !((EntityHuman) entity1).ey())) { return false; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index a9b1a130b..860e25dfd 100644 +index a9b1a130be..860e25dfd8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -114,6 +114,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0091-Add-item-entity-options.patch b/patches/server/0091-Add-item-entity-options.patch index d80e3bdcd..a87b14418 100644 --- a/patches/server/0091-Add-item-entity-options.patch +++ b/patches/server/0091-Add-item-entity-options.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add item entity options diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index db7ac28da..7be48b0b7 100644 +index b3a28d1b8d..7b3ea5c741 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1449,6 +1449,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1450,6 +1450,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } @@ -17,7 +17,7 @@ index db7ac28da..7be48b0b7 100644 return this.O == tag; } diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index e1372620f..d22021cfb 100644 +index e1372620fc..d22021cfb8 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java @@ -263,7 +263,7 @@ public class EntityItem extends Entity { @@ -39,7 +39,7 @@ index e1372620f..d22021cfb 100644 // CraftBukkit start if (org.bukkit.craftbukkit.event.CraftEventFactory.handleNonLivingEntityDamageEvent(this, damagesource, f)) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d1b0d4030..9de724686 100644 +index d1b0d40307..9de7246862 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -99,6 +99,21 @@ public class PurpurWorldConfig { diff --git a/patches/server/0094-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/patches/server/0094-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch index c69aeddbb..3234191b1 100644 --- a/patches/server/0094-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch +++ b/patches/server/0094-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Phantoms attracted to crystals and crystals shoot phantoms diff --git a/src/main/java/net/minecraft/server/DamageSource.java b/src/main/java/net/minecraft/server/DamageSource.java -index 6fe5678cf..bd0267ee4 100644 +index 6fe5678cff..bd0267ee4b 100644 --- a/src/main/java/net/minecraft/server/DamageSource.java +++ b/src/main/java/net/minecraft/server/DamageSource.java @@ -88,6 +88,7 @@ public class DamageSource { @@ -17,10 +17,10 @@ index 6fe5678cf..bd0267ee4 100644 return (new EntityDamageSourceIndirect("indirectMagic", entity, entity1)).setIgnoreArmor().setMagic(); } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 7be48b0b7..bf17d9daf 100644 +index 7b3ea5c741..26cefeb23c 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1567,6 +1567,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1568,6 +1568,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return d3 * d3 + d4 * d4 + d5 * d5; } @@ -28,7 +28,7 @@ index 7be48b0b7..bf17d9daf 100644 public double h(Entity entity) { return this.e(entity.getPositionVector()); } -@@ -2094,8 +2095,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2095,8 +2096,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.a(new ItemStack(imaterial), (float) i); } @@ -40,7 +40,7 @@ index 7be48b0b7..bf17d9daf 100644 } diff --git a/src/main/java/net/minecraft/server/EntityEnderCrystal.java b/src/main/java/net/minecraft/server/EntityEnderCrystal.java -index faa82f652..f726a3585 100644 +index faa82f6524..f726a3585f 100644 --- a/src/main/java/net/minecraft/server/EntityEnderCrystal.java +++ b/src/main/java/net/minecraft/server/EntityEnderCrystal.java @@ -13,6 +13,12 @@ public class EntityEnderCrystal extends Entity { @@ -108,7 +108,7 @@ index faa82f652..f726a3585 100644 @Override protected void saveData(NBTTagCompound nbttagcompound) { diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java -index 550f80bfd..b3616185d 100644 +index 550f80bfdb..b3616185d2 100644 --- a/src/main/java/net/minecraft/server/EntityPhantom.java +++ b/src/main/java/net/minecraft/server/EntityPhantom.java @@ -9,9 +9,10 @@ import javax.annotation.Nullable; @@ -329,7 +329,7 @@ index 550f80bfd..b3616185d 100644 return entityliving != null ? EntityPhantom.this.a(EntityPhantom.this.getGoalTarget(), PathfinderTargetCondition.a) : false; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 3e067c832..f2ca515c9 100644 +index 3e067c832f..f2ca515c9b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -324,6 +324,15 @@ public class PurpurWorldConfig { diff --git a/patches/server/0125-Stop-squids-floating-on-top-of-water.patch b/patches/server/0125-Stop-squids-floating-on-top-of-water.patch index b11da4e69..60a52a360 100644 --- a/patches/server/0125-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0125-Stop-squids-floating-on-top-of-water.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index bf17d9daf..c827e4628 100644 +index 26cefeb23c..26a08b9520 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -3381,8 +3381,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3394,8 +3394,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.lastYaw = this.yaw; } @@ -24,7 +24,7 @@ index bf17d9daf..c827e4628 100644 int j = MathHelper.f(axisalignedbb.maxX); int k = MathHelper.floor(axisalignedbb.minY); diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java -index 03d707ed0..028a7fe2c 100644 +index 03d707ed09..028a7fe2cd 100644 --- a/src/main/java/net/minecraft/server/EntitySquid.java +++ b/src/main/java/net/minecraft/server/EntitySquid.java @@ -25,6 +25,14 @@ public class EntitySquid extends EntityWaterAnimal { @@ -43,7 +43,7 @@ index 03d707ed0..028a7fe2c 100644 protected void initPathfinder() { this.goalSelector.a(0, new EntitySquid.PathfinderGoalSquid(this)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6329b1c50..421781136 100644 +index 6329b1c507..421781136c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -476,8 +476,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0126-Ridables.patch b/patches/server/0126-Ridables.patch index d26c73784..2de962375 100644 --- a/patches/server/0126-Ridables.patch +++ b/patches/server/0126-Ridables.patch @@ -161,10 +161,10 @@ 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 c827e4628c..6f5e43526a 100644 +index 26a08b9520..6d01021e28 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 +@@ -81,7 +81,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public com.destroystokyo.paper.loottable.PaperLootableInventoryData lootableData; // Paper private CraftEntity bukkitEntity; @@ -173,7 +173,7 @@ index c827e4628c..6f5e43526a 100644 boolean collisionLoadChunks = false; // Paper Throwable addedToWorldStack; // Paper - entity debug public CraftEntity getBukkitEntity() { -@@ -105,7 +105,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -106,7 +106,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke private int id; public boolean i; public final boolean blocksEntitySpawning() { return this.i; } // Paper - OBFHELPER public final List passengers; @@ -182,7 +182,7 @@ index c827e4628c..6f5e43526a 100644 @Nullable private Entity vehicle; public boolean attachedToPlayer; -@@ -121,7 +121,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -122,7 +122,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public float lastYaw; public float lastPitch; private AxisAlignedBB boundingBox; @@ -191,7 +191,7 @@ index c827e4628c..6f5e43526a 100644 public boolean positionChanged; public boolean v; public boolean velocityChanged; -@@ -2194,6 +2194,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2195,6 +2195,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.a(entity, false); } @@ -199,7 +199,7 @@ index c827e4628c..6f5e43526a 100644 public boolean a(Entity entity, boolean flag) { for (Entity entity1 = entity; entity1.vehicle != null; entity1 = entity1.vehicle) { if (entity1.vehicle == this) { -@@ -2289,6 +2290,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2290,6 +2291,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.passengers.add(entity); } @@ -213,7 +213,7 @@ index c827e4628c..6f5e43526a 100644 } return true; // CraftBukkit } -@@ -2329,6 +2337,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2330,6 +2338,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return false; } // Spigot end @@ -226,7 +226,7 @@ index c827e4628c..6f5e43526a 100644 this.passengers.remove(entity); entity.j = 60; } -@@ -2494,6 +2508,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2495,6 +2509,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.setFlag(4, flag); } @@ -234,7 +234,7 @@ index c827e4628c..6f5e43526a 100644 public boolean bD() { return this.glowing || this.world.isClientSide && this.getFlag(6); } -@@ -2712,6 +2727,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2713,6 +2728,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke public void setHeadRotation(float f) {} @@ -242,7 +242,7 @@ index c827e4628c..6f5e43526a 100644 public void n(float f) {} public boolean bK() { -@@ -3134,6 +3150,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3147,6 +3163,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return false; } @@ -261,7 +261,7 @@ index c827e4628c..6f5e43526a 100644 @Override public void sendMessage(IChatBaseComponent ichatbasecomponent, UUID uuid) {} -@@ -3576,4 +3604,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3589,4 +3617,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke void accept(Entity entity, double d0, double d1, double d2); } diff --git a/patches/server/0127-Use-configured-height-for-nether-surface-builders.patch b/patches/server/0127-Use-configured-height-for-nether-surface-builders.patch index 5fc84bc3c..e384c6093 100644 --- a/patches/server/0127-Use-configured-height-for-nether-surface-builders.patch +++ b/patches/server/0127-Use-configured-height-for-nether-surface-builders.patch @@ -4,45 +4,16 @@ Date: Sat, 15 Aug 2020 06:51:46 -0500 Subject: [PATCH] Use configured height for nether surface builders -diff --git a/src/main/java/net/minecraft/server/WorldGenSurfaceNether.java b/src/main/java/net/minecraft/server/WorldGenSurfaceNether.java -index 6677740edb..3296904445 100644 ---- a/src/main/java/net/minecraft/server/WorldGenSurfaceNether.java -+++ b/src/main/java/net/minecraft/server/WorldGenSurfaceNether.java -@@ -29,7 +29,7 @@ public class WorldGenSurfaceNether extends WorldGenSurface= 0; --k2) { -+ for (int k2 = k; k2 >= 0; --k2) { // Purpur - use configured height - blockposition_mutableblockposition.d(k1, k2, l1); - IBlockData iblockdata4 = ichunkaccess.getType(blockposition_mutableblockposition); - diff --git a/src/main/java/net/minecraft/server/WorldGenSurfaceNetherAbstract.java b/src/main/java/net/minecraft/server/WorldGenSurfaceNetherAbstract.java -index 1ff8b4eb10..2fbc8a2e0d 100644 +index 462f0b2bae..f418a71ca8 100644 --- a/src/main/java/net/minecraft/server/WorldGenSurfaceNetherAbstract.java +++ b/src/main/java/net/minecraft/server/WorldGenSurfaceNetherAbstract.java -@@ -35,9 +35,9 @@ public abstract class WorldGenSurfaceNetherAbstract extends WorldGenSurface= 0; --k2) { -+ for (int k2 = k; k2 >= 0; --k2) { // Purpur - use configured height + for (int k2 = k; k2 >= 0; --k2) { // Paper - fix MC-187716 - use configured height blockposition_mutableblockposition.d(k1, k2, l1); - IBlockData iblockdata5 = ichunkaccess.getType(blockposition_mutableblockposition); - int l2; -diff --git a/src/main/java/net/minecraft/server/WorldGenSurfaceNetherForest.java b/src/main/java/net/minecraft/server/WorldGenSurfaceNetherForest.java -index c3c31fa356..7c17d9c61c 100644 ---- a/src/main/java/net/minecraft/server/WorldGenSurfaceNetherForest.java -+++ b/src/main/java/net/minecraft/server/WorldGenSurfaceNetherForest.java -@@ -27,7 +27,7 @@ public class WorldGenSurfaceNetherForest extends WorldGenSurface= 0; --k2) { -+ for (int k2 = k; k2 >= 0; --k2) { // Purpur - use configured height - blockposition_mutableblockposition.d(k1, k2, l1); - IBlockData iblockdata3 = worldgensurfaceconfigurationbase.a(); - IBlockData iblockdata4 = ichunkaccess.getType(blockposition_mutableblockposition); diff --git a/patches/server/0128-Fix-incorrect-return-for-WorldServer-addAllEntitiesS.patch b/patches/server/0128-Fix-incorrect-return-for-WorldServer-addAllEntitiesS.patch deleted file mode 100644 index 9c5c83338..000000000 --- a/patches/server/0128-Fix-incorrect-return-for-WorldServer-addAllEntitiesS.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Sat, 15 Aug 2020 09:19:56 -0500 -Subject: [PATCH] Fix incorrect return for WorldServer#addAllEntitiesSafely - - -diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 5e4ccb0663..3c159c6fa7 100644 ---- a/src/main/java/net/minecraft/server/WorldServer.java -+++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1712,7 +1712,10 @@ public class WorldServer extends World implements GeneratorAccessSeed { - if (entity.co().anyMatch(this::isUUIDTaken)) { - return false; - } else { -- return this.addAllEntities(entity, reason); // CraftBukkit -+ // Purpur start - this MUST return true if UUID is not taken regardless if actually spawned or not -+ this.addAllEntities(entity, reason); // CraftBukkit -+ return true; -+ // Purpur end - } - } - diff --git a/patches/server/0129-Don-t-mark-null-chunk-sections-for-block-updates.patch b/patches/server/0129-Don-t-mark-null-chunk-sections-for-block-updates.patch deleted file mode 100644 index 18a736f32..000000000 --- a/patches/server/0129-Don-t-mark-null-chunk-sections-for-block-updates.patch +++ /dev/null @@ -1,18 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Mariell Hoversholm -Date: Fri, 14 Aug 2020 23:41:19 +0200 -Subject: [PATCH] Don't mark null chunk sections for block updates - - -diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java -index 9f1dd6e1aa..577f0a234b 100644 ---- a/src/main/java/net/minecraft/server/PlayerChunk.java -+++ b/src/main/java/net/minecraft/server/PlayerChunk.java -@@ -419,6 +419,7 @@ public class PlayerChunk { - this.a(world, blockposition, iblockdata); - } else { - ChunkSection chunksection = chunk.getSections()[sectionposition.getY()]; -+ if (chunksection == null) chunksection = new ChunkSection(sectionposition.getY(), chunk, world, true); // Paper - make a new chunk section if none was found - PacketPlayOutMultiBlockChange packetplayoutmultiblockchange = new PacketPlayOutMultiBlockChange(sectionposition, shortset, chunksection, this.x); - - this.a(packetplayoutmultiblockchange, false); diff --git a/patches/server/0130-Remove-armour-stand-double-add-to-world.patch b/patches/server/0130-Remove-armour-stand-double-add-to-world.patch deleted file mode 100644 index dec315327..000000000 --- a/patches/server/0130-Remove-armour-stand-double-add-to-world.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Mariell Hoversholm -Date: Fri, 14 Aug 2020 23:59:26 +0200 -Subject: [PATCH] Remove armour stand double add to world - - -diff --git a/src/main/java/net/minecraft/server/ItemArmorStand.java b/src/main/java/net/minecraft/server/ItemArmorStand.java -index 73b92c8a71..9611f940a3 100644 ---- a/src/main/java/net/minecraft/server/ItemArmorStand.java -+++ b/src/main/java/net/minecraft/server/ItemArmorStand.java -@@ -33,7 +33,7 @@ public class ItemArmorStand extends Item { - return EnumInteractionResult.FAIL; - } - -- worldserver.addAllEntities(entityarmorstand); -+ // worldserver.addAllEntities(entityarmorstand); // Paper - moved down - float f = (float) MathHelper.d((MathHelper.g(itemactioncontext.h() - 180.0F) + 22.5F) / 45.0F) * 45.0F; - - entityarmorstand.setPositionRotation(entityarmorstand.locX(), entityarmorstand.locY(), entityarmorstand.locZ(), f, 0.0F); -@@ -43,7 +43,7 @@ public class ItemArmorStand extends Item { - return EnumInteractionResult.FAIL; - } - // CraftBukkit end -- world.addEntity(entityarmorstand); -+ worldserver.addAllEntities(entityarmorstand); // Paper - moved down - world.playSound((EntityHuman) null, entityarmorstand.locX(), entityarmorstand.locY(), entityarmorstand.locZ(), SoundEffects.ENTITY_ARMOR_STAND_PLACE, SoundCategory.BLOCKS, 0.75F, 0.8F); - } -