From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Cryptite Date: Thu, 7 Dec 2023 08:48:41 -0600 Subject: [PATCH] Player spawnsOwnMobs diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java index ce1cee91351d2665437573b0d756420769637fa0..a4319888da00ee82b17c01a118e325efab43d976 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -562,7 +562,7 @@ public class ServerChunkCache extends ChunkSource { // Paper start - optimise chunk tick iteration ChunkMap playerChunkMap = this.chunkMap; for (ServerPlayer player : this.level.players) { - if (!player.affectsSpawning || player.isSpectator()) { + if (!player.affectsSpawning || player.isSpectator() || player.spawnsOwnMobs) { playerChunkMap.playerMobSpawnMap.remove(player); player.playerNaturallySpawnedEvent = null; player.lastEntitySpawnRadiusSquared = -1.0; diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java index 2b93d9ca3df4d1a9acd670752390018a4332065f..5d37ffb421b22b0d1acffa43ac0bdd2c80414123 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -182,6 +182,8 @@ public abstract class Player extends LivingEntity { public boolean affectsSpawning = true; // Paper - Affects Spawning API public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage + public boolean spawnsOwnMobs = false; // Slice + // CraftBukkit start public boolean fauxSleeping; public int oldLevel = -1;