diff options
Diffstat (limited to 'src/menu_system.cpp')
-rw-r--r-- | src/menu_system.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/menu_system.cpp b/src/menu_system.cpp index a6fd566..34616a6 100644 --- a/src/menu_system.cpp +++ b/src/menu_system.cpp | |||
@@ -40,8 +40,14 @@ void MenuSystem::openPauseMenu() { | |||
40 | 40 | ||
41 | menu_ = CreateMenu({ | 41 | menu_ = CreateMenu({ |
42 | MenuBuilder().Command("Settings"), | 42 | MenuBuilder().Command("Settings"), |
43 | MenuBuilder().Command("Return to Main Menu"), | ||
44 | MenuBuilder().Command("Resume Game") | 43 | MenuBuilder().Command("Resume Game") |
44 | .ActivationFunction([] (Game& game) { | ||
45 | game.getSystem<MenuSystem>().closePauseMenu(); | ||
46 | }), | ||
47 | MenuBuilder().Command("Quit") | ||
48 | .ActivationFunction([] (Game& game) { | ||
49 | game.quit(); | ||
50 | }) | ||
45 | }); | 51 | }); |
46 | 52 | ||
47 | cursor_ = 0; | 53 | cursor_ = 0; |
@@ -77,3 +83,11 @@ void MenuSystem::pressedDown() { | |||
77 | 83 | ||
78 | game_.getMixer().playSound("../res/sfx/vertical_menu.wav"); | 84 | game_.getMixer().playSound("../res/sfx/vertical_menu.wav"); |
79 | } | 85 | } |
86 | |||
87 | void MenuSystem::activateOption() { | ||
88 | game_.getMixer().playSound("../res/sfx/menu_activate.wav"); | ||
89 | |||
90 | if (menu_[cursor_].type == MenuType::Command && menu_[cursor_].activationFunction) { | ||
91 | menu_[cursor_].activationFunction(game_); | ||
92 | } | ||
93 | } | ||