Remove entities from per-chunk list (Fixes #2918)

This commit is contained in:
Shane Freeder
2020-01-31 16:09:56 +00:00
parent 0218e094e0
commit 7951cfe36a
12 changed files with 46 additions and 39 deletions

View File

@@ -9,7 +9,7 @@ This should hopefully avoid duplicate entities ever being created
if the entity was to end up in 2 different chunk slices
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 28e5105ffe..2004f7fbe1 100644
index 68cde3356..1d47e4737 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -0,0 +0,0 @@ public class Chunk implements IChunkAccess {
@@ -47,7 +47,7 @@ index 28e5105ffe..2004f7fbe1 100644
}
@@ -0,0 +0,0 @@ public class Chunk implements IChunkAccess {
}
// Paper start
if (entity.currentChunk != null && entity.currentChunk.get() == this) entity.setCurrentChunk(null);
+ if (entitySlices[i] == entity.entitySlice) {
@@ -57,7 +57,7 @@ index 28e5105ffe..2004f7fbe1 100644
return;
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 8e23f336a8..e761f71487 100644
index fcc47182c..09ec144eb 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke