diff --git a/Paper b/Paper index 5d05da257..0daded2f2 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit 5d05da25798db0b8899590a7f59887bfd1718770 +Subproject commit 0daded2f25184b45fcc0be6ea86b63492df96024 diff --git a/patches/api/0001-Tuinity-API-Changes.patch b/patches/api/0001-Tuinity-API-Changes.patch index e267f6a0e..9fb535bb0 100644 --- a/patches/api/0001-Tuinity-API-Changes.patch +++ b/patches/api/0001-Tuinity-API-Changes.patch @@ -217,10 +217,10 @@ index e88b47a838dc472ad64271a518ee1789f7be19fa..f55ae8275c297c4c86215fba8d7197ff * Sends the component to the player * diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index a1496fe00a2d5ba6c1af054d4327f868b2cd7344..6ca9aa2c438810b5537dc196b3fd89b0750b3d67 100644 +index f66ec2dfdc64871f8b752bf44086954300804f08..8efc8e0db687e1506eee2b19466ec917ba4edcdc 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -3631,6 +3631,26 @@ public interface World extends PluginMessageRecipient, Metadatable, net.kyori.ad +@@ -3639,6 +3639,26 @@ public interface World extends PluginMessageRecipient, Metadatable, net.kyori.ad * @param viewDistance view distance in [2, 32] */ void setNoTickViewDistance(int viewDistance); diff --git a/patches/api/0010-LivingEntity-safeFallDistance.patch b/patches/api/0010-LivingEntity-safeFallDistance.patch index 504f36fe3..7383c9a68 100644 --- a/patches/api/0010-LivingEntity-safeFallDistance.patch +++ b/patches/api/0010-LivingEntity-safeFallDistance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity safeFallDistance diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index b6de41e3e718fa5d1b82c6f68b153e60a81265e7..402f3c80a4a9592f70aa6cd02c76bbad17b62fec 100644 +index ccb81ceee74fff50ec3ed88ae0a41f790c40ae87..b96edbf7e5a2bf66a9ebf9300368e8f6a8d561f9 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -860,4 +860,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -873,4 +873,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setHurtDirection(float hurtDirection); // Paper end diff --git a/patches/api/0023-LivingEntity-broadcastItemBreak.patch b/patches/api/0023-LivingEntity-broadcastItemBreak.patch index 5423bc18c..ff7ac9306 100644 --- a/patches/api/0023-LivingEntity-broadcastItemBreak.patch +++ b/patches/api/0023-LivingEntity-broadcastItemBreak.patch @@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 402f3c80a4a9592f70aa6cd02c76bbad17b62fec..141b179cda88ab247ce6fa992ac2b9eafa1ac98d 100644 +index b96edbf7e5a2bf66a9ebf9300368e8f6a8d561f9..f64cd3a467ccb4f773138542a6beb61ab2e1ae40 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -875,5 +875,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -888,5 +888,12 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * @param safeFallDistance Safe fall distance */ void setSafeFallDistance(float safeFallDistance); diff --git a/patches/api/0041-API-for-any-mob-to-burn-daylight.patch b/patches/api/0041-API-for-any-mob-to-burn-daylight.patch index 2b735b21e..edec35d7d 100644 --- a/patches/api/0041-API-for-any-mob-to-burn-daylight.patch +++ b/patches/api/0041-API-for-any-mob-to-burn-daylight.patch @@ -23,10 +23,10 @@ index 7fa5242bd44c9b19648d79fa8fecbb7ee125288e..62d8d7dbd4d602ca8cb00ff0cf133158 // Purpur end } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 141b179cda88ab247ce6fa992ac2b9eafa1ac98d..5667334116d9ebee714235f75053917efa2728f4 100644 +index f64cd3a467ccb4f773138542a6beb61ab2e1ae40..41f91ab59e34b2b15432d3941e4ee5658b24f10e 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -882,5 +882,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -895,5 +895,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * @param slot Equipment slot to play break animation for */ void broadcastItemBreak(@NotNull org.bukkit.inventory.EquipmentSlot slot); diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index ae35d1c1b..019eb063a 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -5659,7 +5659,7 @@ index 0000000000000000000000000000000000000000..0e4442a94559346b19a536d35ce5def6 +} 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 0000000000000000000000000000000000000000..a30bb38144acb74f41638cc2b573e09265cde0e1 +index 0000000000000000000000000000000000000000..e1dc7c1025e19f7393a45719af8fe7aae016184d --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java @@ -0,0 +1,415 @@ @@ -5789,7 +5789,7 @@ index 0000000000000000000000000000000000000000..a30bb38144acb74f41638cc2b573e092 + tickWorldsInParallel = TuinityConfig.getBoolean("tick-worlds-in-parallel", false); + tickThreads = TuinityConfig.getInt("server-tick-threads", 1); // will be 4 in the future + }*/ -+ ++ + public static int delayChunkUnloadsBy; + + private static void delayChunkUnloadsBy() { @@ -11627,7 +11627,7 @@ index 3644e8b24b082e17752ef52934625416130aaa08..58e14c174cdf76cdea861fd3d4d1195f class b extends ChunkMap { diff --git a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java -index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7d100ba61 100644 +index 4a71f9a8a57ed123b31c725a8bd5f94ab0e2174d..e0ffea4f5d45a402d4ff5b4b831f2663f9d73eeb 100644 --- a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java @@ -47,6 +47,12 @@ import net.minecraft.world.level.storage.WorldData; @@ -11931,7 +11931,7 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 this.world.timings.doChunkUnload.stopTiming(); // Spigot this.world.getMethodProfiler().exit(); this.clearCache(); -@@ -834,31 +1017,37 @@ public class ChunkProviderServer extends IChunkProvider { +@@ -834,32 +1017,37 @@ public class ChunkProviderServer extends IChunkProvider { for (EntityPlayer player : this.world.players) { Arrays.fill(player.mobCounts, 0); } @@ -11951,6 +11951,7 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 //List list = Lists.newArrayList(this.playerChunkMap.f()); // Paper //Collections.shuffle(list); // Paper // Paper - moved up +- this.world.timings.chunkTicks.startTiming(); // Paper - final int[] chunksTicked = {0}; this.playerChunkMap.forEachVisibleChunk((playerchunk) -> { // Paper - safe iterator incase chunk loads, also no wrapping - Optional optional = ((Either) playerchunk.a().getNow(PlayerChunk.UNLOADED_CHUNK)).left(); - @@ -11979,16 +11980,17 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 ChunkCoordIntPair chunkcoordintpair = playerchunk.i(); if (!this.playerChunkMap.isOutsideOfRange(playerchunk, chunkcoordintpair, false)) { // Paper - optimise isOutsideOfRange -@@ -870,11 +1059,15 @@ public class ChunkProviderServer extends IChunkProvider { - this.world.timings.chunkTicks.startTiming(); // Spigot // Paper +@@ -871,12 +1059,15 @@ public class ChunkProviderServer extends IChunkProvider { + //this.world.timings.chunkTicks.startTiming(); // Spigot // Paper this.world.a(chunk, k); - this.world.timings.chunkTicks.stopTiming(); // Spigot // Paper + //this.world.timings.chunkTicks.stopTiming(); // Spigot // Paper - if (chunksTicked[0]++ % 10 == 0) this.world.getMinecraftServer().midTickLoadChunks(); // Paper + if ((++ticked & 1) == 0) MinecraftServer.getServer().executeMidTickTasks(); // Tuinity - exec chunk tasks during world tick } } } - }); +- this.world.timings.chunkTicks.stopTiming(); // Paper + } // Tuinity start - optimise chunk tick iteration + } finally { + iterator.finishedIterating(); @@ -11997,7 +11999,7 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 this.world.getMethodProfiler().enter("customSpawners"); if (flag1) { try (co.aikar.timings.Timing ignored = this.world.timings.miscMobSpawning.startTiming()) { // Paper - timings -@@ -886,7 +1079,25 @@ public class ChunkProviderServer extends IChunkProvider { +@@ -888,7 +1079,25 @@ public class ChunkProviderServer extends IChunkProvider { this.world.getMethodProfiler().exit(); } @@ -12023,7 +12025,7 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 } private void a(long i, Consumer consumer) { -@@ -1026,44 +1237,12 @@ public class ChunkProviderServer extends IChunkProvider { +@@ -1028,44 +1237,12 @@ public class ChunkProviderServer extends IChunkProvider { ChunkProviderServer.this.world.getMethodProfiler().c("runTask"); super.executeTask(runnable); } @@ -12072,7 +12074,7 @@ index c5e54c519e1f686761faa53b5e9579c514a65332..fe040615ff03478a20cdf8376f89a6b7 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/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 558af73ac16550ee6964c4dce681a404633b2552..32e400632ec1e61374f772c6262580f84a5b2288 100644 +index 75bcfb3a2b4a104aeebb2fe3298714b2e5b569d2..c813077455a463dd558076d1d7474829f76b905a 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -262,7 +262,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -12288,7 +12290,7 @@ index 558af73ac16550ee6964c4dce681a404633b2552..32e400632ec1e61374f772c6262580f8 if (this.getHealth() != this.lastHealthSent || this.lastFoodSent != this.foodData.getFoodLevel() || this.foodData.getSaturationLevel() == 0.0F != this.lastSentSaturationZero) { this.playerConnection.sendPacket(new PacketPlayOutUpdateHealth(this.getBukkitEntity().getScaledHealth(), this.foodData.getFoodLevel(), this.foodData.getSaturationLevel())); // CraftBukkit this.lastHealthSent = this.getHealth(); -@@ -1563,6 +1742,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1564,6 +1743,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.playerConnection.sendPacket(new PacketPlayOutCloseWindow(this.activeContainer.windowId)); this.o(); } @@ -12965,7 +12967,7 @@ index a323b76f68c273a73cb3f20167a668b2100f4944..86f156587a0939b28c5cf6f64907255c if (chunk != null) { playerchunkmap.callbackExecutor.execute(() -> { diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java -index 6835401bd7863bbd655502547a9fd4ae0f298da1..4df1be8091af0ed9d3403f217b481645e24020e8 100644 +index 6835401bd7863bbd655502547a9fd4ae0f298da1..d827e18d8c3b9b5869dbb1e233f415ba0efb7c1b 100644 --- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java @@ -103,6 +103,7 @@ import net.minecraft.world.level.storage.WorldDataServer; @@ -13071,7 +13073,7 @@ index 6835401bd7863bbd655502547a9fd4ae0f298da1..4df1be8091af0ed9d3403f217b481645 + public final com.tuinity.tuinity.chunk.PlayerChunkLoader playerChunkManager = new com.tuinity.tuinity.chunk.PlayerChunkLoader(this, this.pooledLinkedPlayerHashSets); // Tuinity - replace chunk loader // Paper end - no-tick view distance + // Tuinity start - optimise checkDespawn -+ public static final int GENERAL_AREA_MAP_SQUARE_RADIUS = 38; ++ public static final int GENERAL_AREA_MAP_SQUARE_RADIUS = 40; + public static final double GENERAL_AREA_MAP_ACCEPTABLE_SEARCH_RANGE = 16.0 * (GENERAL_AREA_MAP_SQUARE_RADIUS - 1); + public static final double GENERAL_AREA_MAP_ACCEPTABLE_SEARCH_RANGE_SQUARED = GENERAL_AREA_MAP_ACCEPTABLE_SEARCH_RANGE * GENERAL_AREA_MAP_ACCEPTABLE_SEARCH_RANGE; + public final com.destroystokyo.paper.util.misc.PlayerAreaMap playerGeneralAreaMap; @@ -15370,7 +15372,7 @@ index dca2e9e45116df22d8c95d1be8f0a7e3c2d2b6b1..cb394ec310712cc97d65afe068284b27 try { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dcac5a3a60 100644 +index 8ef41182056052686055b7eb88ab19c161e84ed4..d88769e13410c6469df1d118b5c340672dc816c8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -228,7 +228,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne @@ -15397,7 +15399,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc // Paper start - optimise entity tracking final org.spigotmc.TrackingRange.TrackingRangeType trackingRangeType = org.spigotmc.TrackingRange.getTrackingRangeType(this); -@@ -309,11 +317,91 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -309,11 +317,59 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet getPlayersInTrackRange() { @@ -15456,42 +15458,10 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc + } + // Tuinity end + -+ // Tuinity start - make end portalling safe -+ public BlockPosition portalBlock; -+ public WorldServer portalWorld; -+ public void tickEndPortal() { -+ BlockPosition pos = this.portalBlock; -+ WorldServer world = this.portalWorld; -+ this.portalBlock = null; -+ this.portalWorld = null; -+ -+ if (pos == null || world == null || world != this.world) { -+ return; -+ } -+ -+ if (this.isPassenger() || this.isVehicle() || !this.canPortal() || this.dead || !this.valid || !this.isAlive()) { -+ return; -+ } -+ -+ ResourceKey resourcekey = world.getTypeKey() == DimensionManager.THE_END ? World.OVERWORLD : World.THE_END; // CraftBukkit - SPIGOT-6152: send back to main overworld in custom ends -+ WorldServer worldserver = world.getMinecraftServer().getWorldServer(resourcekey); -+ -+ org.bukkit.event.entity.EntityPortalEnterEvent event = new org.bukkit.event.entity.EntityPortalEnterEvent(this.getBukkitEntity(), new org.bukkit.Location(world.getWorld(), pos.getX(), pos.getY(), pos.getZ())); -+ event.callEvent(); -+ -+ if (this instanceof EntityPlayer) { -+ ((EntityPlayer)this).b(worldserver, PlayerTeleportEvent.TeleportCause.END_PORTAL); -+ return; -+ } -+ // CraftBukkit end -+ this.b(worldserver); -+ } -+ // Tuinity end - make end portalling safe -+ - public Entity(EntityTypes entitytypes, World world) { - this.id = Entity.entityCount.incrementAndGet(); - this.passengers = Lists.newArrayList(); -@@ -683,7 +771,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne + // Paper start - make end portalling safe + public BlockPosition portalBlock; + public WorldServer portalWorld; +@@ -714,7 +770,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return this.onGround; } @@ -15531,7 +15501,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc if (this.noclip) { this.a(this.getBoundingBox().c(vec3d)); this.recalcPosition(); -@@ -711,7 +831,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -742,7 +830,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne // Paper end vec3d = this.a(vec3d, enummovetype); @@ -15540,7 +15510,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc if (vec3d1.g() > 1.0E-7D) { this.a(this.getBoundingBox().c(vec3d1)); -@@ -802,7 +922,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -833,7 +921,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } try { @@ -15549,7 +15519,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc } catch (Throwable throwable) { CrashReport crashreport = CrashReport.a(throwable, "Checking entity block collision"); CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Entity being checked for collision"); -@@ -814,11 +934,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -845,11 +933,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne float f2 = this.getBlockSpeedFactor(); this.setMot(this.getMot().d((double) f2, 1.0D, (double) f2)); @@ -15562,7 +15532,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc if (this.aG() && this.isBurning()) { this.playSound(SoundEffects.ENTITY_GENERIC_EXTINGUISH_FIRE, 0.7F, 1.6F + (this.random.nextFloat() - this.random.nextFloat()) * 0.4F); -@@ -827,6 +943,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -858,6 +942,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.world.getMethodProfiler().exit(); } @@ -15576,7 +15546,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc } protected BlockPosition ap() { -@@ -907,6 +1030,137 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -938,6 +1029,137 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return d0; } @@ -15714,7 +15684,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc private Vec3D g(Vec3D vec3d) { AxisAlignedBB axisalignedbb = this.getBoundingBox(); VoxelShapeCollision voxelshapecollision = VoxelShapeCollision.a(this); -@@ -942,6 +1196,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -973,6 +1195,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return vec3d1; } @@ -15722,7 +15692,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc public static double c(Vec3D vec3d) { return vec3d.x * vec3d.x + vec3d.z * vec3d.z; } -@@ -1054,18 +1309,34 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1085,18 +1308,34 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } protected void checkBlockCollisions() { @@ -15760,7 +15730,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc try { iblockdata.a(this.world, blockposition_mutableblockposition, this); this.a(iblockdata); -@@ -1079,6 +1350,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1110,6 +1349,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } } } @@ -15772,7 +15742,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc } } -@@ -1450,6 +1726,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1481,6 +1725,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return d3 * d3 + d4 * d4 + d5 * d5; } @@ -15780,7 +15750,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc public double h(Entity entity) { return this.e(entity.getPositionVector()); } -@@ -2037,9 +2314,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2068,9 +2313,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne float f1 = this.size.width * 0.8F; AxisAlignedBB axisalignedbb = AxisAlignedBB.g((double) f1, 0.10000000149011612D, (double) f1).d(this.locX(), this.getHeadY(), this.locZ()); @@ -15792,7 +15762,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc } } -@@ -2047,11 +2324,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2078,11 +2323,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return EnumInteractionResult.PASS; } @@ -15808,15 +15778,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc return false; } -@@ -2294,6 +2573,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne - } - - this.E(); -+ this.tickEndPortal(); // Tuinity - make end portalling safe - } - } - -@@ -2942,7 +3222,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2974,7 +3221,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.recursiveStream().forEach((entity) -> { worldserver.chunkCheck(entity); entity.az = true; @@ -15825,7 +15787,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc while (iterator.hasNext()) { Entity entity1 = (Entity) iterator.next(); -@@ -3400,12 +3680,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3432,12 +3679,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return this.locBlock; } @@ -15842,7 +15804,7 @@ index 6fdcd96fd75cd63d769b012827519f554af4cf54..c3d4eda866016c4ac08d4c5d771e39dc } public void setMot(double d0, double d1, double d2) { -@@ -3460,7 +3744,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3492,7 +3743,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } // Paper end if (this.loc.x != d0 || this.loc.y != d1 || this.loc.z != d2) { @@ -15887,7 +15849,7 @@ index 85f571a791bce63989890f277857bc7bdeec0cb5..9e4137768c7d8966759324a4b368330c double deltaZ = this.locZ() - player.locZ(); double distanceSquared = deltaX * deltaX + deltaZ * deltaZ; diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 2657dd71213455e2da3a4ff4d338a33896ffe855..33f689b1c9f4c00969fbdd8ddb21901637afb81c 100644 +index b7b07b652b29e6f84f87fc92add99ce68f8bbd09..2ff3297fb8c0e4f8c969ba2727eecb7fe06525c4 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2973,7 +2973,11 @@ public abstract class EntityLiving extends Entity { @@ -16763,7 +16725,7 @@ index c296fcf80c2f3f210fa020416973ec8d5db541ba..07160de8725787551df327c0790b2d6e double deltaX = this.locX() - player.locX(); double deltaZ = this.locZ() - player.locZ(); diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java -index 229eabe0510e6c3660236ed0fb3e80d41074642c..c056c4c09297602c1fb3c1040ac2ab0ec4c0139b 100644 +index 635b1493eeb6c13cc5ef489bd747ac557bc131d8..3cfe3173f710fc54ec77a47a9cbb8f5ff6a6f0b6 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java @@ -264,9 +264,9 @@ public class EntityWither extends EntityMonster implements IRangedEntity { @@ -16778,15 +16740,6 @@ index 229eabe0510e6c3660236ed0fb3e80d41074642c..c056c4c09297602c1fb3c1040ac2ab0e double deltaX = this.locX() - player.locX(); double deltaZ = this.locZ() - player.locZ(); double distanceSquared = deltaX * deltaX + deltaZ * deltaZ; -@@ -603,7 +603,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { - - @Override - public boolean canPortal() { -- return canPortal; // Paper -+ return super.canPortal() && canPortal; // Paper // Tuinity - ensure super is called - } - - @Override diff --git a/src/main/java/net/minecraft/world/entity/item/EntityItem.java b/src/main/java/net/minecraft/world/entity/item/EntityItem.java index 8b79220c27292f9b92d9884bbbe4b16d7762343c..077990f1d95ded2c8b89c38978ec25a56df3a984 100644 --- a/src/main/java/net/minecraft/world/entity/item/EntityItem.java @@ -17150,7 +17103,7 @@ index 1ff9e771788a4ab52129070e355ca48df2949470..a7f2304acf8ee0a15d6eae8c42060e00 Iterator iterator = this.getPlayers().iterator(); diff --git a/src/main/java/net/minecraft/world/level/SpawnerCreature.java b/src/main/java/net/minecraft/world/level/SpawnerCreature.java -index 24771c3522ea74ac12058591137eafc21adf3762..d497006f05f79015cd791849888832bb53f4a414 100644 +index 24771c3522ea74ac12058591137eafc21adf3762..9b55da1f4d40ae36b2d2b8e7b3b18989dc4f6006 100644 --- a/src/main/java/net/minecraft/world/level/SpawnerCreature.java +++ b/src/main/java/net/minecraft/world/level/SpawnerCreature.java @@ -64,9 +64,9 @@ public final class SpawnerCreature { @@ -17201,7 +17154,7 @@ index 24771c3522ea74ac12058591137eafc21adf3762..d497006f05f79015cd791849888832bb double d0 = (double) l + 0.5D; double d1 = (double) i1 + 0.5D; - EntityHuman entityhuman = worldserver.a(d0, (double) i, d1, -1.0D, false); -+ EntityHuman entityhuman = worldserver.a(d0, (double) i, d1, 576.0D, false); // Tuinity - copied from below method for range, for the love of god we do not need to fucking find the closet player outside of this range - limiting range lets us use the distance map ++ EntityHuman entityhuman = (!(ichunkaccess instanceof Chunk)) ? worldserver.a(d0, (double) i, d1, -1.0D, false) : ((Chunk)ichunkaccess).findNearestPlayer(d0, i, d1, 576.0D, net.minecraft.world.entity.IEntitySelector.notSpectator()); // Tuinity - use chunk's player cache to optimize search in range if (entityhuman != null) { double d2 = entityhuman.h(d0, (double) i, d1); @@ -17639,31 +17592,6 @@ index 15096a9c2719b8b4c099f62d0a1c808e56b63a8e..9bbd175f7e20591bbefdbddcb5e998e7 return true; } } -diff --git a/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java b/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java -index ed916f69747b44b75eb06db4cf27adaf5e47fd1e..2ad7d6809beff6b5a36b32ba29d05447139a415e 100644 ---- a/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java -+++ b/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java -@@ -52,16 +52,10 @@ public class BlockEnderPortal extends BlockTileEntity { - // return; // CraftBukkit - always fire event in case plugins wish to change it - } - -- // CraftBukkit start - Entity in portal -- EntityPortalEnterEvent event = new EntityPortalEnterEvent(entity.getBukkitEntity(), new org.bukkit.Location(world.getWorld(), blockposition.getX(), blockposition.getY(), blockposition.getZ())); -- world.getServer().getPluginManager().callEvent(event); -- -- if (entity instanceof EntityPlayer) { -- ((EntityPlayer) entity).b(worldserver, PlayerTeleportEvent.TeleportCause.END_PORTAL); -- return; -- } -- // CraftBukkit end -- entity.b(worldserver); -+ // Tuinity start - move all of this logic into portal tick -+ entity.portalWorld = ((WorldServer)world); -+ entity.portalBlock = blockposition.immutableCopy(); -+ // Tuinity end - move all of this logic into portal tick - } - - } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java index 0d26250887f80d0c250bcd6bc7de303362427d3e..1d82f719440c95765c01a588f4785d630b8b527a 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java @@ -20725,7 +20653,7 @@ index cebecee640ed5a7fc2b978e00ff7eb012228267d..507c5255542ba1b958470b4db2c35b1b 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 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c258f4b90b 100644 +index 02198dbe9e80c2990e8a09b2b763748dae727a03..3b6b1f3229b07c84d99db652e01661bcc78368fd 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -298,7 +298,7 @@ public class CraftWorld implements World { @@ -20746,7 +20674,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 if (chunkHolder.getChunk() != null) { ++ret; } -@@ -342,6 +342,14 @@ public class CraftWorld implements World { +@@ -353,6 +353,14 @@ public class CraftWorld implements World { this.generator = gen; environment = env; @@ -20761,7 +20689,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 } @Override -@@ -415,14 +423,7 @@ public class CraftWorld implements World { +@@ -426,14 +434,7 @@ public class CraftWorld implements World { @Override public Chunk getChunkAt(int x, int z) { @@ -20777,7 +20705,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 } // Paper start -@@ -470,13 +471,16 @@ public class CraftWorld implements World { +@@ -481,13 +482,16 @@ public class CraftWorld implements World { public Chunk[] getLoadedChunks() { // Paper start if (Thread.currentThread() != world.getMinecraftWorld().serverThread) { @@ -20798,7 +20726,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 return chunks.values().stream().map(PlayerChunk::getFullChunk).filter(Objects::nonNull).map(net.minecraft.world.level.chunk.Chunk::getBukkitChunk).toArray(Chunk[]::new); } -@@ -505,6 +509,7 @@ public class CraftWorld implements World { +@@ -516,6 +520,7 @@ public class CraftWorld implements World { org.spigotmc.AsyncCatcher.catchOp("chunk unload"); // Spigot if (isChunkLoaded(x, z)) { world.getChunkProvider().removeTicket(TicketType.PLUGIN, new ChunkCoordIntPair(x, z), 0, Unit.INSTANCE); // Paper @@ -20806,7 +20734,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 } return true; -@@ -718,6 +723,30 @@ public class CraftWorld implements World { +@@ -729,6 +734,30 @@ public class CraftWorld implements World { return ret.entrySet().stream().collect(ImmutableMap.toImmutableMap(Map.Entry::getKey, (entry) -> entry.getValue().build())); } @@ -20837,7 +20765,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 @Override public boolean isChunkForceLoaded(int x, int z) { return getHandle().getForceLoadedChunks().contains(ChunkCoordIntPair.pair(x, z)); -@@ -2650,7 +2679,7 @@ public class CraftWorld implements World { +@@ -2661,7 +2690,7 @@ public class CraftWorld implements World { } return this.world.getChunkProvider().getChunkAtAsynchronously(x, z, gen, urgent).thenComposeAsync((either) -> { net.minecraft.world.level.chunk.Chunk chunk = (net.minecraft.world.level.chunk.Chunk) either.left().orElse(null); @@ -20846,7 +20774,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 return CompletableFuture.completedFuture(chunk == null ? null : chunk.getBukkitChunk()); }, net.minecraft.server.MinecraftServer.getServer()); } -@@ -2675,14 +2704,14 @@ public class CraftWorld implements World { +@@ -2686,14 +2715,14 @@ public class CraftWorld implements World { throw new IllegalArgumentException("View distance " + viewDistance + " is out of range of [2, 32]"); } PlayerChunkMap chunkMap = getHandle().getChunkProvider().playerChunkMap; @@ -20863,7 +20791,7 @@ index 9d858f91828d6c2787ff1dc677a247bcab172701..4f296f09562fb269db4137efd325e2c2 } @Override -@@ -2691,11 +2720,22 @@ public class CraftWorld implements World { +@@ -2702,11 +2731,22 @@ public class CraftWorld implements World { throw new IllegalArgumentException("View distance " + viewDistance + " is out of range of [2, 32]"); } PlayerChunkMap chunkMap = getHandle().getChunkProvider().playerChunkMap; diff --git a/patches/server/0003-Purpur-config-files.patch b/patches/server/0003-Purpur-config-files.patch index e5dad3005..bb35b5bb9 100644 --- a/patches/server/0003-Purpur-config-files.patch +++ b/patches/server/0003-Purpur-config-files.patch @@ -29,7 +29,7 @@ index 52c0ab1ce46e1f3233ef746d9bc699356fa9fae4..4d8740678049aa749b42618470e9cc83 metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> { Map> map = new HashMap<>(); diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index efc1e42d606e1c9feb1a4871c0714933ae92a1b2..a0ed8ed1d6b89a4f10dff645e09eaff303fb3f8a 100644 +index 7acf077bc131af718c7548cc29deef558c04e463..10126cb1c3efa2e6c84f20c0da701a131a5dd4cb 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -118,6 +118,11 @@ public class PaperConfig { diff --git a/patches/server/0008-AFK-API.patch b/patches/server/0008-AFK-API.patch index b84de3fb6..ee37cbcdd 100644 --- a/patches/server/0008-AFK-API.patch +++ b/patches/server/0008-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 32e400632ec1e61374f772c6262580f84a5b2288..aee1946f96ec6007caef63b2183c5218ffe71836 100644 +index c813077455a463dd558076d1d7474829f76b905a..b302d1f7c86a8df2ede46871397189f6f2e6b912 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2102,8 +2102,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2103,8 +2103,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { public void resetIdleTimer() { this.ca = SystemUtils.getMonotonicMillis(); diff --git a/patches/server/0011-LivingEntity-safeFallDistance.patch b/patches/server/0011-LivingEntity-safeFallDistance.patch index 319426c80..8b82ecae4 100644 --- a/patches/server/0011-LivingEntity-safeFallDistance.patch +++ b/patches/server/0011-LivingEntity-safeFallDistance.patch @@ -5,7 +5,7 @@ Subject: [PATCH] LivingEntity safeFallDistance diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 33f689b1c9f4c00969fbdd8ddb21901637afb81c..16b408916a72fb2f21fcc315d396bfcb50f7c875 100644 +index 2ff3297fb8c0e4f8c969ba2727eecb7fe06525c4..7d0bb706fb106709432c3fae8758d2cea1d14db8 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -227,6 +227,7 @@ public abstract class EntityLiving extends Entity { @@ -62,10 +62,10 @@ index 3b004160da9a2aed440a3ccda538d78f91c61e87..5e6a92dcdbca686d5a8cfc4aaff72b70 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 32428b1260bbc4bae67ec74969c67f71272de418..a248c6ac0eb9bcc8c3dbd38ead35104b9580d427 100644 +index 592dacf8cc924caac339a8810ba5b0d85448ed90..75af4d5385d4366e562a53716e020ba20ccbea94 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -864,4 +864,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -875,4 +875,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { throw new IllegalArgumentException(entityCategory + " is an unrecognized entity category"); } // Paper end diff --git a/patches/server/0016-Player-invulnerabilities.patch b/patches/server/0016-Player-invulnerabilities.patch index 11b5fefc3..84f8b0429 100644 --- a/patches/server/0016-Player-invulnerabilities.patch +++ b/patches/server/0016-Player-invulnerabilities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Player invulnerabilities diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index aee1946f96ec6007caef63b2183c5218ffe71836..e65a3e3e7bf6a366c30b44e166e2085966ebc933 100644 +index b302d1f7c86a8df2ede46871397189f6f2e6b912..79ff69f9e2dc92ffb4880cf1e059cd1d6a7bdc8a 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -285,6 +285,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -39,7 +39,7 @@ index aee1946f96ec6007caef63b2183c5218ffe71836..e65a3e3e7bf6a366c30b44e166e20859 return false; } else { if (damagesource instanceof EntityDamageSource) { -@@ -1312,6 +1320,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1313,6 +1321,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } // Paper end @@ -47,7 +47,7 @@ index aee1946f96ec6007caef63b2183c5218ffe71836..e65a3e3e7bf6a366c30b44e166e20859 return this; } } -@@ -2520,9 +2529,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2521,9 +2530,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public boolean isFrozen() { // Paper - protected > public diff --git a/patches/server/0020-Silk-touch-spawners.patch b/patches/server/0020-Silk-touch-spawners.patch index c3c752278..65b904c44 100644 --- a/patches/server/0020-Silk-touch-spawners.patch +++ b/patches/server/0020-Silk-touch-spawners.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Silk touch spawners diff --git a/src/main/java/io/papermc/paper/adventure/PaperAdventure.java b/src/main/java/io/papermc/paper/adventure/PaperAdventure.java -index c60457e9240c33a4721b82a00cef081fb320c8a7..5b5460c66291f1242ac7a20bc38514e214920739 100644 +index 7b14b3c2486f03778d4673cf9684aa576dc2724a..822ffa8e4b554fd6aa7ce1b2bb68c198c863d86c 100644 --- a/src/main/java/io/papermc/paper/adventure/PaperAdventure.java +++ b/src/main/java/io/papermc/paper/adventure/PaperAdventure.java @@ -81,6 +81,7 @@ public final class PaperAdventure { diff --git a/patches/server/0025-Giants-AI-settings.patch b/patches/server/0025-Giants-AI-settings.patch index f6b18f870..6e6ce8a74 100644 --- a/patches/server/0025-Giants-AI-settings.patch +++ b/patches/server/0025-Giants-AI-settings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Giants AI settings diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c3d4eda866016c4ac08d4c5d771e39dcac5a3a60..2d8cea0be6189f1e71f3c671b91b0082de7bc2ee 100644 +index d88769e13410c6469df1d118b5c340672dc816c8..d3cdc6ff2a3eed35ac8f1a25fd2085337802951a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -228,7 +228,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne @@ -38,7 +38,7 @@ index 7ba59ff9a7ed39bf69c46973a85f874c43134dc1..46e9a232ca5df81cafd4c3fc6af43b93 float f = difficultydamagescaler.d(); diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 16b408916a72fb2f21fcc315d396bfcb50f7c875..683b2b516ca824cfc7454e683e33513306a5ab09 100644 +index 7d0bb706fb106709432c3fae8758d2cea1d14db8..032b1a519de56583990fe47a216665ce71cf93ab 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -260,6 +260,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0039-Cows-eat-mushrooms.patch b/patches/server/0039-Cows-eat-mushrooms.patch index f747e5c3d..06a95b808 100644 --- a/patches/server/0039-Cows-eat-mushrooms.patch +++ b/patches/server/0039-Cows-eat-mushrooms.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cows eat mushrooms diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2d8cea0be6189f1e71f3c671b91b0082de7bc2ee..f734c79e5ed4fefc1431cb8cadf45572a19a9838 100644 +index d3cdc6ff2a3eed35ac8f1a25fd2085337802951a..d6f4e31c6c9e2e579e87ab25707dd84f4ea2605a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2916,6 +2916,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2915,6 +2915,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.invulnerable = flag; } @@ -17,7 +17,7 @@ index 2d8cea0be6189f1e71f3c671b91b0082de7bc2ee..f734c79e5ed4fefc1431cb8cadf45572 this.setPositionRotation(entity.locX(), entity.locY(), entity.locZ(), entity.yaw, entity.pitch); } diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 683b2b516ca824cfc7454e683e33513306a5ab09..a7d469c9fe7a0f51019e5f1a567b8c020cfb2f1b 100644 +index 032b1a519de56583990fe47a216665ce71cf93ab..9d950f5d5d6b9d686bd3bbaa12a8d933fd1e2ec2 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -175,7 +175,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0045-Signs-allow-color-codes.patch b/patches/server/0045-Signs-allow-color-codes.patch index 3ad113e3d..21db1113e 100644 --- a/patches/server/0045-Signs-allow-color-codes.patch +++ b/patches/server/0045-Signs-allow-color-codes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index e65a3e3e7bf6a366c30b44e166e2085966ebc933..a8d60d288afd9b413494fe6abe8cfddb7c1f0b3b 100644 +index 79ff69f9e2dc92ffb4880cf1e059cd1d6a7bdc8a..1ce550ecae370e9e5247d653b259436592b072ab 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1603,6 +1603,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1604,6 +1604,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public void openSign(TileEntitySign tileentitysign) { diff --git a/patches/server/0047-Minecart-settings-and-WASD-controls.patch b/patches/server/0047-Minecart-settings-and-WASD-controls.patch index 4baf8ac11..1d04085b1 100644 --- a/patches/server/0047-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0047-Minecart-settings-and-WASD-controls.patch @@ -22,7 +22,7 @@ index 6a6381e85fef2ae2b9b5e6dff0b7917b92fa01e5..17d63cd4ca152adc66ffe9ffd3227a07 super(i, j, k); } diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index a8d60d288afd9b413494fe6abe8cfddb7c1f0b3b..57900f89695bcce9aa6e90ab96007e456ef0448a 100644 +index 1ce550ecae370e9e5247d653b259436592b072ab..9746ade740ab36e68f24e0ee09d24e23f9e6a68f 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -1142,6 +1142,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -34,7 +34,7 @@ index a8d60d288afd9b413494fe6abe8cfddb7c1f0b3b..57900f89695bcce9aa6e90ab96007e45 if (!flag && isSpawnInvulnerable() && damagesource != DamageSource.OUT_OF_WORLD) { // Purpur diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index a7d469c9fe7a0f51019e5f1a567b8c020cfb2f1b..f79a37156c2d868a2ae117a34abb9b873f068e39 100644 +index 9d950f5d5d6b9d686bd3bbaa12a8d933fd1e2ec2..f940a5460fe443bb97f23f29cff12827adb2eca4 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -193,9 +193,9 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0048-Disable-loot-drops-on-death-by-cramming.patch b/patches/server/0048-Disable-loot-drops-on-death-by-cramming.patch index 8d381748d..0645ab306 100644 --- a/patches/server/0048-Disable-loot-drops-on-death-by-cramming.patch +++ b/patches/server/0048-Disable-loot-drops-on-death-by-cramming.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable loot drops on death by cramming diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index f79a37156c2d868a2ae117a34abb9b873f068e39..c2f2b9006dfc8e6d090768c8550ddf42e0e82b80 100644 +index f940a5460fe443bb97f23f29cff12827adb2eca4..871286b2f26f49aa49611503053cb6b1f0a064dc 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -1595,8 +1595,10 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0049-Players-should-not-cram-to-death.patch b/patches/server/0049-Players-should-not-cram-to-death.patch index 158c4cfa0..70350e735 100644 --- a/patches/server/0049-Players-should-not-cram-to-death.patch +++ b/patches/server/0049-Players-should-not-cram-to-death.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Players should not cram to death diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 57900f89695bcce9aa6e90ab96007e456ef0448a..c766ec5ac4519d1c734a10e667988ada040096c5 100644 +index 9746ade740ab36e68f24e0ee09d24e23f9e6a68f..4ce97052092c4b5f0fa59de7442654f7025febb6 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1580,7 +1580,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1581,7 +1581,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public boolean isInvulnerable(DamageSource damagesource) { diff --git a/patches/server/0052-Fix-the-dead-lagging-the-server.patch b/patches/server/0052-Fix-the-dead-lagging-the-server.patch index 2d5074b84..8d7bb6b3d 100644 --- a/patches/server/0052-Fix-the-dead-lagging-the-server.patch +++ b/patches/server/0052-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/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f734c79e5ed4fefc1431cb8cadf45572a19a9838..94644c513c92d0dd44592cd70ec36278bc83ac8b 100644 +index d6f4e31c6c9e2e579e87ab25707dd84f4ea2605a..f9e2a7c4a7b427470a586d54c8ab9e1b3b03cf09 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1660,6 +1660,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1659,6 +1659,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.pitch = MathHelper.a(f1, -90.0F, 90.0F) % 360.0F; this.lastYaw = this.yaw; this.lastPitch = this.pitch; @@ -17,7 +17,7 @@ index f734c79e5ed4fefc1431cb8cadf45572a19a9838..94644c513c92d0dd44592cd70ec36278 public void f(double d0, double d1, double d2) { diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index c2f2b9006dfc8e6d090768c8550ddf42e0e82b80..51f0259d66a82e5cf3a20f1d3994cb2826d1e3d1 100644 +index 871286b2f26f49aa49611503053cb6b1f0a064dc..efca085c5db03242b471db811c44224ca49eb305 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2594,7 +2594,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0067-Add-canSaveToDisk-to-Entity.patch b/patches/server/0067-Add-canSaveToDisk-to-Entity.patch index c9eb39a86..d75fa2da9 100644 --- a/patches/server/0067-Add-canSaveToDisk-to-Entity.patch +++ b/patches/server/0067-Add-canSaveToDisk-to-Entity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add canSaveToDisk to Entity diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 94644c513c92d0dd44592cd70ec36278bc83ac8b..68c000ccaba427c7893da4f26452fd4797a42e84 100644 +index f9e2a7c4a7b427470a586d54c8ab9e1b3b03cf09..c9d04e8a617c3535ff390dd685776a37d952ce93 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -445,6 +445,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -444,6 +444,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.headHeight = this.getHeadHeight(EntityPose.STANDING, this.size); } diff --git a/patches/server/0068-Configurable-void-damage-height-and-damage.patch b/patches/server/0068-Configurable-void-damage-height-and-damage.patch index d921c2922..a5968d7e8 100644 --- a/patches/server/0068-Configurable-void-damage-height-and-damage.patch +++ b/patches/server/0068-Configurable-void-damage-height-and-damage.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable void damage height and damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 68c000ccaba427c7893da4f26452fd4797a42e84..e6e8e8d346a38664115a4cb5ec63ec4b1005d290 100644 +index c9d04e8a617c3535ff390dd685776a37d952ce93..c07e3b3927c22db5e529dc3b9a7bd737716a9ab0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -748,7 +748,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -747,7 +747,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne // Paper start protected void performVoidDamage() { @@ -18,7 +18,7 @@ index 68c000ccaba427c7893da4f26452fd4797a42e84..e6e8e8d346a38664115a4cb5ec63ec4b && this.locY() >= world.paperConfig.netherVoidTopDamageHeight)) { this.doVoidDamage(); diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 51f0259d66a82e5cf3a20f1d3994cb2826d1e3d1..9a9a5d4e0b6ec4a88278aea216b9aa3194d36bb4 100644 +index efca085c5db03242b471db811c44224ca49eb305..e0b42e8db2e48f7327abfbb643ce4f14cc13a7af 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2113,7 +2113,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0074-Implement-elytra-settings.patch b/patches/server/0074-Implement-elytra-settings.patch index 2647211ab..b70b2a87d 100644 --- a/patches/server/0074-Implement-elytra-settings.patch +++ b/patches/server/0074-Implement-elytra-settings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement elytra settings diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 9a9a5d4e0b6ec4a88278aea216b9aa3194d36bb4..681c74d36d8f9bfdc7c237f0cce1c5acef3daf24 100644 +index e0b42e8db2e48f7327abfbb643ce4f14cc13a7af..4bac98718f67699433fdd89307c20438f3ee6425 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2952,7 +2952,16 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0075-Item-entity-immunities.patch b/patches/server/0075-Item-entity-immunities.patch index 85645d5cb..5b301c8e9 100644 --- a/patches/server/0075-Item-entity-immunities.patch +++ b/patches/server/0075-Item-entity-immunities.patch @@ -18,7 +18,7 @@ index 53e773c14689967d5b12467bf209eefb05f7a812..b8f9238c598a55ba796951cb775cd35f private java.util.Map trackedPlayerMap = null; diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java -index 4df1be8091af0ed9d3403f217b481645e24020e8..e94d9c784bde37f65c2fd081eacbd41b061cd1aa 100644 +index d827e18d8c3b9b5869dbb1e233f415ba0efb7c1b..d876c5037b4704a174606629c80ba1142c77a50c 100644 --- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java @@ -2431,7 +2431,7 @@ Sections go from 0..16. Now whenever a section is not empty, it can potentially @@ -31,10 +31,10 @@ index 4df1be8091af0ed9d3403f217b481645e24020e8..e94d9c784bde37f65c2fd081eacbd41b private final int trackingDistance; private SectionPosition e; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e6e8e8d346a38664115a4cb5ec63ec4b1005d290..b418bcba078e9c6ce8ff1399ad27d82c32a06f99 100644 +index c07e3b3927c22db5e529dc3b9a7bd737716a9ab0..a071e411ab107c50874147be47e2de9b1696ed14 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1609,6 +1609,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1608,6 +1608,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } diff --git a/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch index 7fa849420..8e5b00071 100644 --- a/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch +++ b/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch @@ -17,10 +17,10 @@ index 53ea8a6d90faf4f7f8fd0819be4499422bdd4cbe..6ba14f603b8ec69597c70677cc317f80 return (new EntityDamageSourceIndirect("indirectMagic", entity, entity1)).setIgnoreArmor().setMagic(); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b418bcba078e9c6ce8ff1399ad27d82c32a06f99..ec7ddc1a92f401d702fec22d525e0ee8683855fc 100644 +index a071e411ab107c50874147be47e2de9b1696ed14..2a71908105b308bffe37f3ad3b2d6b93360faa1b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2275,8 +2275,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2274,8 +2274,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return this.a(new ItemStack(imaterial), (float) i); } diff --git a/patches/server/0079-Add-phantom-spawning-options.patch b/patches/server/0079-Add-phantom-spawning-options.patch index 16cfeb483..ae1424d47 100644 --- a/patches/server/0079-Add-phantom-spawning-options.patch +++ b/patches/server/0079-Add-phantom-spawning-options.patch @@ -49,7 +49,7 @@ index 8b2e57c833c03940f2e0727e00decce59f263269..642bf019d32a2fdc18718337ecfe45d2 return this.getBrightness(EnumSkyBlock.SKY, blockposition) >= this.K(); } diff --git a/src/main/java/net/minecraft/world/level/SpawnerCreature.java b/src/main/java/net/minecraft/world/level/SpawnerCreature.java -index d497006f05f79015cd791849888832bb53f4a414..ec80c956b4612435ec37672fe27112ac2253bea5 100644 +index 9b55da1f4d40ae36b2d2b8e7b3b18989dc4f6006..050651462390f0896f0629408d0f7d29d35bdb7f 100644 --- a/src/main/java/net/minecraft/world/level/SpawnerCreature.java +++ b/src/main/java/net/minecraft/world/level/SpawnerCreature.java @@ -428,6 +428,7 @@ public final class SpawnerCreature { diff --git a/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch index af096274c..a8fef9ceb 100644 --- a/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch +++ b/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index c766ec5ac4519d1c734a10e667988ada040096c5..b3d12463fbeb2045860c6b933da74980f778472e 100644 +index 4ce97052092c4b5f0fa59de7442654f7025febb6..38d63449b4ec833ec53de5fe6deebbb3f744492e 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2587,4 +2587,26 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2588,4 +2588,26 @@ public class EntityPlayer extends EntityHuman implements ICrafting { return (CraftPlayer) super.getBukkitEntity(); } // CraftBukkit end @@ -36,7 +36,7 @@ index c766ec5ac4519d1c734a10e667988ada040096c5..b3d12463fbeb2045860c6b933da74980 + // Purpur end } diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 681c74d36d8f9bfdc7c237f0cce1c5acef3daf24..acbaff3fdd08d7f808c109e8a91d983bc9df5b9d 100644 +index 4bac98718f67699433fdd89307c20438f3ee6425..087b18b1fbf9d5e64ddf7f303aaad58bb9e1c3f5 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -45,6 +45,7 @@ import net.minecraft.network.syncher.DataWatcher; diff --git a/patches/server/0092-Totems-work-in-inventory.patch b/patches/server/0092-Totems-work-in-inventory.patch index 68a253822..e77937ef5 100644 --- a/patches/server/0092-Totems-work-in-inventory.patch +++ b/patches/server/0092-Totems-work-in-inventory.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Totems work in inventory diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index acbaff3fdd08d7f808c109e8a91d983bc9df5b9d..5fcdfb400389b5026c286f7e38bbfe31b57c8a66 100644 +index 087b18b1fbf9d5e64ddf7f303aaad58bb9e1c3f5..1140fc3cade24320bbc3e09a8664ded27df604fe 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -1423,6 +1423,19 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0093-Populator-seed-controls.patch b/patches/server/0093-Populator-seed-controls.patch index 2d3cce4ce..87fb742c7 100644 --- a/patches/server/0093-Populator-seed-controls.patch +++ b/patches/server/0093-Populator-seed-controls.patch @@ -18,7 +18,7 @@ index 5e672a0660d0aceffcdb26d185590ca18aa4f023..4b171a2a60e24947e884f8988920f335 } final Object val = config.get(key); diff --git a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java -index a30bb38144acb74f41638cc2b573e09265cde0e1..6b20eb6f2a0a5bcaa88438cf14e1fbfe31c00627 100644 +index e1dc7c1025e19f7393a45719af8fe7aae016184d..dd45a896998e4d5637ef0dd08f2b72d6b6f891de 100644 --- a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java +++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java @@ -1,5 +1,6 @@ diff --git a/patches/server/0101-Stop-squids-floating-on-top-of-water.patch b/patches/server/0101-Stop-squids-floating-on-top-of-water.patch index 27ccd1357..c7235e794 100644 --- a/patches/server/0101-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0101-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/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ec7ddc1a92f401d702fec22d525e0ee8683855fc..7837b7f83b34b3ffe0ff0cb1f732408eb78d231a 100644 +index 2a71908105b308bffe37f3ad3b2d6b93360faa1b..bd5ad73df33f795c91e1fc7b7187cdd8ee27021b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3586,8 +3586,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3585,8 +3585,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.lastYaw = this.yaw; } diff --git a/patches/server/0102-Ridables.patch b/patches/server/0102-Ridables.patch index ea0025ec3..70d055cc6 100644 --- a/patches/server/0102-Ridables.patch +++ b/patches/server/0102-Ridables.patch @@ -68,7 +68,7 @@ index 0000000000000000000000000000000000000000..8b66d1215a6eef1302b5ecb46a4b3d50 + } +} diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index b3d12463fbeb2045860c6b933da74980f778472e..d06bae9d71f23fccbfaf65c0fd9e9a550549432e 100644 +index 38d63449b4ec833ec53de5fe6deebbb3f744492e..b66c50e078d83a1cda0f7010b353ae4b3ba9fd35 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -80,7 +80,6 @@ import net.minecraft.server.network.PlayerConnection; @@ -149,7 +149,7 @@ index 6ba14f603b8ec69597c70677cc317f802d6afae9..24fd920394774bf38d2818a4cd013670 this.B = true; return this; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313efc972ae 100644 +index bd5ad73df33f795c91e1fc7b7187cdd8ee27021b..ba50226c729d5ca26ff13f6e46d1e5c2a59b0cc0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -22,6 +22,7 @@ import net.minecraft.BlockUtil; @@ -195,7 +195,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 private float headHeight; // CraftBukkit start public boolean persist = true; -@@ -1619,6 +1619,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1618,6 +1618,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return !this.justCreated && this.M.getDouble(TagsFluid.LAVA) > 0.0D; } @@ -203,7 +203,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 public void a(float f, Vec3D vec3d) { Vec3D vec3d1 = a(vec3d, f, this.yaw); -@@ -2375,6 +2376,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2374,6 +2375,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return this.a(entity, false); } @@ -211,7 +211,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 public boolean a(Entity entity, boolean flag) { for (Entity entity1 = entity; entity1.vehicle != null; entity1 = entity1.vehicle) { if (entity1.vehicle == this) { -@@ -2470,6 +2472,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2469,6 +2471,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.passengers.add(entity); } @@ -225,7 +225,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 } return true; // CraftBukkit } -@@ -2510,6 +2519,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2509,6 +2518,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return false; } // Spigot end @@ -238,7 +238,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 this.passengers.remove(entity); entity.j = 60; } -@@ -2676,6 +2691,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2675,6 +2690,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne this.setFlag(4, flag); } @@ -246,7 +246,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 public boolean bE() { return this.glowing || this.world.isClientSide && this.getFlag(6); } -@@ -2898,6 +2914,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2897,6 +2913,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne public void setHeadRotation(float f) {} @@ -254,7 +254,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 public void n(float f) {} public boolean bL() { -@@ -3339,6 +3356,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3338,6 +3355,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return false; } @@ -273,7 +273,7 @@ index 7837b7f83b34b3ffe0ff0cb1f732408eb78d231a..a570f8c5d01dbfbfe4f4bfe8b53c1313 @Override public void sendMessage(IChatBaseComponent ichatbasecomponent, UUID uuid) {} -@@ -3791,4 +3820,47 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3790,4 +3819,47 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return ((ChunkProviderServer) world.getChunkProvider()).isInEntityTickingChunk(this); } // Paper end @@ -452,7 +452,7 @@ index fdc1b99f0a032a76a02ee88b28d62e049a2fc54c..0ee99a2c9a966eaaaf09879cce2f54bc + // Purpur end } diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 5fcdfb400389b5026c286f7e38bbfe31b57c8a66..ec7a0dd11b4fca286fab3d68bd40e198171e7bd9 100644 +index 1140fc3cade24320bbc3e09a8664ded27df604fe..3b66833adcd3912ebbfac49f0a59b1dc6fb3971d 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -558,7 +558,7 @@ public abstract class EntityLiving extends Entity { @@ -3147,7 +3147,7 @@ index 3fff101637708a1a12f9a457bd3512ae94a8f884..b2d1a0144353a1da61221b59a0acc028 this.bF.b(this); } diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java -index c056c4c09297602c1fb3c1040ac2ab0ec4c0139b..69e88d83dda260a95380369d546253982de4a2fd 100644 +index 3cfe3173f710fc54ec77a47a9cbb8f5ff6a6f0b6..9ffac9aa79dee1b6dd6eeb8483b5a81416c11d9b 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java @@ -12,6 +12,7 @@ import net.minecraft.network.chat.IChatBaseComponent; diff --git a/patches/server/0105-Entities-can-use-portals-configuration.patch b/patches/server/0105-Entities-can-use-portals-configuration.patch index 23b7bc9df..f6f47fa09 100644 --- a/patches/server/0105-Entities-can-use-portals-configuration.patch +++ b/patches/server/0105-Entities-can-use-portals-configuration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entities can use portals configuration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index a570f8c5d01dbfbfe4f4bfe8b53c1313efc972ae..fdbe014c12a90ca3be389d0f83a96235aff22093 100644 +index ba50226c729d5ca26ff13f6e46d1e5c2a59b0cc0..9efb88657957482172b486827fa717e56d24be03 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2551,7 +2551,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2550,7 +2550,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne public void d(BlockPosition blockposition) { if (this.ai()) { this.resetPortalCooldown(); @@ -17,7 +17,7 @@ index a570f8c5d01dbfbfe4f4bfe8b53c1313efc972ae..fdbe014c12a90ca3be389d0f83a96235 if (!this.world.isClientSide && !blockposition.equals(this.ac)) { this.ac = blockposition.immutableCopy(); } -@@ -3132,7 +3132,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3131,7 +3131,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } public boolean canPortal() { diff --git a/patches/server/0106-LivingEntity-broadcastItemBreak.patch b/patches/server/0106-LivingEntity-broadcastItemBreak.patch index fb1be9994..eeb556490 100644 --- a/patches/server/0106-LivingEntity-broadcastItemBreak.patch +++ b/patches/server/0106-LivingEntity-broadcastItemBreak.patch @@ -5,10 +5,10 @@ Subject: [PATCH] LivingEntity#broadcastItemBreak diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index a248c6ac0eb9bcc8c3dbd38ead35104b9580d427..670b5bee5771aee90cd241426db319fa627d578c 100644 +index 75af4d5385d4366e562a53716e020ba20ccbea94..411a84840764ce6f7a83e11655cc04403d6ee5ee 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -875,5 +875,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -886,5 +886,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { public void setSafeFallDistance(float safeFallDistance) { getHandle().safeFallDistance = safeFallDistance; } diff --git a/patches/server/0107-Customizable-wither-health-and-healing.patch b/patches/server/0107-Customizable-wither-health-and-healing.patch index b52f4cff3..08e25ec5b 100644 --- a/patches/server/0107-Customizable-wither-health-and-healing.patch +++ b/patches/server/0107-Customizable-wither-health-and-healing.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Customizable wither health and healing Adds the ability to customize the health of the wither, as well as the amount that it heals, and how often. diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java -index 69e88d83dda260a95380369d546253982de4a2fd..0c4446c0246d80394dd278b5fe2f1136ce7e90b0 100644 +index 9ffac9aa79dee1b6dd6eeb8483b5a81416c11d9b..528161748472b0fb84718268800864e94ceaa079 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java @@ -205,6 +205,11 @@ public class EntityWither extends EntityMonster implements IRangedEntity { diff --git a/patches/server/0116-Stonecutter-damage.patch b/patches/server/0116-Stonecutter-damage.patch index 7eebc4c7b..d4018640a 100644 --- a/patches/server/0116-Stonecutter-damage.patch +++ b/patches/server/0116-Stonecutter-damage.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Stonecutter damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index fdbe014c12a90ca3be389d0f83a96235aff22093..b2570c5c4ac819c36f2c236e29a3b3a73e8cd3de 100644 +index 9efb88657957482172b486827fa717e56d24be03..f3d3626283b2cee502fcfc631d2580387afb0f9e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -891,7 +891,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -890,7 +890,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } // CraftBukkit end diff --git a/patches/server/0121-Add-tablist-suffix-option-for-afk.patch b/patches/server/0121-Add-tablist-suffix-option-for-afk.patch index 7509eae92..da0e9e65e 100644 --- a/patches/server/0121-Add-tablist-suffix-option-for-afk.patch +++ b/patches/server/0121-Add-tablist-suffix-option-for-afk.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add tablist suffix option for afk diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index d06bae9d71f23fccbfaf65c0fd9e9a550549432e..adab7cf319ed7d77bdd0196709741f6704994a93 100644 +index b66c50e078d83a1cda0f7010b353ae4b3ba9fd35..7b11b5fedd0dd6b340362c26b4ce73b93bf57b8b 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -2151,7 +2151,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -2152,7 +2152,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } if (world.purpurConfig.idleTimeoutUpdateTabList) { diff --git a/patches/server/0137-Add-boat-fall-damage-config.patch b/patches/server/0137-Add-boat-fall-damage-config.patch index da5831c70..9f711b517 100644 --- a/patches/server/0137-Add-boat-fall-damage-config.patch +++ b/patches/server/0137-Add-boat-fall-damage-config.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add boat fall damage config diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index adab7cf319ed7d77bdd0196709741f6704994a93..8a7f75baa730729dd0022fe74da15fe669eced24 100644 +index 7b11b5fedd0dd6b340362c26b4ce73b93bf57b8b..c631e4d27518a1382869c184af41bec911cce908 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -1149,7 +1149,16 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/patches/server/0140-PaperPR-Config-option-for-Piglins-guarding-chests.patch b/patches/server/0140-PaperPR-Config-option-for-Piglins-guarding-chests.patch index fcab62c1a..e391bcaf2 100644 --- a/patches/server/0140-PaperPR-Config-option-for-Piglins-guarding-chests.patch +++ b/patches/server/0140-PaperPR-Config-option-for-Piglins-guarding-chests.patch @@ -5,10 +5,10 @@ Subject: [PATCH] PaperPR - Config option for Piglins guarding chests diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 1a368df78feb4afdf522527af5ed1652afffcd15..aaeb6396597ddce3a2eebf7d76c7d1e654300f0b 100644 +index 5c91c007691efeea1d4383efcd1ca06990d0660c..ff1718acdc780b7bbf13ba26612aca744d35d674 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -@@ -704,6 +704,11 @@ public class PaperWorldConfig { +@@ -706,6 +706,11 @@ public class PaperWorldConfig { zombiesTargetTurtleEggs = getBoolean("zombies-target-turtle-eggs", zombiesTargetTurtleEggs); } diff --git a/patches/server/0143-Lobotomize-stuck-villagers.patch b/patches/server/0143-Lobotomize-stuck-villagers.patch index 1f4dbeb21..850124aa3 100644 --- a/patches/server/0143-Lobotomize-stuck-villagers.patch +++ b/patches/server/0143-Lobotomize-stuck-villagers.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Lobotomize stuck villagers diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b2570c5c4ac819c36f2c236e29a3b3a73e8cd3de..6b31a41536a766a53d4e1106c91744573bb94c9b 100644 +index f3d3626283b2cee502fcfc631d2580387afb0f9e..69f279e9ff851e5b5d45ad8003c31b1edb01fe33 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -206,7 +206,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne diff --git a/patches/server/0147-Configurable-chance-for-wolves-to-spawn-rabid.patch b/patches/server/0147-Configurable-chance-for-wolves-to-spawn-rabid.patch index 134e63736..4527c2d84 100644 --- a/patches/server/0147-Configurable-chance-for-wolves-to-spawn-rabid.patch +++ b/patches/server/0147-Configurable-chance-for-wolves-to-spawn-rabid.patch @@ -7,7 +7,7 @@ Configurable chance to spawn a wolf that is rabid. Rabid wolves attack all players, mobs, and animals. diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index ec7a0dd11b4fca286fab3d68bd40e198171e7bd9..f6f65cedffbae3d9bffed492682c6fa588102101 100644 +index 3b66833adcd3912ebbfac49f0a59b1dc6fb3971d..3b76a652a3888d7d0b7dfb13f9ebbf0732e71d71 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2197,6 +2197,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0158-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0158-Add-mobGriefing-bypass-to-everything-affected.patch index 2d8d704b4..1a5723c0a 100644 --- a/patches/server/0158-Add-mobGriefing-bypass-to-everything-affected.patch +++ b/patches/server/0158-Add-mobGriefing-bypass-to-everything-affected.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected This adds the "bypass-mob-griefing" world config option to everything that is affected by the gamerule. diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index f6f65cedffbae3d9bffed492682c6fa588102101..c0a708130445197be118a463fcb05d64d7e02b3b 100644 +index 3b76a652a3888d7d0b7dfb13f9ebbf0732e71d71..0e46f6b4fedc0e0d65737a3553ab8cd8dbf68e7d 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -1568,7 +1568,7 @@ public abstract class EntityLiving extends Entity { @@ -128,7 +128,7 @@ index aeff46b575a05145fb509b5e5a489b2067776e2f..0614483830336f3bbd348319ca3eed87 // flag1 = this.world.a(blockposition, false) || flag1; flag1 = true; diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java -index 0c4446c0246d80394dd278b5fe2f1136ce7e90b0..4d201127c6718883fd8b5a3a2202cf62a098fc33 100644 +index 528161748472b0fb84718268800864e94ceaa079..fea99134e77d7cbc77c89318753e7294d3f6a15a 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java @@ -378,7 +378,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { diff --git a/patches/server/0160-Add-EntityTeleportHinderedEvent.patch b/patches/server/0160-Add-EntityTeleportHinderedEvent.patch index 0620e0db5..40d7ad234 100644 --- a/patches/server/0160-Add-EntityTeleportHinderedEvent.patch +++ b/patches/server/0160-Add-EntityTeleportHinderedEvent.patch @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java b/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java -index 2ad7d6809beff6b5a36b32ba29d05447139a415e..0a8be3cd179388f041f31d7e4706619da879b3f5 100644 +index 9483d75fbe2a8c8f7cce00355e93ff1f943f3444..31eabc40562462f98cc039a55453f200ca4eaa5c 100644 --- a/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java +++ b/src/main/java/net/minecraft/world/level/block/BlockEnderPortal.java @@ -44,7 +44,15 @@ public class BlockEnderPortal extends BlockTileEntity { diff --git a/patches/server/0161-Add-StructureGenerateEvent.patch b/patches/server/0161-Add-StructureGenerateEvent.patch index 48b3d1712..f2aa81f63 100644 --- a/patches/server/0161-Add-StructureGenerateEvent.patch +++ b/patches/server/0161-Add-StructureGenerateEvent.patch @@ -51,10 +51,10 @@ index 839cc598e6dd87dd77940b5b6dcb8ddcd0b3271e..2d653ba2582c39ac1c7f396c50a7a974 public StructureFeature(F f0, FC fc) { diff --git a/src/main/java/net/minecraft/world/level/levelgen/feature/StructureGenerator.java b/src/main/java/net/minecraft/world/level/levelgen/feature/StructureGenerator.java -index 6df42ff26ff6e65ec2885122fe53dde857a3d1d2..917d147b06b7045ea69917c81f35fcafdd5098dd 100644 +index e5c22e92a305050df0eae2da53217ea2c3249e03..8dffba8abfbda029c8a35ec7262faabd9f76c904 100644 --- a/src/main/java/net/minecraft/world/level/levelgen/feature/StructureGenerator.java +++ b/src/main/java/net/minecraft/world/level/levelgen/feature/StructureGenerator.java -@@ -268,6 +268,7 @@ public abstract class StructureGenerator +@@ -277,6 +277,7 @@ public abstract class StructureGenerator public abstract StructureGenerator.a a(); diff --git a/patches/server/0163-Movement-options-for-armor-stands.patch b/patches/server/0163-Movement-options-for-armor-stands.patch index 992a49ebe..0e9add773 100644 --- a/patches/server/0163-Movement-options-for-armor-stands.patch +++ b/patches/server/0163-Movement-options-for-armor-stands.patch @@ -17,10 +17,10 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6b31a41536a766a53d4e1106c91744573bb94c9b..f06f82e14abf2e78db803ce3f0b8ae077e01ab73 100644 +index 69f279e9ff851e5b5d45ad8003c31b1edb01fe33..81662285659b330df014bd5cce2033266bc04451 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1497,7 +1497,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1496,7 +1496,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return this.isInWater() || flag; } diff --git a/patches/server/0164-Fix-stuck-in-portals.patch b/patches/server/0164-Fix-stuck-in-portals.patch index 57f1e97e0..7b3e26320 100644 --- a/patches/server/0164-Fix-stuck-in-portals.patch +++ b/patches/server/0164-Fix-stuck-in-portals.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix stuck in portals diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 8a7f75baa730729dd0022fe74da15fe669eced24..c69ef7ee5e40e2557b3a3971c6fb24c9966d6809 100644 +index c631e4d27518a1382869c184af41bec911cce908..2bae88b7b53d38f41808fe0177cd78a9e2bb1ce9 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1299,6 +1299,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1300,6 +1300,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { playerlist.d(this); worldserver1.removePlayer(this); this.dead = false; @@ -17,10 +17,10 @@ index 8a7f75baa730729dd0022fe74da15fe669eced24..c69ef7ee5e40e2557b3a3971c6fb24c9 // CraftBukkit end this.spawnIn(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f06f82e14abf2e78db803ce3f0b8ae077e01ab73..7fa07613527e2d4c87b52ce4680f853f43d70091 100644 +index 81662285659b330df014bd5cce2033266bc04451..5dece69b1b3343783457c507e8d25239e4da92f0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2548,12 +2548,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2547,12 +2547,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne return new Vec2F(this.pitch, this.yaw); } diff --git a/patches/server/0166-Toggle-for-water-sensitive-mob-damage.patch b/patches/server/0166-Toggle-for-water-sensitive-mob-damage.patch index 4b549f8f0..bc6f4af8c 100644 --- a/patches/server/0166-Toggle-for-water-sensitive-mob-damage.patch +++ b/patches/server/0166-Toggle-for-water-sensitive-mob-damage.patch @@ -19,7 +19,7 @@ index 8c74adf071e1edb640b3f2375bc92567cc2f6086..7cacd2b56fa96411d9fdf96d985d24fe } return; diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index c0a708130445197be118a463fcb05d64d7e02b3b..4aa16bf47270cfb109f78f5733baf8d9f48368ac 100644 +index 0e46f6b4fedc0e0d65737a3553ab8cd8dbf68e7d..9b5c42406585ed72a19c52c23f3c8b4c8f15808d 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2974,6 +2974,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0171-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch b/patches/server/0171-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch index 106e5015d..b5acb347e 100644 --- a/patches/server/0171-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch +++ b/patches/server/0171-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configs for if Wither/Ender Dragon can ride vehicles diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7fa07613527e2d4c87b52ce4680f853f43d70091..63bbfa32dc8e6b76aad0750c2cdd692963adba45 100644 +index 5dece69b1b3343783457c507e8d25239e4da92f0..52a374805eb5d2ac46abc8a07bf9b5e7c0decc16 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2398,7 +2398,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2397,7 +2397,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } } @@ -30,7 +30,7 @@ index 0614483830336f3bbd348319ca3eed8767568852..d27f61959e924e1ce6c7d76c905d98a7 } diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java -index 4d201127c6718883fd8b5a3a2202cf62a098fc33..92f22271c76ed01b1c82608b1ff32c17cdb2145f 100644 +index fea99134e77d7cbc77c89318753e7294d3f6a15a..1a764ba0a7402ce71038635f48d4b578457cc255 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java @@ -728,6 +728,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity { diff --git a/patches/server/0173-One-Punch-Man.patch b/patches/server/0173-One-Punch-Man.patch index 0289a31c0..512592c99 100644 --- a/patches/server/0173-One-Punch-Man.patch +++ b/patches/server/0173-One-Punch-Man.patch @@ -5,7 +5,7 @@ Subject: [PATCH] One Punch Man! diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 4aa16bf47270cfb109f78f5733baf8d9f48368ac..be2a59f25b09feb418ef7168ccf1bdd4bcaec075 100644 +index 9b5c42406585ed72a19c52c23f3c8b4c8f15808d..7af455e5472dc2b6ed177494a9da86c59c6ede5f 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -2016,6 +2016,23 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0176-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0176-Config-to-ignore-nearby-mobs-when-sleeping.patch index 0e34d4693..3bfd2883b 100644 --- a/patches/server/0176-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0176-Config-to-ignore-nearby-mobs-when-sleeping.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index c69ef7ee5e40e2557b3a3971c6fb24c9966d6809..96520df171fadbc90c130555bd0c7139579f73d8 100644 +index 2bae88b7b53d38f41808fe0177cd78a9e2bb1ce9..b8f9678ac9207e099a485c7d5c98f5766f32bd29 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java -@@ -1463,7 +1463,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1464,7 +1464,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { return entitymonster.f((EntityHuman) this); }); diff --git a/patches/server/0187-Drowning-Settings.patch b/patches/server/0187-Drowning-Settings.patch index e8268de26..850f8bc91 100644 --- a/patches/server/0187-Drowning-Settings.patch +++ b/patches/server/0187-Drowning-Settings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Drowning Settings diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 63bbfa32dc8e6b76aad0750c2cdd692963adba45..16a317afbe71275b7afd5d7a6bca73e6b3a60015 100644 +index 52a374805eb5d2ac46abc8a07bf9b5e7c0decc16..69f580e0caee96d81778047aae4d516776a71c2a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2604,7 +2604,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -2603,7 +2603,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } public int getDefaultPortalCooldown() { @@ -18,7 +18,7 @@ index 63bbfa32dc8e6b76aad0750c2cdd692963adba45..16a317afbe71275b7afd5d7a6bca73e6 public Iterable bn() { diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index be2a59f25b09feb418ef7168ccf1bdd4bcaec075..52d2076b3fd222148d307133f5465944ef6c546f 100644 +index 7af455e5472dc2b6ed177494a9da86c59c6ede5f..379782d5dcb212419c8df2a9a534749b3bd63f21 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -393,7 +393,7 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0198-Configurable-damage-settings-for-magma-blocks.patch b/patches/server/0198-Configurable-damage-settings-for-magma-blocks.patch index 11a1acc97..842884dbd 100644 --- a/patches/server/0198-Configurable-damage-settings-for-magma-blocks.patch +++ b/patches/server/0198-Configurable-damage-settings-for-magma-blocks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable damage settings for magma blocks diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 16a317afbe71275b7afd5d7a6bca73e6b3a60015..cc78b16db29498680267d98d755d3cf76e8ea325 100644 +index 69f580e0caee96d81778047aae4d516776a71c2a..408c138418dbf3049ef02f909d0caf3ffce63290 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -891,7 +891,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -890,7 +890,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } // CraftBukkit end diff --git a/patches/server/0204-Allows-change-broadcast-message-by-player.patch b/patches/server/0204-Allows-change-broadcast-message-by-player.patch index f6738aa14..785f88ea7 100644 --- a/patches/server/0204-Allows-change-broadcast-message-by-player.patch +++ b/patches/server/0204-Allows-change-broadcast-message-by-player.patch @@ -33,7 +33,7 @@ index a1ee1066108985a95abddb03ff447b5a14f4f85f..4720644ae82f76f835f14c0b3a00e7b7 } } diff --git a/src/main/java/net/minecraft/server/level/EntityPlayer.java b/src/main/java/net/minecraft/server/level/EntityPlayer.java -index 96520df171fadbc90c130555bd0c7139579f73d8..753fc239b9968d76541c536184b2039526d80005 100644 +index b8f9678ac9207e099a485c7d5c98f5766f32bd29..6d67eff4d584c287c97dfe32832c87bb59725bee 100644 --- a/src/main/java/net/minecraft/server/level/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/level/EntityPlayer.java @@ -1038,7 +1038,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/patches/server/0206-Implement-Mob-Blindness.patch b/patches/server/0206-Implement-Mob-Blindness.patch index 490d6c6a0..80fc7bb54 100644 --- a/patches/server/0206-Implement-Mob-Blindness.patch +++ b/patches/server/0206-Implement-Mob-Blindness.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Implement Mob Blindness Ported from https://github.com/raltsmc/mobblindness diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 52d2076b3fd222148d307133f5465944ef6c546f..6b739e67c8054846a4569c0fc91b06206683d78c 100644 +index 379782d5dcb212419c8df2a9a534749b3bd63f21..fa8df6ecede6ecb207e0e3390cc96c72d71a8a18 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -922,6 +922,18 @@ public abstract class EntityLiving extends Entity { diff --git a/patches/server/0219-API-for-any-mob-to-burn-daylight.patch b/patches/server/0219-API-for-any-mob-to-burn-daylight.patch index e2e62c585..92fc3365e 100644 --- a/patches/server/0219-API-for-any-mob-to-burn-daylight.patch +++ b/patches/server/0219-API-for-any-mob-to-burn-daylight.patch @@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight Co-authored by: Encode42 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index cc78b16db29498680267d98d755d3cf76e8ea325..4c4081a7aa906726e2dbcf0e68bf103c0999050b 100644 +index 408c138418dbf3049ef02f909d0caf3ffce63290..286275b44cece17a7044eebd6549415600e06359 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1640,7 +1640,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -1639,7 +1639,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne } } @@ -18,7 +18,7 @@ index cc78b16db29498680267d98d755d3cf76e8ea325..4c4081a7aa906726e2dbcf0e68bf103c BlockPosition.MutableBlockPosition blockposition_mutableblockposition = new BlockPosition.MutableBlockPosition(this.locX(), 0.0D, this.locZ()); if (this.world.isLoaded(blockposition_mutableblockposition)) { -@@ -3865,5 +3865,17 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne +@@ -3864,5 +3864,17 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, ne public boolean processClick(EnumHand hand) { return false; } @@ -59,7 +59,7 @@ index 7cacd2b56fa96411d9fdf96d985d24fe835f9a91..d96630a64f132eecf5cb4c80302cf9dd @Override diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 6b739e67c8054846a4569c0fc91b06206683d78c..57660a67003dff6a5515912fe07e79fac1fb9e37 100644 +index fa8df6ecede6ecb207e0e3390cc96c72d71a8a18..0eaa7facd7a9348d90721a64427c7fdfb59bf8ea 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -237,6 +237,7 @@ public abstract class EntityLiving extends Entity { @@ -348,10 +348,10 @@ index af69023b241560031f6aa116561d7407b2502578..f0a16fae2ddba2e3deeb09f04c029724 // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 670b5bee5771aee90cd241426db319fa627d578c..a226025852a9157a37ca05b8a5f1107d63a436dd 100644 +index 411a84840764ce6f7a83e11655cc04403d6ee5ee..19cea6950872260f603e26857aa82e5e899b2a00 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -881,5 +881,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -892,5 +892,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { if (slot == null) return; getHandle().broadcastItemBreak(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot)); } diff --git a/patches/server/0220-Fix-advancement-triggers-on-entity-death.patch b/patches/server/0220-Fix-advancement-triggers-on-entity-death.patch index 589f723dc..5124d14c7 100644 --- a/patches/server/0220-Fix-advancement-triggers-on-entity-death.patch +++ b/patches/server/0220-Fix-advancement-triggers-on-entity-death.patch @@ -74,7 +74,7 @@ index d96630a64f132eecf5cb4c80302cf9dd6176ad7c..b4afd71340a0c7e1b6aa2e3f01a6a4fc public void setSlot(EnumItemSlot enumitemslot, ItemStack itemstack) { switch (enumitemslot.a()) { diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java -index 57660a67003dff6a5515912fe07e79fac1fb9e37..4c527cd68da13633b424e666d693f82dc2a3fc25 100644 +index 0eaa7facd7a9348d90721a64427c7fdfb59bf8ea..158388410ea14b2df95635914844952bd52b8f87 100644 --- a/src/main/java/net/minecraft/world/entity/EntityLiving.java +++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java @@ -1557,10 +1557,13 @@ public abstract class EntityLiving extends Entity {