Don't load chunks when attempting to unload a chunk
Big Brain Logic
This commit is contained in:
parent
38c626229d
commit
9ab693487f
|
@ -0,0 +1,32 @@
|
||||||
|
From 26c14df6c071265aaf95a7cb16fdecc0fb8caddc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Aikar <aikar@aikar.co>
|
||||||
|
Date: Wed, 8 Apr 2020 21:07:08 -0400
|
||||||
|
Subject: [PATCH] Don't load chunks when attempting to unload a chunk
|
||||||
|
|
||||||
|
Big Brain Logic
|
||||||
|
|
||||||
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
|
index 630d6470a4..1fbb1344fc 100644
|
||||||
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||||
|
@@ -471,7 +471,7 @@ public class CraftWorld implements World {
|
||||||
|
@Override
|
||||||
|
public boolean unloadChunkRequest(int x, int z) {
|
||||||
|
org.spigotmc.AsyncCatcher.catchOp("chunk unload"); // Spigot
|
||||||
|
- net.minecraft.server.IChunkAccess chunk = world.getChunkProvider().getChunkAt(x, z, ChunkStatus.FULL, false);
|
||||||
|
+ net.minecraft.server.IChunkAccess chunk = world.getChunkProvider().getChunkAtIfLoadedImmediately(x, z); // Paper
|
||||||
|
if (chunk != null) {
|
||||||
|
world.getChunkProvider().removeTicket(TicketType.PLUGIN, chunk.getPos(), 1, Unit.INSTANCE);
|
||||||
|
}
|
||||||
|
@@ -481,7 +481,7 @@ public class CraftWorld implements World {
|
||||||
|
|
||||||
|
private boolean unloadChunk0(int x, int z, boolean save) {
|
||||||
|
org.spigotmc.AsyncCatcher.catchOp("chunk unload"); // Spigot
|
||||||
|
- net.minecraft.server.Chunk chunk = (net.minecraft.server.Chunk) world.getChunkProvider().getChunkAt(x, z, ChunkStatus.FULL, false);
|
||||||
|
+ net.minecraft.server.Chunk chunk = world.getChunkProvider().getChunkAtIfLoadedImmediately(x, z); // Paper
|
||||||
|
if (chunk == null) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.25.1
|
||||||
|
|
Loading…
Reference in New Issue