mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-17 13:24:17 -07:00
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/server/ChunkRegionLoader.java
|
||||
+++ b/net/minecraft/server/ChunkRegionLoader.java
|
||||
@@ -31,7 +31,7 @@
|
||||
@@ -29,7 +29,7 @@
|
||||
private final File c;
|
||||
private final DataFixer d;
|
||||
private PersistentStructureLegacy e;
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
public ChunkRegionLoader(File file, DataFixer datafixer) {
|
||||
this.c = file;
|
||||
@@ -40,25 +40,64 @@
|
||||
@@ -38,25 +38,64 @@
|
||||
|
||||
@Nullable
|
||||
private NBTTagCompound a(GeneratorAccess generatoraccess, int i, int j) throws IOException {
|
||||
@@ -81,7 +81,7 @@
|
||||
|
||||
if (k < 1493) {
|
||||
nbttagcompound1 = GameProfileSerializer.a(this.d, DataFixTypes.CHUNK, nbttagcompound1, k, 1493);
|
||||
@@ -86,13 +125,29 @@
|
||||
@@ -84,13 +123,29 @@
|
||||
|
||||
}
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
Chunk chunk = this.a(generatoraccess, i, j, nbttagcompound);
|
||||
|
||||
if (chunk != null) {
|
||||
@@ -101,6 +156,9 @@
|
||||
@@ -99,6 +154,9 @@
|
||||
}
|
||||
|
||||
return chunk;
|
||||
@@ -121,7 +121,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,7 +190,7 @@
|
||||
@@ -130,7 +188,7 @@
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@@ -130,7 +130,7 @@
|
||||
if (nbttagcompound.hasKeyOfType("Level", 10) && nbttagcompound.getCompound("Level").hasKeyOfType("Status", 8)) {
|
||||
ChunkStatus.Type chunkstatus_type = this.a(nbttagcompound);
|
||||
|
||||
@@ -151,10 +209,28 @@
|
||||
@@ -149,10 +207,28 @@
|
||||
ChunkRegionLoader.a.error("Chunk file at {},{} is in the wrong location; relocating. (Expected {}, {}, got {}, {})", i, j, i, j, chunk.locX, chunk.locZ);
|
||||
nbttagcompound1.setInt("xPos", i);
|
||||
nbttagcompound1.setInt("zPos", j);
|
||||
@@ -160,7 +160,7 @@
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -169,7 +245,7 @@
|
||||
@@ -167,7 +243,7 @@
|
||||
ChunkStatus.Type chunkstatus_type = this.a(nbttagcompound);
|
||||
|
||||
if (chunkstatus_type == ChunkStatus.Type.LEVELCHUNK) {
|
||||
@@ -169,24 +169,24 @@
|
||||
} else {
|
||||
NBTTagCompound nbttagcompound1 = nbttagcompound.getCompound("Level");
|
||||
|
||||
@@ -217,10 +293,14 @@
|
||||
@@ -215,10 +291,15 @@
|
||||
}
|
||||
|
||||
public boolean a() {
|
||||
- Iterator iterator = this.b.entrySet().iterator();
|
||||
+ // CraftBukkit start
|
||||
+ return this.processSaveQueueEntry(false);
|
||||
+ }
|
||||
|
||||
+
|
||||
+ private boolean processSaveQueueEntry(boolean logCompletion) {
|
||||
+ Iterator iterator = this.b.entrySet().iterator();
|
||||
Iterator<Entry<ChunkCoordIntPair, NBTTagCompound>> iterator = this.b.entrySet().iterator();
|
||||
|
||||
if (!iterator.hasNext()) {
|
||||
- if (this.f) {
|
||||
+ if (logCompletion) { // CraftBukkit
|
||||
ChunkRegionLoader.a.info("ThreadedAnvilChunkStorage ({}): All chunks are saved", this.c.getName());
|
||||
}
|
||||
|
||||
@@ -236,10 +316,14 @@
|
||||
@@ -234,10 +315,14 @@
|
||||
return true;
|
||||
} else {
|
||||
try {
|
||||
@@ -202,7 +202,7 @@
|
||||
if (this.e != null) {
|
||||
this.e.a(chunkcoordintpair.a());
|
||||
}
|
||||
@@ -266,15 +350,16 @@
|
||||
@@ -264,15 +349,16 @@
|
||||
|
||||
public void b() {
|
||||
try {
|
||||
@@ -222,7 +222,7 @@
|
||||
}
|
||||
|
||||
}
|
||||
@@ -303,7 +388,7 @@
|
||||
@@ -301,7 +387,7 @@
|
||||
|
||||
if (abiomebase != null) {
|
||||
for (int k = 0; k < abiomebase.length; ++k) {
|
||||
@@ -231,7 +231,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -385,7 +470,7 @@
|
||||
@@ -383,7 +469,7 @@
|
||||
int[] aint = new int[abiomebase.length];
|
||||
|
||||
for (int i = 0; i < abiomebase.length; ++i) {
|
||||
@@ -240,41 +240,7 @@
|
||||
}
|
||||
|
||||
nbttagcompound.setIntArray("Biomes", aint);
|
||||
@@ -487,27 +572,27 @@
|
||||
}
|
||||
|
||||
ChunkConverter chunkconverter = nbttagcompound.hasKeyOfType("UpgradeData", 10) ? new ChunkConverter(nbttagcompound.getCompound("UpgradeData")) : ChunkConverter.a;
|
||||
- Predicate predicate = (block) -> {
|
||||
+ Predicate<Block> predicate = (block) -> { // CraftBukkit - decompile error
|
||||
return block.getBlockData().isAir();
|
||||
};
|
||||
IRegistry iregistry = IRegistry.BLOCK;
|
||||
|
||||
IRegistry.BLOCK.getClass();
|
||||
Function function = iregistry::getKey;
|
||||
- IRegistry iregistry1 = IRegistry.BLOCK;
|
||||
+ IRegistry<Block> iregistry1 = IRegistry.BLOCK; // CraftBukkit - decompile error
|
||||
|
||||
IRegistry.BLOCK.getClass();
|
||||
- ProtoChunkTickList protochunkticklist = new ProtoChunkTickList(predicate, function, iregistry1::getOrDefault, new ChunkCoordIntPair(i, j));
|
||||
+ ProtoChunkTickList protochunkticklist = new ProtoChunkTickList<>(predicate, function, iregistry1::getOrDefault, new ChunkCoordIntPair(i, j)); // CraftBukkit - decompile error
|
||||
|
||||
- predicate = (fluidtype) -> {
|
||||
+ Predicate<FluidType> predicate1 = (fluidtype) -> { // CraftBukkit - decompile error
|
||||
return fluidtype == FluidTypes.a;
|
||||
};
|
||||
iregistry = IRegistry.FLUID;
|
||||
IRegistry.FLUID.getClass();
|
||||
function = iregistry::getKey;
|
||||
- iregistry1 = IRegistry.FLUID;
|
||||
+ IRegistry<FluidType> iregistry2 = IRegistry.FLUID; // CraftBukkit - decompile error
|
||||
IRegistry.FLUID.getClass();
|
||||
- ProtoChunkTickList protochunkticklist1 = new ProtoChunkTickList(predicate, function, iregistry1::getOrDefault, new ChunkCoordIntPair(i, j));
|
||||
+ ProtoChunkTickList protochunkticklist1 = new ProtoChunkTickList<>(predicate1, function, iregistry2::getOrDefault, new ChunkCoordIntPair(i, j)); // CraftBukkit - decompile error
|
||||
long i1 = nbttagcompound.getLong("InhabitedTime");
|
||||
Chunk chunk = new Chunk(generatoraccess.getMinecraftWorld(), i, j, abiomebase, chunkconverter, protochunkticklist, protochunkticklist1, i1);
|
||||
|
||||
@@ -850,17 +935,29 @@
|
||||
@@ -833,17 +919,29 @@
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@@ -306,7 +272,7 @@
|
||||
});
|
||||
}
|
||||
|
||||
@@ -874,8 +971,14 @@
|
||||
@@ -857,8 +955,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -322,7 +288,7 @@
|
||||
Iterator iterator = entity.bP().iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
@@ -891,7 +994,7 @@
|
||||
@@ -874,7 +978,7 @@
|
||||
boolean flag = false;
|
||||
|
||||
try {
|
||||
|
Reference in New Issue
Block a user