Vous êtes sur la page 1sur 4

Nombre: _____________________________________________ Fecha: _____________________

Prof. Lic Lesbia Valerio L. III - Ao de Ingeniera en Sistemas



Prueba Sistemtica

Juego basado en Personajes

Se desea disear un juego de rol llamado La Batalla de las Almas. El juego est formado
por una clase principal denominada Batalla donde se crean los diferentes participantes del
juego y se produce el desarrollo del mismo.



El principal objetivo del juego consiste en disputarse el alma de un conjunto de seres
humanos, por tanto , existirn diferentes elementos (ngeles y Demonios) que podrn
combatir para tratar de salvar o condenar cada una de las almas puestas en juego. Los
diferentes atributos y funciones bsicas de cada uno de los elementos que pueden
aparecer en el juego son :

Elemento Descripcin Atributos mtodos
Ser Todo en el juego deriva de este
ente, no dispone de ningn
atributo ni funcionalidad en
particular.

Ser( );
Incorpreo Todos aquellos seres que no
puedan tener una realidad
fsica en la tierra.
double fe
double maldad
double bondad
double engaar(Humano h);
double guiar(Humano h);
int luchar(Humano h);
double probar(Humano h);


Universidad Politcnica de Nicaragua
(UPOLI)

double proteger(Humano h);
double seducir(Humano h);
double tentar(Humano h);
Fsico Seres que pueden ser creados
en nuestro mundo.

Espiritual Interfaz que implementan
aquellos seres fsicos /
incorpreos y que les permite
rezar a Dios.
boolean rezar( );
Dios Ser de tipo incorpreo int numAngeles
int numDemonios


DiosCristiano Es un tipo de Dios, en
particular el profesado por la
religin del mismo nombre
boolean
esBuenHombre(Humano h);
DiosCristiano
(int numAngeles, int
numDemonio);
ngeles Ser incorpreo y espiritual que
se enfrentar a un Demonio
para tratar de salvar el alma en
juego.
double fe: 0..200
double maldad:
0..200
double bondad:
0..10
Angeles( ) ;
boolean rezar( ) ;
Demonios Ser incorpreo y espiritual que
se enfrentar a un ngel para
tratar de condenar el alma en
juego.
double fe: 0..200
double maldad:
0..200
double bondad:
0..10
Demonios( ) ;
boolean rezar( ) ;
Humano Seres fsicos y espirituales double
inteligencia :
0..200
double fe : 0..100
double maldad :
0..100
double bondad :
0..100
double
alma :0..200

Humano( ) ;
void conflictoMoral(Angeles
a, Demonios d);
double golpear( Incorpreo s,
int habilidad);
boolean rezar( );



Se pide:
a) Disear el diagrama de clases que permite representar a todos los elementos
involucrados en el juego, indicar las diferentes caractersticas de estas clases
(abstractas, interfaz, etc.). Incluir en el diseo la clase Batalla y su relacin con las
anteriores.

b) Implementar los constructores de ngeles, Demonios y Humanos, teniendo en
cuenta que en el constructor debe generarse aleatoriamente el valor de sus
atributos (en el rango indicado).

c) Implementar el mtodo de rezar para ngeles, Demonios y Humanos ( en los
primeros dos casos, simplemente se muestra que el ser habla o no habla con Dios).
En el caso de un ser humano reza si su fe es superior a 50 puntos o su bondad
supera los 60.

d) Implementar el mtodo de lucha para ngeles y Demonios. nicamente consistir
en generar aleatoriamente un valor entre 0 y 5 que determinar cual de sus
habilidades se aplicar sobre el humano.

e) Implementar los mtodos de combate de ngeles y Demonios (engaar, guiar,
proteger, tentar, seducir, probar) someten a cada Humano a una prueba, pudiendo
ste pasarla o no, para ello, se calcula el resultado de someterle a cada una de esas
pruebas en funcin de las caractersticas que definen a cada Humano, en la
siguiente tabla aparecen las relaciones matemticas entre las caractersticas del
Humano y cmo le afectan cada una de las pruebas:

Habilidad ngeles Demonios
engaar return( );
fe
humano
* bondad - maldad
fe
angel
fe
angel



seducir return( );
bondad
2
maldad
2
inteligencia
fe
2
- bondad
2

tentar return( ); ( - fe + maldad / inteligencia)
(bondad
2
- maldad
2
)
demonio



guiar
bondad
2
maldad
2
inteligencia
fe
2
- maldad

return( );
probar fe - maldad
2
/ inteligencia
(bondad
2
- maldad
2
)
angel



return( );
proteger
fe
humano
* bondad maldad
fe
angel

return( );
f) Implementar los mtodos void conflictomoral( ngeles a, Demonio d) ; y double
golpear(Incorporeo s, int Habilidad) ; el primer mtodo selecciona una de las
habilidades del ngel o del Demonio mediante el mtodo luchar( ); una vez hecho
esto llama al mtodo golpear para el ngel y para el Demonio, gana el que mayor
puntuacin obtenga. Si gana el ngel , la bondad del Humano aumenta y su
maldad disminuye. Si gana el Demonio la bondad del Humano disminuye y
aumenta su maldad. El mtodo golpear selecciona la habilidad que corresponde al
mtodo luchar ( 0 = engaar, 1= guiar, . 5= proteger). Cuando es aplicada la
habilidad correspondiente, el Humano tratar de rezar, si reza su fe aumenta en un
punto, en caso contrario disminuye en la misma cantidad.

g) Implementar el mtodo main( ) de la clase Batalla.java, donde se debe leer como
argumentos , el nmero de Humanos, el nmero de ngeles, el nmero de
Demonios y finalmente el nmero de turnos.

En este mtodo se construirn los diferentes elementos, as como un objeto de
tipo DiosCristiano, y se implementar la estructura que permita ejecutar los
diferentes turnos donde para cada hombre (y en cada turno) se le someter a un
conflicto moral, en funcin del cual su bondad o maldad aumentar o disminuir.




"Los problemas se deben convertir en retos, nunca en obstculos".

Vous aimerez peut-être aussi