mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-24 03:25:15 +01:00
[Bleeding] Only do unload-all on tick when last player leaves. Fixes BUKKIT-1060
This commit is contained in:
parent
0ba2d285f0
commit
1e06e150b6
@ -12,6 +12,7 @@ public class PlayerManager {
|
||||
private int e;
|
||||
private int f;
|
||||
private final int[][] g = new int[][] { { 1, 0}, { 0, 1}, { -1, 0}, { 0, -1}};
|
||||
private boolean wasNotEmpty; // CraftBukkit
|
||||
|
||||
public PlayerManager(MinecraftServer minecraftserver, int i, int j) {
|
||||
if (j > 15) {
|
||||
@ -36,13 +37,19 @@ public class PlayerManager {
|
||||
|
||||
this.c.clear();
|
||||
if (this.managedPlayers.isEmpty()) {
|
||||
if (!wasNotEmpty) return; // CraftBukkit - only do unload when we go from non-empty to empty
|
||||
WorldServer worldserver = this.server.getWorldServer(this.e);
|
||||
WorldProvider worldprovider = worldserver.worldProvider;
|
||||
|
||||
if (!worldprovider.c()) {
|
||||
worldserver.chunkProviderServer.c();
|
||||
}
|
||||
// CraftBukkit start
|
||||
wasNotEmpty = false;
|
||||
} else {
|
||||
wasNotEmpty = true;
|
||||
}
|
||||
// CraftBukkit end
|
||||
}
|
||||
|
||||
private PlayerInstance a(int i, int j, boolean flag) {
|
||||
|
Loading…
Reference in New Issue
Block a user