Gioco delle coppie di Carte

di il
1 risposte

Gioco delle coppie di Carte

Ciao a tutti!
devo creare un gioco (in C) in cui devo confrontare il valore di due carte se sono uguali...ma prima di arrivare a questa fase dovrei creare il mazzo di carte! come posso fare?
Devono essere carte napoletane quindi 40 con 10 di ogni seme.(spade-denari-bastoni-coppe)

Mi verrebbe in mente un array ma poi come faccio ad incorporare il seme?
...mmh forse con gli struct...
mi serve prima visualizzarlo ordinato e poi successivamete mischiarlo...

Grazie
Fabio

1 Risposte

  • Re: Gioco delle coppie di Carte

    Io ti consiglio di usare liste concatenate
    Sarebbe giusto (anche divertente) con la stessa tecnica gestire anche i giocatori.
    
    typedef struct card
    {
        int order; // key order
    
        char type;
        int seme;
        int value; // 1...10..o 11 etc..
    
        struct card *prev;
        struct card *next;
    }card;
    
    typedef struct player
    {
        int isHuman;
        char name[32];
    
        int pescare;  // Qui mettere quello che ti serve di sapere
        int scartare; // sulla situazione del giocatore
    
        int numcards;               // Numero carte in mano
        struct card *HandFirst;  // Carte in mano
        struct card *HandLast;  //  ""
    
        struct card *DownFisrt; // Carte scartate da giocatore 
        struct card *DownLast; // ""
    
        struct player *prev;
        struct player *next;
    
    }player;
    
    e poi esternamente gestire il mazzo nuovo e il mazzo delle scartate:
    
    int NumCards=108;
    card *FirstCard=NULL;
    card *LastCard =NULL;
    
    int NumTrashCards=0;
    card *FirstTrashCard=NULL;
    card *LastTrashCard =NULL;
    
    ovvio ... anche i giocatori:
    
    int NumPlayers=0;
    player *FirstPlayer=NULL;
    player *LastPlayer =NULL;
    
    Per l'ordinamento dellle carte in mano una bubblesort è + che sufficiente... poi aggiungerei una funzione di move per spostare la carta agendo sui link (differente dalla swap che userai nel sort). - anche per le carte di scarto modificare solo i link delle liste -

    Saluti,
    Max
Devi accedere o registrarti per scrivere nel forum
1 risposte