Files
Purpur/patches/server/0020-Phantoms-do-not-spawn-on-creative-players.patch
William Blake Galbreath 7edbf259ba rebuild patches
2020-02-27 21:33:44 -06:00

45 lines
2.4 KiB
Diff

From b60dd5ad200ff38a8d11ff37c44983d4d1712ec4 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 18 May 2019 16:59:52 -0500
Subject: [PATCH] Phantoms do not spawn on creative players
---
src/main/java/net/minecraft/server/MobSpawnerPhantom.java | 2 +-
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/main/java/net/minecraft/server/MobSpawnerPhantom.java b/src/main/java/net/minecraft/server/MobSpawnerPhantom.java
index f488c22ed6..748983da29 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerPhantom.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerPhantom.java
@@ -31,7 +31,7 @@ public class MobSpawnerPhantom {
while (iterator.hasNext()) {
EntityHuman entityhuman = (EntityHuman) iterator.next();
- if (!entityhuman.isSpectator()) {
+ if (!entityhuman.isSpectator() && (!worldserver.purpurConfig.phantomIgnoreCreative || !entityhuman.isCreative())) { // Purpur
BlockPosition blockposition = new BlockPosition(entityhuman);
if (!worldserver.worldProvider.f() || blockposition.getY() >= worldserver.getSeaLevel() && worldserver.f(blockposition)) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index cc8e832b33..392936c34d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -390,11 +390,13 @@ public class PurpurWorldConfig {
public boolean phantomRidableInWater = false;
public boolean phantomRequireShiftToMount = true;
public double phantomMaxY = 256D;
+ public boolean phantomIgnoreCreative = false;
private void phantomSettings() {
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
phantomRequireShiftToMount = getBoolean("mobs.phantom.require-shift-to-mount", phantomRequireShiftToMount);
phantomMaxY = getDouble("mobs.phantom.ridable-max-y", phantomMaxY);
+ phantomIgnoreCreative = getBoolean("mobs.phantom.do-not-spawn-on-creative-players", phantomIgnoreCreative);
}
public boolean pigRidable = false;
--
2.24.0