aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0761-Use-correct-LevelStem-registry-when-loading-default-.patch
blob: cea585163e3102ba30f581ef30b5ebfb1f8a6eeb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sat, 16 Oct 2021 17:38:35 -0700
Subject: [PATCH] Use correct LevelStem registry when loading default
 end/nether


diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f37dfe1bd53567239bf69852e75f09440dc1628c..a9fce6bd112c06453b7f460f3d746e290dca5f4a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -565,7 +565,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
             long i = generatorsettings.seed();
             long j = BiomeManager.obfuscateSeed(i);
             List<CustomSpawner> list = ImmutableList.of(new PhantomSpawner(), new PatrolSpawner(), new CatSpawner(), new VillageSiege(), new WanderingTraderSpawner(iworlddataserver));
-            LevelStem worlddimension = (LevelStem) iregistry.get(dimensionKey);
+            // Paper start - Use correct LevelStem registry
+            final LevelStem worlddimension;
+            if (dimensionKey == LevelStem.END || dimensionKey == LevelStem.NETHER) {
+                worlddimension = generatorsettings.dimensions().get(dimensionKey);
+            } else {
+                worlddimension = iregistry.get(dimensionKey);
+            }
+            // Paper end
             Holder<DimensionType> holder;
             ChunkGenerator chunkgenerator;