示例#1
0
        // Metodo que recibe una cadena que describe el tipo de personaje y devuelve un obejeto
        private Personaje crearPersonaje(string TipoPersonaje, ConstructorTablero.LadoTablero ladoTablero)
        {
            int       img;
            bool      lado = ladoTablero == ConstructorTablero.LadoTablero.derecha ^ anfitrion;
            Personaje personaje;

            switch (TipoPersonaje)
            {
            case "Arquero":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_Arquero_Derecha : grafico.idImagen_Arquero_Izquierda;

                personaje = new Arquero(img, lado);
                break;

            case "Caballero":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_Caballero_Derecha : grafico.idImagen_Caballero_Izquierda;

                personaje = new Caballero(img, lado);
                break;

            case "Mago":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_Mago_Derecha : grafico.idImagen_Mago_Izquierda;

                personaje = new Mago(img, lado);
                break;

            case "Ninja":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_Ninja_Derecha : grafico.idImagen_Ninja_Izquierda;

                personaje = new Ninja(img, lado, ladoTablero);
                break;

            case "Paladin Espada":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_PaladinEspada_Derecha : grafico.idImagen_PaladinEspada_Izquierda;

                personaje = new Paladin_Espada(img, lado);
                break;

            case "Paladin Lanza":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_PaladinLanza_Derecha : grafico.idImagen_PaladinLanza_Izquierda;

                personaje = new Paladin_Lanza(img, lado);
                break;

            case "Paladin Mazo":
                img = ladoTablero == ConstructorTablero.LadoTablero.derecha ? grafico.idImagen_PaladinMazo_Derecha : grafico.idImagen_PaladinMazo_Izquierda;

                personaje = new Paladin_Mazo(img, lado);
                break;

            default:
                throw new Exception("El tipo de personaje no existe");
            }

            return(personaje);
        }
示例#2
0
 public bool Atacar(Caballero personaje)
 {
     Console.WriteLine("El personaje {0}, ha realizado la tecnica {1}", personaje.Nombre, personaje.Tecnica);
     return(true);
 }
 public void HacerLaTecnica(Caballero personaje)
 {
     tecnica.Atacar(personaje);
 }
        static void Main(string[] args)
        {
            var opcion = 0;
            var fr     = new NinjectFr();

            fr.Load();

            var kernel = new StandardKernel(fr);


            var ataqueJugador = kernel.Get <Game>();


            while (opcion != 5)
            {
                Console.WriteLine("Ejercicio de Inyeccion de dependencias con Ninjectic");


                Console.WriteLine("Elije un personaje");

                Console.WriteLine("1) Mu de Aries");
                Console.WriteLine("2) Shura de Capricornio");
                Console.WriteLine("3) Saga de Géminis");
                Console.WriteLine("4) Máscara de muerte de Cáncer");
                Console.WriteLine("5) Camus de Acuario");

                opcion = int.Parse(Console.ReadLine());

                switch (opcion)
                {
                case 1:
                    Console.WriteLine("Haz elejido al caballero Mu de Aries");

                    Caballero mu = new Caballero("Mu de Aries", "Revolucion Estelar");


                    ataqueJugador.HacerLaTecnica(mu);
                    break;


                case 2:
                    Console.WriteLine("Haz elejido al caballero Shura de Capricornio");
                    Caballero shura = new Caballero("Shura de Capricornio", "Espada Sagrada Excalibur");



                    ataqueJugador.HacerLaTecnica(shura);
                    break;


                case 3:
                    Console.WriteLine("Haz elejido al caballero Saga de Géminis");
                    Caballero saga = new Caballero("Saga de Géminis", "Explosion de Galaxias");



                    ataqueJugador.HacerLaTecnica(saga);
                    break;


                case 4:
                    Console.WriteLine("Haz elejido al caballero Mascara de muerte de Cancer");
                    Caballero deadthMask = new Caballero("Mascara de muerte de Cancer", "Ondas Infernales");



                    ataqueJugador.HacerLaTecnica(deadthMask);
                    break;


                case 5:
                    Console.WriteLine("Haz elejido al caballero Camus de Acuario");
                    Caballero camus = new Caballero("Camus de Acuario", "Ejecución de Aurora");



                    ataqueJugador.HacerLaTecnica(camus);
                    break;
                }
            }
        }