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 1d05d754b7c9307f076b81c9c67a620a26db5a2f parent 4dae937e97cec1782dbbc9f9004c772d290b1b42 Auteurice: Arthur Pons <arthur.pons@unistra.fr> Date: Tue, 21 Jan 2025 21:44:14 +0100 Correction bug de passage entre les piles On pouvait rentrer dans des piles vides Ca demanderait un peu de facto mais faut que je réflechisse comment Ca donne envie de tout facto dans moveselection mais ensuite le switch sera dans moveselection donc je sais pas Diffstat:
M | interface.c | | | 8 | ++++---- |
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/interface.c b/interface.c @@ -76,8 +76,8 @@ pile* moveselection(pile* p, pile** piles, char* direction, bool selection) { p->curline=p->curline+step; return p; } - if (p->name=="hand" && direction == "down") { return piles[ARGS]; } - else if (p->name=="args" && direction == "up") { return piles[HAND]; } + if (p->name=="hand" && direction == "down" && piles[ARGS]->cardCount>0) { return piles[ARGS]; } + else if (p->name=="args" && direction == "up" && piles[HAND]->cardCount>0) { return piles[HAND]; } return p; } @@ -209,7 +209,7 @@ int main(int argc, char **argv) { removecardofpile(played.curline,&played); selection=!selection; } - curmenu=&hand; + if (piles[HAND]->cardCount > 0){ curmenu=&hand; } } break; /* -> */ @@ -219,7 +219,7 @@ int main(int argc, char **argv) { addcardtopile(hand.cards[hand.curline],&played); removecardofpile(hand.curline,&hand); } - curmenu=&played; + if (piles[PLAYED]->cardCount > 0){ curmenu=&played; } } break; case 13: