From b3570adc9431ee7888d0c9cf1a7cdac1b69f4cbc Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Mon, 10 Feb 2025 13:55:17 -0500 Subject: [PATCH] v3.0.0: fixed enchants/glyphs not working with body form in some cases --- .../shatteredpixeldungeon/items/armor/Armor.java | 4 ++++ .../shatteredpixeldungeon/items/weapon/Weapon.java | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) 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 c8db53d57..9401770a4 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 @@ -693,6 +693,10 @@ public class Armor extends EquipableItem { && owner.buff(HolyWard.HolyArmBuff.class) != null && ((Hero) owner).subClass != HeroSubClass.PALADIN){ return false; + } else if (owner.buff(BodyForm.BodyFormBuff.class) != null + && owner.buff(BodyForm.BodyFormBuff.class).glyph() != null + && owner.buff(BodyForm.BodyFormBuff.class).glyph().getClass().equals(type)){ + return true; } else { return glyph.getClass() == type; } 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 0e81b88d1..e8d085815 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 @@ -457,8 +457,12 @@ abstract public class Weapon extends KindOfWeapon { && owner instanceof Hero && isEquipped((Hero) owner) && owner.buff(HolyWeapon.HolyWepBuff.class) != null - && ((Hero) owner).subClass != HeroSubClass.PALADIN){ + && ((Hero) owner).subClass != HeroSubClass.PALADIN) { return false; + } else if (owner.buff(BodyForm.BodyFormBuff.class) != null + && owner.buff(BodyForm.BodyFormBuff.class).enchant() != null + && owner.buff(BodyForm.BodyFormBuff.class).enchant().getClass().equals(type)){ + return true; } else { return enchantment.getClass() == type; }