Browse Source

Prevent getFeatures from crashing due to IndexOutOfRange

shedaniel 3 years ago
parent
commit
99a20d00e5

+ 4 - 4
common/src/main/java/me/shedaniel/architectury/hooks/biome/BiomeHooks.java

@@ -33,10 +33,7 @@ import net.minecraft.world.level.levelgen.feature.ConfiguredStructureFeature;
 import net.minecraft.world.level.levelgen.surfacebuilders.ConfiguredSurfaceBuilder;
 import org.jetbrains.annotations.Nullable;
 
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.OptionalInt;
+import java.util.*;
 import java.util.function.Supplier;
 
 public final class BiomeHooks {
@@ -392,6 +389,9 @@ public final class BiomeHooks {
         
         @Override
         public List<Supplier<ConfiguredFeature<?, ?>>> getFeatures(GenerationStep.Decoration decoration) {
+            if (decoration.ordinal() >= settings.features().size()) {
+                return Collections.emptyList();
+            }
             return settings.features().get(decoration.ordinal());
         }