Example #1
0
        /// <summary>
        /// Libera al pokemon, es decir, lo elimina de los pokemones listados en la box.
        /// </summary>
        static void LiberarPokemon()
        {
            Menu.HeaderPrincipal();
            ResetearFondo();

            LogicaBox box       = new LogicaBox(LogicaPC.BoxSeleccionada);
            int       idPokemon = Validaciones.ValidarId();

            try
            {
                TablaPokemon.GenerarTabla(box.ObtenerPokemon(idPokemon));
                ResetearFondo();

                #region Confirmando la eliminacion
                if (Validaciones.ValidarSoN("Desea eliminar el pokemon?"))
                {
                    box.Liberar(idPokemon);
                    Menu.CambiarColor(ConsoleColor.Yellow);
                    Console.WriteLine("\nEl pokemon ha sido liberado");
                }
                else
                {
                    Menu.CambiarColor(ConsoleColor.Red);
                    Console.WriteLine("\nLa liberacion se ha cancelado");
                }
                #endregion
            }
            catch (NoExistePokemonException e)
            {
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine(e.Message);
            }

            Menu.EspereUnaTecla();
        }
        /// <summary>
        /// Muestra en una tabla los pokemones pasados por parámetro.
        /// </summary>
        /// <param name="pokemonesAMostrar"></param>
        /// <returns>Un indicador si se pudo o no mostrar la información</returns>
        public static bool Mostrar(Pokemon[] pokemonesAMostrar)
        {
            Menu.HeaderPrincipal();
            MenuBox.ResetearFondo();

            if (pokemonesAMostrar.Length != 0)
            {
                TablaPokemon.GenerarTabla(pokemonesAMostrar);
                return(true);
            }

            return(false);
        }
Example #3
0
        /// <summary>
        /// Busca un pokemon en la box basandose en su Id y muestra el resultado
        /// </summary>
        static void BuscarPokemon()
        {
            Menu.HeaderPrincipal();
            ResetearFondo();

            LogicaBox box       = new LogicaBox(LogicaPC.BoxSeleccionada);
            int       pokemonId = Validaciones.ValidarId();

            try
            {
                Pokemon pokemonEncontrado = box.ObtenerPokemon(pokemonId);
                TablaPokemon.GenerarTabla(pokemonEncontrado);
            }
            catch (NoExistePokemonException e)
            {
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine(e.Message);
            }

            Menu.EspereUnaTecla();
        }
Example #4
0
        /// <summary>
        /// Guarda el pokemon en un espacio de la box actual. En caso de no lograrse el guardado, muestra el mensaje de error.
        ///</summary>
        static void GuardarPokemon()
        {
            Menu.HeaderPrincipal();
            ResetearFondo();

            LogicaBox box          = new LogicaBox(LogicaPC.BoxSeleccionada);
            string    mensajeError = "El pokemon no puede ser guardado porque";

            try
            {
                if (Validaciones.ValidarSoN("El pokemon a guardar es un huevo?"))
                {
                    #region Cargar un huevo
                    ResetearFondo();
                    short cantidadPasos = Validaciones.ValidarCantPasos();
                    box.Guardar(new Huevo(cantidadPasos));
                    Menu.CambiarColor(ConsoleColor.Yellow);
                    Console.WriteLine("\nEl huevo ha sido cargado");
                    #endregion
                }
                else
                {
                    #region Cargar un pokemon
                    ResetearFondo();
                    Pokemon pokemonNuevo = CargaDatosPokemon();
                    Menu.HeaderPrincipal();
                    TablaPokemon.GenerarTabla(pokemonNuevo);
                    ResetearFondo();

                    if (Validaciones.ValidarSoN("Desea guardar este pokemon?"))
                    {
                        ResetearFondo();
                        box.Guardar(pokemonNuevo);
                        Menu.CambiarColor(ConsoleColor.Yellow);
                        Console.WriteLine("\nEl pokemon ha sido cargado");
                    }
                    else
                    {
                        Menu.CambiarColor(ConsoleColor.Red);
                        Console.WriteLine("\nSe ha cancelado la carga del pokemon");
                    }
                    #endregion
                }
            }
            catch (BoxLlenaException e)
            {
                //Cargar en otra box disponible??
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine("{0} {1}", mensajeError, e.Message.ToLower());
            }
            catch (MasterBallUnicaException e)
            {
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine("{0} {1}", mensajeError, e.Message.ToLower());
            }
            catch (LegendarioUnicoException e)
            {
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine("{0} {1}", mensajeError, e.Message.ToLower());
            }
            catch (NroDexSuperadoException e)
            {
                Menu.CambiarColor(ConsoleColor.Red);
                Console.WriteLine("{0} {1}", mensajeError, e.Message.ToLower());
            }

            Menu.EspereUnaTecla();
        }