aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui_menu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui_menu.cpp')
-rw-r--r--src/ui_menu.cpp31
1 files changed, 16 insertions, 15 deletions
diff --git a/src/ui_menu.cpp b/src/ui_menu.cpp
index 581e7fc..35a6d01 100644
--- a/src/ui_menu.cpp
+++ b/src/ui_menu.cpp
@@ -22,23 +22,14 @@ inline void segFault() {
(*((int *)NULL))++;
}
-void setControlF(unsigned int index)
+void setControlF(unsigned int index, menuItem &m)
{
SDL_Event e;
do SDL_WaitEvent(&e);
while (e.type != SDL_KEYDOWN);
setControl(index, e.key.keysym.sym);
-}
-
-void setLeftKey(void) {
- SDL_Event e;
-
- std::cout << "Waiting...\n";
- do SDL_WaitEvent(&e);
- while (e.type != SDL_KEYDOWN);
- std::cout << "Good.\n";
-
- setControl(2, e.key.keysym.sym);
+ m.button.text.pop_back();
+ m.button.text.push_back(e.key.keysym.sym);
}
namespace ui {
@@ -117,8 +108,18 @@ namespace ui {
optionsMenu.parent = &pauseMenu;
// Create the controls menu
- controlsMenu.items.push_back(ui::menu::createButton({-300,200}, {-200, 100}, {0.0f, 0.0f, 0.0f}, "Left", [](){ setControlF(2);}));
- controlsMenu.items.push_back(ui::menu::createButton({-300,50}, {-200, 100}, {0.0f, 0.0f, 0.0f}, "Right", [](){ setControlF(3);}));
+ controlsMenu.items.push_back(ui::menu::createButton({-450,300}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Left: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(2, controlsMenu.items[0]); };
+ controlsMenu.items.push_back(ui::menu::createButton({-450,200}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Right: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(3, controlsMenu.items[1]); };
+ controlsMenu.items.push_back(ui::menu::createButton({-450,100}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Up: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(0, controlsMenu.items[2]); };
+ controlsMenu.items.push_back(ui::menu::createButton({-450,0}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Sprint: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(4, controlsMenu.items[3]); };
+ controlsMenu.items.push_back(ui::menu::createButton({-450,-100}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Creep: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(5, controlsMenu.items[4]); };
+ controlsMenu.items.push_back(ui::menu::createButton({-450,-200}, {400, 75}, {0.0f, 0.0f, 0.0f}, "Inventory: ", nullptr));
+ controlsMenu.items.back().button.func = [](){ setControlF(6, controlsMenu.items[5]); };
controlsMenu.parent = &pauseMenu;
}
@@ -248,7 +249,7 @@ namespace ui {
}else if (m.member == 1) {
//combining slider text with variable amount
char outSV[32];
- sprintf(outSV, "%s: %.1f",m.slider.text, *m.slider.var);
+ sprintf(outSV, "%s: %.1f",m.slider.text.c_str(), *m.slider.var);
float sliderW, sliderH;