Skip to content
Snippets Groups Projects
Unverified Commit 2636f461 authored by David Hermann's avatar David Hermann
Browse files

Refactoring: Renaming MainMenu to Menu

Removing BaseMenu and PauseMenu
parent 88ba577a
Branches
No related tags found
1 merge request!14Refactoring CMakeLists.txt
......@@ -15,7 +15,7 @@ int main() {
// render main menu
MainMenu menu(0);
Menu menu(0);
std::string basePath = SDL_GetBasePath();
std::string relativePath = "assets/main_background.png";
......
......@@ -9,7 +9,7 @@
namespace advanced_wars
{
MainMenu::MainMenu(int selectedOption)
Menu::Menu(int selectedOption)
: selectedOption(selectedOption),
options({"Start Game", "Options", "Exit"}),
backgroundTexture(nullptr)
......@@ -19,14 +19,14 @@ namespace advanced_wars
}
}
MainMenu::~MainMenu() {
Menu::~Menu() {
if (backgroundTexture) {
SDL_DestroyTexture(backgroundTexture);
}
IMG_Quit();
};
void MainMenu::render(SDL_Renderer *renderer, std::vector<SDL_Event> &events) {
void Menu::render(SDL_Renderer *renderer, std::vector<SDL_Event> &events) {
if (events.size() > 0) {
SDL_Event event = events.back();
......@@ -96,7 +96,7 @@ namespace advanced_wars
}
void MainMenu::handleEvent(SDL_Event& event) {
void Menu::handleEvent(SDL_Event& event) {
if (event.type == SDL_KEYDOWN) {
if (event.key.keysym.sym == SDLK_DOWN) {
selectedOption = (selectedOption + 1) % options.size();
......@@ -111,7 +111,7 @@ namespace advanced_wars
}
}
void MainMenu::loadBackground(SDL_Renderer *renderer, const std::string& imagePath) {
void Menu::loadBackground(SDL_Renderer *renderer, const std::string& imagePath) {
// Lade das Hintergrundbild
SDL_Surface* backgroundSurface = IMG_Load(imagePath.c_str());
if (!backgroundSurface) {
......
......@@ -10,13 +10,7 @@
namespace advanced_wars {
class BaseMenu : public Scene {
public:
virtual void handleEvent(SDL_Event& event);
virtual ~BaseMenu();
};
class MainMenu : public Scene {
class Menu : public Scene {
private:
size_t selectedOption;
std::array<std::string, 3> options;
......@@ -24,7 +18,7 @@ private:
public:
MainMenu(int selectedOption);
Menu(int selectedOption);
void render(SDL_Renderer *renderer, std::vector<SDL_Event> &events);
......@@ -32,19 +26,7 @@ public:
void loadBackground(SDL_Renderer *renderer, const std::string& imagePath);
~MainMenu();
};
class PauseMenu : public BaseMenu {
private:
std::vector<std::string> options;
int selectedOption;
public:
void render(SDL_Renderer *renderer, std::vector<SDL_Event> &events);
void handleEvent(SDL_Event& event);
~Menu();
};
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment