package com.trifulcas.ejercitos;
abstract public class Enemigo {
private String nombre;
private int fortaleza;
private int danyo;
/**
* @param nombre the nombre to set
*/
protected void setNombre(String nombre) {
this.nombre = nombre;
}
/**
* @param fortaleza the fortaleza to set
*/
protected void setFortaleza(int fortaleza) {
this.fortaleza = fortaleza;
}
/**
* @param danyo the danyo to set
*/
protected void setDanyo(int danyo) {
if (danyo >= 0) {
this.danyo = danyo;
}
}
/**
* @return the nombre
*/
public String getNombre() {
return nombre;
}
/**
* @return the fortaleza
*/
public int getFortaleza() {
return fortaleza;
}
/**
* @return the danyo
*/
public int getDanyo() {
return danyo;
}
public Enemigo() {
// TODO Auto-generated constructor stub
}
}
package com.trifulcas.ejercitos;
abstract public class Infanteria extends Enemigo {
private int armadura;
/**
* @param armadura the armadura to set
*/
protected void setArmadura(int armadura) {
this.armadura = armadura;
}
public Infanteria() {
// TODO Auto-generated constructor stub
}
abstract void cargar();
abstract void retroceder();
}
package com.trifulcas.ejercitos;
abstract public class Caballeria extends Enemigo {
private int velocidad;
public Caballeria() {
// TODO Auto-generated constructor stub
}
}
package com.trifulcas.ejercitos;
abstract public class Arqueros extends Enemigo {
private int distancia;
public Arqueros() {
// TODO Auto-generated constructor stub
}
}
package com.trifulcas.ejercitos;
public class Soldado extends Infanteria {
public Soldado() {
setNombre("Soldado");
setFortaleza(50);
setDanyo(5);
setArmadura(20);
}
@Override
public void cargar() {
System.out.println("Ataque de soldados "+getDanyo());
}
@Override
public void retroceder() {
System.out.println("¡¡Retirada!!!!");
setFortaleza(getFortaleza()-5);
setDanyo(getDanyo()-1);
}
}
package com.trifulcas.ejercitos;
public class Lancero extends Infanteria {
public Lancero() {
setNombre("Lancero");
setFortaleza(60);
setDanyo(15);
setArmadura(10);
}
@Override
public void cargar() {
System.out.println("Ataque de lanceros "+getDanyo());
}
@Override
public void retroceder() {
System.out.println("¡¡Retirada!!!!");
setFortaleza(getFortaleza()-4);
setDanyo(getDanyo()-2);
}
}
package com.trifulcas.ejercitos;
public class Capitan extends Infanteria {
public Capitan() {
setNombre("Capitán");
setFortaleza(70);
setDanyo(10);
setArmadura(40);
}
@Override
public void cargar() {
System.out.println("Ataque de capitán "+getDanyo());
}
@Override
public void retroceder() {
System.out.println("¡¡Retirada!!!!");
setFortaleza(getFortaleza()-5);
setDanyo(getDanyo()-2);
}
}
package com.trifulcas.ejercitos;
public class Ejercito {
Infanteria[] infanteria;
public Ejercito() {
infanteria=new Infanteria[15];
for(int i=0;i<10;i++) {
infanteria[i]=new Soldado();
}
for(int i=10;i<14;i++) {
infanteria[i]=new Lancero();
}
infanteria[14]=new Capitan();
}
}