From a6265d7ba38dddc70a9c28b75d8264ab9ecfc8f0 Mon Sep 17 00:00:00 2001 From: Kam Date: Fri, 20 Feb 2026 03:50:56 -0500 Subject: [PATCH] Forgot to Commit modifyProjectileDamage --- .../controllers/data/ability/IAbilityExtender.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/main/java/kamkeel/npcs/controllers/data/ability/IAbilityExtender.java b/src/main/java/kamkeel/npcs/controllers/data/ability/IAbilityExtender.java index e3e7e5c0b..2bb179cc2 100644 --- a/src/main/java/kamkeel/npcs/controllers/data/ability/IAbilityExtender.java +++ b/src/main/java/kamkeel/npcs/controllers/data/ability/IAbilityExtender.java @@ -73,4 +73,18 @@ public interface IAbilityExtender { double knockbackDirX, double knockbackDirZ) { return false; } + + /** + * Called to modify outgoing projectile damage before it hits a barrier or is used in other contexts. + * Unlike onAbilityDamage (chain of responsibility), this is cumulative — all extenders apply their + * modifications in sequence, each receiving the previous extender's output. + * + * @param ability The source ability of the projectile + * @param caster The entity that fired the projectile + * @param baseDamage The base damage from the ability configuration + * @return The modified damage value + */ + default float modifyProjectileDamage(Ability ability, EntityLivingBase caster, float baseDamage) { + return baseDamage; + } }