private void BuildStages(QuestStageDetailsViewModel stage) { var stages = stage.NextStages; if (stages == null || stages.Count == 0) { return; } var container = new QuestStageContainer(stages); Stages.Add(container); var first = stages.First(); BuildStages(first); }
private void BuildStagesForNewQuest() { Stages.Clear(); var first = CurrentQuest.FirstStage; if (first == null) { return; } var firstStage = new List <QuestStageDetailsViewModel>(); var viewModel = new QuestStageDetailsViewModel(first); firstStage.Add(viewModel); Stages.Add(new QuestStageContainer(firstStage)); BuildStages(viewModel); }
public void BuildStageList(QuestStageDetailsViewModel stage) { if (stage == null) { return; } var item = Stages.FirstOrDefault(x => x.Stages.Contains(stage)); var index = Stages.IndexOf(item) + 1; var endIndex = Stages.Count - 1; for (int i = index; i <= endIndex; i++) { Stages.RemoveAt(index); } BuildStages(stage); }