From 5d2dca80287af0c07b25dc122ff6a96013096b4c Mon Sep 17 00:00:00 2001
From: ColinDrieu <colin.drieu@insa-rennes.fr>
Date: Tue, 29 Mar 2016 22:19:34 +0200
Subject: [PATCH] Correction des erreurs lors du build du projet.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Les erreurs lors du build sont corrigées.
J'ai très peu modifié le code, il y aura des modifications à apporter sur ces fichiers.
---
 src/case.c         |  6 +++---
 src/case.h         | 10 +++++-----
 src/competence.c   | 18 +++++++++---------
 src/competence.h   | 31 +++++++++++++++++--------------
 src/deplacements.c | 13 ++++++++-----
 src/personnage.c   | 14 ++++++++------
 src/structures.h   | 20 ++++++++++----------
 src/terrain.c      |  8 +++++---
 8 files changed, 65 insertions(+), 55 deletions(-)

diff --git a/src/case.c b/src/case.c
index c4c790d..7e59d8a 100644
--- a/src/case.c
+++ b/src/case.c
@@ -5,7 +5,7 @@
 #include "personnage.h"
 #include "deplacements.h"
 
-Case* init_case(Case *c,int x, int y, type_terrain *t){
+Case * init_case(Case * c,int x, int y, Type_Terrain *t){
     c->coord_x=x;
     c->coord_y=y;
     c->terrain=t;
@@ -39,14 +39,14 @@ void marquer_libre(Case *c){
     c->occupee=faux;
 }
 
-type_terrain* get_terrain(Case *c){
+Type_Terrain* get_terrain(Case *c){
     if (c->terrain==NULL){
         fprintf(stderr,"pas de terrain");
     }
     return c->terrain;
 }
 
-int init_carte(carte* c,unsigned short int largeur, unsigned short int hauteur){
+int init_carte(Carte* c,unsigned short int largeur, unsigned short int hauteur){
     int i,j,n;
     if (largeur*hauteur>TAILLE_MAX_CARTE){
         printf("erreur : taille maximum de la carte dépassée");
diff --git a/src/case.h b/src/case.h
index 6d7f380..fa5af79 100644
--- a/src/case.h
+++ b/src/case.h
@@ -1,7 +1,7 @@
 #ifndef CASE_H_INCLUDED
 #define CASE_H_INCLUDED
 
-Case* init_case(Case *c,int x, int y, type_terrain *t);
+Case* init_case(Case *c,int x, int y, Type_Terrain *t);
 
 int get_x(Case *c);
 
@@ -9,9 +9,9 @@ int get_y(Case *c);
 
 boolean est_occupee(Case *c);
 
-type_terrain* init_terrain(type_terrain *t, type_nom n, boolean f, unsigned short int PD);
+Type_Terrain * init_terrain(Type_Terrain * t, char * n, boolean f, unsigned short int PD);
 
-boolean terrain_franchissable(type_terrain *t);
+boolean terrain_franchissable(Type_Terrain *t);
 
 boolean case_franchissable(Case *c);
 
@@ -19,9 +19,9 @@ void marquer_occupee(Case *c);
 
 void marquer_libre(Case *c);
 
-type_terrain* get_terrain(Case *c);
+Type_Terrain* get_terrain(Case *c);
 
-int init_carte(carte* c,unsigned short int largeur, unsigned short int hauteur);
+int init_carte(Carte* c,unsigned short int largeur, unsigned short int hauteur);
 
 
 #endif
diff --git a/src/competence.c b/src/competence.c
index 6a8856a..9a5aa25 100644
--- a/src/competence.c
+++ b/src/competence.c
@@ -4,32 +4,32 @@
 #include "competence.h"
 
 
-arbre_competence* init_arbre_competence(arbre_competence *a){
+Arbre_Competence* init_arbre_competence(Arbre_Competence *a){
 
 }
 
-arbre_competence* construire_arbre_competence(arbre_competence* a){  /* Construit un arbre à partir d'un fichier XML */
+Arbre_Competence* construire_arbre_competence(Arbre_Competence* a){  /* Construit un arbre à partir d'un fichier XML */
 
 
 }
 
-int rafraichir_competences(arbre_competence * a){
+int rafraichir_competences(Arbre_Competence * a){
 
 }
 
 
-boolean est_connue(competence *c){
-    return (c->connue);
+boolean est_connue(Competence *c){
+    return (c->connu);
 }
 
-boolean est_complet(arbre_competence *a){
+boolean est_complet(Arbre_Competence *a){
 
 }
 
-competence** chemin_auto_competence(competence* c){      /* Renvoie la liste des compétences non connues se trouvant sur le chemin d'une compétence sélectionnée */
+int chemin_auto_competence(Competence* c){      /* Renvoie la liste des compétences non connues se trouvant sur le chemin d'une compétence sélectionnée */
 
 }
 
-effet_competence* get_effet(competence *c){      /* Renvoie l'effet d'une competence */
-    return competence->effet;
+Effet_Competence * get_effet(Competence *c){      /* Renvoie l'effet d'une competence */
+    return c->effet;
 }
diff --git a/src/competence.h b/src/competence.h
index e6ddc3f..695c45e 100644
--- a/src/competence.h
+++ b/src/competence.h
@@ -3,15 +3,17 @@
 
 /* Definition des structures */
 
-typedef struct arbre_competence{     /* Abre de compétence */
-}
+// A definir dans structure.h
+typedef struct Arbre_Competence{     // Arbre de compétence
+}Arbre_Competence;
 
 
 
 
 
 
-typedef struct competence{      /* Competence d'un arbre de talent */
+/*  //Cette structure est deja definie dans structure.h
+    typedef struct Competence{      // Competence d'un arbre de talent
     unsigned short int id;
     type_nom nom;
     unsigned short int etage;
@@ -21,29 +23,30 @@ typedef struct competence{      /* Competence d'un arbre de talent */
     struct effet_competence *effet;
     boolean connu;
 }competence;
+*/
 
-typedef struct effet_competence{        /* Effet d'une compétence de l'arbre */
+/* //Cette structure est deja definie dans structure.h
+typedef struct effet_competence{        // Effet d'une compétence de l'arbre
     unsigned short int id;
     type_nom nom;
-    /* effets à définir */
-
+    // effets à définir
 }effet_competence;
-
+*/
 
 /* Fonctions */
 
-arbre_competence* init_arbre_competence(arbre_competence *a);
+Arbre_Competence* init_arbre_competence(Arbre_Competence *a);
 
-arbre_competence* construire_arbre_competence(arbre_competence* a);
+Arbre_Competence* construire_arbre_competence(Arbre_Competence* a);
 
-int rafraichir_competences(arbre_competence * a);
+int rafraichir_competences(Arbre_Competence * a);
 
-boolean est_connue(competence *c);
+boolean est_connue(Competence *c);
 
-boolean est_complet(arbre_competence *a);
+boolean est_complet(Arbre_Competence *a);
 
-effet_competence get_effet(competence *c);
+Effet_Competence * get_effet(Competence *c);
 
-int chemin_auto_competence(competence* c);
+int chemin_auto_competence(Competence* c);
 
 #endif
diff --git a/src/deplacements.c b/src/deplacements.c
index ee8293f..81a61af 100644
--- a/src/deplacements.c
+++ b/src/deplacements.c
@@ -5,7 +5,7 @@
 #include "personnage.h"
 #include "deplacements.h"
 
-boolean case_a_cote(personnage *perso,Case *destination){ /* vérifie que la case hexagonale "destination" est contigue à la case du personnage */
+boolean case_a_cote(Personnage * perso, Case * destination){ /* vérifie que la case hexagonale "destination" est contigue à la case du personnage */
     Case *depart = getPosition(perso);
     if (get_x(depart)>get_x(destination)+1||get_x(depart)<get_x(destination)-1||get_y(depart)>get_y(destination)+1||get_y(depart)>get_y(destination)-1){
         return faux;
@@ -16,7 +16,7 @@ boolean case_a_cote(personnage *perso,Case *destination){ /* v
     return vrai;
 }
 
-int deplacement_unitaire(personnage *perso,Case *destination){ /*déplace un personnage sur une case située à côté de la sienne, si cela est possible */
+int deplacement_unitaire(Personnage *perso,Case * destination){ /*déplace un personnage sur une case située à côté de la sienne, si cela est possible */
     if (est_occupee(destination)){
         printf("déplacement impossible : case déjà occupée par un personnage");
         return 1;
@@ -32,15 +32,18 @@ int deplacement_unitaire(personnage *perso,Case *destination){ /*d
     return 1;
 }
 
-
-int affichage_deplacements_possibles(personnage *perso, carte *c){ /* Met en surbrillance les cases disponibles pour un déplacement */
+// Cette fonction devrait plutot renvoyer un tableau ou une liste de cases ou le
+//deplacement est possible, pour la surbrillance on verra ca plus tard avec une
+//fonction d'affichage specifique.
+int affichage_deplacements_possibles(Personnage *perso, Carte *c){ /* Met en surbrillance les cases disponibles pour un déplacement */
     int i;
     int pd_max_x = get_PD(perso);
     int pd_max_y = get_PD(perso);
 
     for(i=0;i<pd_max_x;i++){
-        if(1!=0)
+        if(1!=0){
             /* ??? */
+        }
     }
     return 0;
 }
diff --git a/src/personnage.c b/src/personnage.c
index 7200e43..4779478 100644
--- a/src/personnage.c
+++ b/src/personnage.c
@@ -5,7 +5,7 @@
 #include "personnage.h"
 #include "deplacements.h"
 
-personnage* init_personnage(personnage *perso, classe *c, Case *casedepart){
+Personnage* init_personnage(Personnage *perso, Classe *c, Case *casedepart){
     perso->classe=*c;
     perso->points_deplacement=c->points_deplacement_max;
     perso->PV=c->PV_max;
@@ -15,23 +15,25 @@ personnage* init_personnage(personnage *perso, classe *c, Case *casedepart){
     return perso;
 }
 
-Case* getPosition(personnage *p){
+Case * getPosition(Personnage *p){
     return p->position;
 }
 
-int get_PV(personnage *p){
+int get_PV(Personnage *p){
     return p->PV;
 }
 
-int get_PD(personnage *p){
+int get_PD(Personnage *p){
     return p->points_deplacement;
 }
 
-boolean est_paralyse(personnage *p){
+/* Cette fonction ne fonctionne plus, il faut une fonction qui accede aux effets.
+boolean est_paralyse(Personnage *p){
     return p->paralyse;
 }
+*/
 
-int deplacer_personnage (personnage *perso, Case *destination){ /*déplace un personnage d'une case à une autre. Ne vérifie pas si le déplacement est autorisé, cela doit être fait par la fonction qui l'appelle*/
+int deplacer_personnage (Personnage *perso, Case *destination){ /*déplace un personnage d'une case à une autre. Ne vérifie pas si le déplacement est autorisé, cela doit être fait par la fonction qui l'appelle*/
     marquer_libre(getPosition(perso));
     perso->position=destination;
     marquer_occupee(getPosition(perso));
diff --git a/src/structures.h b/src/structures.h
index 80960f8..b53981c 100644
--- a/src/structures.h
+++ b/src/structures.h
@@ -18,11 +18,11 @@
 #ifndef STRUCTURES_H_INCLUDED
 #define STRUCTURES_H_INCLUDED
 
-/* \def TAILLE_MAX_CARTE */
+/*! \def TAILLE_MAX_CARTE */
 #define TAILLE_MAX_CARTE 256
-/* \def TAILLE_NOMS */
+/*! \def TAILLE_NOMS */
 #define TAILLE_NOMS 16
-/* \def TAILLE_MAX_GROUPE */
+/*! \def TAILLE_MAX_GROUPE */
 #define TAILLE_MAX_GROUPE 3
 
 /*! \enum boolean
@@ -36,11 +36,11 @@ typedef enum {faux, vrai} boolean;
  * \brief Definition de la structure Type_terrain
  */
 typedef struct {
-    char nom[TAILLE_NOMS];/*!< Nom du terrain. */
+    char nomTerrain[TAILLE_NOMS];/*!< Nom du terrain. */
     boolean franchissable;/*!< Le terrain est franchissable ou non par un personnage. */
     boolean franchissable_sorts;/*!< Le terrain est franchissable ou non par un sort. */
     unsigned short int PD_requis;/*!< Nombre de PD requis pour traverser le terrain. */
-}type_terrain;
+}Type_Terrain;
 
 /*! \struct Case structures.h
  * \brief Definition de la structure Case
@@ -48,7 +48,7 @@ typedef struct {
 typedef struct Case{
     unsigned short int coord_x; /*!< Abscisse de la case*/
     unsigned short int coord_y; /*!< Ordonnee de la case*/
-    type_terrain *terrain; /*!< Le type de terrain de la case*/
+    Type_Terrain * terrain; /*!< Le type de terrain de la case*/
     boolean occupee; /*!< La case est occupee ou non par un personnage*/
 } Case;
 
@@ -57,7 +57,7 @@ typedef struct Case{
  *
  * La carte est un tableau de Case de taille TAILLE_MAX_CARTE.
  */
-typedef Case carte[TAILLE_MAX_CARTE];
+typedef Case Carte[TAILLE_MAX_CARTE];
 
 /*! \struct Effet structures.h
  * \brief Definition de la structure Personnage.
@@ -112,7 +112,7 @@ typedef struct {
  */
 typedef struct Competence{
     unsigned short int id; /*!< Un entier qui represente la competence*/
-    char nom[TAILLE_NOMS]; /*!< Nom de la competence de taille TAILLE_NOMS*/
+    char nomComp[TAILLE_NOMS]; /*!< Nom de la competence de taille TAILLE_NOMS*/
     unsigned short int etage; /*!< Etage de la competence dans l'arbre*/
     struct competence *enfant_gauche; /*!< Pointeur vers le premier enfant de la competence*/
     struct competence *enfant_droit; /*!< Pointeur vers le deuxieme enfant de la competence*/
@@ -123,12 +123,12 @@ typedef struct Competence{
 /*! \struct Effet_competence structures.h
  * \brief Definition de la structure effet_competence
  */
-typedef struct Effet_competence{
+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
diff --git a/src/terrain.c b/src/terrain.c
index d5c5ca6..2f88851 100644
--- a/src/terrain.c
+++ b/src/terrain.c
@@ -1,17 +1,19 @@
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include "structures.h"
 #include "case.h"
 #include "personnage.h"
 #include "deplacements.h"
 
-boolean terrain_franchissable(type_terrain *t){
+boolean terrain_franchissable(Type_Terrain *t){
     return t->franchissable;
 }
 
-type_terrain* init_terrain(type_terrain *t, type_nom n, boolean f, unsigned short int PD){
+Type_Terrain * init_terrain(Type_Terrain * t, char * n, boolean f, unsigned short int PD){
     t->franchissable=f;
-    t->nom=n;
+    strncpy(n,t->nomTerrain,TAILLE_NOMS-1);
+    t->nomTerrain[TAILLE_NOMS-1]='/0';
     t->PD_requis=PD;
     return t;
 }
-- 
GitLab