From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: ishland <ishlandmc@yeah.net> Date: Sun, 23 Aug 2020 10:57:44 +0200 Subject: [PATCH] Fix MC-197271 This patch only fixes an issue for servers running OpenJ9. diff --git a/src/main/java/net/minecraft/data/RegistryGeneration.java b/src/main/java/net/minecraft/data/RegistryGeneration.java index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 --- a/src/main/java/net/minecraft/data/RegistryGeneration.java +++ b/src/main/java/net/minecraft/data/RegistryGeneration.java @@ -0,0 +0,0 @@ public class RegistryGeneration { public static final IRegistry<ProcessorList> g = a(IRegistry.aw, () -> { return ProcessorLists.b; }); - public static final IRegistry<WorldGenFeatureDefinedStructurePoolTemplate> h = a(IRegistry.ax, WorldGenFeaturePieces::a); + public static final IRegistry<WorldGenFeatureDefinedStructurePoolTemplate> h = a(IRegistry.ax, () -> WorldGenFeaturePieces.a()); // Paper - MC-197271 public static final IRegistry<BiomeBase> WORLDGEN_BIOME = a(IRegistry.ay, () -> { return BiomeRegistry.a; }); - public static final IRegistry<GeneratorSettingBase> j = a(IRegistry.ar, GeneratorSettingBase::i); + public static final IRegistry<GeneratorSettingBase> j = a(IRegistry.ar, () -> GeneratorSettingBase.i()); // Paper - MC-197271 private static <T> IRegistry<T> a(ResourceKey<? extends IRegistry<T>> resourcekey, Supplier<T> supplier) { return a(resourcekey, Lifecycle.stable(), supplier); @@ -0,0 +0,0 @@ public class RegistryGeneration { MinecraftKey minecraftkey = resourcekey.a(); RegistryGeneration.k.put(minecraftkey, supplier); - IRegistryWritable<R> iregistrywritable = RegistryGeneration.l; + IRegistryWritable<R> iregistrywritable = (IRegistryWritable<R>) RegistryGeneration.l; // Paper - decompile fix - return (IRegistryWritable) iregistrywritable.a(resourcekey, (Object) r0, lifecycle); + return (R) iregistrywritable.a((ResourceKey<R>) resourcekey, r0, lifecycle); // Paper - decompile fix } public static <T> T a(IRegistry<? super T> iregistry, String s, T t0) { @@ -0,0 +0,0 @@ public class RegistryGeneration { } public static <V, T extends V> T a(IRegistry<V> iregistry, MinecraftKey minecraftkey, T t0) { - return ((IRegistryWritable) iregistry).a(ResourceKey.a(iregistry.f(), minecraftkey), t0, Lifecycle.stable()); + return (T) ((IRegistryWritable) iregistry).a(ResourceKey.a(iregistry.f(), minecraftkey), t0, Lifecycle.stable()); // Paper - decompile fix } public static <V, T extends V> T a(IRegistry<V> iregistry, int i, ResourceKey<V> resourcekey, T t0) { - return ((IRegistryWritable) iregistry).a(i, resourcekey, t0, Lifecycle.stable()); + return (T) ((IRegistryWritable) iregistry).a(i, resourcekey, t0, Lifecycle.stable()); // Paper - decompile fix } public static void a() {}