diff --git a/Pontu/entryPoints/main.c b/Pontu/entryPoints/main.c index 0cb1bfa..deadfcd 100644 --- a/Pontu/entryPoints/main.c +++ b/Pontu/entryPoints/main.c @@ -5,11 +5,12 @@ #include "engine/InputElement.h" #include "engine/TextureHandler.h" #include "model/Game.h" -#include "view/BoardDrawer.h" +#include "view/GameDrawer.h" int main(int argc, char* argv[]) { SDL_Window* window = NULL; + SDL_Rect windowSize = {10, 10, 600, 600}; SDL_Renderer* renderer = NULL; int statut = EXIT_FAILURE; @@ -19,7 +20,7 @@ int main(int argc, char* argv[]) goto Quit; } - window = SDL_CreateWindow("Pontu",10,10,600,600,SDL_WINDOW_SHOWN); + window = SDL_CreateWindow("Pontu",windowSize.x, windowSize.y, windowSize.w, windowSize.h, SDL_WINDOW_SHOWN); if (!window) { fprintf(stderr, "Error : %s\n", SDL_GetError()); @@ -34,7 +35,8 @@ int main(int argc, char* argv[]) } InputProcessor inputProcessor = {.selectedCase = {.x=-1, .y=-1}}; - SDL_Rect boardRect = {.x=20, .y=20, .w=99*3, .h=99*3}; + int wBoardRect=99*3, hBoardRect=99*3; + SDL_Rect boardRect = {.x=windowSize.w/2 - wBoardRect/2, .y=windowSize.h/2 - hBoardRect/2, .w=wBoardRect, .h=99*3}; const char* pseudos[] = {"Azerty","Bépo"}; Game game = newGame(2, pseudos); TextureHandler textureHandler = newTextureHandler(renderer); @@ -82,7 +84,7 @@ int main(int argc, char* argv[]) // Drawing - drawBoard(renderer, &boardRect, &game.board, textureHandler.textures[TEXTURE_Island], textureHandler.textures[TEXTURE_Bridge], textureHandler.textures[TEXTURE_Water]); + drawGame(renderer, &windowSize, &boardRect, &game, &textureHandler); SDL_RenderPresent(renderer); @@ -102,4 +104,4 @@ Quit: SDL_Quit(); return statut; -} \ No newline at end of file +} diff --git a/Pontu/include/view/GameDrawer.h b/Pontu/include/view/GameDrawer.h new file mode 100644 index 0000000..e5afe4b --- /dev/null +++ b/Pontu/include/view/GameDrawer.h @@ -0,0 +1,14 @@ +#ifndef GAME_DRAWER_INCLUDED +#define GAME_DRAWER_INCLUDED + +#include + +#include "model/Game.h" +#include "engine/TextureHandler.h" +#include "view/BoardDrawer.h" +#include "engine/Button.h" + + +bool drawGame(SDL_Renderer* renderer, SDL_Rect* windowSize, SDL_Rect* boardRect, Game* game,TextureHandler* textureHandler); + +#endif diff --git a/Pontu/src/view/GameDrawer.c b/Pontu/src/view/GameDrawer.c new file mode 100644 index 0000000..3a86bcc --- /dev/null +++ b/Pontu/src/view/GameDrawer.c @@ -0,0 +1,18 @@ +#include "view/GameDrawer.h" + +bool drawGame(SDL_Renderer* renderer, SDL_Rect* windowSize, SDL_Rect* boardRect, Game* game, TextureHandler* textureHandler) +{ + SDL_Texture* menuTexture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, 50, 70); + + SDL_SetRenderTarget(renderer, menuTexture); + SDL_SetRenderDrawColor(renderer, 150, 243, 59, 255); + SDL_Rect buttonRect = {.x = 0,.y = 0,.w = 50,.h = 70}; + SDL_RenderFillRect(renderer, &buttonRect); + SDL_SetRenderTarget(renderer, NULL); + + //P_Button menu = createButton(menuTexture, NULL, (windowSize->w*5)/100, (windowSize->h*5)/100, 50, 70, NULL); + P_Button menu = createButton(menuTexture, NULL, 10, 10, 50, 70, NULL); + + + drawBoard(renderer, boardRect, &(game->board), textureHandler->textures[TEXTURE_Island], textureHandler->textures[TEXTURE_Bridge], textureHandler->textures[TEXTURE_Water]); +}