Files
Purpur/patches/server/0101-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch
William Blake Galbreath 1c4687461d Rebuild patches
2020-04-04 20:28:11 -05:00

47 lines
2.4 KiB
Diff

From 6e55978a4fba2ddf62f232a299764cf80cb33958 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 19 Mar 2020 19:39:34 -0500
Subject: [PATCH] Add option to allow loyalty on tridents to work in the void
---
src/main/java/net/minecraft/server/EntityThrownTrident.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/EntityThrownTrident.java b/src/main/java/net/minecraft/server/EntityThrownTrident.java
index ed8e26aa45..ca6c0ec299 100644
--- a/src/main/java/net/minecraft/server/EntityThrownTrident.java
+++ b/src/main/java/net/minecraft/server/EntityThrownTrident.java
@@ -38,7 +38,7 @@ public class EntityThrownTrident extends EntityArrow {
Entity entity = this.getShooter();
- if ((this.as || this.v()) && entity != null) {
+ if ((this.as || this.v() || (world.purpurConfig.tridentLoyaltyVoidReturnHeight < 0.0D && locY() < world.purpurConfig.tridentLoyaltyVoidReturnHeight)) && entity != null) { // Purpur
byte b0 = (Byte) this.datawatcher.get(EntityThrownTrident.ap);
if (b0 > 0 && !this.z()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a4e16f7f3b..95193625b7 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -189,6 +189,7 @@ public class PurpurWorldConfig {
public String playerSleepCondition = "time >= 12541 && time <= 23458";
public boolean useBetterMending = false;
public boolean saveProjectilesToDisk = true;
+ public double tridentLoyaltyVoidReturnHeight = 0.0D;
public double voidDamageHeight = -64.0D;
private void gameplayMechanicsSettings() {
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
@@ -246,6 +247,7 @@ public class PurpurWorldConfig {
set("gameplay-mechanics.saveProjectilesToDisk", null);
}
saveProjectilesToDisk = getBoolean("gameplay-mechanics.save-projectiles-to-disk", saveProjectilesToDisk);
+ tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
}
--
2.24.0