mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-01 15:36:45 +00:00
calculate spawn location async
This commit is contained in:
parent
2c60192de3
commit
835c8422f1
@ -40,6 +40,7 @@ import com.volmit.iris.util.io.ReactiveFolder;
|
|||||||
import com.volmit.iris.util.scheduling.ChronoLatch;
|
import com.volmit.iris.util.scheduling.ChronoLatch;
|
||||||
import com.volmit.iris.util.scheduling.J;
|
import com.volmit.iris.util.scheduling.J;
|
||||||
import com.volmit.iris.util.scheduling.Looper;
|
import com.volmit.iris.util.scheduling.Looper;
|
||||||
|
import io.papermc.lib.PaperLib;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@ -144,6 +145,20 @@ public class BukkitChunkGenerator extends ChunkGenerator implements PlatformChun
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
@Override
|
||||||
|
public Location getFixedSpawnLocation(@NotNull World world, @NotNull Random random) {
|
||||||
|
Location location = new Location(world, 0, 64, 0);
|
||||||
|
PaperLib.getChunkAtAsync(location)
|
||||||
|
.thenAccept(c -> {
|
||||||
|
World w = c.getWorld();
|
||||||
|
if (!w.getSpawnLocation().equals(location))
|
||||||
|
return;
|
||||||
|
w.setSpawnLocation(location.add(0, w.getHighestBlockYAt(location) - 64, 0));
|
||||||
|
});
|
||||||
|
return location;
|
||||||
|
}
|
||||||
|
|
||||||
private void setupEngine() {
|
private void setupEngine() {
|
||||||
IrisData data = IrisData.get(dataLocation);
|
IrisData data = IrisData.get(dataLocation);
|
||||||
IrisDimension dimension = data.getDimensionLoader().load(dimensionKey);
|
IrisDimension dimension = data.getDimensionLoader().load(dimensionKey);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user