diff --git a/src/ClassesXML.c b/src/ClassesXML.c index acc5858c7e8053cb074d212307031a1fa973e317..f9cc9102a80be1a3c255a7dec91b9fce8fb2ac18 100644 --- a/src/ClassesXML.c +++ b/src/ClassesXML.c @@ -4,8 +4,10 @@ #include "ClassesXML.h" - - +/*! +* \file classesXML.c +* \brief Fichier contenant le code des fonctions d'aquisition des classes. +*/ Classe* Remplir_Classes(FILE* Classes_log, const char *filename) /* Remplit le tableau de classes à partir du fichier XML */ { diff --git a/src/ClassesXML.h b/src/ClassesXML.h index 48fc88c8ea0ae7dde3311f9bb76fcbd44a6dd5f6..1e8dd035deac54cb37abbeabfc642338ddf5baec 100644 --- a/src/ClassesXML.h +++ b/src/ClassesXML.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a l'aquisition des classes. +*/ + #ifndef CLASSESXML_H_INCLUDED #define CLASSESXML_H_INCLUDED diff --git a/src/SDL.c b/src/SDL.c index 4f281fd99fde43455ff94d7ef01239ee9341025f..0e09f12b9d6b5d81126a78591aee046883b94707 100644 --- a/src/SDL.c +++ b/src/SDL.c @@ -7,6 +7,10 @@ #define HAUTEUR_CASE 71 #define NB_PERSO 1 +/*! +* \file SDL.c +* \brief Fichier contenant le code des fonctions liees à l'affichage par la SDL. +*/ int main_SDL() { diff --git a/src/SDL.h b/src/SDL.h index 2eefcb96d0ce016d5f12020d0a735999a48de054..2724b332a1ba6b71f7debd056e60c1634dcdc5e1 100644 --- a/src/SDL.h +++ b/src/SDL.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a l'affichage par SDL. +*/ + #ifndef SDL_H_INCLUDED #define SDL_H_INCLUDED diff --git a/src/TerrainsXML.c b/src/TerrainsXML.c index e121b776e357384e248dc5683216a4b1f9edc0c8..199fafda3a5b84c22e1e55205c04202ec7d65b30 100644 --- a/src/TerrainsXML.c +++ b/src/TerrainsXML.c @@ -3,6 +3,11 @@ #include "TerrainsXML.h" +/*! +* \file classesXML.c +* \brief Fichier contenant le code des fonctions d'aquisition des terrains. +*/ + Case* Remplir_Terrains(FILE* Terrains_XML_log, const char *filename) /* Remplit le tableau de cases à partir du fichier XML */ { fprintf(Terrains_XML_log,"I) Chargement du fichier Terrains XML - Definition des noeuds\n"); diff --git a/src/TerrainsXML.h b/src/TerrainsXML.h index 75a8ec6276338acd38ab1923f98ac09bad2ef1d7..cff21e79a9aee924f12739dba3760eb1a88750c3 100644 --- a/src/TerrainsXML.h +++ b/src/TerrainsXML.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a l'aquisition des types de terrains. +*/ + #ifndef TERRAINS_XML_H_INCLUDED #define TERRAINS_XML_H_INCLUDED diff --git a/src/carte.c b/src/carte.c new file mode 100644 index 0000000000000000000000000000000000000000..f26fc64231d0da31e71d66ccab93a7b2406a57b6 --- /dev/null +++ b/src/carte.c @@ -0,0 +1,6 @@ +#include "carte.h" + +/*! +* \file carte.c +* \brief Fichier contenant le code des fonctions liees aux cartes. +*/ diff --git a/src/carte.h b/src/carte.h new file mode 100644 index 0000000000000000000000000000000000000000..8ab25c14e2c778d20ebf4b85535e7590632b02dd --- /dev/null +++ b/src/carte.h @@ -0,0 +1,12 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure carte. +*/ + + +#ifndef CARTE_H_INCLUDED +#define CARTE_H_INCLUDED + + + +#endif // CARTE_H_INCLUDED diff --git a/src/case.c b/src/case.c index 425e028a4d843e5619693edb406f46c60f50e8f4..f3f078982bed101bd51eacc573615564e6ba2784 100644 --- a/src/case.c +++ b/src/case.c @@ -5,6 +5,11 @@ #include "personnage.h" #include "deplacements.h" +/*! +* \file case.c +* \brief Fichier contenant le code des fonctions liees aux cases +*/ + Case * init_case(Case * c,int x, int y, Terrain *t){ c->coord_x=x; diff --git a/src/case.h b/src/case.h index 8d1a6437dd9f5f8b35a8fa2e952d92c11e2a2476..a26b52ef37812a024537a61759d50d72bad61747 100644 --- a/src/case.h +++ b/src/case.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure case. +*/ + #ifndef CASE_H_INCLUDED #define CASE_H_INCLUDED diff --git a/src/classe.c b/src/classe.c index 4b32b34ab07ca0c5f0bcf1858b2d1ee259b81a72..240ad175662cabc3e36b62646a96f7323e109b94 100644 --- a/src/classe.c +++ b/src/classe.c @@ -3,7 +3,10 @@ #include <roxml.h> #include "classe.h" - +/*! +* \file classe.c +* \brief Fichier contenant le code des fonctions liees aux classes. +*/ Classe* Librairie_Classes(const char *filename){ diff --git a/src/classe.h b/src/classe.h index 141d52137476c5ff3eea690c177a5447d0d3c21a..db462d456f154e32b884c281f7b8398c123de2fd 100644 --- a/src/classe.h +++ b/src/classe.h @@ -1,3 +1,9 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure classe. +*/ + + #ifndef CLASSE_H_INCLUDED #define CLASSE_H_INCLUDED diff --git a/src/competence.c b/src/competence.c index b1300980221f2b92d5a788064e10129a83787ac2..dc14ff165987857c136fca0ff776b9ee9675934f 100644 --- a/src/competence.c +++ b/src/competence.c @@ -3,6 +3,10 @@ #include "structures.h" #include "competence.h" +/*! +* \file competence.c +* \brief Fichier contenant le code des fonctions liees aux arbres de compétences. +*/ Arbre_Competence* init_arbre_competence(Arbre_Competence *a){ return NULL; diff --git a/src/competence.h b/src/competence.h index fd3d3758fc5dffafcf2c15bed16c931108385a2a..226e6c32b83c78a4d7a7fd5aed8096a642dca138 100644 --- a/src/competence.h +++ b/src/competence.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure competence. +*/ + #ifndef DEPLACEMENTS_H_INCLUDED #define DEPLACEMENTS_H_INCLUDED diff --git a/src/controleur.c b/src/controleur.c index 0ba4a2e51333a44526522e6139320ab1d1e85b20..dd2c66a7ff7fd4506930d0740c97735b7511592a 100644 --- a/src/controleur.c +++ b/src/controleur.c @@ -59,36 +59,6 @@ Case * entrerCoordonnees(Partie * p){ return caseTemp; } - /*! - * \fn Personnage * coordonneesValidesPersonnage(Partie * p, Case * c) - * \brief La fonction teste pour tous les Joueurs de la Partie s'ils possedent un Personnage sur la Case en entree. - * Si c'est le cas, le Personnage sur la Case est retourne. - * - * \param La Partie p en cours, la Case a tester. - * \return Un pointeur vers le Personnage sur la Case, NULL s'il n'y a pas de Personnage sur la Case. - */ -Personnage * coordonneesValidesPersonnage(Partie * p, Case * c){ - int i; - Personnage * resP = NULL; - Joueur * tempJ = NULL; - tempJ = getCurrentJoueur(getListJoueur(p)); - setOnFirstJoueur(getListJoueur(p)); - while(outOfJoueurList(getListJoueur(p))){ - for(i=0;i<TAILLE_MAX_GROUPE;i++){ - if(estSurLaCase(getPersonnage(getCurrentJoueur(getListJoueur(p)),i),c)){ - resP = getPersonnage(getCurrentJoueur(getListJoueur(p)),i); - } - } - } - for(i=0;i<TAILLE_MAX_GROUPE;i++){ - if(estSurLaCase(getPersonnage(getCurrentJoueur(getListJoueur(p)),i),c)){ - resP = getPersonnage(getCurrentJoueur(getListJoueur(p)),i); - } - } - setOnJoueur(getListJoueur(p),tempJ); - return resP; -} - /*! * \fn void personnageSelectionne(Partie * p) * \brief La fonction fait l'interface entre le moteur du jeu et l'affichage pour l'affichage des caracteristiques d'un Personnage. diff --git a/src/deplacements.c b/src/deplacements.c index d39dd4a0927e2203beec15aa8537d17aec0a1860..117b8104592c72cf75bd3b4402bbf5e436ac703d 100644 --- a/src/deplacements.c +++ b/src/deplacements.c @@ -5,6 +5,11 @@ #include "personnage.h" #include "deplacements.h" +/*! +* \file deplacements.c +* \brief Fichier contenant le code des fonctions liees aux déplacements des personnages. +*/ + 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){ diff --git a/src/deplacements.h b/src/deplacements.h index c2d0d8a8d185307dec0d52872ec2f67f76334ceb..0db414b5d140149076731ce42e0433d6b96b95d1 100644 --- a/src/deplacements.h +++ b/src/deplacements.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees aux deplacements des personnages. +*/ + #ifndef DEPLACEMENTS_H_INCLUDED #define DEPLACEMENTS_H_INCLUDED diff --git a/src/mainPartieConsole.c b/src/mainPartieConsole.c index d391ed12cc82c97d0e75b507a635cc1bc95a545b..04a4044bf524b5b0c068e12fe89a2122fc69461d 100644 --- a/src/mainPartieConsole.c +++ b/src/mainPartieConsole.c @@ -1,5 +1,7 @@ -#include <stdio.h> #include <stdlib.h> +#include <stdio.h> +#include <string.h> + #include "structures.h" #include "controleur.h" #include "partie.h" @@ -8,10 +10,13 @@ #include "joueur.h" #include "affichageConsole2.h" + int mainPartieConsole(){ - Partie * partieEnCours=initPartie(); + //initialisation Case * caseSel = NULL; Personnage * persSel = NULL; + Partie * partieEnCours=initPartie(); + //Partie while(!victoire(partieEnCours)){ switch(choixPrincipal(partieEnCours)){ case 1:{ @@ -29,10 +34,11 @@ int mainPartieConsole(){ //Deplacement } case 3:{ - //Retour choix Principal + //retour au choix principal. } case 4:{ - //fin du tour + finTour(partieEnCours); + afficheFinTour(getNomJoueur(getCurrentJoueur(getListJoueur(partieEnCours)))); } default:{ afficherChoixImpossible(); diff --git a/src/partie.c b/src/partie.c index 242f75be2a8a7fb0702e0b36817300f119c8d479..fa9eb27c69d504b139a678abec11aecf00f6f925 100644 --- a/src/partie.c +++ b/src/partie.c @@ -9,6 +9,7 @@ #include "partie.h" #include "joueurList.h" #include "joueur.h" +#include "case.h" /*! * \fn Partie * initPartie() @@ -19,10 +20,9 @@ Partie * initPartie(){ Partie * p = malloc(sizeof(Partie)); ListJoueur * l = initJoueurList(); - Carte * carteJeu = NULL; + Carte * carteJeu = nouvelleCarte(); p->nbTours=0; p->participants=l; - init_carte(carteJeu,LARG_MAX_CARTE,HAUT_MAX_CARTE); p->c=carteJeu; return p; } @@ -35,6 +35,7 @@ */ void deletePartie(Partie * p){ deleteJoueurList(p->participants); + deleteCarte(p->c); free(p); } @@ -216,5 +217,35 @@ Joueur * appartientJoueur(Personnage * p, Partie * partieEnCours){ return resJ; } + /*! + * \fn Personnage * coordonneesValidesPersonnage(Partie * p, Case * c) + * \brief La fonction teste pour tous les Joueurs de la Partie s'ils possedent un Personnage sur la Case en entree. + * Si c'est le cas, le Personnage sur la Case est retourne. + * + * \param La Partie p en cours, la Case a tester. + * \return Un pointeur vers le Personnage sur la Case, NULL s'il n'y a pas de Personnage sur la Case. + */ +Personnage * coordonneesValidesPersonnage(Partie * p, Case * c){ + int i; + Personnage * resP = NULL; + Joueur * tempJ = NULL; + tempJ = getCurrentJoueur(getListJoueur(p)); + setOnFirstJoueur(getListJoueur(p)); + while(outOfJoueurList(getListJoueur(p))){ + for(i=0;i<TAILLE_MAX_GROUPE;i++){ + if(estSurLaCase(getPersonnage(getCurrentJoueur(getListJoueur(p)),i),c)){ + resP = getPersonnage(getCurrentJoueur(getListJoueur(p)),i); + } + } + } + for(i=0;i<TAILLE_MAX_GROUPE;i++){ + if(estSurLaCase(getPersonnage(getCurrentJoueur(getListJoueur(p)),i),c)){ + resP = getPersonnage(getCurrentJoueur(getListJoueur(p)),i); + } + } + setOnJoueur(getListJoueur(p),tempJ); + return resP; +} + diff --git a/src/partie.h b/src/partie.h index 4c151e1045626b6cd506ecc9500a8f03c7afc5d6..d4ceca18bb47f4e624a1ea337edd79f023c3080e 100644 --- a/src/partie.h +++ b/src/partie.h @@ -25,6 +25,7 @@ int finTour(Partie * p); int isTurn(Partie * p, Joueur * j); Personnage * jouerPersonnage(Partie * p, Joueur * j, Personnage * perso); Joueur * appartientJoueur(Personnage * p, Partie * partieEnCours); +Personnage * coordonneesValidesPersonnage(Partie * p, Case * c); int victoire(Partie * p); diff --git a/src/personnage.c b/src/personnage.c index 582da4e94cd06e3806c60deeb73893d2aa8b653d..830a1152d53d672eb81fde7bd13acba66c6af0cd 100644 --- a/src/personnage.c +++ b/src/personnage.c @@ -5,6 +5,11 @@ #include "personnage.h" #include "deplacements.h" +/*! +* \file personnage.c +* \brief Fichier contenant le code des fonctions liees aux personnages. +*/ + Personnage* init_personnage(Personnage *perso, Classe *c, Case *casedepart){ perso->classe=c; perso->points_deplacement=c->points_deplacement_max; diff --git a/src/personnage.h b/src/personnage.h index 70c641620f6e43778b96df7e399d007cc77c5150..4c654da17142a3ed688219f9e45ac4ac72543526 100644 --- a/src/personnage.h +++ b/src/personnage.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure personnage. +*/ + #ifndef PERSONNAGE_H_INCLUDED #define PERSONNAGE_H_INCLUDED diff --git a/src/terrain.c b/src/terrain.c index dea7bed32f6d43311ea52626894e456f1635d5c0..9100ed28e0a2ec795f189bf64e539d763ab7aa6a 100644 --- a/src/terrain.c +++ b/src/terrain.c @@ -3,6 +3,11 @@ #include <string.h> #include "terrain.h" +/*! +* \file joueurList.c +* \brief Fichier contenant le code des fonctions liees aux types de terrains. +*/ + /* Procédure de remplissage des cases à partir d'un fichier XML */ Terrain* Librairie_Terrains(const char *filename) @@ -40,7 +45,7 @@ boolean terrain_franchissable(Terrain *t){ Terrain * init_terrain(Terrain * t, char * n, boolean f, unsigned short int PD){ t->franchissable=f; strncpy(n,t->nomTerrain,TAILLE_NOMS-1); - t->nomTerrain[0]='/0'; + t->nomTerrain[0]='\0'; t->PD_requis=PD; return t; } diff --git a/src/terrain.h b/src/terrain.h index 9670a880b2215d00540859cd33d797905f56cd95..9cfbbd84c6fb9ffae75a63307151e7d31612014d 100644 --- a/src/terrain.h +++ b/src/terrain.h @@ -1,3 +1,8 @@ +/*! +* \file AffichageConsole.h +* \brief Fichier contenant les signatures des fonctions liees a la structure terrain. +*/ + #ifndef CLASSE_H_INCLUDED #define CLASSE_H_INCLUDED