Option for slimes not pushable

This commit is contained in:
William Blake Galbreath
2019-08-23 21:56:45 -05:00
parent e7b078fd1f
commit 74f6e6371b
2 changed files with 48 additions and 0 deletions

View File

@@ -80,6 +80,11 @@ update-perms-on-world-change
* **default**: false
* **description:** When a player changes worlds the server recalculates their permissions and resends their available commands. This can be laggy, so the option is disabled by default
slimes-not-pushable
~~~~~~~~~~~~~~~~~~~
* **default**: false
* **description:** Prevent slimes from being pushable by pistons
grindstone
~~~~~~~~~~~~~~~~~~~~~~
* disallow-placement

View File

@@ -0,0 +1,43 @@
From d25594a77210498e5ed54e81dba90809df4d3f5a Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 23 Aug 2019 21:56:31 -0500
Subject: [PATCH] Option for slimes not pushable
---
src/main/java/net/minecraft/server/BlockSlime.java | 5 +++++
src/main/java/net/pl3x/purpur/PurpurConfig.java | 5 +++++
2 files changed, 10 insertions(+)
diff --git a/src/main/java/net/minecraft/server/BlockSlime.java b/src/main/java/net/minecraft/server/BlockSlime.java
index fd54958f6..1d3ab9703 100644
--- a/src/main/java/net/minecraft/server/BlockSlime.java
+++ b/src/main/java/net/minecraft/server/BlockSlime.java
@@ -49,4 +49,9 @@ public class BlockSlime extends BlockHalfTransparent {
super.stepOn(world, blockposition, entity);
}
+
+ @Override
+ public EnumPistonReaction getPushReaction(IBlockData iblockdata) {
+ return net.pl3x.purpur.PurpurConfig.slimesNotPushable ? EnumPistonReaction.BLOCK : super.getPushReaction(iblockdata);
+ }
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 0022211be..6827da6a6 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -275,6 +275,11 @@ public class PurpurConfig {
enderDragonDeathAlwaysPlacesEggBlock = getBoolean("ender-dragon-death-always-places-egg-block", enderDragonDeathAlwaysPlacesEggBlock);
}
+ public static boolean slimesNotPushable = false;
+ private static void slimesNotPushable() {
+ slimesNotPushable = getBoolean("slimes-not-pushable", slimesNotPushable);
+ }
+
public static boolean ridableBat = true;
public static boolean ridableBlaze = true;
public static boolean ridableCat = true;
--
2.23.0.rc1