aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0147-LivingEntity-setKiller.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0147-LivingEntity-setKiller.patch')
-rw-r--r--patches/server/0147-LivingEntity-setKiller.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/patches/server/0147-LivingEntity-setKiller.patch b/patches/server/0147-LivingEntity-setKiller.patch
new file mode 100644
index 0000000000..f1c2b7065a
--- /dev/null
+++ b/patches/server/0147-LivingEntity-setKiller.patch
@@ -0,0 +1,29 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: BillyGalbreath <[email protected]>
+Date: Mon, 31 Jul 2017 01:49:48 -0500
+Subject: [PATCH] LivingEntity#setKiller
+
+== AT ==
+public net.minecraft.world.entity.LivingEntity lastHurtByPlayerTime
+
+diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+index c36e4c1802e304853320576e0521dbc53cd25425..fe631496aa551a0029eff7b4d4a5daf16dddac50 100644
+--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+@@ -406,6 +406,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
+ return this.getHandle().lastHurtByPlayer == null ? null : (Player) this.getHandle().lastHurtByPlayer.getBukkitEntity();
+ }
+
++ // Paper start
++ @Override
++ public void setKiller(Player killer) {
++ net.minecraft.server.level.ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle();
++ getHandle().lastHurtByPlayer = entityPlayer;
++ getHandle().lastHurtByMob = entityPlayer;
++ getHandle().lastHurtByPlayerTime = entityPlayer == null ? 0 : 100; // 100 value taken from EntityLiving#damageEntity
++ }
++ // Paper end
++
+ @Override
+ public boolean addPotionEffect(PotionEffect effect) {
+ return this.addPotionEffect(effect, false);