Files
OldSliceMC/patches/server/0040-Player-spawnsOwnMobs.patch

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 44ada45d9bf2d9b48e5de1c3cb1a855902f3884b..9c5be1f0fd4d6cb62e7bc7faa8fa4c4e5879ab4e 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -557,7 +557,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 6a642996eb149a71585ef8f6b74b567a245fe635..a4b476149ca2baa2df87a37a86d082a2875f45d6 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 end
+ public boolean spawnsOwnMobs = false; // Slice
+
// CraftBukkit start
public boolean fauxSleeping;
public int oldLevel = -1;