diff options
author | nathansmith117 <thenathansmithsmith@gmail.com> | 2024-02-14 23:05:18 +0000 |
---|---|---|
committer | nathansmith117 <thenathansmithsmith@gmail.com> | 2024-02-14 23:05:18 +0000 |
commit | adf3b7635326af20e0e77d37c080ef08c64e9e91 (patch) | |
tree | 70e0b0144bccec31af7dc3f667dc73aa2c31c20c | |
parent | 63e4506ce8c21392e99c428afe2b285f12f78c00 (diff) | |
download | PenguinYippies-adf3b7635326af20e0e77d37c080ef08c64e9e91.tar.gz PenguinYippies-adf3b7635326af20e0e77d37c080ef08c64e9e91.tar.bz2 PenguinYippies-adf3b7635326af20e0e77d37c080ef08c64e9e91.zip |
Screens added
-rw-r--r-- | src/game.c | 21 | ||||
-rw-r--r-- | src/game.h | 11 | ||||
-rw-r--r-- | src/gameCommon.h | 2 | ||||
-rw-r--r-- | src/gameScreen.c | 15 | ||||
-rw-r--r-- | src/gameScreen.h | 13 | ||||
-rw-r--r-- | src/mainMenu.c | 14 | ||||
-rw-r--r-- | src/mainMenu.h | 13 |
7 files changed, 82 insertions, 7 deletions
@@ -3,19 +3,36 @@ void initGame(Game* game) { InitWindow(WINDOW_WIDTH, WINDOW_HEIGHT, "Penguin Yippies!"); + + // Screens. + game->currentScreen = MAIN_MENU_SCREEN; + initMainMenu(&game->mainMenu, game); + initGameScreen(&game->gameScreen, game); } void updateGame(Game* game) { BeginDrawing(); - ClearBackground(RAYWHITE); - DrawFPS(0, 0); + switch (game->currentScreen) + { + case MAIN_MENU_SCREEN: + updateMainMenu(&game->mainMenu, game); + break; + case GAME_SCREEN: + updateGameScreen(&game->gameScreen, game); + break; + default: + break; + } EndDrawing(); } void closeGame(Game* game) { + closeMainMenu(&game->mainMenu); + closeGameScreen(&game->gameScreen); + CloseWindow(); } @@ -1,16 +1,19 @@ #include "gameCommon.h" +#include "mainMenu.h" +#include "gameScreen.h" #ifndef GAME_H #define GAME_H -typedef enum ScreenId -{ +typedef enum ScreenId { MAIN_MENU_SCREEN, GAME_SCREEN } ScreenId; -typedef struct Game -{ +typedef struct Game { + ScreenId currentScreen; + MainMenu mainMenu; + GameScreen gameScreen; } Game; void initGame(Game* game); diff --git a/src/gameCommon.h b/src/gameCommon.h index c825873..fd6f999 100644 --- a/src/gameCommon.h +++ b/src/gameCommon.h @@ -11,6 +11,6 @@ #ifndef GAME_COMMON_H #define GAME_COMMON_H -typedef struct Game game; +typedef struct Game Game; #endif diff --git a/src/gameScreen.c b/src/gameScreen.c new file mode 100644 index 0000000..23e12cf --- /dev/null +++ b/src/gameScreen.c @@ -0,0 +1,15 @@ +#include "gameScreen.h" +#include "game.h" + +void initGameScreen(GameScreen* gameScreen, Game* game) +{ +} + +void updateGameScreen(GameScreen* gameScreen, Game* game) +{ +} + +void closeGameScreen(GameScreen* gameScreen) +{ +} + diff --git a/src/gameScreen.h b/src/gameScreen.h new file mode 100644 index 0000000..9b4191e --- /dev/null +++ b/src/gameScreen.h @@ -0,0 +1,13 @@ +#include "gameCommon.h" + +#ifndef GAME_SCREEN_H +#define GAME_SCREEN_H + +typedef struct GameScreen { +} GameScreen; + +void initGameScreen(GameScreen* gameScreen, Game* game); +void updateGameScreen(GameScreen* gameScreen, Game* game); +void closeGameScreen(GameScreen* gameScreen); + +#endif diff --git a/src/mainMenu.c b/src/mainMenu.c new file mode 100644 index 0000000..ec8bd95 --- /dev/null +++ b/src/mainMenu.c @@ -0,0 +1,14 @@ +#include "mainMenu.h" +#include "game.h" + +void initMainMenu(MainMenu* mainMenu, Game* game) +{ +} + +void updateMainMenu(MainMenu* mainMenu, Game* game) +{ +} + +void closeMainMenu(MainMenu* mainMenu) +{ +} diff --git a/src/mainMenu.h b/src/mainMenu.h new file mode 100644 index 0000000..c8b9fb3 --- /dev/null +++ b/src/mainMenu.h @@ -0,0 +1,13 @@ +#include "gameCommon.h" + +#ifndef MAIN_MENU_H +#define MAIN_MENU_H + +typedef struct MainMenu { +} MainMenu; + +void initMainMenu(MainMenu* mainMenu, Game* game); +void updateMainMenu(MainMenu* mainMenu, Game* game); +void closeMainMenu(MainMenu* mainMenu); + +#endif |