diff --git a/src/main/java/com/volmit/iris/engine/data/loader/ResourceLoader.java b/src/main/java/com/volmit/iris/engine/data/loader/ResourceLoader.java index c7cc47b93..12a955512 100644 --- a/src/main/java/com/volmit/iris/engine/data/loader/ResourceLoader.java +++ b/src/main/java/com/volmit/iris/engine/data/loader/ResourceLoader.java @@ -178,6 +178,20 @@ public class ResourceLoader { return m; } + public KList loadAll(String[] s) { + KList m = new KList<>(); + + for (String i : s) { + T t = load(i); + + if (t != null) { + m.add(t); + } + } + + return m; + } + public T load(String name) { return load(name, true); } diff --git a/src/main/java/com/volmit/iris/engine/object/IrisDimension.java b/src/main/java/com/volmit/iris/engine/object/IrisDimension.java index d216274c6..680465ad6 100644 --- a/src/main/java/com/volmit/iris/engine/object/IrisDimension.java +++ b/src/main/java/com/volmit/iris/engine/object/IrisDimension.java @@ -415,17 +415,7 @@ public class IrisDimension extends IrisRegistrant { } public KList getAllBiomes(DataProvider g) { - KList r = new KList<>(); - - for (IrisRegion i : getAllRegions(g)) { - if (i == null) { - continue; - } - - r.addAll(i.getAllBiomes(g)); - } - - return r; + return g.getData().getBiomeLoader().loadAll(g.getData().getBiomeLoader().getPossibleKeys()); } public KList getAllAnyBiomes() { diff --git a/src/main/java/com/volmit/iris/engine/parallel/MultiBurst.java b/src/main/java/com/volmit/iris/engine/parallel/MultiBurst.java index 8b728b21d..d808b2dc5 100644 --- a/src/main/java/com/volmit/iris/engine/parallel/MultiBurst.java +++ b/src/main/java/com/volmit/iris/engine/parallel/MultiBurst.java @@ -35,7 +35,7 @@ public class MultiBurst { } public MultiBurst(String name, int priority, int tc) { - service = Executors.newFixedThreadPool(tc, r -> { + service = Executors.newFixedThreadPool(Math.max(tc, 1), r -> { tid++; Thread t = new Thread(r); t.setName(name + " " + tid);