Configurable void damage height

This commit is contained in:
William Blake Galbreath
2020-02-27 21:42:34 -06:00
parent 1681df4e30
commit 7bf318705f
2 changed files with 50 additions and 0 deletions

View File

@@ -312,6 +312,10 @@ gameplay-mechanics
- **default**: false
- **description**: Boats should eject players when on land
* void-damage-height
- **default**: -64.0
- **description**: Lower limit where void damage starts to happen
* controllable-minecarts
* enabled
- **default**: true

View File

@@ -0,0 +1,46 @@
From a47c3e1dd8f770cd3fc64916bb9d6962dd0067c5 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 27 Feb 2020 21:42:19 -0600
Subject: [PATCH] Configurable void damage height
---
src/main/java/net/minecraft/server/Entity.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/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 98aef47056..576742ddfc 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -451,7 +451,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
// Paper start
protected void performVoidDamage() {
- if (this.locY < -64.0D || (this.world.getWorld().getEnvironment() == org.bukkit.World.Environment.NETHER
+ if (this.locY < world.purpurConfig.voidDamageHeight || (this.world.getWorld().getEnvironment() == org.bukkit.World.Environment.NETHER
&& world.paperConfig.doNetherTopVoidDamage()
&& this.locY >= world.paperConfig.netherVoidTopDamageHeight)) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 7aed41f0f9..c7a7c8636c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -198,6 +198,7 @@ public class PurpurWorldConfig {
public String playerSleepCondition = "time >= 12541 && time <= 23458";
public boolean useBetterMending = false;
public boolean saveProjectilesToDisk = true;
+ public double voidDamageHeight = -64.0D;
private void gameplayMechanicsSettings() {
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
@@ -254,6 +255,7 @@ public class PurpurWorldConfig {
set("gameplay-mechanics.saveProjectilesToDisk", null);
}
saveProjectilesToDisk = getBoolean("gameplay-mechanics.save-projectiles-to-disk", saveProjectilesToDisk);
+ voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
}
public int elytraDamagePerSecond = 1;
--
2.24.0