From ac85c75cc4b4bec7930dd0a24ba3fb7ff0691c64 Mon Sep 17 00:00:00 2001 From: Daniel Mills Date: Sat, 24 Jul 2021 11:49:47 -0400 Subject: [PATCH] Load all biomes for data packs, not just thought used ones --- .../iris/engine/data/loader/ResourceLoader.java | 14 ++++++++++++++ .../volmit/iris/engine/object/IrisDimension.java | 12 +----------- .../volmit/iris/engine/parallel/MultiBurst.java | 2 +- 3 files changed, 16 insertions(+), 12 deletions(-) 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);