Un jeu de cartes à piper les une dans les autres - retour accueil
git clone git://bebou.netlib.re/pipe-game
Log | Files | Refs | README |
commit 524e3c3b1a8a90092eb1010d61870a7b17517156 parent 876551c2a66af25f0fc157ea263c23e58bbbd573 Auteurice: Arthur Pons <arthur.pons@unistra.fr> Date: Tue, 28 Jan 2025 18:12:27 +0100 On peut rappatrier les cartes jouées sur l'ennemi Et donc lui voler sa source trop drôle ! Diffstat:
M | interface.c | | | 15 | +++++++++++++-- |
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/interface.c b/interface.c @@ -72,7 +72,11 @@ void removecardofpile(int cardposition, pile* p, pile **piles) { if(strcmp(piles[PLAYEDARGS]->cards[cardposition],"none")!=0) addcardtopile(piles[PLAYEDARGS]->cards[cardposition],piles[ARGS],piles); removecardofpile(cardposition,piles[PLAYEDARGS],piles); - } else if(strcmp(p->name,"playedargs")==0 && strcmp(p->cards[cardposition],"none")!=0) { + } else if (strcmp(p->name,"playedennemy")==0) { + if(strcmp(piles[PLAYEDENNEMYARGS]->cards[cardposition],"none")!=0) + addcardtopile(piles[PLAYEDENNEMYARGS]->cards[cardposition],piles[ARGS],piles); + removecardofpile(cardposition,piles[PLAYEDENNEMYARGS],piles); + } else if( ( strcmp(p->name,"playedargs")==0 || strcmp(p->name,"playedennemyargs")==0) && strcmp(p->cards[cardposition],"none")!=0) { p->cards[cardposition]="none"; return; } @@ -295,7 +299,7 @@ int main(int argc, char **argv) { selection=!selection; curmenu=&args; } - if (piles[ARGS]->cardCount > 0){ curmenu=&args; } + if (piles[ARGS]->cardCount > 1){ curmenu=&args; } else if (piles[HAND]->cardCount > 0){ curmenu=&hand; } } else if(strcmp(curmenu->name,"hand")==0) { if (selection) { @@ -322,6 +326,13 @@ int main(int argc, char **argv) { if (piles[PLAYEDARGS]->cardCount > 0){ curmenu=&playedargs; } } else if (strcmp(curmenu->name,"played")==0 && piles[PLAYEDARGS]->cardCount > 0) { curmenu=&playedargs; + } else if(strcmp(curmenu->name,"playedennemy")==0) { + if (selection) { + addcardtopile(playedennemy.cards[playedennemy.curline],&hand,piles); + removecardofpile(playedennemy.curline,&playedennemy,piles); + selection=!selection; + } + if (piles[PLAYEDENNEMY]->cardCount > 0){ curmenu=&hand; } } break; case 13: