PaperMC/patches/server/0139-provide-a-configurable-option-to-disable-creeper-lin.patch
Nassim Jahnke 7bd7b18811
Configurable feature seeds (#6531)
Co-authored-by: Thonk 30448663+ExcessiveAmountsOfZombies@users.noreply.github.com

Also includes an option to auto-generate random seeds for all features and add them to the config.
2021-09-01 09:54:41 +00:00

35 lines
2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 11 Jun 2017 21:01:18 +0100
Subject: [PATCH] provide a configurable option to disable creeper lingering
effect spawns
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index f4c80bc26f4f7cf02d368df4d9717cf1ca3e0730..e6c29e08b20734c3f64e1d596d103a5c1fbb6920 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -341,4 +341,10 @@ public class PaperWorldConfig {
parrotsHangOnBetter = getBoolean("parrots-are-unaffected-by-player-movement", false);
log("Parrots are unaffected by player movement: " + parrotsHangOnBetter);
}
+
+ public boolean disableCreeperLingeringEffect;
+ private void setDisableCreeperLingeringEffect() {
+ disableCreeperLingeringEffect = getBoolean("disable-creeper-lingering-effect", false);
+ log("Creeper lingering effect: " + disableCreeperLingeringEffect);
+ }
}
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
index e758c112662f65646fc2966e21bf631d8953a3e1..ddc48d37f962b6743f3f356745c9ebe6a06f79f1 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
@@ -281,7 +281,7 @@ public class Creeper extends Monster implements PowerableMob {
private void spawnLingeringCloud() {
Collection<MobEffectInstance> collection = this.getActiveEffects();
- if (!collection.isEmpty()) {
+ if (!collection.isEmpty() && !level.paperConfig.disableCreeperLingeringEffect) { // Paper
AreaEffectCloud entityareaeffectcloud = new AreaEffectCloud(this.level, this.getX(), this.getY(), this.getZ());
entityareaeffectcloud.setOwner(this); // CraftBukkit