private IPromise PlayEnemyTurn() { List <IPromise> enemyTurnPromises = new List <IPromise>(); var enemies = levelService.GetCharacters(EntityFaction.Enemy); foreach (var enemy in enemies) { enemyTurnPromises.Add(enemy.MakeAITurn()); } CheckForGameOver(); return(Deferred.All(enemyTurnPromises)); }