v3.0.0: fixed trinity effects blocked by antimagic being selectable

This commit is contained in:
Evan Debenham
2025-02-10 14:02:21 -05:00
parent b3570adc94
commit 19ee7d2fe2
2 changed files with 6 additions and 3 deletions

View File

@@ -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);

View File

@@ -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;