diff --git a/gradle.properties b/gradle.properties index 99e27cc26..f0b656853 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.purpurmc.purpur version = 1.20.2-R0.1-SNAPSHOT mcVersion = 1.20.2 -paperCommit = 8493340be4fa69fa9369719272e5dff1b7a2f455 +paperCommit = 8cafc0729775aa8321b68e10de6a3953333b1392 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0005-Purpur-client-support.patch b/patches/api/0005-Purpur-client-support.patch index 3255be384..9150bb9f2 100644 --- a/patches/api/0005-Purpur-client-support.patch +++ b/patches/api/0005-Purpur-client-support.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Purpur client support diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 2996db88343060624d6aab7889290ae74a973fe8..d470c0772c054f26de1da5c10b887f29e62b0eb7 100644 +index 087898a50909a40aabec09f1e52cefed6565ba4c..45aac54f186a64b3c0845e97c97226d955f9f6d2 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3301,4 +3301,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3310,4 +3310,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Override Spigot spigot(); // Spigot end diff --git a/patches/api/0010-AFK-API.patch b/patches/api/0010-AFK-API.patch index d1ffe45ca..f68a643df 100644 --- a/patches/api/0010-AFK-API.patch +++ b/patches/api/0010-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index d470c0772c054f26de1da5c10b887f29e62b0eb7..eb4fc096b9b96726b9c324029391baa585eca43b 100644 +index 45aac54f186a64b3c0845e97c97226d955f9f6d2..f1485aedb9d581bca9daa7bf94876a35e7f055bc 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3309,5 +3309,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3318,5 +3318,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @return True if Player uses Purpur Client */ public boolean usesPurpurClient(); diff --git a/patches/api/0041-Add-local-difficulty-api.patch b/patches/api/0041-Add-local-difficulty-api.patch index 245c3e879..dbfad0156 100644 --- a/patches/api/0041-Add-local-difficulty-api.patch +++ b/patches/api/0041-Add-local-difficulty-api.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add local difficulty api diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 91eb95b04094394e8dc1e3a3343efc63690c87e4..381cd0296ece416876e136d2ca710c18c3e8bea0 100644 +index 17d404d6d1a5b46b58d612fca38f17e71adee92e..791ab7aa9cb36715a323e8b920bb67f30accf738 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -4072,6 +4072,16 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -4160,6 +4160,16 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient @Nullable public DragonBattle getEnderDragonBattle(); diff --git a/patches/api/0044-Debug-Marker-API.patch b/patches/api/0044-Debug-Marker-API.patch index a53ce8b99..a97b3c453 100644 --- a/patches/api/0044-Debug-Marker-API.patch +++ b/patches/api/0044-Debug-Marker-API.patch @@ -179,10 +179,10 @@ index 3bc9fa8b68b284516ddbf0ace0c1dc52768307cb..aaef58468a3c31f35e5067ed4263e9dd // Purpur end } diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 381cd0296ece416876e136d2ca710c18c3e8bea0..d8ef44761148f928a671ceba74a5d1cb87af81d9 100644 +index 791ab7aa9cb36715a323e8b920bb67f30accf738..b012cc979e38ef1ef1ec61e71a887b91eb3de223 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -4080,6 +4080,76 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -4168,6 +4168,76 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient * @return The local difficulty */ public float getLocalDifficultyAt(@NotNull Location location); @@ -260,10 +260,10 @@ index 381cd0296ece416876e136d2ca710c18c3e8bea0..d8ef44761148f928a671ceba74a5d1cb /** diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index eb4fc096b9b96726b9c324029391baa585eca43b..ab74fa8ef7bb273b3b2abc519ba4957873826037 100644 +index f1485aedb9d581bca9daa7bf94876a35e7f055bc..23efdf3729f26554a1045e4d098fece5fc97c7ba 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3329,5 +3329,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3338,5 +3338,75 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * @deprecated Use {@link #resetIdleDuration()} instead */ void resetIdleTimer(); diff --git a/patches/api/0045-Add-death-screen-API.patch b/patches/api/0045-Add-death-screen-API.patch index a0b10e02b..6f8b16e03 100644 --- a/patches/api/0045-Add-death-screen-API.patch +++ b/patches/api/0045-Add-death-screen-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add death screen API diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index ab74fa8ef7bb273b3b2abc519ba4957873826037..ccbde7687d67dec442bed0df72af1f36cc26d179 100644 +index 23efdf3729f26554a1045e4d098fece5fc97c7ba..16b6d57fe359b5ccd4abce24e080fd09c31757dc 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3399,5 +3399,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3408,5 +3408,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM * Clears all debug block highlights */ void clearBlockHighlights(); diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 27d481d54..870c24721 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1464,7 +1464,7 @@ index 0000000000000000000000000000000000000000..facd55463d44cb7e3d2ca6892982f549 + } +} diff --git a/src/main/java/io/papermc/paper/util/MCUtil.java b/src/main/java/io/papermc/paper/util/MCUtil.java -index d02546b18cb689724887b4e85e8d32a18828a4ad..91eaff58bb422ba188e6cfaa9c20b45bec211edd 100644 +index 8240bb085b619f257f8c0a25775e0b15068e440f..6d9668d993bb922ae9d2b76a4d766903cc3f98a4 100644 --- a/src/main/java/io/papermc/paper/util/MCUtil.java +++ b/src/main/java/io/papermc/paper/util/MCUtil.java @@ -213,7 +213,7 @@ public final class MCUtil { @@ -1507,7 +1507,7 @@ index 8f31413c939cc2b0454ad3d9a1b618dbae449d00..58d076e2a8fa1cf56c4c8d15a502e85f } diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 2b5d82fbf4e7ec32d0c53dd3e8207b1dba708bbd..462c4eb3c06779f86f66778e9578d3d8f06c3294 100644 +index cf605aa56adf7f80d3b409f60a92a5ca7ae8fd07..f623b5152c398ea460516596ad70fdb1f8a987ca 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -221,6 +221,8 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -1528,10 +1528,10 @@ index 2b5d82fbf4e7ec32d0c53dd3e8207b1dba708bbd..462c4eb3c06779f86f66778e9578d3d8 } } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 6a49a36f64521f0bddcf21585ee507040119fd6d..dba021ae5d71bc44e4aee83d6c3910a81cc8ad83 100644 +index caa73632aee15583c6b6ed12a668c8f49b794708..3abec84383a445d3ad0d3b5f613246b6ac7ee741 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -206,7 +206,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -244,7 +244,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper end // Paper start - optimise chunk tick iteration public final it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet needsChangeBroadcasting = new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(); @@ -1540,7 +1540,7 @@ index 6a49a36f64521f0bddcf21585ee507040119fd6d..dba021ae5d71bc44e4aee83d6c3910a8 // Paper end - optimise chunk tick iteration public ChunkMap(ServerLevel world, LevelStorageSource.LevelStorageAccess session, DataFixer dataFixer, StructureTemplateManager structureTemplateManager, Executor executor, BlockableEventLoop mainThreadExecutor, LightChunkGetter chunkProvider, ChunkGenerator chunkGenerator, ChunkProgressListener worldGenerationProgressListener, ChunkStatusUpdateListener chunkStatusChangeListener, Supplier persistentStateManagerFactory, int viewDistance, boolean dsync) { -@@ -1330,8 +1330,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1464,8 +1464,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance); } @@ -1569,7 +1569,7 @@ index 6a49a36f64521f0bddcf21585ee507040119fd6d..dba021ae5d71bc44e4aee83d6c3910a8 Iterator iterator = this.entity.getIndirectPassengers().iterator(); while (iterator.hasNext()) { -@@ -1343,6 +1363,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1477,6 +1497,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider i = j; } } @@ -1782,7 +1782,7 @@ index 584a768f2ce1c98a1de7749060c47f21721f9055..c4a22fab14c74f268e8452c398add432 if (this.isRainingAt(blockposition)) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 8bca5ba75977c0a61197eb47c94f0456d66b29a4..dcc26435a7d3eb83f92ec165cf16486a06397576 100644 +index 33be0db006cca66f38f2105924466b0210139848..2061f374a2b40ff5ba3e3bdb6ef02bbec3be9748 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1118,6 +1118,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -1914,10 +1914,10 @@ index d6cbe98e67fdbf8db46338a88ab1356dd63b50a3..20dd3a63b2f955b05a75eb240e33ae4c int LARGE_MAX_STACK_SIZE = 64; int DEFAULT_DISTANCE_LIMIT = 8; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de9378884df2fb20 100644 +index 1e05fca2a2ba6e2c0b641b6e27585520889cd8a6..e78bc576497723ed727c0f4932e88bc931834ea8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -305,7 +305,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -306,7 +306,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public double yo; public double zo; private Vec3 position; @@ -1926,7 +1926,7 @@ index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de937888 private ChunkPos chunkPosition; private Vec3 deltaMovement; private float yRot; -@@ -433,6 +433,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -434,6 +434,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return this.originWorld; } // Paper end @@ -1939,7 +1939,7 @@ index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de937888 public float getBukkitYaw() { return this.yRot; } -@@ -765,6 +771,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -798,6 +804,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public void tick() { @@ -1952,7 +1952,7 @@ index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de937888 this.baseTick(); } -@@ -4324,16 +4336,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4336,16 +4348,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { @@ -1978,7 +1978,7 @@ index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de937888 double d1 = 0.0D; boolean flag = this.isPushedByFluid(); boolean flag1 = false; -@@ -4341,14 +4355,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4353,14 +4367,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { int k1 = 0; BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); @@ -2046,7 +2046,7 @@ index 2eaa35f5679053b6864fcc4eeb49f360a828bb34..d8c51744f494c81b27783d34de937888 if (d2 >= axisalignedbb.minY) { flag1 = true; -@@ -4370,9 +4431,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4382,9 +4443,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end } } @@ -2073,7 +2073,7 @@ index 73871f456a85bda1e51f54986d0e61fb629822e8..2561e74ffdf595a9b6ae13dcd738662c private String descriptionId; @Nullable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 675d695989cef5d8fc2e85673efbb57ec1bb38bd..26b57d004cf9b43967dce65c75946895fb703b84 100644 +index a76eb3d051db0229ed088b71c92ff3f131449007..d6d86597fbca937a32e74ecb913f569f9740e7d8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -2135,7 +2135,7 @@ index 675d695989cef5d8fc2e85673efbb57ec1bb38bd..26b57d004cf9b43967dce65c75946895 if (this.isSpectator()) { return false; diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index d28c477171c1b6888a45175075017d960464b5cd..4cb836dfa7cbd2e634d4a3a567da0305aac0da4d 100644 +index 956d05e2ae59978ea9623ca0e167c0afe0b87306..944c22ea172796492a683d2f2bddfb0938d7a8c9 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -220,14 +220,16 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -2157,7 +2157,7 @@ index d28c477171c1b6888a45175075017d960464b5cd..4cb836dfa7cbd2e634d4a3a567da0305 this.targetSelector.tick(); } } -@@ -913,16 +915,20 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -911,16 +913,20 @@ public abstract class Mob extends LivingEntity implements Targeting { if (i % 2 != 0 && this.tickCount > 1) { this.level().getProfiler().push("targetSelector"); @@ -2482,7 +2482,7 @@ index b2bc3a832c310448046ccde37a04918aa6d63197..5e43912708f9074dee1bb351efa737a7 this.level().getProfiler().pop(); super.customServerAiStep(); diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index f555e29c7f9ea4ddb243a018bdc93d2bf1950c3c..bbcc0356b4c0470502e893cf2dc2f16936a88bc4 100644 +index cbe2a37f74f4fb2abd0b3297699e54335aaed64f..2460768aaa7b8e6d183c03c1f0f2ccd6cb61a16f 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -142,6 +142,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -2881,7 +2881,7 @@ index a71414397bd45ee7bcacfeef0041d80dfa25f114..d66806565770cb03a21794f99e5c4b0f @Override diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java -index 1d9b23c6e458caddc2c738164e6c079cd85d3ce9..1cfacc7dfa4a761c4a4fb28f9bb02e95bace32f4 100644 +index d4dcf7fe26474ae07374e7761d823bc5c8b54f97..1d13fabb3f34023b4fbb1be9ad02ebc606645531 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java @@ -47,7 +47,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-Purpur-client-support.patch index 70cb7aa8d..d874dd4a2 100644 --- a/patches/server/0005-Purpur-client-support.patch +++ b/patches/server/0005-Purpur-client-support.patch @@ -43,10 +43,10 @@ index 598f807f0d0caac98b81e0e2991f1bd497c4534e..e9824deab810738e0df8b8e6932048b6 try { String channels = payload.toString(com.google.common.base.Charsets.UTF_8); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4f237880cf53ec2eb4e7c93dccc168bbb682f473..bb4bb551992c03486c7e1dae7907c1c3f9b35e19 100644 +index 00bae5df87bcc1c75d4e2f430241579d3be82c11..cbde98589bc5e8ac10c0dc90b142644bf6279122 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3297,4 +3297,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3287,4 +3287,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.spigot; } // Spigot end diff --git a/patches/server/0007-Component-related-conveniences.patch b/patches/server/0007-Component-related-conveniences.patch index 97d3e4a1c..38bd23f47 100644 --- a/patches/server/0007-Component-related-conveniences.patch +++ b/patches/server/0007-Component-related-conveniences.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Component related conveniences diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 5fe10d6d8590ef5997a4f8f6af01ec16bf20e00a..75faac7c8009672c733033c5aabb4e1974ce5790 100644 +index e7452b7380511e27c3fdb9172ea7273b24fbdab7..85331b9b9edf4af02029333a628971fcf959090d 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1784,6 +1784,26 @@ public class ServerPlayer extends Player { @@ -36,10 +36,10 @@ index 5fe10d6d8590ef5997a4f8f6af01ec16bf20e00a..75faac7c8009672c733033c5aabb4e19 public void displayClientMessage(Component message, boolean overlay) { this.sendSystemMessage(message, overlay); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 48d1444fbad1c57738807d0128b94160a5a17a4d..09b111dd0189b8764569e24fb6de862b1bb3bc89 100644 +index 33abcf12b4426572b74ca4c813e4392c823494bc..cd6bfaa8dc06c05ab25cbded645a1dbca725838c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1039,6 +1039,20 @@ public abstract class PlayerList { +@@ -1060,6 +1060,20 @@ public abstract class PlayerList { } // CraftBukkit end @@ -81,10 +81,10 @@ index 25a5a3b949a0eb632611355e74ccd4865be108ca..14fcfd7c1d3a62833978e163f4e0d6f9 return this.type().msgId(); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 505ed0f8f933428192f5fc806ff52d84acea7f99..8bc26cc6af27ba4c13940d61154786d47cb5aaf3 100644 +index e78bc576497723ed727c0f4932e88bc931834ea8..3dde7e4a063863d6b785f41aa4f29590ed8d9a9b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4066,6 +4066,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4078,6 +4078,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return SlotAccess.NULL; } diff --git a/patches/server/0008-Ridables.patch b/patches/server/0008-Ridables.patch index ea74bed8a..0ef0684ee 100644 --- a/patches/server/0008-Ridables.patch +++ b/patches/server/0008-Ridables.patch @@ -66,7 +66,7 @@ index 85331b9b9edf4af02029333a628971fcf959090d..03ef82e835a82d6f42376881a3e5c83d public void doTick() { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index dcc26435a7d3eb83f92ec165cf16486a06397576..26b4307a6a693a1b99951d1270264baa86868630 100644 +index 2061f374a2b40ff5ba3e3bdb6ef02bbec3be9748..4b9fde27189a1436e4faea35f3f0f8c276c12e9c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -2713,6 +2713,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -79,10 +79,10 @@ index dcc26435a7d3eb83f92ec165cf16486a06397576..26b4307a6a693a1b99951d1270264baa if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { entity.getEntityData().resendPossiblyDesyncedEntity(player); // Paper - The entire mob gets deleted, so resend it. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ab01dba073e09ca33ef2ddb00293c2eaaffad1ea..5230f1471ea7aeb01179db32f0c0e4ed4f1dd056 100644 +index 3dde7e4a063863d6b785f41aa4f29590ed8d9a9b..de2a1621b2d671de8f1c10463661cb361cd9e6b4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -375,7 +375,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -376,7 +376,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { private final Set tags; private final double[] pistonDeltas; private long pistonDeltasGameTime; @@ -91,7 +91,7 @@ index ab01dba073e09ca33ef2ddb00293c2eaaffad1ea..5230f1471ea7aeb01179db32f0c0e4ed private float eyeHeight; public boolean isInPowderSnow; public boolean wasInPowderSnow; -@@ -2946,6 +2946,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2958,6 +2958,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.passengers = ImmutableList.copyOf(list); } @@ -105,7 +105,7 @@ index ab01dba073e09ca33ef2ddb00293c2eaaffad1ea..5230f1471ea7aeb01179db32f0c0e4ed this.gameEvent(GameEvent.ENTITY_MOUNT, passenger); } } -@@ -2986,6 +2993,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2998,6 +3005,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } // Spigot end @@ -120,7 +120,7 @@ index ab01dba073e09ca33ef2ddb00293c2eaaffad1ea..5230f1471ea7aeb01179db32f0c0e4ed if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { this.passengers = ImmutableList.of(); } else { -@@ -4914,4 +4929,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4926,4 +4941,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end @@ -191,7 +191,7 @@ index 1bb8b6e91c44cd13411d96d749fa64835c75a267..75c278b67ad2b78766efd8f89c4c2ca7 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 26b57d004cf9b43967dce65c75946895fb703b84..e73750dd8e2e444ce6e21211dbf93d857b457a96 100644 +index d6d86597fbca937a32e74ecb913f569f9740e7d8..797ef036c3fb7a21fb3a2fbc6a7e307594ea1e11 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -218,9 +218,9 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -269,7 +269,7 @@ index 26b57d004cf9b43967dce65c75946895fb703b84..e73750dd8e2e444ce6e21211dbf93d85 // Paper end if (!this.level().isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 4cb836dfa7cbd2e634d4a3a567da0305aac0da4d..785421bc26d86c91983ab501fbc7484bbb389112 100644 +index 944c22ea172796492a683d2f2bddfb0938d7a8c9..050bb38f212fd2ec9b82ac5955496415474beb3b 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -147,8 +147,8 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -283,7 +283,7 @@ index 4cb836dfa7cbd2e634d4a3a567da0305aac0da4d..785421bc26d86c91983ab501fbc7484b this.jumpControl = new JumpControl(this); this.bodyRotationControl = this.createBodyControl(); this.navigation = this.createNavigation(world); -@@ -1391,7 +1391,7 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1389,7 +1389,7 @@ public abstract class Mob extends LivingEntity implements Targeting { protected void onOffspringSpawnedFromEgg(Player player, Mob child) {} protected InteractionResult mobInteract(Player player, InteractionHand hand) { @@ -292,7 +292,7 @@ index 4cb836dfa7cbd2e634d4a3a567da0305aac0da4d..785421bc26d86c91983ab501fbc7484b } public boolean isWithinRestriction() { -@@ -1775,4 +1775,56 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1773,4 +1773,56 @@ public abstract class Mob extends LivingEntity implements Targeting { return itemmonsteregg == null ? null : new ItemStack(itemmonsteregg); } @@ -4758,7 +4758,7 @@ index 11275a9ec6faa69c9f054683cb47312e443ba883..dc29e875c1e184c1c4553c127bb8c86d this.level().getProfiler().pop(); this.updateActivity(); diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java -index 3a6a2c8fc6b679619e2c12951dbe987414b4a4d2..27605b0ab3ab61f0e81e969cd4fa5c667edfbc74 100644 +index 5fdad1600cc7a7c22d1d9a58b6b2dda605521b97..9f58059800ea9fa5e62bf801c60ec8255ab9fc87 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java +++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java @@ -107,11 +107,30 @@ public class Zombie extends Monster { @@ -5019,7 +5019,7 @@ index 5e43912708f9074dee1bb351efa737a7e6796fc3..250af1ce7a93c2d2897f35c68fae319c public static void applyDarknessAround(ServerLevel world, Vec3 pos, @Nullable Entity entity, int range) { diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index bbcc0356b4c0470502e893cf2dc2f16936a88bc4..f7b81f14cd069da83c25ca6b063289c0fad07952 100644 +index 2460768aaa7b8e6d183c03c1f0f2ccd6cb61a16f..b6665acd9d9c799eedfb246354d2a74ba65391f3 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -157,6 +157,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler diff --git a/patches/server/0009-Configurable-entity-base-attributes.patch b/patches/server/0009-Configurable-entity-base-attributes.patch index 9af1d204d..6600168a5 100644 --- a/patches/server/0009-Configurable-entity-base-attributes.patch +++ b/patches/server/0009-Configurable-entity-base-attributes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable entity base attributes diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5eb10b5f75b55f66a002745d016b88e0366d1301..b4edc2ab9d831c3c81677544cbd1cd7369591ff5 100644 +index de2a1621b2d671de8f1c10463661cb361cd9e6b4..120377f090669ef06ad6d53fa55facfb9e1e800a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -155,7 +155,7 @@ import org.bukkit.plugin.PluginManager; +@@ -156,7 +156,7 @@ import org.bukkit.plugin.PluginManager; // CraftBukkit end public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -34,7 +34,7 @@ index 75c278b67ad2b78766efd8f89c4c2ca7eb7cdcb2..dc99e7f0e6f173c1313c0d5e9ea5dd6b protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cc82a506e0da0bf4318a37326924d71ca3340d5e..7471edf871522543cb49afef63d2c539b7e871a3 100644 +index 797ef036c3fb7a21fb3a2fbc6a7e307594ea1e11..c23bea8c82c3f4670ce736cb1375e1adb8aa7a05 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -287,6 +287,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -158,7 +158,7 @@ index b0cff23aa6f841ad291437964ea5bebb6395de84..f440eabffb1abe4c7370bf7badf6137a protected void registerGoals() { this.goalSelector.addGoal(0, new FloatGoal(this)); diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java -index 3dab78e2f39855f71bb7294521be71b3faa59b81..89e3dbfddc739f97fdb6ec9a5714530f03cc7092 100644 +index 3f81b9d3c0758d20b3f9421a6bf41599e107b5e1..3db4ded84b8219262b24152f8d29576cdc660c76 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java +++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java @@ -158,6 +158,11 @@ public class Dolphin extends WaterAnimal { @@ -174,7 +174,7 @@ index 3dab78e2f39855f71bb7294521be71b3faa59b81..89e3dbfddc739f97fdb6ec9a5714530f @Override public SpawnGroupData finalizeSpawn(ServerLevelAccessor world, DifficultyInstance difficulty, MobSpawnType spawnReason, @Nullable SpawnGroupData entityData, @Nullable CompoundTag entityNbt) { diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java -index 7d692f61ed4c6cc8e6b94eda4f48e9cb6baa0ae2..5a7f4c0565b2d8f95930b39e1aacd9904e382736 100644 +index b5f1d79787a7dbc8fddaa47fdeec1b224b409d19..f24434f577d44cef0816ebbdc88de37f449b8e13 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Fox.java +++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java @@ -182,6 +182,11 @@ public class Fox extends Animal implements VariantHolder { @@ -459,7 +459,7 @@ index 2efa2e19485f9d959a55115ab62f985454689379..eecdb1f1d49951cb8a294d176afd12c6 protected void registerGoals() { this.goalSelector.addGoal(1, new FloatGoal(this)); diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java -index 4dfe6a909ac3d553bd1cd4cfc131ac8bfb5a0b02..882c8fe0d9dc2e34eed2f1b11bb2c1b4d72319d2 100644 +index d1dd2cda473bb2294dc10c66c13eac8591ea4d5b..5cd79df01d4dbe7a1af530c502a78e48dcaffb7e 100644 --- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java +++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java @@ -115,6 +115,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder brainProvider() { return Brain.provider(MEMORY_TYPES, SENSOR_TYPES); diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java -index 7be0c7776608582adf556b36dcfe289465490ecd..56f9d91ba48c501fbcdbb959f683ce8728a36503 100644 +index 9f58059800ea9fa5e62bf801c60ec8255ab9fc87..3948e9e56a260ee831fa17b0a4d4240a0bc8d26d 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java +++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java @@ -124,6 +124,11 @@ public class Zombie extends Monster { @@ -1378,7 +1378,7 @@ index 7be0c7776608582adf556b36dcfe289465490ecd..56f9d91ba48c501fbcdbb959f683ce87 @Override diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java -index be1234f1c087b3140c79278e7d7e7c1394352cc8..a205c668d0d7b428622fbcaa1598f01c685b516e 100644 +index 3396acd9d361e05b8d7696d823c36c4fda945a23..6c96ca4bb3f94aaeaff87ae44500e87516fbf54f 100644 --- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java +++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java @@ -99,6 +99,16 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { @@ -1472,7 +1472,7 @@ index 2d842c0dfce1c7e7229bd42b2a92c024a4162b68..04e54c241078e6cd6419a21ba1bf913f return Monster.createMonsterAttributes().add(Attributes.MAX_HEALTH, 50.0D).add(Attributes.MOVEMENT_SPEED, (double)0.35F).add(Attributes.ATTACK_DAMAGE, 7.0D); } diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index f7b81f14cd069da83c25ca6b063289c0fad07952..95df7d57c3aaa46f09f37996a89d88aa9e9383b4 100644 +index b6665acd9d9c799eedfb246354d2a74ba65391f3..75738c810990a544225ef5eb5b94779c746899eb 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -179,6 +179,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -1488,7 +1488,7 @@ index f7b81f14cd069da83c25ca6b063289c0fad07952..95df7d57c3aaa46f09f37996a89d88aa public Brain getBrain() { return (Brain) super.getBrain(); // CraftBukkit - decompile error diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java -index 808bf21dc16b5007c49a56c6597fd66c3ec4992e..9178c018c8e008b46a978bb95c244abf986f93d9 100644 +index 2bed7b373813660139d2322dcd6b83f3015768f0..731bf43e2685554174d7ff295b5561ecf9dd70fa 100644 --- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java @@ -87,6 +87,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill diff --git a/patches/server/0010-Barrels-and-enderchests-6-rows.patch b/patches/server/0010-Barrels-and-enderchests-6-rows.patch index b85c594ef..bb6e8dc94 100644 --- a/patches/server/0010-Barrels-and-enderchests-6-rows.patch +++ b/patches/server/0010-Barrels-and-enderchests-6-rows.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Barrels and enderchests 6 rows diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 09b111dd0189b8764569e24fb6de862b1bb3bc89..cf03faf3207f886b03b0e90ad6f4ce5310db428c 100644 +index cd6bfaa8dc06c05ab25cbded645a1dbca725838c..837ef9a66921f881c5c94aa5f28746d9494d4a98 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1164,6 +1164,27 @@ public abstract class PlayerList { +@@ -1185,6 +1185,27 @@ public abstract class PlayerList { player.getBukkitEntity().recalculatePermissions(); // CraftBukkit this.server.getCommands().sendCommands(player); } // Paper @@ -37,7 +37,7 @@ index 09b111dd0189b8764569e24fb6de862b1bb3bc89..cf03faf3207f886b03b0e90ad6f4ce53 public boolean isWhiteListed(GameProfile profile) { diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 90d437ef429fa6eef620eb54fcb9512e46b19b15..ea475f6fff35e346ca153a385d6b20f90b5f4283 100644 +index 911a44ab096bf835709632921797a749ee0bc638..3b4d9069ce877eba1adc330154eec5c178d82256 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -188,6 +188,7 @@ public abstract class Player extends LivingEntity { @@ -205,7 +205,7 @@ index 416aa989ebb18a8741cc9d605a1180ab830f6643..e38a0adf5463c48311ad08b8d2e5b5c2 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java -index 633e6f4922ccaf59979a22885162f42c65bf628a..15001e7c8eae3a89f9d8669be532d56b70d538ef 100644 +index b4bd318d61834d70d666577073f18e4c49ded113..a35f60b01b371673023bd23f47a8ddafd38787f2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java @@ -181,8 +181,19 @@ public class CraftContainer extends AbstractContainerMenu { diff --git a/patches/server/0012-AFK-API.patch b/patches/server/0012-AFK-API.patch index 1367f9678..5e4ad00c1 100644 --- a/patches/server/0012-AFK-API.patch +++ b/patches/server/0012-AFK-API.patch @@ -78,7 +78,7 @@ index 03ef82e835a82d6f42376881a3e5c83d0ec158b2..15cfc439ea0e122729e383e86d7162cb return this.stats; } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 26b4307a6a693a1b99951d1270264baa86868630..852e6df80caf4daae01e8d599b1eb405b1ccf73f 100644 +index 4b9fde27189a1436e4faea35f3f0f8c276c12e9c..664f07e4a31b31d2535afe135f4035cd5bbcacac 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -323,6 +323,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -223,7 +223,7 @@ index aaa07fcd4b32fe0de88142ab30378327a01f1729..bc8555d21d418f9da37cc089904f7cb0 if (range < 0.0D || d < range * range) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index bb4bb551992c03486c7e1dae7907c1c3f9b35e19..d8b0fedd627d4ad9f443b8bcfc063fc2157b96b8 100644 +index cbde98589bc5e8ac10c0dc90b142644bf6279122..2b335e9835e62109a9d3720cb1ab705666a2362d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -519,10 +519,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -243,7 +243,7 @@ index bb4bb551992c03486c7e1dae7907c1c3f9b35e19..d8b0fedd627d4ad9f443b8bcfc063fc2 for (ServerPlayer player : (List) this.server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -3303,5 +3308,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3293,5 +3298,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean usesPurpurClient() { return getHandle().purpurClient; } diff --git a/patches/server/0032-Add-option-to-set-armorstand-step-height.patch b/patches/server/0032-Add-option-to-set-armorstand-step-height.patch index 2e70c706f..703350712 100644 --- a/patches/server/0032-Add-option-to-set-armorstand-step-height.patch +++ b/patches/server/0032-Add-option-to-set-armorstand-step-height.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to set armorstand step height diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b4edc2ab9d831c3c81677544cbd1cd7369591ff5..a5f54e2c17f618b99c76281b45d005280e4e31f9 100644 +index 120377f090669ef06ad6d53fa55facfb9e1e800a..f05373bd8d1b2c92c83cacaa2fd6fa845fe23daf 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -333,7 +333,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -334,7 +334,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public double xOld; public double yOld; public double zOld; @@ -18,7 +18,7 @@ index b4edc2ab9d831c3c81677544cbd1cd7369591ff5..a5f54e2c17f618b99c76281b45d00528 protected final RandomSource random; public int tickCount; diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java -index 1c7702a5c888846f93f8f80d3b854a26c11499be..14424afdb708df7f93caf6df45412ec721b5e1dd 100644 +index 9dcf28bdcb5770a191e62353a60c953731671283..43e562d740b628d5abf961312ea5ce7a23e8ac56 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java @@ -690,6 +690,7 @@ public class ArmorStand extends LivingEntity { diff --git a/patches/server/0045-Add-permission-for-F3-N-debug.patch b/patches/server/0045-Add-permission-for-F3-N-debug.patch index d01f4d38b..d2c6881a2 100644 --- a/patches/server/0045-Add-permission-for-F3-N-debug.patch +++ b/patches/server/0045-Add-permission-for-F3-N-debug.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add permission for F3+N debug diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index cf03faf3207f886b03b0e90ad6f4ce5310db428c..1eafc1854d47002d683f625f4c164290eee59181 100644 +index 837ef9a66921f881c5c94aa5f28746d9494d4a98..d4d7493569ecf3eb9456b4005f269b94fe08941e 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1156,6 +1156,7 @@ public abstract class PlayerList { +@@ -1177,6 +1177,7 @@ public abstract class PlayerList { } else { b0 = (byte) (24 + permissionLevel); } diff --git a/patches/server/0050-Allow-leashing-villagers.patch b/patches/server/0050-Allow-leashing-villagers.patch index d1d0542d9..72ff022a8 100644 --- a/patches/server/0050-Allow-leashing-villagers.patch +++ b/patches/server/0050-Allow-leashing-villagers.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow leashing villagers diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 785421bc26d86c91983ab501fbc7484bbb389112..b6fd8797d791a60505f8389a38ef6626407a4dbf 100644 +index 050bb38f212fd2ec9b82ac5955496415474beb3b..67820c9a971d9c0c24b6d7e6d10dd0b761f24345 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1318,6 +1318,7 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1316,6 +1316,7 @@ public abstract class Mob extends LivingEntity implements Targeting { if (!this.isAlive()) { return InteractionResult.PASS; } else if (this.getLeashHolder() == player) { @@ -17,7 +17,7 @@ index 785421bc26d86c91983ab501fbc7484bbb389112..b6fd8797d791a60505f8389a38ef6626 // Paper start - drop leash variable org.bukkit.event.player.PlayerUnleashEntityEvent event = CraftEventFactory.callPlayerUnleashEntityEvent(this, player, hand, !player.getAbilities().instabuild); diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index d92a151fa308dd9cbf49e4ab6c581feeb3080519..616a6c78a056839575b4dabfeebb7cb2dce25026 100644 +index 9e3079d1446f37a568614db200e88f508a960272..4dac757aec546c2128506ee899ee9517441595d1 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -185,6 +185,11 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -33,7 +33,7 @@ index d92a151fa308dd9cbf49e4ab6c581feeb3080519..616a6c78a056839575b4dabfeebb7cb2 public Brain getBrain() { return (Brain) super.getBrain(); // CraftBukkit - decompile error diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java -index c1c41990bc53c822aa170e3d69924437f4a25115..31daa61db84fcb3cde7ec4b18b32aba350ab2cfb 100644 +index 64dd35573db3feae6507fc05086ed08c60f5ea01..ad7a32169b0decad1d3a2bd98e25b07731a33d03 100644 --- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java @@ -92,6 +92,11 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill diff --git a/patches/server/0054-Configurable-void-damage-height-and-damage.patch b/patches/server/0054-Configurable-void-damage-height-and-damage.patch index b723657a5..4059e1153 100644 --- a/patches/server/0054-Configurable-void-damage-height-and-damage.patch +++ b/patches/server/0054-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 63d6fc245b38202674da4f7d15665b57d9c5ef3c..f93cf0029d51cf124bcbc4b4a8b5677978968dfd 100644 +index f05373bd8d1b2c92c83cacaa2fd6fa845fe23daf..1d5037594599392e133ca593f58f9d823725c9d6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -860,7 +860,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -893,7 +893,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void checkBelowWorld() { // Paper start - Configurable nether ceiling damage @@ -18,7 +18,7 @@ index 63d6fc245b38202674da4f7d15665b57d9c5ef3c..f93cf0029d51cf124bcbc4b4a8b56779 && (!(this instanceof Player player) || !player.getAbilities().invulnerable))) { // Paper end diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index eaff62f5dee0423723c259328d6c0c2c8a7156ef..5b80d41b267488d632492239298c94ded9ac40bb 100644 +index 5e13bc95bab63dee2a4c622a53c9144a77a8ab11..ec2bb4ae5bbbf90624ebdd5a75298e3eb42a172c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2535,7 +2535,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0055-Add-canSaveToDisk-to-Entity.patch b/patches/server/0055-Add-canSaveToDisk-to-Entity.patch index f7ebcf7a3..3fe32f7c0 100644 --- a/patches/server/0055-Add-canSaveToDisk-to-Entity.patch +++ b/patches/server/0055-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 790c6c677cd83bd4158e1567e51b7669fc219178..ea1ecc287a75860fd8275d604fb9b130d355894b 100644 +index 1d5037594599392e133ca593f58f9d823725c9d6..63609c4ff4695753b318e345b2ef9047e7cadf1c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -492,6 +492,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -493,6 +493,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } diff --git a/patches/server/0056-Dispenser-curse-of-binding-protection.patch b/patches/server/0056-Dispenser-curse-of-binding-protection.patch index a942f4635..d3ed9cb49 100644 --- a/patches/server/0056-Dispenser-curse-of-binding-protection.patch +++ b/patches/server/0056-Dispenser-curse-of-binding-protection.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Dispenser curse of binding protection diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index b6fd8797d791a60505f8389a38ef6626407a4dbf..92e74dd04e715650b435537014bb89f15a112e19 100644 +index 67820c9a971d9c0c24b6d7e6d10dd0b761f24345..de635f425a69ac4f21a80a2c723adf0362501d1f 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -65,6 +65,7 @@ import net.minecraft.world.item.ProjectileWeaponItem; @@ -16,7 +16,7 @@ index b6fd8797d791a60505f8389a38ef6626407a4dbf..92e74dd04e715650b435537014bb89f1 import net.minecraft.world.level.GameRules; import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.Level; -@@ -1176,6 +1177,12 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1174,6 +1175,12 @@ public abstract class Mob extends LivingEntity implements Targeting { } diff --git a/patches/server/0072-Entity-lifespan.patch b/patches/server/0072-Entity-lifespan.patch index 85faf5c1c..23fe2d162 100644 --- a/patches/server/0072-Entity-lifespan.patch +++ b/patches/server/0072-Entity-lifespan.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Entity lifespan diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index fb887cbbd5d5ca0a29bd31672b38a18db2f2e8db..14f6abe6e7eeaf5d3053bf3ecb540b898813c267 100644 +index b74c0ecdcfa41ba10f7514290ef470666f33ab18..11e6fa3e6e51c2da43ceb4a0fe865947b55e221c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -2740,6 +2740,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -17,7 +17,7 @@ index fb887cbbd5d5ca0a29bd31672b38a18db2f2e8db..14f6abe6e7eeaf5d3053bf3ecb540b89 private void performInteraction(InteractionHand enumhand, ServerGamePacketListenerImpl.EntityInteraction playerconnection_a, PlayerInteractEntityEvent event) { // CraftBukkit ItemStack itemstack = ServerGamePacketListenerImpl.this.player.getItemInHand(enumhand); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 92e74dd04e715650b435537014bb89f15a112e19..3e954a04e3ccdfcd495d0c56535c951eeaa2b5ce 100644 +index de635f425a69ac4f21a80a2c723adf0362501d1f..19688acdd615068b37b928c3608074c5607919ec 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -135,6 +135,7 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -85,7 +85,7 @@ index 92e74dd04e715650b435537014bb89f15a112e19..3e954a04e3ccdfcd495d0c56535c951e } @Override -@@ -1710,6 +1738,7 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1708,6 +1736,7 @@ public abstract class Mob extends LivingEntity implements Targeting { this.setLastHurtMob(target); } diff --git a/patches/server/0084-Stop-squids-floating-on-top-of-water.patch b/patches/server/0084-Stop-squids-floating-on-top-of-water.patch index f59c727ff..a1ad2b177 100644 --- a/patches/server/0084-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0084-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 ea1ecc287a75860fd8275d604fb9b130d355894b..267e3ddaed711ee275bf64855c0382df81d1f12c 100644 +index 63609c4ff4695753b318e345b2ef9047e7cadf1c..940157724b87e0a501a6f52d78d4a170923fb027 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4368,6 +4368,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4380,6 +4380,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.yRotO = this.getYRot(); } diff --git a/patches/server/0086-Entities-can-use-portals-configuration.patch b/patches/server/0086-Entities-can-use-portals-configuration.patch index be3efe2f7..273e64e32 100644 --- a/patches/server/0086-Entities-can-use-portals-configuration.patch +++ b/patches/server/0086-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 267e3ddaed711ee275bf64855c0382df81d1f12c..f2b06c4930c39a3e47f0ea35dfa5997f21654674 100644 +index 940157724b87e0a501a6f52d78d4a170923fb027..95fecfaaffe6c7b6a46490518917285ea8551c05 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3087,7 +3087,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3099,7 +3099,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void handleInsidePortal(BlockPos pos) { if (this.isOnPortalCooldown()) { this.setPortalCooldown(); @@ -17,7 +17,7 @@ index 267e3ddaed711ee275bf64855c0382df81d1f12c..f2b06c4930c39a3e47f0ea35dfa5997f if (!this.level().isClientSide && !pos.equals(this.portalEntrancePos)) { this.portalEntrancePos = pos.immutable(); } -@@ -3792,7 +3792,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3804,7 +3804,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean canChangeDimensions() { diff --git a/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch b/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch index 81f8b8df1..a78775c65 100644 --- a/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch +++ b/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Changeable Mob Left Handed Chance diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 3e954a04e3ccdfcd495d0c56535c951eeaa2b5ce..1ce3ba7f703b5627e2761865c0e133dbf5df8712 100644 +index 19688acdd615068b37b928c3608074c5607919ec..dd75a1115d02506f1e99688817cb724b22b3e696 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1305,7 +1305,7 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1303,7 +1303,7 @@ public abstract class Mob extends LivingEntity implements Targeting { RandomSource randomsource = world.getRandom(); this.getAttribute(Attributes.FOLLOW_RANGE).addPermanentModifier(new AttributeModifier("Random spawn bonus", randomsource.triangle(0.0D, 0.11485000000000001D), AttributeModifier.Operation.MULTIPLY_BASE)); diff --git a/patches/server/0117-Implement-TPSBar.patch b/patches/server/0117-Implement-TPSBar.patch index 50efc714c..366800ba5 100644 --- a/patches/server/0117-Implement-TPSBar.patch +++ b/patches/server/0117-Implement-TPSBar.patch @@ -29,7 +29,7 @@ index cef1f7169880560a9c79667320e63d552fa4aa03..13b57942eb63b2a9460f96ec59bb9ba3 this.hasLoggedStop = true; // Paper if (isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index a87d025a7ad0b7df16bea6fa4aeecae416551dde..dd27066b97e9b9ba34e94a60c5133fb5e433c433 100644 +index 6ea42811c1e7ae1b6bf17b7edad921861c7fa2e0..8b647e6f3dd576b1984ad099eb21912e0c193eb7 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -350,6 +350,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -83,10 +83,10 @@ index 8c709fdd4328e83e44bf976ff674db66b10a8ac2..51efe3a87ca54423e8bb8c23d226bf3e // Purpur end } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index cdb09bc6a53f213b33d897fe7aa073f79235ccae..00ac2b2d0b64c7eabdee3bdc5137428cf22124a7 100644 +index d4d7493569ecf3eb9456b4005f269b94fe08941e..1774b424620863d2fd1f6353b3ce7e9b0fc0e132 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -467,6 +467,7 @@ public abstract class PlayerList { +@@ -488,6 +488,7 @@ public abstract class PlayerList { scoreboard.addPlayerToTeam(player.getScoreboardName(), collideRuleTeam); } // Paper end @@ -94,7 +94,7 @@ index cdb09bc6a53f213b33d897fe7aa073f79235ccae..00ac2b2d0b64c7eabdee3bdc5137428c // CraftBukkit - Moved from above, added world PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), s1, player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ()); } -@@ -580,6 +581,7 @@ public abstract class PlayerList { +@@ -601,6 +602,7 @@ public abstract class PlayerList { } public net.kyori.adventure.text.Component remove(ServerPlayer entityplayer, net.kyori.adventure.text.Component leaveMessage) { // Paper end diff --git a/patches/server/0124-Add-EntityTeleportHinderedEvent.patch b/patches/server/0124-Add-EntityTeleportHinderedEvent.patch index df0ec7cfa..24b34df55 100644 --- a/patches/server/0124-Add-EntityTeleportHinderedEvent.patch +++ b/patches/server/0124-Add-EntityTeleportHinderedEvent.patch @@ -74,7 +74,7 @@ index 9717b37aef9f487502e696c209ae209ab3b8f000..7291e4056b8e46ab59b71818388ac55f blockEntity.teleportCooldown = 100; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 6092004f91e1a4a143df1a82bcad9c16760f5096..d1a550aa5905d26e5b0f534338b3f30f1f2db67c 100644 +index 822faeca49c02562640f135948fab75a0bc49f0a..2406c33799ce8e00484c63b87c0c2c6ded9bf25b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -600,6 +600,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -89,10 +89,10 @@ index 6092004f91e1a4a143df1a82bcad9c16760f5096..d1a550aa5905d26e5b0f534338b3f30f } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 12012dd42a9c1faffcad55c9786a9f99e426600a..4895293d3dfd294d278c79932d354bf9fe780361 100644 +index 2b335e9835e62109a9d3720cb1ab705666a2362d..d3719998ddd7f29abb7b9a59273ddfcc27ebe63f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1357,6 +1357,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1347,6 +1347,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API diff --git a/patches/server/0126-Movement-options-for-armor-stands.patch b/patches/server/0126-Movement-options-for-armor-stands.patch index 307a2e99a..7d43f24db 100644 --- a/patches/server/0126-Movement-options-for-armor-stands.patch +++ b/patches/server/0126-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 f2b06c4930c39a3e47f0ea35dfa5997f21654674..b7a619f93c7d48633dffea58204e135547778ab3 100644 +index 95fecfaaffe6c7b6a46490518917285ea8551c05..bfd8eb90479bdb1cad6343c04995788b31b3e05c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1837,7 +1837,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1870,7 +1870,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return this.isInWater() || flag; } @@ -30,7 +30,7 @@ index f2b06c4930c39a3e47f0ea35dfa5997f21654674..b7a619f93c7d48633dffea58204e1355 if (entity instanceof Boat) { diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java -index a164e13ddfe64b212fc5937b455096287d3151d8..ba2fe129aaf25c54b624f282f8994c6a884abad8 100644 +index 3238e9e8bfff4dc33247d8bf29d408f262e4172e..aa2b21c2f96b096499cf9d8e077a0aed1ea6f654 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java @@ -99,10 +99,12 @@ public class ArmorStand extends LivingEntity { diff --git a/patches/server/0127-Fix-stuck-in-portals.patch b/patches/server/0127-Fix-stuck-in-portals.patch index e618f4796..897a9630d 100644 --- a/patches/server/0127-Fix-stuck-in-portals.patch +++ b/patches/server/0127-Fix-stuck-in-portals.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix stuck in portals diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index baf508a942b02d94dfe2c1fffc3cde930a492367..4c68d45f481d97d9fba7ac2eee44ca9c9261591e 100644 +index 51efe3a87ca54423e8bb8c23d226bf3e23ac8862..6ecabc14a4f50086790536b28e68b6ea25b27495 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1268,6 +1268,7 @@ public class ServerPlayer extends Player { @@ -17,10 +17,10 @@ index baf508a942b02d94dfe2c1fffc3cde930a492367..4c68d45f481d97d9fba7ac2eee44ca9c // CraftBukkit end this.setServerLevel(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b7a619f93c7d48633dffea58204e135547778ab3..c5b89e797f614bf388c7ec2ae3e6751180425ba2 100644 +index bfd8eb90479bdb1cad6343c04995788b31b3e05c..5790e3f1d5e2c43f401bfd93e85ddee799a6aad2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3084,12 +3084,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3096,12 +3096,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return Vec3.directionFromRotation(this.getRotationVector()); } diff --git a/patches/server/0147-Drowning-Settings.patch b/patches/server/0147-Drowning-Settings.patch index 97f2a4fb9..930b996d6 100644 --- a/patches/server/0147-Drowning-Settings.patch +++ b/patches/server/0147-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 c5b89e797f614bf388c7ec2ae3e6751180425ba2..9204b119a038868e63a345f2a8cd175cba96b090 100644 +index 5790e3f1d5e2c43f401bfd93e85ddee799a6aad2..cbb786b246847a9463f9f34a63aafa686f0db7fe 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3333,7 +3333,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3345,7 +3345,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public int getMaxAirSupply() { @@ -18,7 +18,7 @@ index c5b89e797f614bf388c7ec2ae3e6751180425ba2..9204b119a038868e63a345f2a8cd175c public int getAirSupply() { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b13757a20b04634c26d741e27df75be28089dc37..6f6f6610c27c738db440d7be747f0be2296f2815 100644 +index 9aac4f3b758665d27a02340f97a6b16378ba11bf..95daa04ba54b8a5e1de707ca31d40c60e4d039d7 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -439,7 +439,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0174-API-for-any-mob-to-burn-daylight.patch b/patches/server/0174-API-for-any-mob-to-burn-daylight.patch index d4fe07be5..ee76f4e7d 100644 --- a/patches/server/0174-API-for-any-mob-to-burn-daylight.patch +++ b/patches/server/0174-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 03b0c98e4e926f5cf630e0fddb2e51fc70d20f84..ecc5d5459350d401ed1a4bf01199ad00338954ae 100644 +index cbb786b246847a9463f9f34a63aafa686f0db7fe..6f56cbf6104303cb6ddfa59f41e37a64e3c18ae2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -496,6 +496,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -497,6 +497,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return true; } @@ -32,7 +32,7 @@ index 03b0c98e4e926f5cf630e0fddb2e51fc70d20f84..ecc5d5459350d401ed1a4bf01199ad00 return this.hardCollides; } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 907ed5f818545afbec981c97b565556850a30571..30a872c7e0710506899eb2432d7271396f34c677 100644 +index 011914bdbf602fa5696d24d11e3207a9bc6a9ef2..d36b2343cb94d59a8e4fea0d8608a6973116d641 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -263,6 +263,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -92,10 +92,10 @@ index 907ed5f818545afbec981c97b565556850a30571..30a872c7e0710506899eb2432d727139 public boolean isSensitiveToWater() { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 4454241862598048abd4e8bf321f9a066be15067..547279a379190c2339d6335e00faf7730be6d0f0 100644 +index 54d1e9c9d98bbf8f408c3c9906d76c662ab2c90e..3a86686789ca77301e43bb9810f9b2b311d7763d 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1755,17 +1755,7 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -1753,17 +1753,7 @@ public abstract class Mob extends LivingEntity implements Targeting { } public boolean isSunBurnTick() { @@ -277,7 +277,7 @@ index 030b81dd8c52ddb300e73d792f9c4cea4e8a8d46..1d4a292a37069408420ca90b1c278422 // Paper end private static enum AttackPhase { diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java -index 5a3d0ba97247e3867cc85aef3f6ad30d5d1548e1..8696b3a0ff7f0d55a9cda104bc6ecc3a63d787db 100644 +index e118cfc34b05f6d4921a0903eca70be6b68bff4f..fab8e4ffa083e3d436fd4d6d19cf8ea8a7b5a6a6 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java +++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java @@ -96,11 +96,12 @@ public class Zombie extends Monster { diff --git a/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch b/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch index b12418646..b5f24f045 100644 --- a/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch +++ b/patches/server/0178-Add-toggle-for-end-portal-safe-teleporting.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for end portal safe teleporting diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2570fb81e94f7169a54a8e0b2dce5a2c24fcd00e..12f0da455f174c5a0652ac87f62c159808fbf7d3 100644 +index 6f56cbf6104303cb6ddfa59f41e37a64e3c18ae2..bf48e496f4988f45ea8c92eb45544f44753e5738 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3158,7 +3158,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3170,7 +3170,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.processPortalCooldown(); diff --git a/patches/server/0181-Allow-player-join-full-server-by-permission.patch b/patches/server/0181-Allow-player-join-full-server-by-permission.patch index 551d1a790..0ebff586b 100644 --- a/patches/server/0181-Allow-player-join-full-server-by-permission.patch +++ b/patches/server/0181-Allow-player-join-full-server-by-permission.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow player join full server by permission diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 265889514d2959731440ec180f6e47b19bb83cfb..cf721106b861a8c166244efc2114e22d038aa3a7 100644 +index 1774b424620863d2fd1f6353b3ce7e9b0fc0e132..cdb5ebf7ed24cdf0ab8e06a92bc2dd21f85008d9 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -736,7 +736,7 @@ public abstract class PlayerList { +@@ -757,7 +757,7 @@ public abstract class PlayerList { event.disallow(PlayerLoginEvent.Result.KICK_BANNED, io.papermc.paper.adventure.PaperAdventure.asAdventure(ichatmutablecomponent)); // Paper - Adventure } else { // return this.players.size() >= this.maxPlayers && !this.canBypassPlayerLimit(gameprofile) ? IChatBaseComponent.translatable("multiplayer.disconnect.server_full") : null; diff --git a/patches/server/0209-Extended-OfflinePlayer-API.patch b/patches/server/0209-Extended-OfflinePlayer-API.patch index 04f2fece9..e2e766d64 100644 --- a/patches/server/0209-Extended-OfflinePlayer-API.patch +++ b/patches/server/0209-Extended-OfflinePlayer-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Extended OfflinePlayer API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -index 03fc90a470c0f63d44161843cac88bea09166858..88640ac32d70ced6e8b1984663e1c492dd673cb5 100644 +index bb794638a990488afc8d9d245dd203269c2b38b2..2c42b1a76d002c1c1758b33a1ee8474be4524293 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java @@ -567,4 +567,213 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa @@ -223,10 +223,10 @@ index 03fc90a470c0f63d44161843cac88bea09166858..88640ac32d70ced6e8b1984663e1c492 + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4895293d3dfd294d278c79932d354bf9fe780361..a03f60665059f96fc546e880c29d3bb7b04ca67c 100644 +index d3719998ddd7f29abb7b9a59273ddfcc27ebe63f..51c6f9f27362a5da6b454f0eb515bb27df7ed2df 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2521,6 +2521,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2511,6 +2511,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().getAbilities().walkingSpeed * 2f; } diff --git a/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch b/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch index 2a48fdd4f..cb62f99ce 100644 --- a/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch +++ b/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Option for beds to explode on villager sleep diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index c7047bacce4851956e3732f0a73be423cc46ee54..04ccb0562e01ea5b9fcc4a14346fb0767ae44639 100644 +index 28d940393f387387fa0a2b0dea8de24324e2e55e..6146f3e52eb1d8f47b5a41eff634d2c7cc24c26f 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java -@@ -1119,6 +1119,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler +@@ -1110,6 +1110,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @Override public void startSleeping(BlockPos pos) { diff --git a/patches/server/0262-Add-local-difficulty-api.patch b/patches/server/0262-Add-local-difficulty-api.patch index 11ccdc887..8e1bff5b9 100644 --- a/patches/server/0262-Add-local-difficulty-api.patch +++ b/patches/server/0262-Add-local-difficulty-api.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add local difficulty api diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 5e350fa39f47d54f6048ea89c1317759f122b8ae..0afa519068a9d7bf5b16e201d9d768254094dc4f 100644 +index 746f88db6b78b3c8ec372bfaacb26ec98f3b1163..6d50cf1887e998793c3101ba4c22186bcd70f60c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2301,6 +2301,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2321,6 +2321,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { return (this.getHandle().getDragonFight() == null) ? null : new CraftDragonBattle(this.getHandle().getDragonFight()); } diff --git a/patches/server/0263-Add-toggle-for-RNG-manipulation.patch b/patches/server/0263-Add-toggle-for-RNG-manipulation.patch index 5cccb4d7b..59575ff50 100644 --- a/patches/server/0263-Add-toggle-for-RNG-manipulation.patch +++ b/patches/server/0263-Add-toggle-for-RNG-manipulation.patch @@ -7,10 +7,10 @@ Paper patches RNG maniplulation by using a shared (and locked) random source. This comes with a performance gain, but technical players may prefer the ability to manipulate RNG. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 12f0da455f174c5a0652ac87f62c159808fbf7d3..307eac4114192a7f0e6633e3df5a5e7a54ad22ba 100644 +index bf48e496f4988f45ea8c92eb45544f44753e5738..af06a919673f2e4f41d1cd712caa5b002d12ae71 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -561,7 +561,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -594,7 +594,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.bb = Entity.INITIAL_AABB; this.stuckSpeedMultiplier = Vec3.ZERO; this.nextStep = 1.0F; diff --git a/patches/server/0266-Remove-Timings.patch b/patches/server/0266-Remove-Timings.patch index f12ddda8b..294e92b4c 100644 --- a/patches/server/0266-Remove-Timings.patch +++ b/patches/server/0266-Remove-Timings.patch @@ -227,7 +227,7 @@ index d10abd28c522612934aada8124e5bb67a9b4e9da..a6a1b57b4327f5710e9ec5ebca35a47c i = this.context.runTopCommand(customfunction1, source); } finally { diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 3deaf5a9a3ee0a9550869811ff0c025814a9badf..4b2b538d2d9ae220341bd49e4534ee11e911d407 100644 +index b5744414e86bb78c29f494b20c7624fcf60ef0dd..4b407c1b2b9cde3b4210753b054783d1a3787f44 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -522,7 +522,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -249,10 +249,10 @@ index 3deaf5a9a3ee0a9550869811ff0c025814a9badf..4b2b538d2d9ae220341bd49e4534ee11 @Override diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index dba021ae5d71bc44e4aee83d6c3910a81cc8ad83..ec3df1e04febcc9b2f3e47ff38f642d131f6a313 100644 +index 3abec84383a445d3ad0d3b5f613246b6ac7ee741..a428df846cc6f4b2168d0c3ffdba34b42734bea3 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -468,15 +468,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -548,15 +548,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider protected void tick(BooleanSupplier shouldKeepTicking) { ProfilerFiller gameprofilerfiller = this.level.getProfiler(); @@ -272,33 +272,62 @@ index dba021ae5d71bc44e4aee83d6c3910a81cc8ad83..ec3df1e04febcc9b2f3e47ff38f642d1 } gameprofilerfiller.pop(); -@@ -1090,7 +1090,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1156,24 +1156,24 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + + // Paper start - optimised tracker + private final void processTrackQueue() { +- this.level.timings.tracker1.startTiming(); ++ //this.level.timings.tracker1.startTiming(); // Purpur + try { + for (TrackedEntity tracker : this.entityMap.values()) { + // update tracker entry + tracker.updatePlayers(tracker.entity.getPlayersInTrackRange()); + } + } finally { +- this.level.timings.tracker1.stopTiming(); ++ //this.level.timings.tracker1.stopTiming(); // Purpur + } + + +- this.level.timings.tracker2.startTiming(); ++ //this.level.timings.tracker2.startTiming(); // Purpur + try { + for (TrackedEntity tracker : this.entityMap.values()) { + tracker.serverEntity.sendChanges(); + } + } finally { +- this.level.timings.tracker2.stopTiming(); ++ //this.level.timings.tracker2.stopTiming(); // Purpur + } + } + // Paper end - optimised tracker +@@ -1188,7 +1188,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider List list = Lists.newArrayList(); List list1 = this.level.players(); ObjectIterator objectiterator = this.entityMap.values().iterator(); - level.timings.tracker1.startTiming(); // Paper -+ //level.timings.tracker1.startTiming(); // Paper // Purpur ++ //this.level.timings.tracker1.startTiming(); // Paper // Purpur ChunkMap.TrackedEntity playerchunkmap_entitytracker; -@@ -1115,17 +1115,17 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1213,17 +1213,17 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider playerchunkmap_entitytracker.serverEntity.sendChanges(); } } - level.timings.tracker1.stopTiming(); // Paper -+ //level.timings.tracker1.stopTiming(); // Paper // Purpur ++ //this.level.timings.tracker1.stopTiming(); // Paper // Purpur if (!list.isEmpty()) { objectiterator = this.entityMap.values().iterator(); - level.timings.tracker2.startTiming(); // Paper -+ //level.timings.tracker2.startTiming(); // Paper // Purpur ++ //this.level.timings.tracker2.startTiming(); // Paper // Purpur while (objectiterator.hasNext()) { playerchunkmap_entitytracker = (ChunkMap.TrackedEntity) objectiterator.next(); playerchunkmap_entitytracker.updatePlayers(list); } - level.timings.tracker2.stopTiming(); // Paper -+ //level.timings.tracker2.stopTiming(); // Paper // Purpur ++ //this.level.timings.tracker2.stopTiming(); // Paper // Purpur } } @@ -606,7 +635,7 @@ index de8e4fb4e0dac35cda26aced583f7dbd7f670f56..d5837c675e033c7277656e026cb98d55 } else if (close) { chunkproviderserver.close(false); } // Paper - rewrite chunk system diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 82a536db73221dc366a06818e66ce15f23536cde..314fd1bfe080a1298a72ca063da510d22c621ed6 100644 +index f244d9e7bd68f25f06217b14843186b4ad817d5c..1667ac929d5f221923977e5682686cd3bfb051ee 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -2451,7 +2451,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -637,10 +666,10 @@ index 82a536db73221dc366a06818e66ce15f23536cde..314fd1bfe080a1298a72ca063da510d2 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 5c90dbdbaa4655458081fea0343a48674cfd3a55..50720000069a4914c11ef5c402a39c469966196f 100644 +index cdb5ebf7ed24cdf0ab8e06a92bc2dd21f85008d9..182acaad79e14e5e120094916a0d295a4584de7a 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1249,7 +1249,7 @@ public abstract class PlayerList { +@@ -1270,7 +1270,7 @@ public abstract class PlayerList { public void saveAll(int interval) { io.papermc.paper.util.MCUtil.ensureMain("Save Players" , () -> { // Paper - Ensure main @@ -649,7 +678,7 @@ index 5c90dbdbaa4655458081fea0343a48674cfd3a55..50720000069a4914c11ef5c402a39c46 int numSaved = 0; long now = MinecraftServer.currentTick; for (int i = 0; i < this.players.size(); ++i) { -@@ -1260,7 +1260,7 @@ public abstract class PlayerList { +@@ -1281,7 +1281,7 @@ public abstract class PlayerList { } // Paper end } diff --git a/patches/server/0267-Remove-Mojang-Profiler.patch b/patches/server/0267-Remove-Mojang-Profiler.patch index f43de5adf..956a750d0 100644 --- a/patches/server/0267-Remove-Mojang-Profiler.patch +++ b/patches/server/0267-Remove-Mojang-Profiler.patch @@ -398,10 +398,10 @@ index a6a1b57b4327f5710e9ec5ebca35a47c11751d11..097ac55028d66ef9ab430ff5dd103db6 ++j; diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index ec3df1e04febcc9b2f3e47ff38f642d131f6a313..8f8f6b409ad28f0fe577f274abbd9e99112bdec4 100644 +index a428df846cc6f4b2168d0c3ffdba34b42734bea3..3771caa73b0b41428f3d629aca1f562df7bcfaff 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -466,20 +466,20 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -546,20 +546,20 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } protected void tick(BooleanSupplier shouldKeepTicking) { @@ -1037,10 +1037,10 @@ index 2e6e8eac987c4ef6b2dcd3de592d8a51d2b29792..863343a87fe34d72f04af89d75268b47 }; } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e98f3a8b9 100644 +index af06a919673f2e4f41d1cd712caa5b002d12ae71..5d46d35db653d58ccb850794282e8613b33e2393 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -809,7 +809,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -842,7 +842,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end public void baseTick() { @@ -1049,7 +1049,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking this.feetBlockState = null; if (this.isPassenger() && this.getVehicle().isRemoved()) { -@@ -870,7 +870,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -903,7 +903,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.firstTick = false; @@ -1058,7 +1058,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e } public void setSharedFlagOnFire(boolean onFire) { -@@ -1089,7 +1089,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1122,7 +1122,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } } @@ -1067,7 +1067,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) { movement = movement.multiply(this.stuckSpeedMultiplier); this.stuckSpeedMultiplier = Vec3.ZERO; -@@ -1098,7 +1098,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1131,7 +1131,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // Paper start - ignore movement changes while inactive. if (isTemporarilyActive && !(this instanceof ItemEntity || this instanceof net.minecraft.world.entity.vehicle.AbstractMinecart) && movement == getDeltaMovement() && movementType == MoverType.SELF) { setDeltaMovement(Vec3.ZERO); @@ -1076,7 +1076,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e return; } // Paper end -@@ -1119,8 +1119,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1152,8 +1152,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.setPos(this.getX() + vec3d1.x, this.getY() + vec3d1.y, this.getZ() + vec3d1.z); } @@ -1087,7 +1087,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e boolean flag = !Mth.equal(movement.x, vec3d1.x); boolean flag1 = !Mth.equal(movement.z, vec3d1.z); -@@ -1139,7 +1139,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1172,7 +1172,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.checkFallDamage(vec3d1.y, this.onGround(), iblockdata, blockposition); if (this.isRemoved()) { @@ -1096,7 +1096,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e } else { if (this.horizontalCollision) { Vec3 vec3d2 = this.getDeltaMovement(); -@@ -1277,7 +1277,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1310,7 +1310,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.setRemainingFireTicks(-this.getFireImmuneTicks()); } @@ -1105,7 +1105,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e } } // Paper start - detailed watchdog information -@@ -3125,7 +3125,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3137,7 +3137,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey); if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit @@ -1114,7 +1114,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e this.portalTime = i; // Paper start io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER); -@@ -3143,7 +3143,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3155,7 +3155,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } } // Paper // CraftBukkit end @@ -1123,7 +1123,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e } this.isInsidePortal = false; -@@ -3618,14 +3618,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3630,14 +3630,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } // Paper end if (this.level() instanceof ServerLevel && !this.isRemoved()) { @@ -1140,7 +1140,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit if (shapedetectorshape == null) { -@@ -3664,7 +3664,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3676,7 +3676,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.unRide(); // CraftBukkit end @@ -1149,7 +1149,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e // Paper start - Change lead drop timing to prevent dupe if (this instanceof Mob) { ((Mob) this).dropLeash(true, true); // Paper drop lead -@@ -3687,10 +3687,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3699,10 +3699,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.removeAfterChangingDimensions(); @@ -1163,7 +1163,7 @@ index 30365690fb8b0170636e712ccecb267e3ae53e0a..380f93a750c30c1ce0d0050c35eea19e } } else { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 86ea1fe2fec0edcb0ccecb9ddcb296fdbf2c6d88..b42121391e8af3e90f7064bec1687afaf1b78454 100644 +index b7d5c1342bf400bf0ee2a339b546bfed21189b56..a43859eeacf6743519f0076d005885c7c5331b1a 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -410,7 +410,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -1274,7 +1274,7 @@ index 86ea1fe2fec0edcb0ccecb9ddcb296fdbf2c6d88..b42121391e8af3e90f7064bec1687afa // Purpur start if (this.xo != this.getX() || this.yo != this.getY() || this.zo != this.getZ() || this.yRotO != this.getYRot() || this.xRotO != this.getXRot()) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 547279a379190c2339d6335e00faf7730be6d0f0..599094f231787db475882c38721b724a2e3bf41c 100644 +index 3a86686789ca77301e43bb9810f9b2b311d7763d..80c03bd4e5d7e20bb8a4e14af5620f5c57a05fd4 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -366,13 +366,13 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -1311,7 +1311,7 @@ index 547279a379190c2339d6335e00faf7730be6d0f0..599094f231787db475882c38721b724a } protected Vec3i getPickupReach() { -@@ -937,46 +937,46 @@ public abstract class Mob extends LivingEntity implements Targeting { +@@ -935,46 +935,46 @@ public abstract class Mob extends LivingEntity implements Targeting { return; } // Paper end @@ -1701,7 +1701,7 @@ index 250af1ce7a93c2d2897f35c68fae319c9ba7d55d..5e66c2bd3807619cadee5b7081d93d21 if ((this.tickCount + this.getId()) % 120 == 0) { Warden.applyDarknessAround(worldserver, this.position(), this, 20); diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index 9682676aa68cf5927facd60ef061006579c1f893..81bb48853acb34ad2f26da43b4d81620a9bfcc4f 100644 +index c889e5e0ba42eac860d25c76e5956471eb29be7e..02df0bf09f2ef91e4dafbdcea590b4634b2abf08 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -342,7 +342,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler diff --git a/patches/server/0270-Debug-Marker-API.patch b/patches/server/0270-Debug-Marker-API.patch index 9ae48d7ab..1c4c745e1 100644 --- a/patches/server/0270-Debug-Marker-API.patch +++ b/patches/server/0270-Debug-Marker-API.patch @@ -52,10 +52,10 @@ index 8215160bdba34c5eea7aed54ecf71b76abb49a45..0f1a915432d794a207e034c37c1b5eab @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 0afa519068a9d7bf5b16e201d9d768254094dc4f..3b153d96b08c5591b4a322a2bbd5986257d4609a 100644 +index 6d50cf1887e998793c3101ba4c22186bcd70f60c..c2e9e44f7399ba7236ab30bfd1ab7f8a69cef4b8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2305,6 +2305,42 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -2325,6 +2325,42 @@ public class CraftWorld extends CraftRegionAccessor implements World { public float getLocalDifficultyAt(Location location) { return getHandle().getCurrentDifficultyAt(io.papermc.paper.util.MCUtil.toBlockPosition(location)).getEffectiveDifficulty(); } @@ -99,10 +99,10 @@ index 0afa519068a9d7bf5b16e201d9d768254094dc4f..3b153d96b08c5591b4a322a2bbd59862 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 405894a48f4fdf48b6c887ffc5b01e205a424857..9f73cda9dc6531ce7b6276ca2399fb706a06e6af 100644 +index 51c6f9f27362a5da6b454f0eb515bb27df7ed2df..57e6d4bc3ad37d3eb66b5b4ccbc728a6dc64b00d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3349,5 +3349,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3339,5 +3339,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetIdleTimer() { getHandle().resetLastActionTime(); } diff --git a/patches/server/0274-Add-death-screen-API.patch b/patches/server/0274-Add-death-screen-API.patch index c52dd489a..d03c216f7 100644 --- a/patches/server/0274-Add-death-screen-API.patch +++ b/patches/server/0274-Add-death-screen-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add death screen API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9f73cda9dc6531ce7b6276ca2399fb706a06e6af..afb0229d0d895f20dcc8475430118ec83e0f12e9 100644 +index 57e6d4bc3ad37d3eb66b5b4ccbc728a6dc64b00d..692387ba5f313191ba324df666ea7086241153ee 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3387,5 +3387,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3377,5 +3377,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (this.getHandle().connection == null) return; this.getHandle().connection.send(new net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket(new net.minecraft.network.protocol.common.custom.GameTestClearMarkersDebugPayload())); } diff --git a/patches/server/0277-Add-item-packet-serialize-event.patch b/patches/server/0277-Add-item-packet-serialize-event.patch index da57a8d69..af30bfb2d 100644 --- a/patches/server/0277-Add-item-packet-serialize-event.patch +++ b/patches/server/0277-Add-item-packet-serialize-event.patch @@ -48,10 +48,10 @@ index 926ba816e7bccec0d1b34c2f8fc3300be84df4c2..b61c4d1ebb9c15a7ecd7bec5eb864851 while (iterator.hasNext()) { ServerLevel worldserver = (ServerLevel) iterator.next(); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a086680bde989523dbaa52ef7c403ad6520ced98..34bb21e6e2812068e9bf82776cda4a0c1a34a2df 100644 +index 6b194a360ef7b6f2bf3380e00cf2bbd5e2f43b06..bf74dd38b5d495f8d2ac6a2072fd95dbdd2f44e4 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3365,6 +3365,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3371,6 +3371,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } } diff --git a/patches/server/0286-Fire-Immunity-API.patch b/patches/server/0286-Fire-Immunity-API.patch index bd0a164ce..8e400970f 100644 --- a/patches/server/0286-Fire-Immunity-API.patch +++ b/patches/server/0286-Fire-Immunity-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fire Immunity API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b4255bf0fbf5599ae86cd372e5c9f1ad4fde00d4..317c22712357232ecd506911faaf79ef2bfcc3e6 100644 +index 5d46d35db653d58ccb850794282e8613b33e2393..1b58e4c4919d6e697533dd2f29f7c91ff5074987 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -417,6 +417,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -418,6 +418,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public boolean freezeLocked = false; // Paper - Freeze Tick Lock API public boolean collidingWithWorldBorder; // Paper public boolean fixedPose = false; // Paper @@ -16,7 +16,7 @@ index b4255bf0fbf5599ae86cd372e5c9f1ad4fde00d4..317c22712357232ecd506911faaf79ef public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -1779,7 +1780,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1812,7 +1813,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean fireImmune() { @@ -25,7 +25,7 @@ index b4255bf0fbf5599ae86cd372e5c9f1ad4fde00d4..317c22712357232ecd506911faaf79ef } public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) { -@@ -2453,6 +2454,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2486,6 +2487,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { nbt.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -37,7 +37,7 @@ index b4255bf0fbf5599ae86cd372e5c9f1ad4fde00d4..317c22712357232ecd506911faaf79ef return nbt; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2621,6 +2627,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2633,6 +2639,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { freezeLocked = nbt.getBoolean("Paper.FreezeLock"); } // Paper end @@ -50,7 +50,7 @@ index b4255bf0fbf5599ae86cd372e5c9f1ad4fde00d4..317c22712357232ecd506911faaf79ef } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index eb409ecf5bf06692038e9fe84af986092a7d7837..4482e9401be4af7b16991f37d319e90602af2227 100644 +index 38ff078ae636218d157d4c885fca19be5666b52a..a18bc175d0a6d55492edd02cdc407a52d58346c1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -223,6 +223,16 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -71,7 +71,7 @@ index eb409ecf5bf06692038e9fe84af986092a7d7837..4482e9401be4af7b16991f37d319e906 public boolean isInDaylight() { return getHandle().isSunBurnTick(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java -index c57f0ae102f1c9833ed7f93af4682caf490ec70c..26d59cdc87645b775441e013bb334c1ae6b9db55 100644 +index b2a28dea0c711331c351d38ac19944ef9f9299dc..f03a6fad31b240722a2b944d91282412cf79d884 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java @@ -173,9 +173,14 @@ public class CraftItem extends CraftEntity implements Item { diff --git a/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch b/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch index 2845ee4c4..1f4e95614 100644 --- a/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch +++ b/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn on nether ceiling damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 317c22712357232ecd506911faaf79ef2bfcc3e6..0e192a128c87124956fcec552362ab763bac5e55 100644 +index 1b58e4c4919d6e697533dd2f29f7c91ff5074987..d61d7ae47285d9779221011212f871c4ef7de830 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -884,6 +884,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -917,6 +917,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { && this.level.paperConfig().environment.netherCeilingVoidDamageHeight.test(v -> this.getY() >= v) && (!(this instanceof Player player) || !player.getAbilities().invulnerable))) { // Paper end