Paper/Spigot-Server-Patches/0080-Set-health-before-death-event.patch

50 lines
2.0 KiB
Diff
Raw Normal View History

2017-02-02 05:48:16 +01:00
From 32280fdab148d7273e5b8c88550d52ef382940a6 Mon Sep 17 00:00:00 2001
2016-03-19 18:12:30 +01:00
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 19 Jul 2015 16:51:38 -0400
Subject: [PATCH] Set health before death event
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
2017-01-29 00:36:03 +01:00
index 7da844e43..4103d4966 100644
2016-03-19 18:12:30 +01:00
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -200,4 +200,9 @@ public class PaperConfig {
2016-03-19 18:12:30 +01:00
private static void loadPermsBeforePlugins() {
loadPermsBeforePlugins = getBoolean("settings.load-permissions-yml-before-plugins", true);
}
+
+ public static boolean setHealthBeforeDeathEvent = false;
+ private static void healthDeath() {
2016-03-19 18:12:30 +01:00
+ setHealthBeforeDeathEvent = getBoolean("settings.set-health-before-death-event", false);
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
2017-02-02 05:48:16 +01:00
index eeb4f5b32..b7e832f31 100644
2016-03-19 18:12:30 +01:00
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
2017-02-02 05:48:16 +01:00
@@ -102,11 +102,20 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
2016-03-19 18:12:30 +01:00
+ (this instanceof CraftPlayer ? ", player: " + this.getName() + ')' : ')'));
}
+ // Paper start
+ if (com.destroystokyo.paper.PaperConfig.setHealthBeforeDeathEvent) {
+ this.getHandle().setHealth((float) health);
+ }
2016-07-31 01:02:34 +02:00
+
if (health == 0) {
getHandle().die(DamageSource.GENERIC);
2016-03-19 18:12:30 +01:00
}
- getHandle().setHealth((float) health);
+ // Paper start - wrap, see above
+ if (!com.destroystokyo.paper.PaperConfig.setHealthBeforeDeathEvent) {
+ getHandle().setHealth((float) health);
+ }
+ // Paper end
}
public double getMaxHealth() {
--
2017-01-29 00:36:03 +01:00
2.11.0
2016-03-19 18:12:30 +01:00