diff --git a/.gitignore b/.gitignore
index 7c57c90d58dc046199486c872905f38d13b73f5e..409a48e8e332c97992a4c6633580a764760e25aa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,9 @@ doc
 Libs
 *.o
 *.exe
+*.cbp
+*.depend
+*.layout
 Debug
 Release
 
diff --git a/src/AffichageConsole.c b/src/AffichageConsole.c
index 9132f175c24b0b8dc06ea5eca1431127bd14f6fb..d029bd873a2f05ff5b3641839fdf60897955f837 100644
--- a/src/AffichageConsole.c
+++ b/src/AffichageConsole.c
@@ -20,9 +20,9 @@
  * \param Un pointeur vers les joueur a afficher avec leur personnage et ses coordonnees.
  */
 void afficheEnsembleJoueur(Partie *p){
-    Joueur * Temporaire = getCurrentJoueur(p->participants);    // On sauve l'emplacement du current actuel
-    setOnFirstJoueur(p->participants);  // On se positionne sur le premier joueur
-    while(!outOfJoueurList(p->participants)){   //Tant qu'on est pas arrivé au dernier current
+    Joueur * Temporaire = getCurrentJoueur(p->participants);    /* On sauve l'emplacement du current actuel*/
+    setOnFirstJoueur(p->participants);  /* On se positionne sur le premier joueur*/
+    while(!outOfJoueurList(p->participants)){   /*Tant qu'on est pas arrivé au dernier current*/
     afficheNomJoueur(getCurrentJoueur(p->participants));
     afficheNomPersonnage(getPersonnage(getCurrentJoueur(p),0));
     afficheCoordonneePersonnage(getPosition(getPersonnage(getCurrentJoueur(p),0)));
@@ -33,7 +33,7 @@ void afficheEnsembleJoueur(Partie *p){
     afficheNomPersonnage(getPersonnage(getCurrentJoueur(p),0));
     afficheCoordonneePersonnage(getPosition(getPersonnage(getCurrentJoueur(p),0)));
 
-    setOnJoueur(p->participants, Temporaire);   // On retourne sur le current original
+    setOnJoueur(p->participants, Temporaire);   /* On retourne sur le current original*/
 }
 
 /*!
@@ -53,7 +53,7 @@ void afficheNomJoueur(Joueur * j){
  * \param Un pointeur vers le personnage a afficher.
  */
 void afficheNomPersonnage(Personnage * p){
-    /*printf("Personnage: %s\n", getPersonnage(p)); //  Il n'y a pas de fonction pour récupérer le nom du personnage */
+    /*printf("Personnage: %s\n", getPersonnage(p));   Il n'y a pas de fonction pour récupérer le nom du personnage */
 }
 
 /*!
@@ -76,7 +76,7 @@ void afficheEtatPersonnage(Personnage *p){
     afficheNomPersonnage(p);
     printf("Points de déplacement: %d\n", get_PD(p));
     printf("Points de vie: %d\n", get_PV(p));
-    /*printf("Mana: %d\n", getMANA(p));*/   // Il n'ya a pas de fonction getMANA()
+    printf("Mana: %d\n", get_mana(p));
 }
 
 /*!
@@ -86,6 +86,6 @@ void afficheEtatPersonnage(Personnage *p){
  * \param Un pointeur vers la fonction afficheEnsembleJoueur(Partie *p) ainsi que le premier choix que doit faire le joueur dont le tour commence.
  */
 void affichePremierChoix(Partie *p){
-    afficheEnsembleJoueur(Partie *p);
+    afficheEnsembleJoueur(p);
     printf("%s : Que voulez-vous faire?\n 1-Sélectionner un personnage\n 2-Fin du tour\n", getNomJoueur(getCurrentJoueur(p->participants)));
 }
diff --git a/src/case.c b/src/case.c
index 7e59d8a07e925cd4efad2d2cef707827a9a0ebfe..a10015bcd2961290717c137379ee9c0420cd4557 100644
--- a/src/case.c
+++ b/src/case.c
@@ -9,7 +9,7 @@ Case * init_case(Case * c,int x, int y, Type_Terrain *t){
     c->coord_x=x;
     c->coord_y=y;
     c->terrain=t;
-    c->occupee=0;
+    c->occupee=faux;
     return c;
 }
 
diff --git a/src/classe.h b/src/classe.h
index e6525345f1ade2933e230257481c18656727b8f5..e810a95ade27d809acf3026903596d8fd00fd20c 100644
--- a/src/classe.h
+++ b/src/classe.h
@@ -2,7 +2,7 @@
 #define CLASSE_H_INCLUDED
 
 #include "structures.h"
-//#include "ClassesXML.h"
+/*#include "ClassesXML.h"*/
 
 
 Classe* Librairie_Classes(const char *filename);
diff --git a/src/competence.h b/src/competence.h
index 695c45e626dcc61935e97625ab53ddaf6a11c09e..fd3d3758fc5dffafcf2c15bed16c931108385a2a 100644
--- a/src/competence.h
+++ b/src/competence.h
@@ -3,8 +3,8 @@
 
 /* Definition des structures */
 
-// A definir dans structure.h
-typedef struct Arbre_Competence{     // Arbre de compétence
+/* A definir dans structure.h */
+typedef struct Arbre_Competence{     /* Arbre de compétence */
 }Arbre_Competence;
 
 
diff --git a/src/deplacements.c b/src/deplacements.c
index 81a61af2fe470090435a7c06d9e07050e39aa84d..d39dd4a0927e2203beec15aa8537d17aec0a1860 100644
--- a/src/deplacements.c
+++ b/src/deplacements.c
@@ -32,9 +32,9 @@ int deplacement_unitaire(Personnage *perso,Case * destination){ /*d
     return 1;
 }
 
-// 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.
+/* 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);
diff --git a/src/joueur.h b/src/joueur.h
index 478e65c3229bef5d5d8a1125939de0b388326bab..6e6cd836d0b37e1f0d001ac3f269b57441c747d7 100644
--- a/src/joueur.h
+++ b/src/joueur.h
@@ -19,7 +19,7 @@ int addPersonnage(Joueur * j, Personnage * p, int i);
 int isInGroupe(Joueur * j, Personnage * p);
 int removePersonnage(Joueur * j, Personnage * p);
 
-// Des Fonctions sont a ajouter pour les versions suivantes pour la gestion des competences du Joueur
-// et eventuellement pour sa sauvegarde.
+/* Des Fonctions sont a ajouter pour les versions suivantes pour la gestion des competences du Joueur
+ et eventuellement pour sa sauvegarde. */
 
 #endif // JOUEUR_H
diff --git a/src/joueurList.c b/src/joueurList.c
index abd646c233e5b43293a4dee8f770b21a319ea1fd..f3aa303c74f16a67943b02da1e556a0de53b4e99 100644
--- a/src/joueurList.c
+++ b/src/joueurList.c
@@ -63,8 +63,8 @@ void deleteJoueurList(ListJoueur * l){
     }
 }
 
-// A DEFINIR, peut etre utile pour l'affichage en console.
-//void printJoueurList(ListJoueur * l);
+/* A DEFINIR, peut etre utile pour l'affichage en console.
+void printJoueurList(ListJoueur * l); */
 
 /*!
  * \fn int emptyJoueurList(ListJoueur * l)
diff --git a/src/joueurList.h b/src/joueurList.h
index d14e272cdb48fe5dbc2762093e59c051d652e539..4d6f334b0d6a2470fe2e64c05385c43725869205 100644
--- a/src/joueurList.h
+++ b/src/joueurList.h
@@ -8,11 +8,11 @@
 
 #include "structures.h"
 
-// Fonctions concernant la structure NodeJoueur
+/* Fonctions concernant la structure NodeJoueur*/
 NodeJoueur * initNodeJoueur(Joueur * joueur);
 void deleteNodeJoueur(NodeJoueur * j);
 
-// Fonctions concernant la structure ListJoueur
+/* Fonctions concernant la structure ListJoueur*/
 ListJoueur * initJoueurList();
 void deleteJoueurList(ListJoueur * l);
 
diff --git a/src/main.c b/src/main.c
index 41330a2531dee8db01e8a926f0bb741378537dde..2961e0261bf95b86a1d7d31cc56b2ace349b2ae3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -4,7 +4,7 @@
 #include "classe.h"
 #include "case.h"
 
-int init_jeu(){ // crée les différents types de terrains, de classes et d'attaques en lisant dans un fichier
+int init_jeu(){ /* crée les différents types de terrains, de classes et d'attaques en lisant dans un fichier */
    FILE *fichier;
    fichier=fopen("../resources/fichier_init.txt","r");
     if (fichier==NULL){
diff --git a/src/partie.c b/src/partie.c
index 98174a737f73ba5e0d1625550129c46bb8036395..c0b8a4e46ebcf4491443b97f01627f438c6fbc1d 100644
--- a/src/partie.c
+++ b/src/partie.c
@@ -84,7 +84,7 @@ int getNbTour(Partie * p){
  * \return 1 si le Joueur a ete correctement retire, 0 sinon.
  */
 int removeParticipant(Partie * p, Joueur * j){
-    //A Ajouter : une fonction sauvant les informations du joueur a retire.
+    /*A Ajouter : une fonction sauvant les informations du joueur a retire.*/
     return deleteNodeJoueurFromList(p->participants,j);
 }
 
@@ -158,7 +158,7 @@ int victoire(Partie * p){
  * \param La Partie p a modifier
  */
 void finPartie(Partie * p){
-    //A ajouter : une fonction sauvant les informations sur le Joueur.
+    /*A ajouter : une fonction sauvant les informations sur le Joueur.*/
     deletePartie(p);
 }
 
diff --git a/src/personnage.c b/src/personnage.c
index 4779478c8ef1c4d0984d7a39806c0a47170cf061..d96e108fc3a5b444f8350adf74c240522c1adbf5 100644
--- a/src/personnage.c
+++ b/src/personnage.c
@@ -6,7 +6,7 @@
 #include "deplacements.h"
 
 Personnage* init_personnage(Personnage *perso, Classe *c, Case *casedepart){
-    perso->classe=*c;
+    perso->classe=c;
     perso->points_deplacement=c->points_deplacement_max;
     perso->PV=c->PV_max;
     perso->mana=c->mana_max;
@@ -15,6 +15,10 @@ Personnage* init_personnage(Personnage *perso, Classe *c, Case *casedepart){
     return perso;
 }
 
+Classe * getClasse(Personnage *p){
+    return p->classe;
+}
+
 Case * getPosition(Personnage *p){
     return p->position;
 }
@@ -23,6 +27,10 @@ int get_PV(Personnage *p){
     return p->PV;
 }
 
+int get_mana(Personnage *p){
+    return p->mana;
+}
+
 int get_PD(Personnage *p){
     return p->points_deplacement;
 }
diff --git a/src/personnage.h b/src/personnage.h
index 69f4b8f575cd3a62924dfce941df2e336b608e96..f861acf696c44764368657e18497feae925c9095 100644
--- a/src/personnage.h
+++ b/src/personnage.h
@@ -9,6 +9,8 @@ int get_PV(Personnage *p);
 
 int get_PD(Personnage *p);
 
+int get_mana(Personnage *p);
+
 boolean est_paralyse(Personnage *p);
 
 int deplacer_personnage (Personnage *perso, Case *destination);
diff --git a/src/structures.h b/src/structures.h
index 782d390d750fdb35d09684bc7d1ca685ddbaf3b2..b4d56ab43da081917c4ec1172f8e3a214074c346 100644
--- a/src/structures.h
+++ b/src/structures.h
@@ -60,7 +60,7 @@ typedef struct Case{
 typedef Case Carte[TAILLE_MAX_CARTE];
 
 /*! \struct Effet structures.h
- * \brief Definition de la structure Personnage.
+ * \brief Definition de la structure Effet.
  */
 typedef struct Effet{
     unsigned int nb_tours_restants;/*!< Le nombre de tours restants avant que l'effet ne s'estompe*/
@@ -75,9 +75,9 @@ typedef struct Effet{
 typedef struct Attaque{
     char nom[TAILLE_NOMS]; /*!< Nom de l'attaque de taille TAILLE_NOMS*/
     unsigned short int degats_directs; /*!< Degats direct occasionnes*/
-    unsigned short int degats_permanents; /*!< Degats permanents occasionnes*/
+    unsigned short int mana; /*!< Mana consommé*/
     unsigned short int portee; /*!< Portee en nombre de cases de l'attaque*/
-    Effet effets[]; /*!< Tableau des effets appliques par l'attaque*/
+    Effet effets[]; /*!< Tableau des effets appliques par l'attaque, cela comprend les dégâts de duree*/
 } Attaque;
 
 /*! \struct Classe structures.h
@@ -96,7 +96,7 @@ typedef struct Classe{
  */
 typedef struct Personnage{
     char nom[TAILLE_NOMS];/*!< Nom du personnage de taille TAILLE_NOMS*/
-    Classe classe; /*!< La classe dont depend le personnage */
+    Classe* classe; /*!< La classe dont depend le personnage */
     unsigned short int points_deplacement; /*!< Les PD actuels du personnage*/
     unsigned short int PV; /*!< Les PV actuels du personnage*/
     unsigned short int mana; /*!< Le mana actuel du personnage*/