mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-06 23:22:10 -07:00
Fire EntityRemovedFromWorldEvent for all entities (Fixes #2282)
This commit is contained in:
@@ -114,7 +114,7 @@ index 3868572ae..ae77805f7 100644
|
|||||||
@Override
|
@Override
|
||||||
public void a(ChunkCoordIntPair chunkcoordintpair) {
|
public void a(ChunkCoordIntPair chunkcoordintpair) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index 3f853e987..4068b90a2 100644
|
index 891b89883..c9e018ac5 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -5,9 +5,18 @@ Subject: [PATCH] Entity AddTo/RemoveFrom World Events
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index 559dee777..bd5b16299 100644
|
index 559dee777..00b1f21f7 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
if (entity instanceof EntityInsentient) {
|
||||||
|
this.H.remove(((EntityInsentient) entity).getNavigation());
|
||||||
|
}
|
||||||
|
-
|
||||||
|
+ new com.destroystokyo.paper.event.entity.EntityRemoveFromWorldEvent(entity.getBukkitEntity()).callEvent(); // Paper - fire while valid
|
||||||
|
entity.valid = false; // CraftBukkit
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
entity.origin = entity.getBukkitEntity().getLocation();
|
entity.origin = entity.getBukkitEntity().getLocation();
|
||||||
}
|
}
|
||||||
@@ -16,12 +25,4 @@ index 559dee777..bd5b16299 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
|
||||||
if (this.tickingEntities) {
|
|
||||||
throw new IllegalStateException("Removing entity while ticking!");
|
|
||||||
} else {
|
|
||||||
+ new com.destroystokyo.paper.event.entity.EntityRemoveFromWorldEvent(entity.getBukkitEntity()).callEvent(); // Paper - fire while valid
|
|
||||||
this.removeEntityFromChunk(entity);
|
|
||||||
this.entitiesById.remove(entity.getId());
|
|
||||||
this.unregisterEntity(entity);
|
|
||||||
--
|
--
|
@@ -10,7 +10,7 @@ Adds an option to control the force mode of the particle.
|
|||||||
This adds a new Builder API which is much friendlier to use.
|
This adds a new Builder API which is much friendlier to use.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index 5d529fccf..a7a6e01d2 100644
|
index 6c02e7782..86470d9b9 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -63,7 +63,7 @@ index 701090c11..7d579c119 100644
|
|||||||
private float av;
|
private float av;
|
||||||
private float aw;
|
private float aw;
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index c31fd30f9..b42c54f88 100644
|
index 107a50011..9683b8708 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -69,7 +69,7 @@ index 2ceee79cf..27bf271bb 100644
|
|||||||
|
|
||||||
--this.lifeTicks;
|
--this.lifeTicks;
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index 2b9cc25c4..82e6defdd 100644
|
index 21d2965a1..c9fe8074e 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -5,7 +5,7 @@ Subject: [PATCH] Mark entities as being ticked when notifying navigation
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index 9c688d80f..164fcdc46 100644
|
index 7a575bc06..887775c99 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -67,7 +67,7 @@ index 07d150586..ebeb48f6d 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index bd5b16299..caa281087 100644
|
index 00b1f21f7..f9398af90 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
@@ -46,7 +46,7 @@ index 9e5cd22d7..049d702cb 100644
|
|||||||
double d5 = d1 - entityplayer.locY;
|
double d5 = d1 - entityplayer.locY;
|
||||||
double d6 = d2 - entityplayer.locZ;
|
double d6 = d2 - entityplayer.locZ;
|
||||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
index b42c54f88..2b9cc25c4 100644
|
index 9683b8708..21d2965a1 100644
|
||||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||||
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
@@ -0,0 +0,0 @@ public class WorldServer extends World {
|
||||||
|
Reference in New Issue
Block a user