3
0
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:
Tahg 2011-02-11 02:01:32 -05:00
Ursprung 41e136b880
Commit c0b940d619
2 geänderte Dateien mit 16 neuen und 16 gelöschten Zeilen

Datei anzeigen

@ -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) {

Datei anzeigen

@ -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];