summaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorCarson Fleming <cflems@cflems.net>2025-11-08 17:44:44 -0500
committerCarson Fleming <cflems@cflems.net>2025-11-08 17:44:44 -0500
commit8a173d4f1e05a47f1cfea67fb273f07873b3594d (patch)
tree0b1d10ba9e033390888e0e9cb5f030517a5ac88d /src/main/java
parent1e10276daeef47100245d250efb1f5d489d66ddf (diff)
downloadpenguin-dust-8a173d4f1e05a47f1cfea67fb273f07873b3594d.tar.gz
drop off magical damage to armor with distance
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/net/cflems/mc/penguin_dust/listener/DamageListener.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/java/net/cflems/mc/penguin_dust/listener/DamageListener.java b/src/main/java/net/cflems/mc/penguin_dust/listener/DamageListener.java
index c1a48f8..f7f2e9f 100644
--- a/src/main/java/net/cflems/mc/penguin_dust/listener/DamageListener.java
+++ b/src/main/java/net/cflems/mc/penguin_dust/listener/DamageListener.java
@@ -56,13 +56,16 @@ public final class DamageListener implements Listener {
}
Entity damagee = event.getEntity();
+ double distance = damagee.getLocation().distance(damager.getLocation());
+
if (damagee instanceof LivingEntity livingDamagee) {
EntityEquipment damageeEquipment = livingDamagee.getEquipment();
if (damageeEquipment != null)
- spellStrength = consumeReinforcement(damageeEquipment, spellStrength);
+ spellStrength =
+ consumeReinforcement(
+ damageeEquipment, Math.max(spellStrength - (int) distance, 0));
}
- double distance = damagee.getLocation().distance(damager.getLocation());
double damage = causingSpell.calculateDamage(spellStrength, distance);
event.setDamage(damage);
}