--- a/net/minecraft/server/level/PlayerSpawnFinder.java
+++ b/net/minecraft/server/level/PlayerSpawnFinder.java
@@ -48,7 +_,7 @@
     }
 
     public static CompletableFuture<Vec3> findSpawn(ServerLevel level, BlockPos pos) {
-        if (level.dimensionType().hasSkyLight() && level.getServer().getWorldData().getGameType() != GameType.ADVENTURE) {
+        if (level.dimensionType().hasSkyLight() && level.serverLevelData.getGameType() != GameType.ADVENTURE) { // CraftBukkit
             int max = Math.max(0, level.getGameRules().getInt(GameRules.RULE_SPAWN_RADIUS));
             int floor = Mth.floor(level.getWorldBorder().getDistanceToBorder(pos.getX(), pos.getZ()));
             if (floor < max) {
@@ -122,9 +_,7 @@
         if (!this.finishedFuture.isDone()) {
             int sectionPosX = SectionPos.blockToSectionCoord(x);
             int sectionPosZ = SectionPos.blockToSectionCoord(z);
-            this.level
-                .getChunkSource()
-                .addTicketAndLoadWithRadius(TicketType.SPAWN_SEARCH, new ChunkPos(sectionPosX, sectionPosZ), 0)
+            ((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemServerLevel)this.level).moonrise$getChunkTaskScheduler().chunkHolderManager.addTicketAndLoadWithRadius(TicketType.SPAWN_SEARCH, new ChunkPos(sectionPosX, sectionPosZ), radius, net.minecraft.world.level.chunk.status.ChunkStatus.FULL, ca.spottedleaf.concurrentutil.util.Priority.HIGH) // Paper - rewrite chunk system
                 .whenCompleteAsync((object, throwable) -> {
                     if (throwable == null) {
                         try {
