♥️Hero health
Si consideri un videogame dove il personaggio del giocatore è modellato da questa classe:
class Player {
private:
int health;
public:
Player(int initial Health): health(initial Health) {}
int getHealth() const { return health; }
void receiveDamage(int damage) { health -= damage; } void useStimPack(int healing) { health += healing; }
void move() { /* Movement logic */ }
void fight() { /* Fighting logic */ }
};iLe componenti della interfaccia utente del gioco (per esempio lo head-up display) e del sistema audio devono essere notificati quando lo stato di salute (health) cambia: la componente Ul deve mostrare lo stato attuale di salute, mentre la componente audio suona una musica quando la salute aumenta, ed una musica diversa quando diminuisce o diventa 0. Si implementi un sistema basato sul pattern Observer (14 punti).
Si disegni il diagramma UML di classe (2 punti).
Last updated