diff --git a/common/implementation/base/src/main/java/com/dfsek/terra/config/loaders/ProbabilityCollectionLoader.java b/common/implementation/base/src/main/java/com/dfsek/terra/config/loaders/ProbabilityCollectionLoader.java index 6a9e10bd0..13b44b6bc 100644 --- a/common/implementation/base/src/main/java/com/dfsek/terra/config/loaders/ProbabilityCollectionLoader.java +++ b/common/implementation/base/src/main/java/com/dfsek/terra/config/loaders/ProbabilityCollectionLoader.java @@ -43,6 +43,10 @@ public class ProbabilityCollectionLoader implements TypeLoader map = (Map) o; + if (map.size() == 1) { + Object onlyKey = map.keySet().iterator().next(); + return new ProbabilityCollection.Singleton<>(configLoader.loadType(generic, onlyKey, depthTracker)); + } for(Map.Entry entry : map.entrySet()) { collection.add(configLoader.loadType(generic, entry.getKey(), depthTracker.entry((String) entry.getKey())), configLoader.loadType(Integer.class, entry.getValue(), depthTracker.entry((String) entry.getKey()))); @@ -50,7 +54,7 @@ public class ProbabilityCollectionLoader implements TypeLoader> map = (List>) o; if(map.size() == 1) { - Map entry = map.get(0); + Map entry = map.getFirst(); if(entry.size() == 1) { for(Object value : entry.keySet()) { return new ProbabilityCollection.Singleton<>(configLoader.loadType(generic, value, depthTracker));