static void Main(string[] args) { Guerrero guerrero = new Guerrero(); Mago mago = new Mago(); Console.WriteLine("===================="); Console.ReadLine(); guerrero.Atacar(); mago.Atacar(); Console.WriteLine("===================="); Console.ReadLine(); List <IPersonaje> personajes = new List <IPersonaje>(); personajes.Add(guerrero); personajes.Add(mago); IVisitorPersonaje visitor = new EquiparArmaVisitor(); visitor.visit(personajes); Console.WriteLine("===================="); Console.ReadLine(); guerrero.Atacar(); mago.Atacar(); Console.WriteLine("===================="); Console.ReadLine(); guerrero.Nivel = 5; mago.Nivel = 5; Console.WriteLine("Guerrero y Mago suben a nivel 5"); Console.WriteLine("===================="); Console.ReadLine(); visitor.visit(personajes); Console.WriteLine("===================="); Console.ReadLine(); guerrero.Atacar(); mago.Atacar(); Console.WriteLine("===================="); Console.ReadLine(); mago.Nivel = 10; Console.WriteLine("Mago sube a nivel 10"); Console.WriteLine("===================="); Console.ReadLine(); visitor.visit(personajes); Console.WriteLine("===================="); Console.ReadLine(); guerrero.Atacar(); mago.Atacar(); Console.WriteLine("===================="); Console.ReadLine(); }
public void Personajes_Muertos_No_Pueden_Atacar() { // ARRANGE Guerrero guerrero1 = new Guerrero(); Guerrero guerrero2 = new Guerrero(); // ACT guerrero1.Vida = 0; guerrero1.Fuerza = 20; guerrero1.Atacar(guerrero2, guerrero1.Fuerza); // ASSERT Assert.AreEqual(100, guerrero2.Vida); }
public void Guerreros_Recuperan_Vida_5_PorCiento_Danyo_Producido_Al_Atacar() { // ARRANGE Guerrero guerrero1 = new Guerrero(); Guerrero guerrero2 = new Guerrero(); // ACT guerrero1.Vida = 70; guerrero1.Fuerza = 20; guerrero1.Atacar(guerrero2, guerrero1.Fuerza); // ASSERT Assert.AreEqual(74, guerrero1.Vida); }
public void Personaje_Solo_Puede_Atacar_A_Otro_Dentro_De_Su_Rango_De_Ataque() { // ARRANGE Guerrero guerrero1 = new Guerrero(); Guerrero guerrero2 = new Guerrero(); // ACT guerrero1.Rango = 10; guerrero1.Fuerza = 20; Posicion posicion = new Posicion(); posicion.CoordenadaX = 8; posicion.CoordenadaZ = 10; guerrero2.Posicion = posicion; guerrero1.Atacar(guerrero2, guerrero1.Fuerza); // ASSERT Assert.AreEqual(100, guerrero2.Vida); }