From 458c98aed4d2e5b39d80d2a53e2a87beddc76f2d Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Thu, 30 Jan 2025 11:24:47 -0500 Subject: [PATCH] v3.0.0: fixed holy weapon and ward overriding curse procs --- .../shatteredpixeldungeon/items/armor/Armor.java | 3 ++- .../shatteredpixeldungeon/items/weapon/Weapon.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/Armor.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/Armor.java index f3b9f7bc6..187761d2c 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/Armor.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/Armor.java @@ -436,7 +436,8 @@ public class Armor extends EquipableItem { if (defender.buff(MagicImmune.class) == null) { if (defender instanceof Hero && isEquipped((Hero) defender) && defender.buff(HolyWard.HolyArmBuff.class) != null){ - if (((Hero) defender).subClass == HeroSubClass.PALADIN && glyph != null){ + if (glyph != null && + (((Hero) defender).subClass == HeroSubClass.PALADIN || hasCurseGlyph())){ damage = glyph.proc( this, attacker, defender, damage ); } int blocking = ((Hero) defender).subClass == HeroSubClass.PALADIN ? 3 : 1; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/Weapon.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/Weapon.java index 0372b9f02..987ef3782 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/Weapon.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/Weapon.java @@ -124,7 +124,8 @@ abstract public class Weapon extends KindOfWeapon { if (attacker.buff(MagicImmune.class) == null) { if (attacker instanceof Hero && isEquipped((Hero) attacker) && attacker.buff(HolyWeapon.HolyWepBuff.class) != null){ - if (((Hero) attacker).subClass == HeroSubClass.PALADIN && enchantment != null){ + if (enchantment != null && + (((Hero) attacker).subClass == HeroSubClass.PALADIN || hasCurseEnchant())){ damage = enchantment.proc(this, attacker, defender, damage); if (defender.alignment == Char.Alignment.ALLY && !wasAlly){ becameAlly = true;