diff --git a/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch b/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch index d4d8b0d096..69a310538a 100644 --- a/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch +++ b/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch @@ -239,7 +239,7 @@ + continue; + } + } -+ World.setGeneratorAndEnv(this.server.getGenerator(name), ForgeInjectBukkit.environment.get(registrykey1)); ++ World.setGeneratorAndEnv(this.server.getGenerator(name), ForgeInjectBukkit.environment.getOrDefault(dimensiontype1, org.bukkit.World.Environment.CUSTOM)); + // Mohist start - split calculate for ServerLeverl Preparing + IChunkStatusListener mohist$progressListener = this.field_213220_d.create(11); + ServerWorld serverworld1 = new ServerWorld(this, this.field_213217_au, this.field_71310_m, derivedworldinfo, registrykey1, dimensiontype1, mohist$progressListener, chunkgenerator1, flag, j, ImmutableList.of(), false); diff --git a/patches/minecraft/net/minecraft/world/World.java.patch b/patches/minecraft/net/minecraft/world/World.java.patch index afe5357997..099e403ddf 100644 --- a/patches/minecraft/net/minecraft/world/World.java.patch +++ b/patches/minecraft/net/minecraft/world/World.java.patch @@ -151,7 +151,7 @@ } - + if (environment == null) { -+ environment = ForgeInjectBukkit.environment.getOrDefault(typeKey, org.bukkit.World.Environment.CUSTOM); ++ environment = ForgeInjectBukkit.environment.getOrDefault(p_i241925_3_, org.bukkit.World.Environment.CUSTOM); + } + func_175723_af().world = this; // Mohist move form ServerWorld this.field_217407_c = Thread.currentThread(); diff --git a/src/main/java/com/mohistmc/forge/ForgeInjectBukkit.java b/src/main/java/com/mohistmc/forge/ForgeInjectBukkit.java index 8897f4b9ab..f65303d90a 100644 --- a/src/main/java/com/mohistmc/forge/ForgeInjectBukkit.java +++ b/src/main/java/com/mohistmc/forge/ForgeInjectBukkit.java @@ -72,11 +72,11 @@ public class ForgeInjectBukkit { - public static BiMap, World.Environment> environment = - HashBiMap.create(ImmutableMap., World.Environment>builder() - .put(DimensionType.OVERWORLD_LOCATION, World.Environment.NORMAL) - .put(DimensionType.NETHER_LOCATION, World.Environment.NETHER) - .put(DimensionType.END_LOCATION, World.Environment.THE_END) + public static BiMap environment = + HashBiMap.create(ImmutableMap.builder() + .put(DimensionType.DEFAULT_OVERWORLD, World.Environment.NORMAL) + .put(DimensionType.DEFAULT_NETHER, World.Environment.NETHER) + .put(DimensionType.DEFAULT_END, World.Environment.THE_END) .build()); public static BiMap> environment0 = @@ -222,6 +222,7 @@ public static void addEnumEnvironment(Registry registry) { String name = normalizeName(key.location().toString()); int id = i - 1; environment1 = MohistEnumHelper.addEnum(World.Environment.class, name, new Class[]{Integer.TYPE}, new Object[]{id}); + environment.put(dimensionType, environment1); environment0.put(environment1, key); MohistMC.LOGGER.debug("Registered forge DimensionType as environment {}", environment1); i++;