aboutsummaryrefslogtreecommitdiff
path: root/src/games/minesweeper/Minesweeper.cpp
diff options
context:
space:
mode:
authorfschildt <florian.schildt@protonmail.com>2025-10-06 09:25:04 +0200
committerfschildt <florian.schildt@protonmail.com>2025-10-06 09:25:04 +0200
commit606d028dac5118329e7561af33b15988db84465f (patch)
tree8a5b92b51a88714fee71d7f908283426f70b7dc1 /src/games/minesweeper/Minesweeper.cpp
parent7d9500d27fc91356c580e365351ff6e1bc1c95e1 (diff)
make everything prettier
Diffstat (limited to 'src/games/minesweeper/Minesweeper.cpp')
-rw-r--r--src/games/minesweeper/Minesweeper.cpp58
1 files changed, 15 insertions, 43 deletions
diff --git a/src/games/minesweeper/Minesweeper.cpp b/src/games/minesweeper/Minesweeper.cpp
index a1886ff..e110acb 100644
--- a/src/games/minesweeper/Minesweeper.cpp
+++ b/src/games/minesweeper/Minesweeper.cpp
@@ -1,3 +1,4 @@
+#include "games/Game.hpp"
#include <games/minesweeper/Minesweeper.hpp>
#include <renderer/Renderer.hpp>
@@ -117,31 +118,31 @@ Minesweeper::Update(std::vector<SDL_Event>& events)
g_renderer.Clear({0.3f, 0.2f, 0.3f});
for (SDL_Event &event : events) {
- if (m_run_state == exit) {
+ if (m_game_status == game_exit) {
return false;
}
- else if (m_run_state == pause) {
+ else if (m_game_status == game_paused) {
ProcessEventDuringPause(event);
}
- else if (m_run_state == resume) {
+ else if (m_game_status== game_resuming) {
ProcessEventDuringResume(event);
}
}
- if (m_run_state == exit) {
+ if (m_game_status == game_exit) {
return false;
}
- if (m_run_state == pause) {
+ if (m_game_status == game_paused) {
DrawBoard();
- DrawPauseMenu();
+ DrawGamePausedMenu();
}
- else if (m_run_state == start) {
+ else if (m_game_status == game_starting) {
DrawStartMenu();
}
- else if (m_run_state == resume) {
+ else if (m_game_status == game_resuming) {
DrawBoard();
}
- else if (m_run_state == game_over) {
+ else if (m_game_status == game_over) {
DrawBoard();
DrawGameOverMenu();
}
@@ -155,7 +156,7 @@ Minesweeper::ProcessEventDuringPause(SDL_Event &event)
switch (event.type) {
case SDL_EVENT_KEY_DOWN: {
if (event.key.key == SDLK_ESCAPE) {
- m_run_state = resume;
+ m_game_status = game_resuming;
}
} break;
@@ -169,7 +170,7 @@ Minesweeper::ProcessEventDuringResume(SDL_Event &event)
switch (event.type) {
case SDL_EVENT_KEY_DOWN: {
if (event.key.key == SDLK_ESCAPE) {
- m_run_state = pause;
+ m_game_status = game_paused;
}
} break;
@@ -200,7 +201,7 @@ Minesweeper::ProcessEventDuringResume(SDL_Event &event)
if (IsMine(x, y)) {
m_is_covered_bitmap[y] &= ~(1 << x);
UncoverMines();
- m_run_state = game_over;
+ m_game_status = game_over;
}
else {
Uncover(x, y);
@@ -302,22 +303,6 @@ Minesweeper::ScreenPosToViewPos(V2F32 screen_pos)
}
void
-Minesweeper::DrawPauseMenu()
-{
- ImGui::Begin("MinesweeperPause");
- if (ImGui::Button("Resume")) {
- m_run_state = resume;
- }
- if (ImGui::Button("Restart")) {
- m_run_state = start;
- }
- if (ImGui::Button("Exit")) {
- m_run_state = exit;
- }
- ImGui::End();
-}
-
-void
Minesweeper::DrawStartMenu()
{
ImGui::Begin("MinesweeperStart");
@@ -332,23 +317,10 @@ Minesweeper::DrawStartMenu()
}
if (ImGui::Button("Start")) {
Reset(m_difficulty);
- m_run_state = resume;
- }
- if (ImGui::Button("Exit")) {
- m_run_state = exit;
- }
- ImGui::End();
-}
-
-void
-Minesweeper::DrawGameOverMenu()
-{
- ImGui::Begin("MinesweeperGameOverMenu");
- if (ImGui::Button("Play Again")) {
- m_run_state = start;
+ m_game_status = game_resuming;
}
if (ImGui::Button("Exit")) {
- m_run_state = exit;
+ m_game_status = game_exit;
}
ImGui::End();
}