/// <summary> /// If there are players in the location. the monster wait for a bit and kills them /// </summary> /// <param name="location"></param> public override void MakeMove(ILocation location) { // enters the location base.MakeMove(location); // if the move was not successful return if (CurrentLocation != location) return; var players = location.GetActors().Where(p => p is Player); // if there are no players in the location returns as there is no one to kill if (players.Count() == 0) return; System.Threading.Thread.Sleep(WaitTimeToKill); // if there are players in the location. the monster waits for some time before he kills the playersSystem.Threading.Thread.Sleep(WaitTimeToKill); foreach (var player in players) { // if the player does not have a Armor, the monster kills him if (!(player as Player).HasItem(new Armor().Name)) KillActor(player); } }