public override void Die(object cause) { base.Die(cause); GameScene.BossSlain(); Dungeon.Level.Drop(new SkeletonKey(), pos).Sprite.Drop(); Badge.ValidateBossSlain(); Yell("Mission failed. Shutting down."); }
public override void Die(object cause) { GameScene.BossSlain(); Dungeon.Level.Drop(new ArmorKit(), pos).Sprite.Drop(); Dungeon.Level.Drop(new SkeletonKey(), pos).Sprite.Drop(); base.Die(cause); Badge.ValidateBossSlain(); Yell("You cannot kill me, " + Dungeon.Hero.heroClass.Title() + "... I am... immortal..."); }
public override void Die(object cause) { base.Die(cause); ((SewerBossLevel)Dungeon.Level).Unseal(); GameScene.BossSlain(); Dungeon.Level.Drop(new SkeletonKey(), pos).Sprite.Drop(); Badge.ValidateBossSlain(); Yell("glurp... glurp..."); }
public override void Die(object cause) { //TODO: Original mobs.Clone ?!? foreach (var mob in Dungeon.Level.mobs.Where(mob => mob is BurningFist || mob is RottingFist)) { mob.Die(cause); } GameScene.BossSlain(); Dungeon.Level.Drop(new SkeletonKey(), pos).Sprite.Drop(); base.Die(cause); Yell("..."); }
public override void Die(object cause) { Badge badgeToCheck; switch (Dungeon.Hero.heroClass.Ordinal()) { case HeroClassType.Warrior: badgeToCheck = Badge.MASTERY_WARRIOR; break; case HeroClassType.Mage: badgeToCheck = Badge.MASTERY_MAGE; break; case HeroClassType.Rogue: badgeToCheck = Badge.MASTERY_ROGUE; break; case HeroClassType.Huntress: badgeToCheck = Badge.MASTERY_HUNTRESS; break; default: throw new ArgumentOutOfRangeException(); } if (!Badge.IsUnlocked(badgeToCheck)) { Dungeon.Level.Drop(new TomeOfMastery(), pos).Sprite.Drop(); } GameScene.BossSlain(); Dungeon.Level.Drop(new SkeletonKey(), pos).Sprite.Drop(); base.Die(cause); Badge.ValidateBossSlain(); Yell("Free at last..."); }