Use entity.dead instead of entity.die()

Fixes #3096
This commit is contained in:
Aikar
2020-04-04 21:09:27 -04:00
parent 89718e929a
commit 9bd9caa6ae
5 changed files with 14 additions and 9 deletions

View File

@@ -81,7 +81,7 @@ index 4ba72275b9..572679e4d1 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index c464d69623..3882e5b2a6 100644
index a51de83cf5..c263a8250d 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 {
@@ -105,7 +105,7 @@ index 1a20f105b5..d522d7238d 100644
this.uniqueID = uuid;
this.am = this.uniqueID.toString();
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index f640d2ac76..5763538905 100644
index f640d2ac76..863c47b761 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@
@@ -135,7 +135,11 @@ index f640d2ac76..5763538905 100644
import java.util.concurrent.CompletionException;
import java.util.concurrent.Executor;
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
entity.die();
// CraftBukkit start - these are spawned serialized (DefinedStructure) and we don't call an add event below at the moment due to ordering complexities
boolean needsRemoval = false;
if (chunk.needsDecoration && !this.world.getServer().getServer().getSpawnNPCs() && entity instanceof NPC) {
- entity.die();
+ entity.dead = true; // Paper
needsRemoval = true;
}
-
@@ -166,7 +170,7 @@ index f640d2ac76..5763538905 100644
+ && entity.getBukkitEntity().getLocation().distance(other.getBukkitEntity().getLocation()) < world.paperConfig.duplicateUUIDDeleteRange
+ ) {
+ if (World.DEBUG_ENTITIES) LOGGER.warn("[DUPE-UUID] Duplicate UUID found used by " + other + ", deleted entity " + entity + " because it was near the duplicate and likely an actual duplicate. See https://github.com/PaperMC/Paper/issues/1223 for discussion on what this is about.");
+ entity.die();
+ entity.dead = true;
+ return;
+ }
+ if (other != null && !other.dead) {
@@ -178,7 +182,7 @@ index f640d2ac76..5763538905 100644
+ }
+ case DELETE: {
+ if (World.DEBUG_ENTITIES) LOGGER.warn("[DUPE-UUID] Duplicate UUID found used by " + other + ", deleted entity " + entity + ". See https://github.com/PaperMC/Paper/issues/1223 for discussion on what this is about.");
+ entity.die();
+ entity.dead = true;
+ break;
+ }
+ default: