ElderInternalIgnition
personnage.c File Reference

Fichier contenant le code des fonctions liees aux personnages. More...

#include <stdio.h>
#include <stdlib.h>
#include "structures.h"
#include "case.h"
#include "personnage.h"
#include "deplacements.h"
#include "classe.h"

Macros

#define SCORE_CRIT_MAX   100
 
#define SCORE_CRIT_DEPART   30
 

Functions

Personnageinit_personnage ()
 La fonction initialise un Personnage. More...
 
Personnageset_personnage (Personnage *perso, Classe *c)
 La fonction initialise un Personnage. More...
 
Personnagedefault_personnage (int numero, Game_Package Pack)
 La fonction construit un personnage par default, a partir de ses caracteristiques dans le fichier Classes.xml. More...
 
void freePersonnage (Personnage *p)
 libère l'espace mémoire alloué à un personnage. More...
 
void setNumero (Personnage *p, int n)
 Initialise le numéro d'un Personnage. More...
 
int getNumero (Personnage *p)
 La fonction renvoie le numéro du personnage. More...
 
ClassegetClasse (Personnage *p)
 La fonction renvoie la classe d'un personnage. More...
 
CasegetPosition (Personnage *p)
 La fonction renvoie la position d'un personnage. More...
 
void setPosition (Personnage *p, Case *c)
 La fonction initialise la position d'un personnage. More...
 
int get_PV (Personnage *p)
 La fonction renvoie les points de vie d'un personnage. More...
 
int get_mana (Personnage *p)
 La fonction renvoie les points de mana d'un personnage. More...
 
int get_crit (Personnage *p)
 La fonction renvoie le score de coup critiques d'un personnage. More...
 
int get_PD (Personnage *p)
 La fonction renvoie les points de vie d'un personnage. More...
 
void setPV (Personnage *p, int n)
 La fonction modifie les points de vie d'un personnage si n est inférieur au PV max de la Classe. More...
 
void setMana (Personnage *p, int n)
 La fonction modifie le mana d'un personnagen est inférieur au mana max de la Classe. More...
 
void setCrit (Personnage *p, int n)
 La fonction modifie le score de coup critique d'un personnage. More...
 
void setPD (Personnage *p, int n)
 La fonction modifie les points de déplacement d'un personnage n est inférieur au PD max de la Classe. More...
 
void retraitMana (Personnage *p, int n)
 La fonction retire n mana au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif. More...
 
void retraitPV (Personnage *p, int n)
 La fonction retire n PV au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif. More...
 
void retraitPD (Personnage *p, int n)
 La fonction retire n PD au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif. More...
 
int personnageKO (Personnage *p)
 La fonction teste si le Personnage est KO (s'il n'a plus de PV) More...
 
int manaSuffisant (Personnage *p, int mana)
 La fonction teste si le personnage a un mana superieur ou egal au mana en parrametre. More...
 
boolean est_paralyse (Personnage *p)
 La fonction teste si le personnage est paralyse. More...
 
int deplacer_personnage (Personnage *perso, Case *destination)
 La fonction deplace un personnage. More...
 
int estSurLaCase (Personnage *p, Case *c)
 La fonction teste si un Personnage est sur une Case. More...
 
int APortee (Carte_Jeu *c, Personnage *depart, Personnage *cible, int portee)
 La fonction teste si le Personnage cible est à portée du Personnage départ. More...
 

Detailed Description

Fichier contenant le code des fonctions liees aux personnages.

Function Documentation

int APortee ( Carte_Jeu c,
Personnage depart,
Personnage cible,
int  portee 
)

La fonction teste si le Personnage cible est à portée du Personnage départ.

Parameters
Despointeurs vers les personnages à tester, un pointeur sur la carte actuelle, une portée.
Returns
1 si le Personnage cible est à portée, 0 sinon.
Personnage * default_personnage ( int  numero,
Game_Package  Pack 
)

La fonction construit un personnage par default, a partir de ses caracteristiques dans le fichier Classes.xml.

Parameters
Lenuméro de la défination du personnage dans le fichier XML, un game_package.
Returns
Un personnage pret a l'action.
deplacer_personnage ( Personnage perso,
Case destination 
)

La fonction deplace un personnage.

Parameters
Unpersonnage, une case.
Returns
un entier.
boolean est_paralyse ( Personnage p)

La fonction teste si le personnage est paralyse.

Parameters
Unpointeur vers un personnage
Returns
1 si le Personnage est paralyse, 0 sinon.
int estSurLaCase ( Personnage p,
Case c 
)

La fonction teste si un Personnage est sur une Case.

Parameters
LePersonnage et la Case a tester.
Returns
1 si le Personnage est sur la Case, 0 sinon.
void freePersonnage ( Personnage p)

libère l'espace mémoire alloué à un personnage.

Parameters
unpointeur vers le personnage à supprimmer.
int * get_crit ( Personnage p)

La fonction renvoie le score de coup critiques d'un personnage.

Parameters
Unpersonnage.
Returns
un entier.
int * get_mana ( Personnage p)

La fonction renvoie les points de mana d'un personnage.

Parameters
Unpersonnage.
Returns
un entier.
int * get_PD ( Personnage p)

La fonction renvoie les points de vie d'un personnage.

Parameters
Unpersonnage.
Returns
un entier.
int * get_PV ( Personnage p)

La fonction renvoie les points de vie d'un personnage.

Parameters
Unpersonnage.
Returns
un entier.
Classe * getClasse ( Personnage p)

La fonction renvoie la classe d'un personnage.

Parameters
Unpersonnage.
Returns
une classe.
int getNumero ( Personnage p)

La fonction renvoie le numéro du personnage.

Parameters
Unpointeur vers le Personnage à tester.
Returns
un entier vers le numéro du personnage.
Case * getPosition ( Personnage p)

La fonction renvoie la position d'un personnage.

Parameters
Unpersonnage.
Returns
une position.
Personnage * init_personnage ( )

La fonction initialise un Personnage.

Parameters
Unpersonnage.
Returns
Un personnage initialisé.
int manaSuffisant ( Personnage p,
int  mana 
)

La fonction teste si le personnage a un mana superieur ou egal au mana en parrametre.

Parameters
Unpointeur vers un personnage, un entier représentant la quantité de mana.
Returns
1 si le Personnage a un mana supérieur ou égal au parrametre mana, 0 sinon.
int personnageKO ( Personnage p)

La fonction teste si le Personnage est KO (s'il n'a plus de PV)

Parameters
Unpointeur vers un personnage.
Returns
1 si le Personnage est KO, 0 sinon.
void retraitMana ( Personnage p,
int  n 
)

La fonction retire n mana au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif.

Parameters
Unpointeur vers un personnage, n le mana à retirer.
void retraitPD ( Personnage p,
int  n 
)

La fonction retire n PD au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif.

Parameters
Unpointeur vers un personnage, n les PD à retirer.
void retraitPV ( Personnage p,
int  n 
)

La fonction retire n PV au Personnage en parrametre. Remarque : Pour ajouter, il suffit de choisir n négatif.

Parameters
Unpointeur vers un personnage, n les PV à retirer.
Personnage * set_personnage ( Personnage perso,
Classe c 
)

La fonction initialise un Personnage.

Parameters
Unpersonnage.
Returns
Un personnage initialisé.
void setCrit ( Personnage p,
int  n 
)

La fonction modifie le score de coup critique d'un personnage.

Parameters
Unpersonnage.
void setMana ( Personnage p,
int  n 
)

La fonction modifie le mana d'un personnagen est inférieur au mana max de la Classe.

Parameters
Unpersonnage.
void setNumero ( Personnage p,
int  n 
)

Initialise le numéro d'un Personnage.

Parameters
Unpointeur vers le Personnage à modifier, un int déterminant son numéro.
void setPD ( Personnage p,
int  n 
)

La fonction modifie les points de déplacement d'un personnage n est inférieur au PD max de la Classe.

Parameters
Unpersonnage.
void setPosition ( Personnage p,
Case c 
)

La fonction initialise la position d'un personnage.

Parameters
Unpersonnage.
void setPV ( Personnage p,
int  n 
)

La fonction modifie les points de vie d'un personnage si n est inférieur au PV max de la Classe.

Parameters
Unpersonnage, un entier représentant les nouveaux PV du personnage.