From 18388a0a1fabe18f595bdf9e1040e9422a31d637 Mon Sep 17 00:00:00 2001 From: ColinDrieu <colin.drieu@insa-rennes.fr> Date: Tue, 3 May 2016 17:28:31 +0200 Subject: [PATCH] Correction de la fonction ajouterUnJoueur de controlleur.c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Correction reportée dans SDL_bis. --- src/SDL_bis.c | 3 ++- src/controleur.c | 19 +++++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/SDL_bis.c b/src/SDL_bis.c index 3e6758a..810b9b9 100644 --- a/src/SDL_bis.c +++ b/src/SDL_bis.c @@ -63,7 +63,8 @@ int SDL_bis() char nom_joueur1[15] = ""; fgets(nom_joueur1, sizeof(nom_joueur1), stdin); char nom_joueur2[15] = ""; - ajouter_joueurs(nom_joueur1,nom_joueur2, &etat); //a coder par colin + ajouterUnJoueur(nom_joueur1,&etat); + ajouterUnJoueur(nom_joueur2,&etat); while(quitter==0) { diff --git a/src/controleur.c b/src/controleur.c index 65fcb3f..65ec869 100644 --- a/src/controleur.c +++ b/src/controleur.c @@ -28,14 +28,25 @@ void initJeu(){ /*! * \fn void ajouterUnJoueur(char * nomDuJoueur, Et) - * \brief Fonction de construction d'un package contenant l'univers du jeu + * \brief Fonction ajoutant un Joueur à la Partie et faisant passer la partie à l'état suivant. + * Si le joueur n'a pas correctement été ajouté, l'état reste le même. * - * \return un Game_Package + * \param Le nom du joueur à ajouter à la partie */ void ajouterUnJoueur(char * nomDuJoueur, EtatsJeu * etat){ Joueur * j = nouveauJoueur(); - setNomJoueur(j,nomDuJoueur); - addParticipant(partieGlobale,j); + if(j!=NULL){ + setNomJoueur(j,nomDuJoueur); + if(addParticipant(partieGlobale,j)){ + *etat =LANCEMENT; + } + else{ + *etat=SAISIE_JOUEURS; + } + } + else{ + *etat=SAISIE_JOUEURS; + } } -- GitLab