Closed juakotorres closed 8 years ago
Initialization
Los Zombies solo hacen daño cuerpo a cuerpo.
Concept Location
Zombie, Melee, Attack.
Impact Analysis
Análisis con JRipples. Clases que se podrían ver impactadas:
Prefactoring
Para agregar el ataque del zombie se buscó cual de los mosntruos golpeaba cuerpo a cuerpo. Al encontrarlo solo emulamos en los zombie el mismo procedimiento de ataque. En la clase Actions en el método SpawnZombieMobj se agregó como estado de golpe cuerpo a cuerpo el mismo que el del monstruo Sergeant. Para que los sprites no cambiaran por el sprite de Sergeant en la clase mobj_t cuando cambiamos el estado mediante el método SetMobjState solo se cambiaba el sprite del monstruo si es que no era zombie, con lo cual logramos que el sprite del zombie no cambiara. Finalmente para que el Zombie Negro fuera letal en la clase del ataque del sergeant (A_SargAttack) si el monstruo que usaba el método invoke de esa clase fuera un zombie negro, este zombie atacaría el triple de la vida del player para que su ataque fuera letal.
Change Propagation
Se cambiaron las clases mobj_t, ActionsFunctions, Actions.
Verification
Funciona correctamente la implementación. No necesita postfactoring.
Conclusion
El Zombie solamente puede atacar cuerpo a cuerpo, y el zombie negro tiene ataque letal.
Requisitos de Usuario asociados RU06 - Daño del Zombie