Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-23 23:00:08 +01:00
more chunk fixes
Dieser Commit ist enthalten in:
Ursprung
41e136b880
Commit
c0b940d619
@ -196,20 +196,18 @@ public class ChunkProviderServer implements IChunkProvider {
|
|||||||
|
|
||||||
public boolean a() {
|
public boolean a() {
|
||||||
if (!this.g.C) {
|
if (!this.g.C) {
|
||||||
for (int i = 0; i < 100; ++i) {
|
while (!this.a.isEmpty()) {
|
||||||
if (!this.a.isEmpty()) {
|
// CraftBukkit start
|
||||||
// CraftBukkit start
|
long chunkcoordinates = this.a.popFirst();
|
||||||
long chunkcoordinates = this.a.popFirst();
|
Chunk chunk = e.get(chunkcoordinates);
|
||||||
Chunk chunk = e.get(chunkcoordinates);
|
if (chunk == null) continue;
|
||||||
if (chunk == null) continue;
|
// CraftBukkit end
|
||||||
// CraftBukkit end
|
chunk.e();
|
||||||
chunk.e();
|
this.b(chunk);
|
||||||
this.b(chunk);
|
this.a(chunk);
|
||||||
this.a(chunk);
|
this.a.remove(chunkcoordinates);
|
||||||
this.a.remove(chunkcoordinates);
|
this.e.remove(chunkcoordinates);
|
||||||
this.e.remove(chunkcoordinates);
|
this.f.remove(chunk);
|
||||||
this.f.remove(chunk);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.d != null) {
|
if (this.d != null) {
|
||||||
|
@ -32,7 +32,7 @@ public class LongHashset<V> extends LongHash<V> {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
outer[0] = inner = Arrays.copyOf(inner, i+1);
|
outer[outerIdx] = inner = Arrays.copyOf(inner, i+1);
|
||||||
inner[i] = key;
|
inner[i] = key;
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
@ -82,12 +82,14 @@ public class LongHashset<V> extends LongHash<V> {
|
|||||||
count--;
|
count--;
|
||||||
long ret = inner[inner.length - 1];
|
long ret = inner[inner.length - 1];
|
||||||
outer[i] = Arrays.copyOf(inner, inner.length - 1);
|
outer[i] = Arrays.copyOf(inner, inner.length - 1);
|
||||||
|
System.err.println("Removing chunk (" + msw(ret) + ", " + lsw(ret) + ")");
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long[] keys() {
|
public long[] keys() {
|
||||||
int index = 0;
|
int index = 0;
|
||||||
long ret[] = new long[count];
|
long ret[] = new long[count];
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren