diff --git a/src/personnage.c b/src/personnage.c index ef571600c00295f9a9a16182d86f4702b4477db9..717d2c87ae0edb0ef7702264b197148c8a93e3be 100644 --- a/src/personnage.c +++ b/src/personnage.c @@ -214,6 +214,67 @@ void setPD(Personnage * p, int n){ } } +/*! + * \fn void retraitMana(Personnage * p, int n) + * \brief La fonction retire n mana au Personnage en parrametre. + * Remarque : Pour ajouter, il suffit de choisir n négatif. + * + * \param Un pointeur vers un personnage, n le mana à retirer. + */ +void retraitMana(Personnage * p, int n){ + setMana(p, get_mana(p)-n); +} + +/*! + * \fn void retraitPV(Personnage * p, int n) + * \brief La fonction retire n PV au Personnage en parrametre. + * Remarque : Pour ajouter, il suffit de choisir n négatif. + * + * \param Un pointeur vers un personnage, n les PV à retirer. + */ +void retraitPV(Personnage * p, int n){ + setPV(p, get_PV(p)-n); +} + +/*! + * \fn void retraitPD(Personnage * p, int n) + * \brief La fonction retire n PD au Personnage en parrametre. + * Remarque : Pour ajouter, il suffit de choisir n négatif. + * + * \param Un pointeur vers un personnage, n les PD à retirer. + */ +void retraitPD(Personnage * p, int n){ + setPD(p, get_PD(p)-n); +} + +/*! + * \fn int personnageKO(Personnage * p) + * \brief La fonction teste si le Personnage est KO (s'il n'a plus de PV) + * + * \param Un pointeur vers un personnage. + * \return 1 si le Personnage est KO, 0 sinon. + */ +int personnageKO(Personnage * p){ + if(p->PV==0){ + return 1; + } + return 0; +} + +/*! + * \fn int manaSuffisant(Personnage * p, int mana) + * \brief La fonction teste si le personnage a un mana superieur ou egal au mana en parrametre. + * + * \param Un pointeur vers un personnage, un entier représentant la quantité de mana.? + * \return 1 si le Personnage a un mana supérieur ou égal au parrametre mana, 0 sinon. + */ +int manaSuffisant(Personnage * p, int mana){ + if(mana>=get_mana(p)){ + return 1; + } + return 0; +} + /* Cette fonction ne fonctionne plus, il faut une fonction qui accede aux effets. boolean est_paralyse(Personnage *p){ return p->paralyse; diff --git a/src/personnage.h b/src/personnage.h index 9e5464009dba9a1365212261b96098a5d1e4977a..5aeaf06f65fb671737293a8c26091577e3ba0272 100644 --- a/src/personnage.h +++ b/src/personnage.h @@ -32,6 +32,13 @@ void setPV(Personnage * p, int n); void setMana(Personnage * p, int n); void setPD(Personnage * p, int n); +void retraitMana(Personnage * p, int n); +void retraitPV(Personnage * p, int n); +void retraitPD(Personnage * p, int n); + +int personnageKO(Personnage * p); +int manaSuffisant(Personnage * p, int mana); + Classe * getClasse(Personnage *p); char * getNomPersonnage(Personnage * p);