mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-15 07:01:36 +08:00
974b0afca9
CraftBukkit removed their implementation that caused this issue, switching to Mojang's implementation which doesn't appear to share it. I already removed the important bit in the last upstream merge, this is just unused and unnecessary now. So we remove it.
50 lines
2.0 KiB
Diff
50 lines
2.0 KiB
Diff
From 4cea4a67fa45178c59807df4f21b86b09b88574e Mon Sep 17 00:00:00 2001
|
|
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
|
|
index b5ff26c71..6907d4680 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -215,4 +215,9 @@ public class PaperConfig {
|
|
private static void loadPermsBeforePlugins() {
|
|
loadPermsBeforePlugins = getBoolean("settings.load-permissions-yml-before-plugins", true);
|
|
}
|
|
+
|
|
+ public static boolean setHealthBeforeDeathEvent = false;
|
|
+ private static void healthDeath() {
|
|
+ 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
|
|
index 348a8c758..c0103cb39 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
@@ -102,11 +102,20 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
|
+ (this instanceof CraftPlayer ? ", player: " + this.getName() + ')' : ')'));
|
|
}
|
|
|
|
+ // Paper start
|
|
+ if (com.destroystokyo.paper.PaperConfig.setHealthBeforeDeathEvent) {
|
|
+ this.getHandle().setHealth((float) health);
|
|
+ }
|
|
+
|
|
if (health == 0) {
|
|
getHandle().die(DamageSource.GENERIC);
|
|
}
|
|
|
|
- getHandle().setHealth((float) health);
|
|
+ // Paper start - wrap, see above
|
|
+ if (!com.destroystokyo.paper.PaperConfig.setHealthBeforeDeathEvent) {
|
|
+ getHandle().setHealth((float) health);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
|
|
public double getMaxHealth() {
|
|
--
|
|
2.12.2.windows.2
|
|
|