PaperMC/patches/server/1044-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch

37 lines
2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Sat, 27 Apr 2024 09:44:53 -0700
Subject: [PATCH] Revert to vanilla handling of LivingEntity#actuallyHurt
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index e0124e44e1abe8237859e8dc1e357298188dab52..dc974514ad54a4afc80b6f222ddd770c95cb6278 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2220,7 +2220,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
// CraftBukkit start
- protected boolean actuallyHurt(final DamageSource damagesource, float f) { // void -> boolean, add final
+ protected boolean actuallyHurt(final DamageSource damagesource, float f) { // void -> boolean, add final // Paper - return false ONLY if event cancelled
if (!this.isInvulnerableTo(damagesource)) {
final boolean human = this instanceof net.minecraft.world.entity.player.Player;
float originalDamage = f;
@@ -2390,14 +2390,14 @@ public abstract class LivingEntity extends Entity implements Attackable {
CriteriaTriggers.PLAYER_HURT_ENTITY.trigger((ServerPlayer) damagesource.getEntity(), this, damagesource, originalDamage, f, true); // Paper - fix taken/dealt param order
}
- return false;
+ return true; // Paper - return false ONLY if event was cancelled
} else {
- return originalDamage > 0;
+ return originalDamage > 0 || true; // Paper - return false ONLY if event was cancelled
}
// CraftBukkit end
}
}
- return false; // CraftBukkit
+ return true; // CraftBukkit // Paper - return false ONLY if event was cancelled
}
public CombatTracker getCombatTracker() {