mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-21 07:09:21 +08:00
459987d69f
improved the water code so that immunity wont trigger if the entity has the water pathfinder system active, so this improves support for all entities that know how to behave in water. Merged 2 EAR patches together, and removed an MCUtil method that doesnt have a purpose anymore
30 lines
1.3 KiB
Diff
30 lines
1.3 KiB
Diff
From 7ebee1455ff20e7424264ecce40e8dd4c8de973c Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Thu, 19 Jul 2018 01:23:00 -0400
|
|
Subject: [PATCH] Don't process despawn if entity is in a chunk scheduled for
|
|
unload
|
|
|
|
This won't happen anyways if the user has
|
|
"skip ticking for entities in chunks scheduled for unload" turned on,
|
|
but if they don't, protect from this instant killing the entity to
|
|
keep it vanilla in behavior
|
|
|
|
a player may teleport away, and trigger instant despawn
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
|
index 04a1218ed9..141db48f16 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
|
|
@@ -623,6 +623,8 @@ public abstract class EntityInsentient extends EntityLiving {
|
|
if (this.persistent) {
|
|
this.ticksFarFromPlayer = 0;
|
|
} else {
|
|
+ Chunk currentChunk = getChunkAtLocation(); // Paper
|
|
+ if (currentChunk != null && currentChunk.scheduledForUnload != null) return; // Paper
|
|
EntityHuman entityhuman = this.world.findNearbyPlayer(this, -1.0D);
|
|
|
|
if (entityhuman != null && entityhuman.affectsSpawning) { // Paper - Affects Spawning API
|
|
--
|
|
2.19.0
|
|
|