From 47605b8e6035260be98c8650a736306a0a39258d Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Mon, 21 Jun 2021 10:04:18 +0100 Subject: [PATCH] Try to prevent an NPE from origin data (Fixes #5905) --- patches/server/0025-Entity-Origin-API.patch | 8 +++++--- .../0050-Add-configurable-portal-search-radius.patch | 4 ++-- ...able-Scoreboards-for-non-players-by-default.patch | 4 ++-- ...Don-t-allow-entities-to-ride-themselves-572.patch | 4 ++-- patches/server/0147-Entity-fromMobSpawner.patch | 4 ++-- ...225-add-more-information-to-Entity.toString.patch | 4 ++-- ...-force-entity-dismount-during-teleportation.patch | 12 ++++++------ .../server/0316-Entity-getEntitySpawnReason.patch | 4 ++-- ...0371-Fix-items-vanishing-through-end-portal.patch | 4 ++-- ...d-option-to-nerf-pigmen-from-nether-portals.patch | 4 ++-- ...ous-item-duplication-issues-and-teleport-is.patch | 12 ++++++------ ...0467-Ensure-Entity-AABB-s-are-never-invalid.patch | 4 ++-- ...e-Entity-Counter-to-allow-plugins-to-use-va.patch | 4 ++-- patches/server/0530-Entity-isTicking.patch | 4 ++-- ...on-adding-a-passenger-in-CreatureSpawnEvent.patch | 4 ++-- .../server/0569-MC-4-Fix-item-position-desync.patch | 4 ++-- .../server/0706-Fix-dangerous-end-portal-logic.patch | 4 ++-- 17 files changed, 45 insertions(+), 43 deletions(-) diff --git a/patches/server/0025-Entity-Origin-API.patch b/patches/server/0025-Entity-Origin-API.patch index 227424152b..c00b651317 100644 --- a/patches/server/0025-Entity-Origin-API.patch +++ b/patches/server/0025-Entity-Origin-API.patch @@ -21,7 +21,7 @@ index 5c5cfc31ced6695af7b1dd06cb867274fa38d85f..a127467fdd25b7513c727e1a0634f850 public void onTrackingEnd(Entity entity) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 018792503e5d18470ad17b9f4b4524d5dfba31e9..5d4d5628e5c0d82301f988691eac363758af6a4b 100644 +index 018792503e5d18470ad17b9f4b4524d5dfba31e9..fcf7113ce8e14ce5e8ae75d8400c6b66e752c4b4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -280,6 +280,27 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @@ -65,16 +65,18 @@ index 018792503e5d18470ad17b9f4b4524d5dfba31e9..5d4d5628e5c0d82301f988691eac3637 return nbt; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -1938,6 +1965,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -1938,6 +1965,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } // CraftBukkit end + // Paper start - Restore the entity's origin location + ListTag originTag = nbt.getList("Paper.Origin", 6); + if (!originTag.isEmpty()) { -+ UUID originWorld = level.getWorld().getUID(); ++ UUID originWorld = null; + if (nbt.contains("Paper.OriginWorld")) { + originWorld = nbt.getUUID("Paper.OriginWorld"); ++ } else if (this.level != null) { ++ originWorld = this.level.getWorld().getUID(); + } + this.originWorld = originWorld; + origin = new org.bukkit.util.Vector(originTag.getDouble(0), originTag.getDouble(1), originTag.getDouble(2)); diff --git a/patches/server/0050-Add-configurable-portal-search-radius.patch b/patches/server/0050-Add-configurable-portal-search-radius.patch index 8f5c227f91..deed5a4ac4 100644 --- a/patches/server/0050-Add-configurable-portal-search-radius.patch +++ b/patches/server/0050-Add-configurable-portal-search-radius.patch @@ -23,10 +23,10 @@ index 416a6760883cb40367535c7c5acd779742bb8af5..670efbe53241a0ae32d618c83da601cc + } } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 43ebe01b6b19870cdc130292fe69e6943fc745df..c6f1ca72cd368925051fcfc46c524198c7693d67 100644 +index 0ad85e12ec6f7b98f4c00628ca9504dbbbf65c19..31974112440f571ccb4e893dacd64b1c45a9aa29 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2895,7 +2895,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2897,7 +2897,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n double d4 = DimensionType.getTeleportationScale(this.level.dimensionType(), destination.dimensionType()); BlockPos blockposition = new BlockPos(Mth.clamp(this.getX() * d4, d0, d2), this.getY(), Mth.clamp(this.getZ() * d4, d1, d3)); // CraftBukkit start diff --git a/patches/server/0055-Disable-Scoreboards-for-non-players-by-default.patch b/patches/server/0055-Disable-Scoreboards-for-non-players-by-default.patch index e64081170d..930e9cf67e 100644 --- a/patches/server/0055-Disable-Scoreboards-for-non-players-by-default.patch +++ b/patches/server/0055-Disable-Scoreboards-for-non-players-by-default.patch @@ -25,10 +25,10 @@ index abbbe1786eb68af02f9d39650aad730ac44aac8a..3ac2ac3db9b1c271b3c21930bb137166 + } } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c6f1ca72cd368925051fcfc46c524198c7693d67..4b2240329e86f190d396418cc7c585ee49247602 100644 +index 31974112440f571ccb4e893dacd64b1c45a9aa29..3c8832df810f585ef6ff353d5a73d86d14809a8d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2544,6 +2544,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2546,6 +2546,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @Nullable public Team getTeam() { diff --git a/patches/server/0128-Don-t-allow-entities-to-ride-themselves-572.patch b/patches/server/0128-Don-t-allow-entities-to-ride-themselves-572.patch index dca1f515d0..40072bfdf1 100644 --- a/patches/server/0128-Don-t-allow-entities-to-ride-themselves-572.patch +++ b/patches/server/0128-Don-t-allow-entities-to-ride-themselves-572.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't allow entities to ride themselves - #572 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 27a6caea54ddd9efe3fc8da19877bee7fa7f4e3e..c9bb5427d68b1a4717e3f8bf584c40820ef0a4f0 100644 +index 83993fd6ea3702bb30d75f40e1a66f27ab2007b9..cd307f4eb94285c2687588ae53c1ed0382238332 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2239,6 +2239,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2241,6 +2241,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } protected boolean addPassenger(Entity entity) { // CraftBukkit diff --git a/patches/server/0147-Entity-fromMobSpawner.patch b/patches/server/0147-Entity-fromMobSpawner.patch index 09af43f113..e94792b966 100644 --- a/patches/server/0147-Entity-fromMobSpawner.patch +++ b/patches/server/0147-Entity-fromMobSpawner.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Entity#fromMobSpawner() diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 267ecf9c5a6c9e696cb2a5c8be13bbc4ab14cd41..a6c26bd5a23799659db03fc2db55009391936f2a 100644 +index 5f43d3d2742bffe743ce02da58059e3b6f17f160..855e48c9a1d9632bef831aa2fca519c782fb09c5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -321,6 +321,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @@ -27,7 +27,7 @@ index 267ecf9c5a6c9e696cb2a5c8be13bbc4ab14cd41..a6c26bd5a23799659db03fc2db550093 // Paper end return nbt; } catch (Throwable throwable) { -@@ -1996,6 +2001,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -1998,6 +2003,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n this.originWorld = originWorld; origin = new org.bukkit.util.Vector(originTag.getDouble(0), originTag.getDouble(1), originTag.getDouble(2)); } diff --git a/patches/server/0225-add-more-information-to-Entity.toString.patch b/patches/server/0225-add-more-information-to-Entity.toString.patch index fbb730edb0..5314e611b6 100644 --- a/patches/server/0225-add-more-information-to-Entity.toString.patch +++ b/patches/server/0225-add-more-information-to-Entity.toString.patch @@ -6,10 +6,10 @@ Subject: [PATCH] add more information to Entity.toString() UUID, ticks lived, valid, dead diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index a6c26bd5a23799659db03fc2db55009391936f2a..8880ff82691bef78b85d226d133d216f80fff832 100644 +index 855e48c9a1d9632bef831aa2fca519c782fb09c5..9de0c954dd6cc300e8cc8792e491ec5031a8b33c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2804,7 +2804,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2806,7 +2806,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } public String toString() { diff --git a/patches/server/0297-force-entity-dismount-during-teleportation.patch b/patches/server/0297-force-entity-dismount-during-teleportation.patch index ac0063eadd..e21fb04205 100644 --- a/patches/server/0297-force-entity-dismount-during-teleportation.patch +++ b/patches/server/0297-force-entity-dismount-during-teleportation.patch @@ -20,7 +20,7 @@ this is going to be the best soultion all around. Improvements/suggestions welcome! diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 085bdf17a0e844ff813bf1107b686b33943659ba..e9dc0288ea1bb7645622ac6d9fc7567b86734ca6 100644 +index 8e896afe43307a46ad8375ff8b35b107d2524502..eb70747ec90770752a45ddf28cf207e2281d3a37 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1299,11 +1299,13 @@ public class ServerPlayer extends Player { @@ -41,10 +41,10 @@ index 085bdf17a0e844ff813bf1107b686b33943659ba..e9dc0288ea1bb7645622ac6d9fc7567b if (entity1 != entity && this.connection != null) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6ec242804b8a52216cf4148eed7d33109021c4de..2f9e6781e501a76994edc208a7981030d8fb4ea2 100644 +index c80781e24f56138fc68c926ea741000128e26584..d99c283aa25f2d0f4e8478b257299efd30437d09 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2234,12 +2234,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2236,12 +2236,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } @@ -62,7 +62,7 @@ index 6ec242804b8a52216cf4148eed7d33109021c4de..2f9e6781e501a76994edc208a7981030 } } -@@ -2302,7 +2305,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2304,7 +2307,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n return true; // CraftBukkit } @@ -74,7 +74,7 @@ index 6ec242804b8a52216cf4148eed7d33109021c4de..2f9e6781e501a76994edc208a7981030 if (entity.getVehicle() == this) { throw new IllegalStateException("Use x.stopRiding(y), not y.removePassenger(x)"); } else { -@@ -2312,7 +2318,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2314,7 +2320,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n if (this.getBukkitEntity() instanceof Vehicle && entity.getBukkitEntity() instanceof LivingEntity) { VehicleExitEvent event = new VehicleExitEvent( (Vehicle) this.getBukkitEntity(), @@ -83,7 +83,7 @@ index 6ec242804b8a52216cf4148eed7d33109021c4de..2f9e6781e501a76994edc208a7981030 ); // Suppress during worldgen if (this.valid) { -@@ -2326,7 +2332,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2328,7 +2334,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } // CraftBukkit end // Spigot start diff --git a/patches/server/0316-Entity-getEntitySpawnReason.patch b/patches/server/0316-Entity-getEntitySpawnReason.patch index 79c517fe3c..4ae0f305cd 100644 --- a/patches/server/0316-Entity-getEntitySpawnReason.patch +++ b/patches/server/0316-Entity-getEntitySpawnReason.patch @@ -35,7 +35,7 @@ index f1e3ea6b023119adc69eb0b414994bc7f9f3ed4a..42b7568d1c3ce145b2816202e6f5c8ca }); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2f9e6781e501a76994edc208a7981030d8fb4ea2..ec2cc6bcfe10896f0ae439f26659a7d14e050f0f 100644 +index d99c283aa25f2d0f4e8478b257299efd30437d09..b11e5b8082073a28adf7a4fb80372cf2e020c7a8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -67,6 +67,8 @@ import net.minecraft.world.InteractionHand; @@ -65,7 +65,7 @@ index 2f9e6781e501a76994edc208a7981030d8fb4ea2..ec2cc6bcfe10896f0ae439f26659a7d1 // Save entity's from mob spawner status if (spawnedViaMobSpawner) { nbt.putBoolean("Paper.FromMobSpawner", true); -@@ -2005,6 +2011,26 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2007,6 +2013,26 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status diff --git a/patches/server/0371-Fix-items-vanishing-through-end-portal.patch b/patches/server/0371-Fix-items-vanishing-through-end-portal.patch index 860140f63d..e416a7f233 100644 --- a/patches/server/0371-Fix-items-vanishing-through-end-portal.patch +++ b/patches/server/0371-Fix-items-vanishing-through-end-portal.patch @@ -13,10 +13,10 @@ Quickly loading the exact world spawn chunk before searching the heightmap resolves the issue without having to load all spawn chunks. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c64155d9da55db0745a8f37de01f8b28739692c2..80bf2f5e7390bf586b0eab4bac796d32158e1f3f 100644 +index 9eaa5abc34b96e96fe14efc182fe2bca5f60e75d..a8074530b038268ac4a8f636d59485cd8cad95d1 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3002,6 +3002,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3004,6 +3004,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n BlockPos blockposition1; if (flag1) { diff --git a/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch b/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch index 81b75ba6ad..673ab33c89 100644 --- a/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch +++ b/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch @@ -21,7 +21,7 @@ index f2e4939c8144b9bc7441130302ab3e2358c42063..3d14a7dbcc6bc46141596a7e04f790bf private void lightQueueSize() { lightQueueSize = getInt("light-queue-size", lightQueueSize); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 80bf2f5e7390bf586b0eab4bac796d32158e1f3f..d7a4fd6ce9d35500a7c6a21b456f5f0a075e43e8 100644 +index a8074530b038268ac4a8f636d59485cd8cad95d1..ae56d308a6915ab8c43e85efb64a95a94c37c31d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -328,6 +328,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @@ -42,7 +42,7 @@ index 80bf2f5e7390bf586b0eab4bac796d32158e1f3f..d7a4fd6ce9d35500a7c6a21b456f5f0a // Paper end return nbt; } catch (Throwable throwable) { -@@ -2020,6 +2024,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2022,6 +2026,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status diff --git a/patches/server/0424-Fix-numerous-item-duplication-issues-and-teleport-is.patch b/patches/server/0424-Fix-numerous-item-duplication-issues-and-teleport-is.patch index f0009be4f8..f112f68081 100644 --- a/patches/server/0424-Fix-numerous-item-duplication-issues-and-teleport-is.patch +++ b/patches/server/0424-Fix-numerous-item-duplication-issues-and-teleport-is.patch @@ -16,10 +16,10 @@ So even if something NEW comes up, it would be impossible to drop the same item twice because the source was destroyed. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f08c8212f7a07fd10da127c65d4cea76921585e4..1307a37848fcf98cfd7ed19a7b746ba57ac88411 100644 +index 9175b9a85cb294c1b911f529d9a2432e0e508323..c677e9bcfd673dc645a0288334489dfd5dd84a1d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2146,11 +2146,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2148,11 +2148,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } else { // CraftBukkit start - Capture drops for death event if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { @@ -34,7 +34,7 @@ index f08c8212f7a07fd10da127c65d4cea76921585e4..1307a37848fcf98cfd7ed19a7b746ba5 entityitem.setDefaultPickUpDelay(); // CraftBukkit start -@@ -2892,6 +2893,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2894,6 +2895,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @Nullable public Entity teleportTo(ServerLevel worldserver, BlockPos location) { // CraftBukkit end @@ -47,7 +47,7 @@ index f08c8212f7a07fd10da127c65d4cea76921585e4..1307a37848fcf98cfd7ed19a7b746ba5 if (this.level instanceof ServerLevel && !this.isRemoved()) { this.level.getProfiler().push("changeDimension"); // CraftBukkit start -@@ -2912,6 +2919,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2914,6 +2921,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n // CraftBukkit end this.level.getProfiler().popPush("reloading"); @@ -59,7 +59,7 @@ index f08c8212f7a07fd10da127c65d4cea76921585e4..1307a37848fcf98cfd7ed19a7b746ba5 Entity entity = this.getType().create((Level) worldserver); if (entity != null) { -@@ -2925,10 +2937,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2927,10 +2939,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n // CraftBukkit start - Forward the CraftEntity to the new entity this.getBukkitEntity().setHandle(entity); entity.bukkitEntity = this.getBukkitEntity(); @@ -70,7 +70,7 @@ index f08c8212f7a07fd10da127c65d4cea76921585e4..1307a37848fcf98cfd7ed19a7b746ba5 // CraftBukkit end } -@@ -3053,7 +3061,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3055,7 +3063,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } public boolean canChangeDimensions() { diff --git a/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch b/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch index b2e65a5bbd..ba222b6d63 100644 --- a/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch +++ b/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ensure Entity AABB's are never invalid diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 40fe3766bfe06fe15d258d3fc88fb179d2bb5d05..dcc128fdf45b23fe07a20136f498ead2ac6ee4a7 100644 +index 48cd0b772ef3097418adc31f7c6747311e1dc6a2..bf561c813d62bafe96e607f7377eeff4ecb1de4d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -560,7 +560,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @@ -17,7 +17,7 @@ index 40fe3766bfe06fe15d258d3fc88fb179d2bb5d05..dcc128fdf45b23fe07a20136f498ead2 } protected AABB makeBoundingBox() { -@@ -3735,6 +3735,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3737,6 +3737,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } public final void setPosRaw(double x, double y, double z) { diff --git a/patches/server/0528-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch b/patches/server/0528-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch index 20f3d13f13..b6a282dcde 100644 --- a/patches/server/0528-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch +++ b/patches/server/0528-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3bf989fe94d53088ae058c19adde652267a231d0..f4eb377c0a09dcb24d2d7e49aa0bc18c5817f073 100644 +index 4ff1b026d71dbaaabc4026e8b6221a13f0c4438c..99d7be13ad0037eb2b8d7b8d1dbbc057727e3424 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3922,4 +3922,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3924,4 +3924,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n void accept(Entity entity, double x, double y, double z); } diff --git a/patches/server/0530-Entity-isTicking.patch b/patches/server/0530-Entity-isTicking.patch index 6c3023fa5a..29f61f2009 100644 --- a/patches/server/0530-Entity-isTicking.patch +++ b/patches/server/0530-Entity-isTicking.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Entity#isTicking diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f4eb377c0a09dcb24d2d7e49aa0bc18c5817f073..4ba0b06229f98a690162d486befee8fb65e23699 100644 +index 99d7be13ad0037eb2b8d7b8d1dbbc057727e3424..b659b497f42c01df825d27a9cf4a581edbfb36e7 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -52,6 +52,7 @@ import net.minecraft.resources.ResourceKey; @@ -16,7 +16,7 @@ index f4eb377c0a09dcb24d2d7e49aa0bc18c5817f073..4ba0b06229f98a690162d486befee8fb import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.TicketType; -@@ -3927,5 +3928,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3929,5 +3930,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n public static int nextEntityId() { return ENTITY_COUNTER.incrementAndGet(); } diff --git a/patches/server/0532-Fix-CME-on-adding-a-passenger-in-CreatureSpawnEvent.patch b/patches/server/0532-Fix-CME-on-adding-a-passenger-in-CreatureSpawnEvent.patch index be2c3cfe66..55e39fadde 100644 --- a/patches/server/0532-Fix-CME-on-adding-a-passenger-in-CreatureSpawnEvent.patch +++ b/patches/server/0532-Fix-CME-on-adding-a-passenger-in-CreatureSpawnEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix CME on adding a passenger in CreatureSpawnEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4ba0b06229f98a690162d486befee8fb65e23699..bf9813eee5865e7363fce3c015a3b8e3e637ce75 100644 +index b659b497f42c01df825d27a9cf4a581edbfb36e7..5ec142705d5f56f49ad58ef7933747e9b3f0b90b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3431,7 +3431,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3433,7 +3433,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } private Stream getIndirectPassengersStream() { diff --git a/patches/server/0569-MC-4-Fix-item-position-desync.patch b/patches/server/0569-MC-4-Fix-item-position-desync.patch index 1f7bf6b5a7..d5c20baf0b 100644 --- a/patches/server/0569-MC-4-Fix-item-position-desync.patch +++ b/patches/server/0569-MC-4-Fix-item-position-desync.patch @@ -41,10 +41,10 @@ index b30c08bfb8c55161543a4ef09f2e462e0a1fe4ae..ec93f5300cc7d423ec0d292f0f8443f9 public Vec3 updateEntityPosition(Vec3 orig) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 408d0f51353c745cbdc5c314dd25fa0c8a13441c..879cadfd1fe96059e621c625adef1673a41ac5dc 100644 +index cc521eb8bdf1ffb4bfd9524713a994b322bdce78..55ccceec596bf5c8f9b7108595578352c0a9af09 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3749,6 +3749,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -3751,6 +3751,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } public final void setPosRaw(double x, double y, double z) { diff --git a/patches/server/0706-Fix-dangerous-end-portal-logic.patch b/patches/server/0706-Fix-dangerous-end-portal-logic.patch index 9322b5a1c8..482c146e5a 100644 --- a/patches/server/0706-Fix-dangerous-end-portal-logic.patch +++ b/patches/server/0706-Fix-dangerous-end-portal-logic.patch @@ -11,7 +11,7 @@ Move the tick logic into the post tick, where portaling was designed to happen in the first place. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c696beff4211266e93026464ba9af5a5d4342e4f..af90013d48e2dd827e045e2fc0f7f5be0dbaa33f 100644 +index e54d8b088e953ae7dd6aa050593b56b7ed80d016..7e8c3073993cd4b143049882779427d4d104c6f3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -361,6 +361,37 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n @@ -52,7 +52,7 @@ index c696beff4211266e93026464ba9af5a5d4342e4f..af90013d48e2dd827e045e2fc0f7f5be public Entity(EntityType type, Level world) { this.id = Entity.ENTITY_COUNTER.incrementAndGet(); this.passengers = ImmutableList.of(); -@@ -2506,6 +2537,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n +@@ -2508,6 +2539,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n } this.processPortalCooldown();