public void SelectNextLevel() { if (TargetLevelNumber == -1) { if (LevelsToVisit.Count != 0) { TargetLevelNumber = LevelsToVisit.First().LevelNumber; } } }
private void TakePeople() { while (CurrentLevel.Queue.Count > 0 && People.Count < Capacity) { Person p = CurrentLevel.Queue.Dequeue(); p.IsInLift = true; p.QueueNumber = People.Count; People.Add(p); if (PersonMoved != null) { PersonMoved(this, new PersonMovedEventArgs(p)); } if (CurrentLevel.Queue.Count == 0) { CurrentLevel.IsLiftSummonButtonPushed = false; while (levelsToVisit.Contains(CurrentLevel)) { LevelsToVisit.Remove(CurrentLevel); } } } }