public ScenarioPokemonViewModel( IJumpService jumpService, IScenarioWarriorService scenarioWarriorService, IIdToNameService idToNameService) { _model = new ScenarioPokemon();; JumpToPokemonCommand = new RelayCommand <int>(id => jumpService.JumpTo(PokemonSelectorEditorModule.Id, id)); JumpToAbilityCommand = new RelayCommand <int>(id => jumpService.JumpTo(AbilitySelectorEditorModule.Id, id)); JumpToFirstWarriorCommand = new RelayCommand(() => { int i = 0; foreach (var sw in scenarioWarriorService.Retrieve((int)_scenario).Enumerate()) { if (!sw.ScenarioPokemonIsDefault(0) && sw.GetScenarioPokemon(0) == _id) { jumpService.JumpToNested(ScenarioWarriorSelectorEditorModule.Id, (int)_scenario, i); return; } i++; } }); PokemonItems = idToNameService.GetComboBoxItemsExceptDefault <IPokemonService>(); PokemonItems.Add(new SelectorComboBoxItem(511, "Default")); AbilityItems = idToNameService.GetComboBoxItemsPlusDefault <IAbilityService>(); }