33 lines
1.9 KiB
Diff
33 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Cryptite <cryptite@gmail.com>
|
|
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 7b3dc5ba8ce6fb5c7091f82c2eea1cb63eb07149..b1bc5a645385a931d56699e852c398e22e04100a 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
|
@@ -564,7 +564,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 d6cdb7c3314004ee25cbed96eb289d420999c01c..3bc1c402aadd5af534fc343f2d90a20a602e82d1 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
@@ -184,6 +184,8 @@ public abstract class Player extends LivingEntity {
|
|
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
|
|
// Paper end
|
|
|
|
+ public boolean spawnsOwnMobs = false; // Slice
|
|
+
|
|
// CraftBukkit start
|
|
public boolean fauxSleeping;
|
|
public int oldLevel = -1;
|