diff --git a/src/main/java/net/minecraftforge/registries/ForgeRegistry.java b/src/main/java/net/minecraftforge/registries/ForgeRegistry.java index d764fe593a..f38d1cb919 100644 --- a/src/main/java/net/minecraftforge/registries/ForgeRegistry.java +++ b/src/main/java/net/minecraftforge/registries/ForgeRegistry.java @@ -212,7 +212,8 @@ public class ForgeRegistry> implements IForgeRe @Override public ResourceLocation getKey(V value) { - return this.names.inverse().get(value); + ResourceLocation ret = this.names.inverse().get(value); + return ret == null ? this.defaultKey : ret; } @Override diff --git a/src/main/java/net/minecraftforge/registries/NamespacedDefaultedWrapper.java b/src/main/java/net/minecraftforge/registries/NamespacedDefaultedWrapper.java index 2f922a8f45..c1adb14850 100644 --- a/src/main/java/net/minecraftforge/registries/NamespacedDefaultedWrapper.java +++ b/src/main/java/net/minecraftforge/registries/NamespacedDefaultedWrapper.java @@ -124,7 +124,7 @@ class NamespacedDefaultedWrapper> extends Regis public V getRandom(Random random) { Collection values = this.delegate.getValues(); - return values.stream().skip(random.nextInt(values.size())).findFirst().orElse(null); + return values.stream().skip(random.nextInt(values.size())).findFirst().orElse(this.delegate.getDefault()); } @Override