pipe-game

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 f3393ef5e78986a0f1ed3e416a33486d14e3f047
parent 524e3c3b1a8a90092eb1010d61870a7b17517156
Auteurice: Arthur Pons <arthur.pons@unistra.fr>
Date:   Tue, 28 Jan 2025 18:41:42 +0100

Modification de l'interface

La main est au milieu, la pile joueureuse à gauche, l'ennemi à droite
On a donc inversé les commandes
Affichage un peu plus dynamique et propre, par contre prend beaucoup de
place
Ca rentre dans mon terminal en plein écran mais c'est entre autre parce
qu'il est très dézoomé

Diffstat:
Minterface.c | 58+++++++++++++++++++++++++++++-----------------------------
1 file changed, 29 insertions(+), 29 deletions(-)

diff --git a/interface.c b/interface.c @@ -29,12 +29,13 @@ int nblines(char *str) { return l; } -void hr(int rowoffset, int lineoffset, int length) { +int hr(int rowoffset, int lineoffset, int length) { char ruler[length+1]; for(int i=0;i<length;i++) ruler[i]='-'; ruler[length]='\0'; tb_printf(rowoffset, lineoffset, TB_DEFAULT, TB_DEFAULT, ruler); + return lineoffset+1; } void vr(int rowoffset, int lineoffset, int length) { @@ -189,42 +190,41 @@ int debug(int l, pile curmenu,struct tb_event ev) { } int display(pile** piles, pile curmenu, bool selection, char* cmd, char* res, char* intern, char* cmdennemy, char* resennemy, char* internennemy) { - int lineoffset=0; + int lineoffset1=0, lineoffset2=0; tb_clear(); - lineoffset=displaypile(*piles[HAND], curmenu, 0, 0, selection); - lineoffset=displaypile(*piles[ARGS], curmenu, 0, lineoffset, selection); - - vr(CARD_NAME_SIZE,0,lineoffset); - - int lo=displaypile(*piles[PLAYED], curmenu, CARD_NAME_SIZE+2, 0, selection); - - vr(CARD_NAME_SIZE*2,0,max(lineoffset,lo)); - - displaypile(*piles[PLAYEDARGS], curmenu, CARD_NAME_SIZE*2+2, 0, selection); - - vr(CARD_NAME_SIZE*3,0,max(lineoffset,lo)); + displaypile(*piles[PLAYEDARGS], curmenu, 0, 0, selection); + displaypile(*piles[PLAYED], curmenu, CARD_NAME_SIZE+2, 0, selection); + lineoffset1=displaypile(*piles[HAND], curmenu, CARD_NAME_SIZE*2+2, 0, selection); + lineoffset1=displaypile(*piles[ARGS], curmenu, CARD_NAME_SIZE*2+2, lineoffset1, selection); + lineoffset2=displaypile(*piles[PLAYEDENNEMY], curmenu, CARD_NAME_SIZE*3+2, 0, selection); + displaypile(*piles[PLAYEDENNEMYARGS], curmenu, CARD_NAME_SIZE*4+2, 0, selection); - lo=displaypile(*piles[PLAYEDENNEMY], curmenu, CARD_NAME_SIZE*3+2, 0, selection); + vr(CARD_NAME_SIZE,0,lineoffset1); + vr(CARD_NAME_SIZE*2,0,max(lineoffset1,lineoffset2)); + vr(CARD_NAME_SIZE*3,0,max(lineoffset1,lineoffset2)); + vr(CARD_NAME_SIZE*4,0,max(lineoffset1,lineoffset2)); + lineoffset1=hr(0,max(lineoffset1,lineoffset2),CARD_NAME_SIZE*5); + int lo=lineoffset1; - vr(CARD_NAME_SIZE*4,0,max(lineoffset,lo)); + lineoffset1=displaytextblock(res,0,lo); + lineoffset1=displaytextblock(intern,0,lineoffset1); + lineoffset1=displaytextblock(cmd,0,lineoffset1); - displaypile(*piles[PLAYEDENNEMYARGS], curmenu, CARD_NAME_SIZE*4+2, 0, selection); + lineoffset2=displaytextblock(resennemy,CARD_NAME_SIZE*3+2,lo); + lineoffset2=displaytextblock(internennemy,CARD_NAME_SIZE*3+2,lineoffset2); + lineoffset2=displaytextblock(cmdennemy,CARD_NAME_SIZE*3+2,lineoffset2); + lo=max(lineoffset1,lineoffset2); - lo=displaytextblock(resennemy,CARD_NAME_SIZE*3+2,lo); - lo=displaytextblock(internennemy,CARD_NAME_SIZE*3+2,lo); - lo=displaytextblock(cmdennemy,CARD_NAME_SIZE*3+2,lo); - - lineoffset=displaytextblock(res,0,lineoffset); - lineoffset=displaytextblock(intern,0,lineoffset); - lineoffset=displaytextblock(cmd,0,lineoffset); - lineoffset=displaytextblock("\ + lo=displaytextblock("\ * enter to select card\n\ * arrows to move selection\n\ * m to create arg (if no whitespace)\n\ - * e to end turn and output res\n",0,lineoffset+2); + * e to end turn and output res\n",0,lo); + + lo=hr(0,lo,CARD_NAME_SIZE*5); - return lineoffset; + return lo; } @@ -284,7 +284,7 @@ int main(int argc, char **argv) { curmenu=moveselection(curmenu,piles,"down",selection); break; /* <- */ - case 65515: + case 65514: if (strcmp(curmenu->name,"played")==0) { if (selection) { addcardtopile(played.cards[played.curline],&hand,piles); @@ -311,7 +311,7 @@ int main(int argc, char **argv) { } break; /* -> */ - case 65514: + case 65515: if (strcmp(curmenu->name,"hand")==0) { if (selection) { addcardtopile(hand.cards[hand.curline],&played,piles);