aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJake Potrebic <[email protected]>2024-04-27 14:35:53 -0700
committerGitHub <[email protected]>2024-04-27 14:35:53 -0700
commita7719407767f230b93aab08b92b8efe8ded8354d (patch)
tree9c7376f78168ee88c4c575cac676184caea6ee45
parent53d8edd75687d365a7707ff0cd8ad71226358d57 (diff)
downloadPaper-a7719407767f230b93aab08b92b8efe8ded8354d.tar.gz
Paper-a7719407767f230b93aab08b92b8efe8ded8354d.zip
Revert to vanilla handling of LivingEntity#actuallyHurt (#10463)
-rw-r--r--patches/server/0008-CB-fixes.patch22
-rw-r--r--patches/server/0758-Missing-eating-regain-reason.patch2
-rw-r--r--patches/server/0779-Add-EntityToggleSitEvent.patch8
-rw-r--r--patches/server/0931-Fix-several-issues-with-EntityBreedEvent.patch2
-rw-r--r--patches/server/1044-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch37
5 files changed, 43 insertions, 28 deletions
diff --git a/patches/server/0008-CB-fixes.patch b/patches/server/0008-CB-fixes.patch
index d2f62c93d6..dcaff2cc56 100644
--- a/patches/server/0008-CB-fixes.patch
+++ b/patches/server/0008-CB-fixes.patch
@@ -29,28 +29,6 @@ index cc5e1076bdf7b4794ee79934fb70234ba61efe15..b3caf69f9627ba2114dc9d06551ccf18
this.structureManager = new StructureManager(this, this.serverLevelData.worldGenOptions(), this.structureCheck); // CraftBukkit
if ((this.dimension() == Level.END && this.dimensionTypeRegistration().is(BuiltinDimensionTypes.END)) || env == org.bukkit.World.Environment.THE_END) { // CraftBukkit - Allow to create EnderDragonBattle in default and custom END
this.dragonFight = new EndDragonFight(this, this.serverLevelData.worldGenOptions().seed(), this.serverLevelData.endDragonFightData()); // CraftBukkit
-diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-index 85e0a68d85fe62df19ad9809b1869a3eee6d5465..09aa76ec6f89163c1221721008ccb541eaf420ca 100644
---- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-@@ -451,15 +451,9 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
- }
-
- @Override
-- // CraftBukkit start - void -> boolean
-- public boolean actuallyHurt(DamageSource damagesource, float f) {
-- boolean hurt = super.actuallyHurt(damagesource, f);
-- if (!hurt) {
-- return hurt;
-- }
-- // CraftBukkit end
-+ public boolean actuallyHurt(DamageSource damagesource, float f) { // Paper - change return type to boolean
- this.standUpInstantly();
-- return hurt; // CraftBukkit
-+ return super.actuallyHurt(damagesource, f); // Paper - change return type to boolean
- }
-
- @Override
diff --git a/src/main/java/net/minecraft/world/level/levelgen/structure/StructureCheck.java b/src/main/java/net/minecraft/world/level/levelgen/structure/StructureCheck.java
index 0dc7f88877020bddd5a84db51d349f52b673048e..aae73586265593ee7830fb8dd5c2e3d7560057f0 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/structure/StructureCheck.java
diff --git a/patches/server/0758-Missing-eating-regain-reason.patch b/patches/server/0758-Missing-eating-regain-reason.patch
index 6bce2423d9..7c26c6d752 100644
--- a/patches/server/0758-Missing-eating-regain-reason.patch
+++ b/patches/server/0758-Missing-eating-regain-reason.patch
@@ -18,7 +18,7 @@ index 118be62539bb0266c2e89bd68abbc4a975fcd833..07559b9629d4ecb40b511256f400a781
return InteractionResult.sidedSuccess(this.level().isClientSide());
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-index 09aa76ec6f89163c1221721008ccb541eaf420ca..f3fcfd3b358f496d26748099e1d5a95721a6a0d8 100644
+index 85e0a68d85fe62df19ad9809b1869a3eee6d5465..bc346a6ab6aaa7de363e058d1065fd147b571a57 100644
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
@@ -383,7 +383,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
diff --git a/patches/server/0779-Add-EntityToggleSitEvent.patch b/patches/server/0779-Add-EntityToggleSitEvent.patch
index 555f6fd377..6430c3e7f9 100644
--- a/patches/server/0779-Add-EntityToggleSitEvent.patch
+++ b/patches/server/0779-Add-EntityToggleSitEvent.patch
@@ -69,10 +69,10 @@ index 83d8a09980c4ab3c7c97b07c3dcdb3d7dab9e1aa..0440fd2d1bb3f87641ad88de6d5ae646
}
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-index f3fcfd3b358f496d26748099e1d5a95721a6a0d8..33531cbdd9b2a5607092d2364ce5655a63c2361c 100644
+index bc346a6ab6aaa7de363e058d1065fd147b571a57..8ebe18a1abbac81094e6aab19ba76edc0255e3b7 100644
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-@@ -560,7 +560,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
+@@ -566,7 +566,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
}
public void sitDown() {
@@ -81,7 +81,7 @@ index f3fcfd3b358f496d26748099e1d5a95721a6a0d8..33531cbdd9b2a5607092d2364ce5655a
this.makeSound(SoundEvents.CAMEL_SIT);
this.setPose(Pose.SITTING);
this.gameEvent(GameEvent.ENTITY_ACTION);
-@@ -569,7 +569,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
+@@ -575,7 +575,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
}
public void standUp() {
@@ -90,7 +90,7 @@ index f3fcfd3b358f496d26748099e1d5a95721a6a0d8..33531cbdd9b2a5607092d2364ce5655a
this.makeSound(SoundEvents.CAMEL_STAND);
this.setPose(Pose.STANDING);
this.gameEvent(GameEvent.ENTITY_ACTION);
-@@ -578,6 +578,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
+@@ -584,6 +584,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
}
public void standUpInstantly() {
diff --git a/patches/server/0931-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/0931-Fix-several-issues-with-EntityBreedEvent.patch
index 96a98989cc..dfc2aa7485 100644
--- a/patches/server/0931-Fix-several-issues-with-EntityBreedEvent.patch
+++ b/patches/server/0931-Fix-several-issues-with-EntityBreedEvent.patch
@@ -69,7 +69,7 @@ index 0440fd2d1bb3f87641ad88de6d5ae64617536a6d..db60b91c2b26ca8cdb66e05deab7742f
if (this.level().isClientSide || this.isSitting() || this.isInWater()) {
return InteractionResult.PASS;
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
-index 33531cbdd9b2a5607092d2364ce5655a63c2361c..9229948c90e278cbdacd0f82689144c8dc50956f 100644
+index 8ebe18a1abbac81094e6aab19ba76edc0255e3b7..4eb26874f21726bbc6e6ad78bfaf4ecd268c7246 100644
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
@@ -389,7 +389,7 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
diff --git a/patches/server/1044-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch b/patches/server/1044-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch
new file mode 100644
index 0000000000..9f386e1311
--- /dev/null
+++ b/patches/server/1044-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch
@@ -0,0 +1,37 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jake Potrebic <[email protected]>
+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() {