public void CheckDeads() { List <Fighter> fighters = GetAllFighters().FindAll(x => x.Alive == true && x.Stats.CurrentLifePoints <= 0); if (fighters.Count > 0) { Fighter playingFighter = null; bool seq = SequencesManager.StartSequence(SequenceTypeEnum.SEQUENCE_CHARACTER_DEATH); foreach (var fighter in fighters) { if (fighter.IsFighterTurn) { playingFighter = fighter; } fighter.Die(fighter); } if (seq) { SequencesManager.EndSequence(SequenceTypeEnum.SEQUENCE_CHARACTER_DEATH); } if (playingFighter != null)// && !Ended) { playingFighter.PassTurn(); } } }
public void TeleportFightersToInitialPosition(Fighter source) { bool sequence = SequencesManager.StartSequence(SequenceTypeEnum.SEQUENCE_MOVE); foreach (var fighter in GetAllFighters()) { if (fighter.CellId != fighter.FightStartCell) { fighter.Teleport(source, new MapPoint(fighter.FightStartCell)); } } if (sequence) { SequencesManager.EndSequence(SequenceTypeEnum.SEQUENCE_MOVE); } }