start handling of the game

This commit is contained in:
Mylloon 2022-11-17 20:24:22 +01:00
parent 0d1d3d584c
commit f80c7f340b
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
3 changed files with 33 additions and 4 deletions

View file

@ -53,8 +53,14 @@ typedef struct jeu Jeu;
/* Créer une nouvelle partie */ /* Créer une nouvelle partie */
Jeu *nouvelle_partie(void); Jeu *nouvelle_partie(void);
/* Lance une partie */ /* Lance et joue une partie */
void debut_partie(Jeu *jeu); void deroulement_partie(Jeu *jeu);
/* Joue le tour d'un joueur */
void action_joueur(Jeu *jeu, int couleur);
/* Vérifie si une partie est terminée */
int partie_finie(Jeu *jeu);
/* Libère le jeu en mémoire */ /* Libère le jeu en mémoire */
void free_jeu(Jeu *jeu); void free_jeu(Jeu *jeu);

View file

@ -28,7 +28,30 @@ Jeu *nouvelle_partie(void) {
return jeu; return jeu;
} }
void debut_partie(Jeu *jeu) { affiche_plateau(jeu->plateau); } void deroulement_partie(Jeu *jeu) {
int tour = NOIR;
while (!partie_finie(jeu)) {
affiche_plateau(jeu->plateau);
// TODO: Check if player can play
action_joueur(jeu, tour);
tour = tour == NOIR ? BLANC : NOIR;
}
// TODO: Handle end game
}
void action_joueur(Jeu *jeu, int couleur) {
// TODO
printf("Tour de %c !\n", couleur);
}
int partie_finie(Jeu *jeu) {
// TODO
return 0;
}
void free_jeu(Jeu *jeu) { void free_jeu(Jeu *jeu) {
free_liste(jeu->j1->liste_jeton); free_liste(jeu->j1->liste_jeton);

View file

@ -2,7 +2,7 @@
int main(void) { int main(void) {
Jeu *jeu = nouvelle_partie(); Jeu *jeu = nouvelle_partie();
debut_partie(jeu); deroulement_partie(jeu);
free_jeu(jeu); free_jeu(jeu);