/* * File: game.h * Author: Arthur Brandao * * Created on 28 novembre 2018 */ #ifndef GAME_H #define GAME_H /* --- Include --- */ #include "constante.h" #include "player.h" #include "json.h" /* --- Constante --- */ #define WIDTH 0 #define HEIGHT 1 /* --- Struct --- */ typedef struct{ boolean active; char* name; //Nom int nbPlayer; //Nombre de joueur char* mapName; //Nom de la map char* mapContent; //La map en string int width; //Largeur de la map int height; //Hauteur de la map char** map; //Map Player* player[MAXPLAYER]; //Les joueurs actuels }Game; /* --- Extern --- */ extern Game game[MAXGAME]; extern int nbGame; /* --- Fonctions --- */ /** * Initialise les structures des parties */ void ini_games(); /** * Liste le nom de toutes les maps sous forme de JSON * @return JsonArray* Les maps existantes */ JsonArray* list_map(); /** * Liste les game en cours en JSON * @return JsonArray* Les games existantes */ JsonArray* list_game(); /** * Donne les dimension d'une carte * @param char* La carte * @return int* Tableau de resultat */ int* map_size(char*); int create_game(char*, char*); int add_player(Game*, int); JsonEncoder* describe_game(Game*, int); boolean notify_player(Game*, char*, char*, JsonEncoder*, int); void stop_game(Game*); void clean_games(); #endif /* GAME_H */