RE:AYUDA CON JUEGOS EN JAVA!
Yo creo que lo adecuado podría ser crear una clase genérica "Enemigo", con los datos comunes de cualquier enemigo. De ella luego heredarán las distintas clases de enemigos que aportarán los atributos distintos de cada uno. Pongamos un ejemplo sencillo:
public class Enemigo{
private long puntosVitales; // Puntos "de vida" que hay que agotar al enemigo antes de que muera.
private long velocidadMovimiento; // Velocidad con la que se moverá este enemigo
private long velocidadAtaque; // Velocidad con la que ataca el enemigo
private long puntosAtaque; // Puntos de daño que produce al realizar un ataque con éxito
private Armas[ ] armasPosibles; // Posibles armas que tendrá cada enemigo
public Enemigo( ){ }
public Enemigo(long puntosVitales, long velocidadMovimiento, long velocidadAtaque, long puntosAtaque, Armas[ ] armasPosibles){
this.puntosVitales = puntosVitales;
this.velocidadMovimiento = velocidadMovimiento;
.
.
.
}
}
Ahora tendrías que hacer clases que extendiesen a ésta. Como por ejemplo... la clase Alienigena y la clase Terrorista. En sus respectivos constructores, cada una asignaria distintos valores a sus puntos de vida, a su ataque, a su velocidad, asignarias armas distintas... Y a parte tendrían sus propios atributos. Por ejemplo, los alienígenas podrían tener un atributo boolean llamado campoFuerza que cuando lo tuviesen activo, no sufriesen daños. Los terroristas a su vez, podrían tener un atributo long que fuese chalecoAntibalas, que redujese el porcentaje de daño al recibir un disparo, o que se le sumase a sus puntos vitales, con la diferencia de que podrían obtener nuevos chalecos antibalas (se regeneraría el valor inicial de este atributo) pero no podrian restablecer sus puntos vitales, con lo que serían dos cosas bien distintas.
El ejemplo está claro que es muy básico, y que ahí será tu imaginación la que entre en juego para ver qué atributos vas asignando a cada clase, pero creo que esa forma de implementar los enemigos sería bastante correcta.
Se me olvidaba, tu clase genérica Enemigos, tendría su método Atacar( ) por ejemplo, que sería común para todos, y cada tipo luego podría tener distintos métodos. El alienígena podría tener el método Volar( ) o ataqueEspecial( ), y el terrorista podría tener el método Protegerse( ) o cualquier cosa por el estilo.
Espero que te sirva un poco de ayuda, o sino, al menos de inspiración ; )
Suerte!!