v3.3.0: specific powerful earlygame enemy spawns can no longer be champs

This commit is contained in:
Evan Debenham
2025-10-15 10:56:42 -04:00
parent 491377a32d
commit 8a40fa52bd

View File

@@ -27,7 +27,11 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Fire;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Bat;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Crab;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Guard;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Thief;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator;
@@ -88,8 +92,6 @@ public abstract class ChampionEnemy extends Buff {
}
public static void rollForChampion(Mob m){
if (Dungeon.mobsToChampion <= 0) Dungeon.mobsToChampion = 8;
Dungeon.mobsToChampion--;
//we roll for a champion enemy even if we aren't spawning one to ensure that
@@ -105,7 +107,15 @@ public abstract class ChampionEnemy extends Buff {
}
if (Dungeon.mobsToChampion <= 0 && Dungeon.isChallenged(Challenges.CHAMPION_ENEMIES)) {
//we block certain standout enemies on floor <10 from becoming champions
if (m instanceof Crab && Dungeon.scalingDepth() <= 3) return;
if (m instanceof Thief && Dungeon.scalingDepth() <= 4) return;
if (m instanceof Guard && Dungeon.scalingDepth() <= 7) return;
if (m instanceof Bat && Dungeon.scalingDepth() <= 9) return;
Buff.affect(m, buffCls);
Dungeon.mobsToChampion += 8;
if (m.state != m.PASSIVE) {
m.state = m.WANDERING;
}