예제 #1
0
        public void CrearRandom()
        {
            Factory = new RandomEnemigoFactory();
            var enemy = Factory.CrearEnemigo();

            Assert.IsTrue(enemy is IEntity);
        }
예제 #2
0
        public void CrearNinja()
        {
            Factory = new NinjaEnemigoFactory(); // Podemos crear cuántas factories sean necesarias.
            var enemy = Factory.CrearEnemigo();

            Assert.IsTrue(enemy is Ninja);
            Assert.IsTrue(enemy is IEntity);
        }
예제 #3
0
 static void Logica(IEnemigoFactory factory)
 {
     // Lógica adicional
     if (PuedeGenerarEnemigos)
     {
         IEntity enemigo = factory.CrearEnemigo();
         Entities.Add(enemigo);
     }
     // Más lógica aquí
 }
예제 #4
0
        static void FactoryMethod()
        {
            Console.WriteLine("\n---------------- PATRÓN FACTORY METHOD ----------------\n");

            Console.WriteLine("Por favor, seleccione el enemigo a crear:");
            Console.WriteLine("1. Orco");
            Console.WriteLine("2. Dragón");
            Console.WriteLine("3. Araña");

            Console.Write("Ingrese una opción: ");
            var opcion = Convert.ToInt32(Console.ReadLine());

            IEnemigoFactory factory = null;

            switch (opcion)
            {
            case 1:
                factory = new OrcoFactory();
                break;

            case 2:
                factory = new DragonFactory();
                break;

            case 3:
                factory = new ArañaFactory();
                break;

            default:
                break;
            }
            ;

            Enemigo enemigo1 = factory.CrearEnemigo();
            Enemigo enemigo2 = factory.CrearEnemigo(100, 100, 100);

            Console.WriteLine(enemigo1.ToString());
            Console.WriteLine(enemigo2.ToString());

            Console.ReadLine();
        }
예제 #5
0
 public void Setup()
 {
     Factory = new EnemigoFactory();
 }