1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
| struct cycliste_t
{
int piste;
int position;
};
struct deck_t {
int count; // Number of cards of this deck
int cards[MAX_CARDS]; // Actual cards as `int`
};
struct discardable_deck_t {
struct deck_t *deck;
struct deck_t *discard;
};
struct player_t
{
struct cycliste_t *coureur;
struct cycliste_t *sprinter;
struct discardable_deck_t * decks[2];
};
struct cycliste_t* init_cyclist()
{
struct cycliste_t* cycliste = malloc(sizeof(struct cycliste_t));
cycliste->piste=0;
cycliste->position=-1;
return cycliste;
}
struct deck_t* init_deck()
{
struct deck_t *deck = malloc(sizeof(struct deck_t));
return deck;
}
struct discardable_deck_t* init_disc()
{
struct discardable_deck_t* discardable_deck = malloc(sizeof(struct discardable_deck_t));
discardable_deck -> deck = init_deck();
discardable_deck -> discard = init_deck();
return discardable_deck;
}
struct player_t* init_partie()
{
struct player_t* player = malloc(sizeof(struct player_t));
player->coureur = init_cyclist();
player->sprinter = init_cyclist();
player->decks[0] = init_disc();
player->decks[1] = init_disc();
struct deck_t pioche_rouleur = empty_deck();
struct deck_t pioche_sprinter = empty_deck();
pioche_rouleur = { .count = 15, .cards = {3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7}};
pioche_sprinter = { .count = 15, .cards = {2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 9, 9, 9}};
player->decks[0]->deck = &pioche_rouleur; //0 = ROULEUR
//player->decks[0]->discard = empty_deck();
player->decks[1]->deck = &pioche_sprinter;
//player->decks[1].discard = empty_deck();
return player;
}
int NBR_PIOCHE = 4;
int NBR_JOUEUR = 4;
int val_fatigue = 2;
enum cyclist_t choix = ROULEUR;
int init_random()
{
char *val = getenv("SEED");
int seed = val ? atoi(val) : time(NULL);
srand(seed);
return seed;
} |
Partager