diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ChampionEnemy.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ChampionEnemy.java index a976c189b..e4ecf3625 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ChampionEnemy.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ChampionEnemy.java @@ -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; }