feat: implemented ChunkPreloader
This commit is contained in:
parent
b90c646f1f
commit
f25df4ad9b
@ -0,0 +1,21 @@
|
|||||||
|
package ru.dragonestia.msb3.api.util;
|
||||||
|
|
||||||
|
import lombok.experimental.UtilityClass;
|
||||||
|
import net.minestom.server.instance.InstanceContainer;
|
||||||
|
|
||||||
|
@UtilityClass
|
||||||
|
public class ChunkPreloader {
|
||||||
|
|
||||||
|
public void preload(InstanceContainer instance, int startChunkX, int startChunkZ, int endChunkX, int endChunkZ) {
|
||||||
|
record Point(int x, int z) {}
|
||||||
|
|
||||||
|
var min = new Point(Math.min(startChunkX, endChunkX), Math.min(startChunkZ, endChunkZ));
|
||||||
|
var max = new Point(Math.max(startChunkX, endChunkX), Math.max(startChunkZ, endChunkZ));
|
||||||
|
|
||||||
|
for (int chunkX = min.x; chunkX <= max.x; chunkX++) {
|
||||||
|
for (int chunkZ = min.z; chunkZ <= max.z; chunkZ++) {
|
||||||
|
instance.loadChunk(chunkX, chunkZ).join();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user