aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
diff options
context:
space:
mode:
authorJake Potrebic <[email protected]>2021-09-22 21:10:35 -0700
committerGitHub <[email protected]>2021-09-22 21:10:35 -0700
commit1707c10395e9dba7fd24d7bdf3d625b6b115ae44 (patch)
tree75bf31869ae58fffdba15f3b0e8e263b2f2fc5b6 /patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
parentf4f5a76e2a47312c8b16827b709fe28bcde06161 (diff)
downloadPaper-1707c10395e9dba7fd24d7bdf3d625b6b115ae44.tar.gz
Paper-1707c10395e9dba7fd24d7bdf3d625b6b115ae44.zip
fixes cancelling PlayerTradeEvent (#5612)
Diffstat (limited to 'patches/server/0719-Don-t-apply-cramming-damage-to-players.patch')
-rw-r--r--patches/server/0719-Don-t-apply-cramming-damage-to-players.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
new file mode 100644
index 0000000000..53d3d24527
--- /dev/null
+++ b/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
@@ -0,0 +1,40 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Phoenix616 <[email protected]>
+Date: Sun, 20 Jun 2021 16:35:42 +0100
+Subject: [PATCH] Don't apply cramming damage to players
+
+It does not make a lot of sense to damage players if they get crammed,
+ especially as the usecase of teleporting lots of players to the same
+ location isn't too uncommon and killing all those players isn't
+ really what one would expect to happen.
+
+For those who really want it a config option is provided.
+
+diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+index 2bfadd245b5d08c1b77805ee049456cc786c093e..88abb1dfd994e5bc51aa181121407f3d84f85f5b 100644
+--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
++++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+@@ -866,5 +866,10 @@ public class PaperWorldConfig {
+ private void showSignClickCommandFailureMessagesToPlayer() {
+ showSignClickCommandFailureMessagesToPlayer = getBoolean("show-sign-click-command-failure-msgs-to-player", showSignClickCommandFailureMessagesToPlayer);
+ }
++
++ public boolean allowPlayerCrammingDamage = false;
++ private void playerCrammingDamage() {
++ allowPlayerCrammingDamage = getBoolean("allow-player-cramming-damage", allowPlayerCrammingDamage);
++ }
+ }
+
+diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
+index a8c25bdaa230db9298ec2cb2fb7e09924b84be4d..0061f57c6dbd6df5bc62e4982203415db69de5aa 100644
+--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
++++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
+@@ -1420,7 +1420,7 @@ public class ServerPlayer extends Player {
+
+ @Override
+ public boolean isInvulnerableTo(DamageSource damageSource) {
+- return super.isInvulnerableTo(damageSource) || this.isChangingDimension() || this.getAbilities().invulnerable && damageSource == DamageSource.WITHER;
++ return super.isInvulnerableTo(damageSource) || this.isChangingDimension() || this.getAbilities().invulnerable && damageSource == DamageSource.WITHER || !level.paperConfig.allowPlayerCrammingDamage && damageSource == DamageSource.CRAMMING; // Paper - disable player cramming
+ }
+
+ @Override