Пример #1
0
        static void Main(string[] args)
        {
            MenuPrincipal();

            if (JugadorActual.Exp == 0)
            {
                JugadorActual.Nombre = Historia.PregunarNombre();
                Historia.HistoriaPrincipio(JugadorActual.Nombre);
                Encuentros.PrimerEncuentro(JugadorActual);
            }
            Loop(loopPrincipal);
        }
Пример #2
0
        /// <summary>
        /// Loop donde al usuario se le da 4 opciones diferentes de que quiere hacer
        /// Hacer un encuentro aleatorio
        /// Visitar la tienda
        /// Guardar su partida
        /// Salir del programa
        /// </summary>
        /// <param name="LoopPrincipal">Mientras el bool sea verdadero se le seguiran presentando las 4 opciones al jugador</param>
        static void Loop(bool LoopPrincipal)
        {
            while (loopPrincipal)
            {
                Console.Clear();
                Console.WriteLine("*==========================*");
                Console.WriteLine("| (E)xplorar    (T)ienda   |");
                Console.WriteLine("| (G)uardar     (S)alir    |");
                Console.WriteLine("*==========================*");
                string input = Console.ReadLine();
                input = input.ToLower();
                if (input == "e" || input == "explorar")
                {
                    if (JugadorActual.Exp == 8)
                    {
                        Historia.HistoriaDesarrollo();
                        JugadorActual.Mods++;
                        JugadorActual.Pociones += 5;
                        JugadorActual.Exp++;
                    }
                    else if (JugadorActual.Exp == 14)
                    {
                        //Historia.HistoriaFinal();
                        Enemigo EnemigoFinal = new Enemigo();
                        Combate.Pelea(false, EnemigoFinal.Nombre, EnemigoFinal.PoderDelArma, EnemigoFinal.Vida, JugadorActual);
                        Console.Clear();
                        if (JugadorActual.Exp == 14)
                        {
                            Console.WriteLine("Mientras el hombre te golpea, puedes escuchar como dice");
                            EnemigoFinal.Victoria();
                            Console.WriteLine();
                            Console.WriteLine("No pudiste vencerlo...");
                            Console.WriteLine("En tu desesperacion, hiciste lo que mejor sabes hacer.");
                            Console.WriteLine("Huir y esconderte como un cobarde.");
                            Console.WriteLine("Este es el fin.....");
                            Console.ReadKey();
                            Environment.Exit(0);
                        }
                        else
                        {
                            Historia.Imprimir("Lo has logrado,tu adversario ha muerto.");
                            Historia.Imprimir("Has conseguido un lugar en esta civilizacion.");
                            Historia.Imprimir("Civilizacion y paz....");
                            Console.ReadKey();
                            Environment.Exit(0);
                        }
                    }
                    else
                    {
                        Encuentros.EncuentroAleatorio(JugadorActual);
                    }
                }
                else if (input == "t" || input == "tienda")
                {
                    Tiendita.AbrirTienda(JugadorActual);
                }
                else if (input == "g" || input == "guardar")
                {
                    //Nombre,Vida,Monedas,Armadura,Pociones,PoderDelArma,Mods,Exp
                    string Datos = (JugadorActual.Nombre + "," + JugadorActual.Vida + "," + JugadorActual.Monedas + "," + JugadorActual.Armadura + "," + JugadorActual.Pociones + "," + JugadorActual.PoderDelArma + "," + JugadorActual.Mods + "," + JugadorActual.Exp);
                    Historia.Guardar(NombreDePartida, Datos);
                    Console.WriteLine("Los datos han sido guardados");

                    Console.ReadKey();
                }
                else if (input == "s" || input == "salir")
                {
                    Console.WriteLine("Hasta luego!");
                    Environment.Exit(0);
                }
            }
        }
Пример #3
0
        public static void Pelea(bool random, string nombreEnemigo, int daño, int vida, Jugador p)
        {
            string n;
            int    d;
            int    v;
            int    dañoRecibido;
            int    dañoInfligido;

            if (random)
            {
                n = Encuentros.ObtenerEnemigo();
                d = p.ObtenerFuerza(p);
                v = p.ObtenerVida(p);
            }
            else
            {
                n = nombreEnemigo;
                d = daño;
                v = vida;
            }
            while (v > 0)
            {
                Console.Clear();
                Console.WriteLine("Puntos de vida del " + n + " : " + v);
                Console.WriteLine("Poder del " + n + " : " + d);
                Console.WriteLine("*==========================*");
                Console.WriteLine("| (A)tacar    (D)efender   |");
                Console.WriteLine("| (C)orrer    (P)ocion     |");
                Console.WriteLine("*==========================*");
                Console.WriteLine("Pociones: " + p.Pociones + " Vida: " + p.Vida);
                string input = Console.ReadLine();
                input = input.ToLower();
                switch (input)
                {
                case "a":
                case "atacar":
                    //Atacar. Atacas con toda tu fuerza, infligiendo mucho daño, pero recibiendo mucho daño tambien
                    Console.WriteLine("Sin cuidado alguno cortas con tu espada, en la direccion de tu oponente, el " + n + " logra atacarte tambien");
                    dañoRecibido = r.Next(d, d + 2) - p.Armadura;
                    if (dañoRecibido < 0)
                    {
                        dañoRecibido = 0;
                    }
                    dañoInfligido = p.Atacar();
                    Console.WriteLine();
                    Console.WriteLine("Pierdes " + dañoRecibido + " punto(s) de vida, e infliges " + dañoInfligido + " punto(s) de daño al enemigo");
                    p.Vida -= dañoRecibido;
                    v      -= dañoInfligido;
                    Console.ReadKey();

                    break;

                case "d":
                case "defender":
                    //Defender. Te enfocas en defender, recibes daño disminuido, pero infliges poco daño
                    Console.WriteLine("Mientras que el " + n + " se prepara para atacar, adoptas una postura defensiva ");
                    dañoRecibido = (d - 1) - p.Armadura;
                    if (dañoRecibido < 0)
                    {
                        dañoRecibido = 0;
                    }
                    dañoInfligido = (p.Atacar() - 1);
                    Console.WriteLine("Pierdes " + dañoRecibido + " punto(s) de vida, e infliges " + dañoInfligido + " punto(s) de daño al enemigo");
                    p.Vida -= dañoRecibido;
                    v      -= dañoInfligido;
                    Console.ReadKey();
                    break;

                case "c":
                case "correr":
                    //Correr.Intentas huir de la batalla
                    if (r.Next(0, 2) == 0)
                    {
                        Console.WriteLine("Intentas huir de la batalla, pero te tropiezas");
                        Console.WriteLine("El " + n + " aprovecha esta oportunidad para atacarte");
                        dañoRecibido = d - p.Armadura;
                        if (dañoRecibido < 0)
                        {
                            dañoRecibido = 0;
                        }
                        Console.WriteLine("Recibes " + dañoRecibido + " punto(s) de daño y no logras escapar");
                        p.Vida -= dañoRecibido;
                        Console.ReadKey();
                    }
                    else
                    {
                        Console.WriteLine("Fuga");
                        Console.ReadKey();
                        Console.Clear();

                        return;
                    }

                    break;

                case "p":
                case "pocion":
                    //Pocion. Consumir pocion
                    if (p.Pociones == 0)
                    {
                        Console.WriteLine("Buscas desesperadamente en tu bolsa, pero las pociones se han agotado");
                        Console.WriteLine("El " + n + " aprovecha la oportunidad para golpearte");
                        dañoRecibido = d - p.Armadura;
                        if (dañoRecibido < 0)
                        {
                            dañoRecibido = 0;
                        }
                        Console.WriteLine("Recibes " + dañoRecibido + " punto(s) de daño");
                        p.Vida -= dañoRecibido;
                        Console.ReadKey();
                    }
                    else
                    {
                        Console.WriteLine("Usas tu pocion de curacion");
                        int pocionPotencia = 5 * (p.Mods + 1);
                        Console.WriteLine("Recuperas " + pocionPotencia + " puntos de vida");
                        p.Vida     += pocionPotencia;
                        p.Pociones -= 1;
                        Console.WriteLine("El " + n + " aprovecha el momento para atacarte");
                        dañoRecibido = (d - p.Armadura) - 1;
                        if (dañoRecibido < 0)
                        {
                            dañoRecibido = 0;
                        }
                        Console.WriteLine("Recibes " + dañoRecibido + " punto(s) de daño");
                        p.Vida -= dañoRecibido;
                        Console.ReadKey();
                    }
                    break;
                }
                if (p.Vida <= 0)
                {
                    Console.WriteLine("Tus puntos de vida han llegado a 0");
                    Console.WriteLine("Fuiste derrotado por el " + n);
                    Historia.Imprimir("Has muerto....");
                    Console.ReadKey();
                    Environment.Exit(0);
                }
            }
            int oro = p.ObtenerMonedas(p);

            Console.Clear();
            Console.WriteLine("Has derrotado al " + n);
            Console.WriteLine("Obtienes " + oro + " monedas de oro ");
            p.Victoria();
            p.Monedas += oro;
            p.Exp      = p.Exp + 1;
            Console.ReadKey();
        }