diff --git a/IAEngine.c b/IAEngine.c index 796e489..8f6bcb6 100644 --- a/IAEngine.c +++ b/IAEngine.c @@ -19,6 +19,7 @@ int IAEngine(PLAYER * player1, PLAYER * player2) { //Player 1 est le joueur, player 2 le bot if((player1 != NULL) & (player2 !=NULL)) + char Race[20]; { //On récupère les positions des 2 joueurs . L'IA sait où est le joueur int Player1PositionX = player1->PositionX; diff --git a/arenaEngine.c b/arenaEngine.c index ff5695b..9f9acb2 100644 --- a/arenaEngine.c +++ b/arenaEngine.c @@ -2,17 +2,92 @@ #include #include #include "fileHandler.h" -#include -#include -int initResources(tilesList) { - resOpen(); +int initResources() { + //resOpen(); return 0; } -void genNewArena(int w, int h, ARENA_TILE* a[][]) { - a = malloc(sizeof(ARENA_TILE) * w * h); +ARENA_H_TILE* createHTile(ARENA_H_TILE* prevHTile) { + ARENA_H_TILE* tile_h = NULL; + + if (prevHTile == NULL) { + tile_h = calloc(1,sizeof(ARENA_H_TILE)); //Using calloc because of resetting all memory allocated to 0 + tile_h->type_id = 0; + tile_h->isGround = 1; + tile_h->canBeMined = 0; + tile_h->nextRow = NULL; + tile_h->nextColumn = NULL; + + return tile_h; + } else if (prevHTile != NULL) { + tile_h = calloc(1,sizeof(ARENA_H_TILE)); + prevHTile->nextRow = tile_h; + tile_h->type_id = 0; + tile_h->isGround = 1; + tile_h->canBeMined = 0; + tile_h->nextRow = NULL; + tile_h->nextColumn = NULL; + } + + return NULL; +} + +ARENA_W_TILE* createWTile(ARENA_H_TILE* prevHTile, ARENA_W_TILE* prevWTile) { + ARENA_W_TILE* tile_w = NULL; + + if (prevHTile != NULL && prevWTile == NULL) { + tile_w = calloc(1,sizeof(ARENA_W_TILE)); + prevHTile->nextColumn = tile_w; + tile_w->type_id = 0; + tile_w->isGround = 1; + tile_w->canBeMined = 0; + tile_w->nextColumn = NULL; + + return tile_w; + } else if (prevHTile == NULL && prevWTile != NULL) { + tile_w = calloc(1,sizeof(ARENA_W_TILE)); + prevWTile->nextColumn = tile_w; + tile_w->type_id = 0; + tile_w->isGround = 1; + tile_w->canBeMined = 0; + tile_w->nextColumn = NULL; + } + + return NULL; +} + +ARENA_H_TILE* genNewArena(int w, int h) { + ARENA_H_TILE* arenaOrigin = NULL; + ARENA_H_TILE* TmpCursor_h = NULL; + ARENA_W_TILE* TmpCursor_w = NULL; + int i,j; + + for(i=0;inextColumn; + } + + if (i!=0) TmpCursor_h = TmpCursor_h->nextRow; + } + + return arenaOrigin; +} + +int deleteArena(ARENA_H_TILE* genNewArena) { - for } diff --git a/arenaEngine.h b/arenaEngine.h index d7729f7..c9fe930 100644 --- a/arenaEngine.h +++ b/arenaEngine.h @@ -9,16 +9,25 @@ typedef struct items{ //texture? int isFlat; int minedId; - struct items; + struct items *nextItem; }ITEMS; */ -typedef struct a_tile{ +typedef struct arena_h_tile{ //Rows chained list int type_id; //texture? - int isFlat; + int isGround; int canBeMined; - //struct a_tile nextTile; -}ARENA_TILE; + struct arena_h_tile *nextRow; + struct arena_w_tile *nextColumn; +}ARENA_H_TILE; + +typedef struct arena_w_tile{ //Columns chained list + int type_id; + //texture? + int isGround; + int canBeMined; + struct arena_w_tile *nextColumn; +}ARENA_W_TILE; #endif diff --git a/main.c b/main.c index d448ffb..010ffc6 100644 --- a/main.c +++ b/main.c @@ -10,6 +10,11 @@ #include "SDL2/SDL.h" #include #include +#include "logHelper.h" +#include "SDL2/SDL.h" +#include "SDL2/SDL_thread.h" +#include "SDL2/SDL_mutex.h" +#include "arenaEngine.h" int main(void) { diff --git a/menuGUI.c b/menuGUI.c index 0545de3..b433bec 100644 --- a/menuGUI.c +++ b/menuGUI.c @@ -9,7 +9,7 @@ void initDisplayLib() { } } -int createMainWindows() { +int createGameMenuWindows() { if (SDL_Init(SDL_INIT_VIDEO) != 0) { printf("Erreur chargement librairie SDL ! %s\n",SDL_GetError()); exit(EXIT_FAILURE); @@ -23,3 +23,4 @@ int createMainWindows() { SDL_Quit(); return EXIT_SUCCESS; } +