/// <summary> /// Handles user interaction to edit a Pokemon in the Pokedex. /// </summary> /// <param name="pokeDexRepository"></param> public void HandlePokedexEdit() { Console.WriteLine("╔════════════════════════╗"); Console.WriteLine("║ Welcome to PokéEdit! ║"); Console.WriteLine("╚════════════════════════╝"); Console.WriteLine("What? Made a mistake? Let's fix that."); Console.WriteLine("Which Pokémon ID# do you want to edit?"); var userInput = Console.ReadLine(); var selectedPokemon = Search(PokeDexRepository, userInput); selectedPokemon.Name = HandleChange("Name", selectedPokemon.Name); selectedPokemon.Type1 = HandleChange("Type 1", selectedPokemon.Type1); selectedPokemon.Type2 = HandleChange("Type 2", selectedPokemon.Type2); string UserInputHP = HandleChange("HP", selectedPokemon.HP.ToString()); string UserInputAttack = HandleChange("Attack", selectedPokemon.Attack.ToString()); string UserInputDefense = HandleChange("Defense", selectedPokemon.Defense.ToString()); string UserInputSpAtk = HandleChange("SpAtk", selectedPokemon.SpAtk.ToString()); string UserInputSpDef = HandleChange("SpDef", selectedPokemon.SpDef.ToString()); string UserInputSpeed = HandleChange("Speed", selectedPokemon.Speed.ToString()); string UserInputLegendary = HandleChange("Legendary", selectedPokemon.Legendary.ToString()); selectedPokemon.HP = IntTryParse(UserInputHP, selectedPokemon.HP); selectedPokemon.Attack = IntTryParse(UserInputAttack, selectedPokemon.HP); selectedPokemon.Defense = IntTryParse(UserInputDefense, selectedPokemon.HP); selectedPokemon.SpAtk = IntTryParse(UserInputSpAtk, selectedPokemon.HP); selectedPokemon.SpDef = IntTryParse(UserInputSpDef, selectedPokemon.HP); selectedPokemon.Speed = IntTryParse(UserInputSpeed, selectedPokemon.HP); selectedPokemon.Legendary = BoolTryParse(UserInputLegendary, selectedPokemon.Legendary); PokeDexRepository.Edit(selectedPokemon); }