mirror of
https://github.com/PaperMC/Paper.git
synced 2024-08-27 15:09:34 +02:00
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 13eb4146 SPIGOT-5217, SPIGOT-6183: Add RespawnReason to PlayerRespawnEvent CraftBukkit Changes: 5ee3419b7 SPIGOT-5217, SPIGOT-6183: Add RespawnReason to PlayerRespawnEvent Spigot Changes: 514cf03a Rebuild patches and add RespawnReason.PLUGIN to Player#respawn
52 lines
2.3 KiB
Diff
52 lines
2.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: TreyRuffy <TreyRuffy@users.noreply.github.com>
|
|
Date: Fri, 27 May 2022 02:26:08 -0600
|
|
Subject: [PATCH] Flying Fall Damage
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
index 5b772b3caeafe98aa45a01bffe215a5dd33323b6..0629c471d38a77c44fc1c86ccdfcb0690f61ca17 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
@@ -184,6 +184,7 @@ public abstract class Player extends LivingEntity {
|
|
public float hurtDir; // Paper - protected -> public
|
|
// Paper start
|
|
public boolean affectsSpawning = true;
|
|
+ public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET;
|
|
// Paper end
|
|
|
|
// CraftBukkit start
|
|
@@ -1754,7 +1755,7 @@ public abstract class Player extends LivingEntity {
|
|
|
|
@Override
|
|
public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) {
|
|
- if (this.abilities.mayfly) {
|
|
+ if (this.abilities.mayfly && !this.flyingFallDamage.toBooleanOrElse(false)) { // Paper - flying fall damage
|
|
return false;
|
|
} else {
|
|
if (fallDistance >= 2.0F) {
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
index 88ac838be9aff2f2190032a1bf9d85e8d360ec42..305badea8121494968f6c32ec8d6eb17d2b1fd97 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
@@ -2322,6 +2322,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
|
this.getHandle().onUpdateAbilities();
|
|
}
|
|
|
|
+ // Paper start - flying fall damage
|
|
+ @Override
|
|
+ public void setFlyingFallDamage(@NotNull net.kyori.adventure.util.TriState flyingFallDamage) {
|
|
+ getHandle().flyingFallDamage = flyingFallDamage;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public net.kyori.adventure.util.TriState hasFlyingFallDamage() {
|
|
+ return getHandle().flyingFallDamage;
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
@Override
|
|
public int getNoDamageTicks() {
|
|
if (this.getHandle().spawnInvulnerableTime > 0) {
|