diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/abilities/cleric/Trinity.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/abilities/cleric/Trinity.java index a60ff780d..cda8cca34 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/abilities/cleric/Trinity.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/abilities/cleric/Trinity.java @@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Statistics; import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility; +import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.abilities.ArmorAbility; @@ -190,7 +191,7 @@ public class Trinity extends ArmorAbility { add(btnBody); top = (int)btnBody.bottom(); - btnBody.enable(armor.charge >= trinityChargeUsePerEffect(bodyForm.getClass())); + btnBody.enable(Dungeon.hero.buff(MagicImmune.class) == null && armor.charge >= trinityChargeUsePerEffect(bodyForm.getClass())); } if (mindForm != null){ @@ -220,6 +221,9 @@ public class Trinity extends ArmorAbility { top = (int)btnMind.bottom(); btnMind.enable(armor.charge >= trinityChargeUsePerEffect(mindForm.getClass())); + if (mindForm instanceof Wand && Dungeon.hero.buff(MagicImmune.class) != null){ + btnMind.enable(false); + } } if (spiritForm != null){ @@ -263,7 +267,7 @@ public class Trinity extends ArmorAbility { add(btnSpirit); top = (int)btnSpirit.bottom(); - btnSpirit.enable(armor.charge >= trinityChargeUsePerEffect(spiritForm.getClass())); + btnSpirit.enable(Dungeon.hero.buff(MagicImmune.class) == null && armor.charge >= trinityChargeUsePerEffect(spiritForm.getClass())); } resize(width, top); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/Ring.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/Ring.java index 2184a2e14..f458b9e23 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/Ring.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/Ring.java @@ -389,7 +389,6 @@ public class Ring extends KindofMisc { && target.buff(SpiritForm.SpiritFormBuff.class) != null && target.buff(SpiritForm.SpiritFormBuff.class).ring() != null && target.buff(SpiritForm.SpiritFormBuff.class).ring().buffClass == type){ - //TODO this works for all rings atm! bonus += target.buff(SpiritForm.SpiritFormBuff.class).ring().soloBuffedBonus(); } return bonus;