PaperMC/patches/server/1035-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch
Jake Potrebic a47e11d464
fix knockback events (#10831)
* fix knockback events

* squash

* handle cancelled event for explosions
2024-05-30 13:17:16 -07:00

34 lines
1.7 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 3276ea59999e76c2a2b0c82b96e0e91865e96a98..6b447cdf5b14deb26e0454f9f731724c89f2d498 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2216,7 +2216,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;
@@ -2388,12 +2388,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
return true;
} else {
- return originalDamage >= 0;
+ return 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() {