Paper/Spigot-Server-Patches/0209-provide-a-configurable-option-to-disable-creeper-lin.patch
Aikar 094bb03a37
Optimize Hoppers
- Lots of itemstack cloning removed. Only clone if the item is actually moved
- Return true when a plugin cancels inventory move item event instead of false, as false causes pulls to cycle through all items.
  However, pushes do not exhibit the same behavior, so this is not something plugins could of been relying on.
- Add option (Default on) to cooldown hoppers when they fail to move an item due to full inventory
- Skip subsequent InventoryMoveItemEvents if a plugin does not use the item after first event fire for an iteration
2018-02-12 23:26:02 -05:00

39 lines
1.8 KiB
Diff

From 163dadb9811b049e78caefbeeb5bdf57235d0e35 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 79b12a6e9..7802cc1f4 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -420,4 +420,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/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
index c872607fc..8098d4d9f 100644
--- a/src/main/java/net/minecraft/server/EntityCreeper.java
+++ b/src/main/java/net/minecraft/server/EntityCreeper.java
@@ -222,7 +222,7 @@ public class EntityCreeper extends EntityMonster {
private void ds() {
Collection collection = this.getEffects();
- if (!collection.isEmpty()) {
+ if (!collection.isEmpty() && !world.paperConfig.disableCreeperLingeringEffect) { // Paper
EntityAreaEffectCloud entityareaeffectcloud = new EntityAreaEffectCloud(this.world, this.locX, this.locY, this.locZ);
entityareaeffectcloud.setSource(this); // CraftBukkit
--
2.16.1