aboutsummaryrefslogtreecommitdiff
path: root/src/screens/gameScreen.c
diff options
context:
space:
mode:
authornathansmithsmith <thenathansmithsmith@gmail.com>2023-12-22 17:28:41 -0700
committernathansmithsmith <thenathansmithsmith@gmail.com>2023-12-22 17:28:41 -0700
commit2fb4b9a9b8f1de6d22a356ad58cd6ebef15126c5 (patch)
tree29d0a51788deea1f35dd07904e02deb735e5ced6 /src/screens/gameScreen.c
parentaf1c26fa866a290eeace75fdf4e0bac8b43e09c5 (diff)
Finally added the end button lol
Diffstat (limited to 'src/screens/gameScreen.c')
-rw-r--r--src/screens/gameScreen.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/screens/gameScreen.c b/src/screens/gameScreen.c
index de650c5..8fe141a 100644
--- a/src/screens/gameScreen.c
+++ b/src/screens/gameScreen.c
@@ -198,7 +198,23 @@ void drawGameScreenGui(Game * game) {
drawRadar(game, &gameScreen->radar);
}
+void resetGame(Game * game, GameScreen * gameScreen) {
+ gameScreen->gameOver = false;
+ gameScreen->lastLevel = 0;
+ gameScreen->levelComplete = false;
+ gameScreen->gameComplete = false;
+ resetKillLog(&game->killLog);
+
+ startLevel(game, &game->levels, 0);
+}
+
void handleGameScreenInput(Game * game, GameScreen * gameScreen) {
+ if (IsKeyPressed(KEY_E)) {
+ resetGame(game, gameScreen);
+ closeGameScreen(game);
+ game->screenId = SCREEN_MAIN_MENU;
+ }
+
switch(GetKeyPressed()) {
case KEY_ONE:
gameScreen->mainCamera = FIRST_PERSON_CAMERA;
@@ -385,16 +401,6 @@ void drawGameOverGameScreen(Game * game, GameScreen * gameScreen) {
DrawText(gameOverMsg, position.x, position.y, GAME_SCREEN_GAME_OVER_FONT_SIZE, GREEN);
}
-void resetGame(Game * game, GameScreen * gameScreen) {
- gameScreen->gameOver = false;
- gameScreen->lastLevel = 0;
- gameScreen->levelComplete = false;
- gameScreen->gameComplete = false;
- resetKillLog(&game->killLog);
-
- startLevel(game, &game->levels, 0);
-}
-
bool handleGameOver(Game * game, GameScreen * gameScreen) {
Entity * player = getEntityFromWorld(game->world, 0);