Skip to content

Commit fc1d2c4

Browse files
authored
Check spawn_mobs gamerule for spawnEnemies flag (#13510)
1 parent c3b18bd commit fc1d2c4

File tree

6 files changed

+9
-9
lines changed

6 files changed

+9
-9
lines changed

paper-server/patches/features/0001-Moonrise-optimisation-patches.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23059,7 +23059,7 @@ index cda915fcb4822689f42b25280eb99aee082ddb74..094d2d528cb74b8f1d277cd780bba7f4
2305923059
thread1 -> {
2306023060
DedicatedServer dedicatedServer1 = new DedicatedServer(
2306123061
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
23062-
index f6d31f00f06d61d19e5069efdac8fe055585e49e..58f8d6a941d7fb3605cff30897c6752d2522587b 100644
23062+
index 330d1f751006e6a5acfec1a3ab390b1c2d482299..af7e9692a38f8278734e2f1ab51c1e03b123ef3c 100644
2306323063
--- a/net/minecraft/server/MinecraftServer.java
2306423064
+++ b/net/minecraft/server/MinecraftServer.java
2306523065
@@ -185,7 +185,7 @@ import net.minecraft.world.scores.ScoreboardSaveData;
@@ -23166,7 +23166,7 @@ index f6d31f00f06d61d19e5069efdac8fe055585e49e..58f8d6a941d7fb3605cff30897c6752d
2316623166
// CraftBukkit start
2316723167
joptsimple.OptionSet options,
2316823168
@@ -825,7 +912,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
23169-
serverLevel.setSpawnSettings(serverLevel.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && serverLevel.getGameRules().get(GameRules.SPAWN_MONSTERS)); // Paper - per level difficulty (from setDifficulty(ServerLevel, Difficulty, boolean))
23169+
serverLevel.setSpawnSettings(serverLevel.isSpawningMonsters()); // Paper - per level difficulty (from setDifficulty(ServerLevel, Difficulty, boolean))
2317023170
this.updateEffectiveRespawnData();
2317123171
this.forceTicks = false; // CraftBukkit
2317223172
- serverLevel.entityManager.tick(); // SPIGOT-6526: Load pending entities so they are available to the API

paper-server/patches/features/0020-Incremental-chunk-and-player-saving.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Incremental chunk and player saving
55

66

77
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
8-
index ebbb1e5c223c7c5817127f68a52138583f8fe0ed..97addc34c2a3091000803f229ec19d3ca0e24e16 100644
8+
index 8dc6adb868ade00fdee6f3f53aff01fddf79926d..7e8715af6433ac3324ae7d79f5252a4550af6bb1 100644
99
--- a/net/minecraft/server/MinecraftServer.java
1010
+++ b/net/minecraft/server/MinecraftServer.java
1111
@@ -972,7 +972,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa

paper-server/patches/features/0025-Optimise-EntityScheduler-ticking.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ index 2bc436cdf5180a7943c45fabb9fbbedae6f7db56..f312a7f5b1b2a777ab36b94ce7cbf387
2020

2121
@Override
2222
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
23-
index 97addc34c2a3091000803f229ec19d3ca0e24e16..9c6e5c3be20dff800938445c31523a8bac86ab06 100644
23+
index 7e8715af6433ac3324ae7d79f5252a4550af6bb1..092ead4419f0a558f25b4baacf3343b05c872022 100644
2424
--- a/net/minecraft/server/MinecraftServer.java
2525
+++ b/net/minecraft/server/MinecraftServer.java
2626
@@ -1753,33 +1753,22 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa

paper-server/patches/features/0028-Optimize-Hoppers.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ index 0000000000000000000000000000000000000000..24a2090e068ad3c0d08705050944abdf
4848
+ }
4949
+}
5050
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
51-
index 9c6e5c3be20dff800938445c31523a8bac86ab06..21500194b5c92baa6ab82503165b113155e4d994 100644
51+
index 092ead4419f0a558f25b4baacf3343b05c872022..c2227d57ea2e2da537a313d4bfd2f8c7f776be64 100644
5252
--- a/net/minecraft/server/MinecraftServer.java
5353
+++ b/net/minecraft/server/MinecraftServer.java
5454
@@ -1808,6 +1808,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa

paper-server/patches/sources/net/minecraft/server/MinecraftServer.java.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -516,7 +516,7 @@
516516
- this.levelLoadListener.finish(LevelLoadListener.Stage.LOAD_INITIAL_CHUNKS);
517517
- this.updateMobSpawningFlags();
518518
+ serverLevel.levelLoadListener.finish(LevelLoadListener.Stage.LOAD_INITIAL_CHUNKS); // Paper - per world load listener
519-
+ serverLevel.setSpawnSettings(serverLevel.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && serverLevel.getGameRules().get(GameRules.SPAWN_MONSTERS)); // Paper - per level difficulty (from setDifficulty(ServerLevel, Difficulty, boolean))
519+
+ serverLevel.setSpawnSettings(serverLevel.isSpawningMonsters()); // Paper - per level difficulty (from setDifficulty(ServerLevel, Difficulty, boolean))
520520
this.updateEffectiveRespawnData();
521521
+ this.forceTicks = false; // CraftBukkit
522522
+ serverLevel.entityManager.tick(); // SPIGOT-6526: Load pending entities so they are available to the API
@@ -1209,7 +1209,7 @@
12091209
+ level.getWorld(), source, org.bukkit.craftbukkit.util.CraftDifficulty.toBukkit(difficulty)
12101210
+ ).callEvent();
12111211
+ worldData.setDifficulty(worldData.isHardcore() ? Difficulty.HARD : difficulty);
1212-
+ level.setSpawnSettings(worldData.getDifficulty() != Difficulty.PEACEFUL && level.getGameRules().get(GameRules.SPAWN_MONSTERS));
1212+
+ level.setSpawnSettings(level.isSpawningMonsters());
12131213
+ // this.getPlayerList().getPlayers().forEach(this::sendDifficultyUpdate);
12141214
+ // Paper end - per level difficulty
12151215
}
@@ -1483,7 +1483,7 @@
14831483
+ // }); // Paper - per-world game rules
14841484
} else if (rule == GameRules.SPAWN_MONSTERS) {
14851485
- this.updateMobSpawningFlags();
1486-
+ serverLevel.setSpawnSettings(serverLevel.serverLevelData.getDifficulty() != net.minecraft.world.Difficulty.PEACEFUL && serverLevel.getGameRules().get(GameRules.SPAWN_MONSTERS)); // Paper - per-world game rules
1486+
+ serverLevel.setSpawnSettings(serverLevel.isSpawningMonsters()); // Paper - per-world game rules
14871487
}
14881488
}
14891489

paper-server/src/main/java/org/bukkit/craftbukkit/CraftServer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -994,7 +994,7 @@ public void reload() {
994994
this.console.paperConfigurations.reloadConfigs(this.console);
995995
for (ServerLevel world : this.console.getAllLevels()) {
996996
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
997-
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && world.getGameRules().get(GameRules.SPAWN_MONSTERS)); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
997+
world.setSpawnSettings(world.isSpawningMonsters()); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
998998

999999
for (SpawnCategory spawnCategory : SpawnCategory.values()) {
10001000
if (CraftSpawnCategory.isValidForLimits(spawnCategory)) {

0 commit comments

Comments
 (0)