diff --git a/patches/server/Entity-AddTo-RemoveFrom-World-Events.patch b/patches/server/Entity-AddTo-RemoveFrom-World-Events.patch index a88e1cd3d6..3640e92db3 100644 --- a/patches/server/Entity-AddTo-RemoveFrom-World-Events.patch +++ b/patches/server/Entity-AddTo-RemoveFrom-World-Events.patch @@ -15,7 +15,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + new com.destroystokyo.paper.event.entity.EntityAddToWorldEvent(entity.getBukkitEntity()).callEvent(); // Paper - fire while valid } - } + public void onTrackingEnd(Entity entity) { @@ -0,0 +0,0 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl } diff --git a/patches/server/Entity-Origin-API.patch b/patches/server/Entity-Origin-API.patch index 2d18fb5642..4a8317e2a4 100644 --- a/patches/server/Entity-Origin-API.patch +++ b/patches/server/Entity-Origin-API.patch @@ -9,9 +9,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -0,0 +0,0 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl - entityplayer.connection.send(new ClientboundBlockDestructionPacket(entityId, pos, progress)); - } } + + entity.valid = true; // CraftBukkit + // Paper start - Set origin location when the entity is being added to the world + if (entity.getOriginVector() == null) { + entity.setOrigin(entity.getBukkitEntity().getLocation()); @@ -19,7 +19,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + // Paper end } - } + 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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/patches/server/Prevent-Double-PlayerChunkMap-adds-crashing-server.patch b/patches/server/Prevent-Double-PlayerChunkMap-adds-crashing-server.patch index 6b1ef0b75d..c18b7bf7d2 100644 --- a/patches/server/Prevent-Double-PlayerChunkMap-adds-crashing-server.patch +++ b/patches/server/Prevent-Double-PlayerChunkMap-adds-crashing-server.patch @@ -43,6 +43,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 entity.valid = true; // CraftBukkit + ServerLevel.this.getChunkSource().addEntity(entity); - } - - public void onTrackingEnd(Entity entity) { + // Paper start - Set origin location when the entity is being added to the world + if (entity.getOriginVector() == null) { + entity.setOrigin(entity.getBukkitEntity().getLocation());