Merge pull request #1071 from VolmitDev/fix_nullpointer

Fix nullpointer
This commit is contained in:
Brian Fopiano
2024-02-17 09:54:40 -05:00
committed by GitHub
@@ -126,9 +126,26 @@ public class BukkitChunkGenerator extends ChunkGenerator implements PlatformChun
if (!initialized) { if (!initialized) {
world.setRawWorldSeed(event.getWorld().getSeed()); world.setRawWorldSeed(event.getWorld().getSeed());
if (world.name().equals(event.getWorld().getName())) { if (world.name().equals(event.getWorld().getName())) {
INMS.get().inject(event.getWorld().getSeed(), getEngine(event.getWorld()), event.getWorld()); Engine engine = getEngine(event.getWorld());
Iris.info("Injected Iris Biome Source into " + event.getWorld().getName()); if (engine == null) {
initialized = true; Iris.warn("Failed to get Engine!");
J.s(() -> {
Engine engine1 = getEngine(event.getWorld());
if (engine1 != null) {
try {
INMS.get().inject(event.getWorld().getSeed(), engine1, event.getWorld());
Iris.info("Injected Iris Biome Source into " + event.getWorld().getName());
initialized = true;
} catch (Throwable e) {
e.printStackTrace();
}
}
}, 10);
} else {
INMS.get().inject(event.getWorld().getSeed(), engine, event.getWorld());
Iris.info("Injected Iris Biome Source into " + event.getWorld().getName());
initialized = true;
}
} }
} }
} catch (Throwable e) { } catch (Throwable e) {
@@ -240,34 +257,36 @@ public class BukkitChunkGenerator extends ChunkGenerator implements PlatformChun
lock.lock(); lock.lock();
if (setup.get()) { try {
return getEngine(); if (setup.get()) {
} return getEngine();
setup.set(true);
getWorld().setRawWorldSeed(world.getSeed());
setupEngine();
this.hotloader = studio ? new Looper() {
@Override
protected long loop() {
if (hotloadChecker.flip()) {
folder.check();
}
return 250;
} }
} : null;
if (studio) {
hotloader.setPriority(Thread.MIN_PRIORITY); getWorld().setRawWorldSeed(world.getSeed());
hotloader.start(); setupEngine();
hotloader.setName(getTarget().getWorld().name() + " Hotloader"); setup.set(true);
this.hotloader = studio ? new Looper() {
@Override
protected long loop() {
if (hotloadChecker.flip()) {
folder.check();
}
return 250;
}
} : null;
if (studio) {
hotloader.setPriority(Thread.MIN_PRIORITY);
hotloader.start();
hotloader.setName(getTarget().getWorld().name() + " Hotloader");
}
return engine;
} finally {
lock.unlock();
} }
lock.unlock();
return engine;
} }
@Override @Override