diff --git a/src/structures.h b/src/structures.h index e936690426c228bb2a197ae621476533c87ba8f0..f1bd533e85a6f3b8977225cb09e881a26b0dfdf8 100644 --- a/src/structures.h +++ b/src/structures.h @@ -38,9 +38,21 @@ */ typedef enum {faux, vrai} boolean; +/*! \struct Skins_Charac structures.h + * \brief Definition de la structure Skins_Charac + * + * Ensemble de noms de fichiers indiquant les textures des personnages + */ + typedef struct Skins_Charac{ + char charac_default[50]; + char charac_selected[50]; + char charac_healed[50]; + char charac_damaged[50]; +} Skins_Charac; + + /*! \struct Type_terrain structures.h * \brief Definition de la structure Type_terrain - * sizeof(Terrain) = 12 */ typedef struct Terrain{ char nomTerrain[TAILLE_NOMS];/*!< Nom du terrain. */ @@ -51,7 +63,6 @@ typedef struct Terrain{ /*! \struct Case structures.h * \brief Definition de la structure Case - * sizeof(Case) = 12 */ typedef struct Case{ unsigned short int coord_x; /*!< Abscisse de la case*/ @@ -69,42 +80,43 @@ typedef Case Carte[TAILLE_MAX_CARTE]; /*! \struct Effet structures.h * \brief Definition de la structure Effet. - * sizeof(Effet) = 16 */ typedef struct Effet{ - unsigned int nb_tours_restants;/*!< Le nombre de tours restants avant que l'effet ne s'estompe*/ + char id[TAILLE_ID]; /*!< ID de l'effet de taille TAILLE_ID*/ + char nom[TAILLE_NOMS]; /*!< Nom de l'effet de taille TAILLE_NOMS*/ + unsigned int nb_tours;/*!< Le nombre de tours restants avant que l'effet ne s'estompe*/ + unsigned int valeur_degats; /*!< Le nombre de degat subit */ + unsigned int valeur_soin; /*!< Le nombre PV regeneres */ unsigned int valeur_degats_duree; /*!< Le nombre de degat de duree subit par tour*/ unsigned int valeur_soin_duree; /*!< Le nombre PV regeneres par tour*/ - boolean paralysie; /*!< L'effet provoque ou non une paralysie*/ + unsigned int paralysie; /*!< L'effet provoque ou non une paralysie*/ } Effet; /*! \struct Attaque structures.h * \brief Definition de la structure Attaque. - * sizeof(Attaque) = 24 */ typedef struct Attaque{ + char id[TAILLE_ID]; char nom[TAILLE_NOMS]; /*!< Nom de l'attaque de taille TAILLE_NOMS*/ - unsigned short int degats_directs; /*!< Degats direct occasionnes*/ - unsigned short int mana; /*!< Mana consommé*/ + unsigned short int mana; unsigned short int portee; /*!< Portee en nombre de cases de l'attaque*/ - Effet effets[]; /*!< Tableau des effets appliques par l'attaque, cela comprend les dégâts de duree*/ + Effet effets[5]; /*!< Tableau des effets appliques par l'attaque, cela comprend les dégâts de duree*/ } Attaque; /*! \struct Classe structures.h * \brief Definition de la structure Classe. - * sizeof(Classe) = 16 */ typedef struct Classe{ - char nom[1]; /*!< Nom de la classe de taille TAILLE_NOMS*/ - Attaque* attaques; /*!< Les attaques disponibles pour la classe*/ + char nom[25]; /*!< Nom de la classe de taille TAILLE_NOMS*/ + Attaque attaques[5]; /*!< Les attaques disponibles pour la classe*/ unsigned short int points_deplacement_max; /*!< Les PD maximums accordés a la classe*/ unsigned short int PV_max; /*!< Les PV maximums accordés a la classe*/ unsigned short int mana_max; /*!< Le mana maximum accordé a la classe*/ + Skins_Charac skins; }Classe; /*! \struct Personnage structures.h * \brief Definition de la structure Personnage. - * sizeof(Personnage) = 32 */ typedef struct Personnage{ char nomPersonnage[TAILLE_NOMS];/*!< Nom du personnage de taille TAILLE_NOMS*/ @@ -118,7 +130,6 @@ typedef struct Personnage{ /*! \struct Competence structures.h * \brief Definition de la structure competence. - * sizeof(Competence) = 44 */ typedef struct Competence{ char nomComp[TAILLE_NOMS]; /*!< Nom de la competence de taille TAILLE_NOMS*/ @@ -133,21 +144,22 @@ typedef struct Competence{ /*! \struct Effet_competence structures.h * \brief Definition de la structure effet_competence - * sizeof(Effet_Competence) = 18 */ typedef struct Effet_Competence{ unsigned short int id; /*!< Un entier qui represente la competence*/ char nom[TAILLE_NOMS]; /*!< Nom de la competence de taille TAILLE_NOMS*/ - /* effets à définir */ +/* ........ */ +} Effet_Competence; + + + -}Effet_Competence; /*! \struct Joueur structures.h * \brief Definition de la structure Joueur * * Un Joueur est compose principalement d'un nom et d'un tableau de Personnages. * Il reste a ajouter des attributs tels que l'arbre de competence. - * sizeof(Joueur) = 28 */ typedef struct Joueur{ char nomJoueur[TAILLE_NOMS]; /*!< Le nom identifiant le Joueur*/ @@ -158,7 +170,6 @@ typedef struct Effet_Competence{ * \brief Definition de la structure NodeJoueur * * NodeJoueur est un noeud definit pour gerer une liste de Joueur - * sizeof(NodeJoueur) = 8 */ typedef struct NodeJoueur{ Joueur * j; /*!< valeur du noeud*/ @@ -168,8 +179,7 @@ typedef struct Effet_Competence{ /*! \struct ListJoueur structures.h * \brief Definition de la structure ListJoueur * - * ListJoueur est une liste de noeuds pointant vers des Joueurs - * sizeof(ListJoueur) = 12 + * ListJoueur est une liste de noeuds pointant vers des Joueur */ typedef struct ListJoueur{ NodeJoueur * firstNodeJoueur; /*!<Premier noeud*/ @@ -187,7 +197,6 @@ typedef struct Effet_Competence{ * Contient les informations concernant la partie telles que la liste des joueurs participants * le nombre de tours. Cette structure permet de gérer les tours * Peut eventuellement contenir l'information Carte si c'est utile. - * sizeof(Partie) = 12 */ typedef struct Partie{ ListJoueur * participants; /*!< La liste de joueurs prennant parts à la partie*/