v3.2.0: chaotic censor no longer considers passive enemies valid targets

This commit is contained in:
Evan Debenham
2025-07-30 14:32:09 -04:00
parent 7df01e672c
commit 31b8578aba

View File

@@ -37,6 +37,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ToxicGas;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.FlavourBuff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Regeneration;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.effects.TargetedCell;
@@ -105,17 +106,19 @@ public class ChaoticCenser extends Trinket {
if (left <= 0) {
Char enemy = null;
if (TargetHealthIndicator.instance != null && TargetHealthIndicator.instance.isVisible()){
Char target = TargetHealthIndicator.instance.target();
if (TargetHealthIndicator.instance != null && TargetHealthIndicator.instance.isVisible()
&& TargetHealthIndicator.instance.target() != null
&& TargetHealthIndicator.instance.target().alignment == Char.Alignment.ENEMY
&& TargetHealthIndicator.instance.target().isAlive()) {
if (target != null
&& target.isActive()
&& target.alignment == Char.Alignment.ENEMY
&& (!(target instanceof Mob) || ((Mob) target).state != ((Mob) target).PASSIVE)){
if (produceGas(TargetHealthIndicator.instance.target())){
Sample.INSTANCE.play(Assets.Sounds.GAS, 0.5f);
Dungeon.hero.interrupt();
left += Random.IntRange((int) (avgTurns * 0.9f), (int) (avgTurns * 1.1f));
if (produceGas(target)){
Sample.INSTANCE.play(Assets.Sounds.GAS, 0.5f);
Dungeon.hero.interrupt();
left += Random.IntRange((int) (avgTurns * 0.9f), (int) (avgTurns * 1.1f));
}
}
}