Update upstream and rebuild
Dieser Commit ist enthalten in:
Ursprung
94fd16aa4a
Commit
bce92696c6
@ -1,17 +1,17 @@
|
||||
From 4523f4c601e523971012b1a5b50c40704f74fdc6 Mon Sep 17 00:00:00 2001
|
||||
From 953114a5206b9fffd1d9b46aae12c9a520e53add Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Wed, 2 Mar 2016 23:55:20 -0600
|
||||
Subject: [PATCH] Don't create a chunk just to unload it
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 83e3003..3f2d83a 100644
|
||||
index 02ff463..dfa7e73 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -205,7 +205,12 @@ public class CraftWorld implements World {
|
||||
return false;
|
||||
@@ -209,7 +209,13 @@ public class CraftWorld implements World {
|
||||
}
|
||||
|
||||
private boolean unloadChunk0(int x, int z, boolean save, boolean safe) {
|
||||
- net.minecraft.server.Chunk chunk = world.getChunkProviderServer().getChunkAt(x, z);
|
||||
+ // Paper start - Don't create a chunk just to unload it
|
||||
+ net.minecraft.server.Chunk chunk = world.getChunkProviderServer().getChunkIfLoaded(x, z);
|
||||
@ -19,9 +19,10 @@ index 83e3003..3f2d83a 100644
|
||||
+ return false;
|
||||
+ }
|
||||
+ // Paper end
|
||||
+
|
||||
if (chunk.mustSave) { // If chunk had previously been queued to save, must do save to avoid loss of that data
|
||||
save = true;
|
||||
}
|
||||
--
|
||||
2.8.0
|
||||
2.8.0.windows.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c9723ad854bc3dc21412e28c3a7914e9a97768fd Mon Sep 17 00:00:00 2001
|
||||
From 0dce8356b0edff838a19e1b615fa18366af30563 Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Fri, 18 Mar 2016 17:57:25 -0400
|
||||
Subject: [PATCH] Optimize Chunk Unload Queue
|
||||
@ -251,7 +251,7 @@ index 63e118d..721bcae 100644
|
||||
i += server.getChunkAt( x, z ).entityCount.get( oClass );
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index d658fa2..0a3cfbc 100644
|
||||
index f76ff72..c1cb133 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -159,9 +159,15 @@ public abstract class World implements IBlockAccess {
|
||||
@ -272,19 +272,19 @@ index d658fa2..0a3cfbc 100644
|
||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig( worlddata.getName() ); // Spigot
|
||||
this.paperConfig = new com.destroystokyo.paper.PaperWorldConfig(worlddata.getName(), this.spigotConfig); // Paper
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 3f2d83a..c81dfee 100644
|
||||
index dfa7e73..922ebaf 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -206,7 +206,7 @@ public class CraftWorld implements World {
|
||||
}
|
||||
@@ -210,7 +210,7 @@ public class CraftWorld implements World {
|
||||
|
||||
private boolean unloadChunk0(int x, int z, boolean save, boolean safe) {
|
||||
// Paper start - Don't create a chunk just to unload it
|
||||
- net.minecraft.server.Chunk chunk = world.getChunkProviderServer().getChunkIfLoaded(x, z);
|
||||
+ net.minecraft.server.Chunk chunk = world.getChunkProviderServer().getChunkIfActive(x, z); // Paper
|
||||
if (chunk == null) {
|
||||
return false;
|
||||
}
|
||||
@@ -232,7 +232,7 @@ public class CraftWorld implements World {
|
||||
@@ -237,7 +237,7 @@ public class CraftWorld implements World {
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -293,7 +293,7 @@ index 3f2d83a..c81dfee 100644
|
||||
if (neighbor != null) {
|
||||
neighbor.setNeighborUnloaded(-xx, -zz);
|
||||
chunk.setNeighborUnloaded(xx, zz);
|
||||
@@ -294,6 +294,7 @@ public class CraftWorld implements World {
|
||||
@@ -299,6 +299,7 @@ public class CraftWorld implements World {
|
||||
// Use the default variant of loadChunk when generate == true.
|
||||
return world.getChunkProviderServer().getChunkAt(x, z) != null;
|
||||
}
|
||||
@ -301,7 +301,7 @@ index 3f2d83a..c81dfee 100644
|
||||
|
||||
world.getChunkProviderServer().unloadQueue.remove(x, z);
|
||||
net.minecraft.server.Chunk chunk = world.getChunkProviderServer().chunks.get(LongHash.toLong(x, z));
|
||||
@@ -319,7 +320,7 @@ public class CraftWorld implements World {
|
||||
@@ -324,7 +325,7 @@ public class CraftWorld implements World {
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -310,7 +310,7 @@ index 3f2d83a..c81dfee 100644
|
||||
if (neighbor != null) {
|
||||
neighbor.setNeighborLoaded(-x, -z);
|
||||
chunk.setNeighborLoaded(x, z);
|
||||
@@ -1536,7 +1537,7 @@ public class CraftWorld implements World {
|
||||
@@ -1541,7 +1542,7 @@ public class CraftWorld implements World {
|
||||
}
|
||||
|
||||
// Already unloading?
|
||||
@ -359,5 +359,5 @@ index f0d3a19..c32b805 100644
|
||||
{
|
||||
isActive = false;
|
||||
--
|
||||
2.8.0
|
||||
2.8.0.windows.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b1eaaca9b59ca471b92ae67aeb900658bfc5f6e9 Mon Sep 17 00:00:00 2001
|
||||
From 7e68dc8430adc1759e5bca25c1e819723843d39d Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Sat, 13 Sep 2014 23:14:43 -0400
|
||||
Subject: [PATCH] Configurable Keep Spawn Loaded range per world
|
||||
@ -63,10 +63,10 @@ index 5b70d7a..831ef84 100644
|
||||
for (int j = -short1; j <= short1; j += 16) {
|
||||
for (int k = -short1; k <= short1; k += 16) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index c81dfee..dff2aa4 100644
|
||||
index 922ebaf..207a8d8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -1249,8 +1249,9 @@ public class CraftWorld implements World {
|
||||
@@ -1254,8 +1254,9 @@ public class CraftWorld implements World {
|
||||
int chunkCoordX = chunkcoordinates.getX() >> 4;
|
||||
int chunkCoordZ = chunkcoordinates.getZ() >> 4;
|
||||
// Cycle through the 25x25 Chunks around it to load/unload the chunks.
|
||||
@ -79,5 +79,5 @@ index c81dfee..dff2aa4 100644
|
||||
loadChunk(chunkCoordX + x, chunkCoordZ + z);
|
||||
} else {
|
||||
--
|
||||
2.8.0
|
||||
2.8.0.windows.1
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit f01861f80bc8d903f72210e7d79c90c35473aa74
|
||||
Subproject commit f326992b8b4df295dc35b06e8c3701c7b4397c9b
|
@ -1 +1 @@
|
||||
Subproject commit a1b8bf3530b3f83fbd94cc8624d05426b0d9de5f
|
||||
Subproject commit f6feaaae5b036bd574632a98c684b2fddf4454b9
|
In neuem Issue referenzieren
Einen Benutzer sperren