Files
Purpur/patches/server/0199-Toggle-for-kinetic-damage.patch
Ben Kerllenevich cc465d63cd Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@eb0693f Fix EntityDeathEvent cancellation (#9323)
PaperMC/Paper@f8cfdd4 Fix SmithingInventory helper slot methods for 1.20 (#9325)
PaperMC/Paper@de19eb8 fix incorrectly updated move vector checking patch (#9328)
PaperMC/Paper@87dfff4 Implement BossBarViewer on Player (#9332)
PaperMC/Paper@2d09115 Use net.kyori.ansi for console logging (#9313)
PaperMC/Paper@b48e2e3 Fix dev bundle generation
PaperMC/Paper@c287e92 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9301)
PaperMC/Paper@2e363c7 1.20.1 (#9333)
2023-06-13 13:40:15 -04:00

38 lines
2.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: 12emin34 <macanovic.emin@gmail.com>
Date: Wed, 4 Aug 2021 11:44:26 +0200
Subject: [PATCH] Toggle for kinetic damage
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index ac9b48a59b197648a6781629c4409712d0af44ab..d70ec00c4e145d0c754179bb26ed8fb20b63c0a7 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2878,6 +2878,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
if (f3 > 0.0F) {
this.playSound(this.getFallDamageSound((int) f3), 1.0F, 1.0F);
+ if (level().purpurConfig.elytraKineticDamage) // Purpur
this.hurt(this.damageSources().flyIntoWall(), f3);
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 2edb74f618b1b9d5a299ba87bd663fb17495ff03..e6a26392252d70d842dfe1c9fb2d72132a1edef5 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -184,12 +184,14 @@ public class PurpurWorldConfig {
public boolean elytraIgnoreUnbreaking = false;
public int elytraDamagePerFireworkBoost = 0;
public int elytraDamagePerTridentBoost = 0;
+ public boolean elytraKineticDamage = true;
private void elytraSettings() {
elytraDamagePerSecond = getInt("gameplay-mechanics.elytra.damage-per-second", elytraDamagePerSecond);
elytraDamageMultiplyBySpeed = getDouble("gameplay-mechanics.elytra.damage-multiplied-by-speed", elytraDamageMultiplyBySpeed);
elytraIgnoreUnbreaking = getBoolean("gameplay-mechanics.elytra.ignore-unbreaking", elytraIgnoreUnbreaking);
elytraDamagePerFireworkBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.firework", elytraDamagePerFireworkBoost);
elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
+ elytraKineticDamage = getBoolean("gameplay-mechanics.elytra.kinetic-damage", elytraKineticDamage);
}
public int entityLifeSpan = 0;