diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/dynresources/ModelLocationBuilder.java b/forge/src/main/java/org/embeddedt/modernfix/forge/dynresources/ModelLocationBuilder.java index 69ca564d..85793986 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/dynresources/ModelLocationBuilder.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/dynresources/ModelLocationBuilder.java @@ -9,17 +9,19 @@ import net.minecraft.world.level.block.state.properties.Property; import java.util.ArrayList; import java.util.List; +import java.util.Locale; +import java.util.Map; import java.util.Set; public class ModelLocationBuilder { - private final Object2ObjectOpenHashMap, PropertyData> propertyToOptionStrings = new Object2ObjectOpenHashMap<>(); + private final Map, PropertyData> propertyToOptionStrings = new Object2ObjectOpenHashMap<>(); private final StringBuilder builder = new StringBuilder(); private record PropertyData(List nameValuePairs, int maxPairLength) {} public void generateForBlock(Set destinationSet, Block block, ResourceLocation baseLocation) { var props = block.getStateDefinition().getProperties(); - List> optionsList = new ArrayList<>(); + List> optionsList = new ArrayList<>(props.size()); int requiredBuilderSize = Math.max(0, props.size() - 1); // commas for (var prop : props) { var data = propertyToOptionStrings.computeIfAbsent(prop, ModelLocationBuilder::computePropertyOptions); @@ -49,7 +51,7 @@ public class ModelLocationBuilder { int maxLength = 0; for (var val : prop.getPossibleValues()) { String pair = prop.getName() + "=" + getValueName(prop, val); - valuesList.add(pair); + valuesList.add(pair.toLowerCase(Locale.ROOT)); maxLength = Math.max(pair.length(), maxLength); } return new PropertyData(List.copyOf(valuesList), maxLength);