mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-23 17:37:45 +01:00
9ff01b16ab
This will be used by my next commit. But trying to get the build going since CI blew up
51 lines
2.0 KiB
Diff
51 lines
2.0 KiB
Diff
From 12e201bfb0a6bbbd6062ddff4209e23f89dea8e5 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 2db9fc0..5a9e032 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -180,4 +180,9 @@ public class PaperConfig {
|
|
private static void loadPermsBeforePlugins() {
|
|
loadPermsBeforePlugins = getBoolean("settings.load-permissions-yml-before-plugins", true);
|
|
}
|
|
+
|
|
+ public static boolean setHealthBeforeDeathEvent = false;
|
|
+ public 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 0502593..3a0d338 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
@@ -98,11 +98,21 @@ 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);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
if (entity instanceof EntityPlayer && health == 0) {
|
|
((EntityPlayer) entity).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.7.4
|
|
|