]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Menu/Menu.cpp
Cleaned a bit mouse button shown names, added names for button 4 and 5.
[lugaru.git] / Source / Menu / Menu.cpp
index 7d8bce8dfdac5b83c44ff0aa1784c0f8f93c2961..4c4abfaa32bd55f8557ce62ad1d95477210ac7b3 100644 (file)
@@ -49,6 +49,10 @@ extern int leveltheme;
 extern void toggleFullscreen();
 
 int entername = 0;
+std::string newusername = "";
+unsigned newuserselected = 0;
+float newuserblinkdelay = 0;
+bool newuserblink = false;
 
 std::vector<MenuItem> Menu::items;
 
@@ -141,7 +145,7 @@ void Menu::setText(int id, const string& text, int x, int y, int w, int h)
 
 int Menu::getSelected(int mousex, int mousey)
 {
-    for (vector<MenuItem>::iterator it = items.begin(); it != items.end(); it++)
+    for (vector<MenuItem>::reverse_iterator it = items.rbegin(); it != items.rend(); it++)
         if (it->type == MenuItem::BUTTON || it->type == MenuItem::IMAGEBUTTON || it->type == MenuItem::MAPMARKER) {
             int mx = mousex;
             int my = mousey;
@@ -239,7 +243,7 @@ void Menu::drawItems()
             }
             break;
         case MenuItem::MAPLABEL:
-            Game::text->glPrintOutlined(0.9, 0, 0, it->x, it->y, it->text.c_str(), 0, 0.6, 640, 480);
+            Game::text->glPrintOutlined(0.9, 0, 0, 1, it->x, it->y, it->text.c_str(), 0, 0.6, 640, 480);
             break;
         case MenuItem::MAPLINE: {
             XYZ linestart;
@@ -539,7 +543,7 @@ void Menu::Tick()
     }
     if (mainmenu == 10)
         endgame = 2;
-    if (mainmenu == 18 && Input::isKeyPressed(MOUSEBUTTON2) && selected == 1) {
+    if (mainmenu == 18 && Input::isKeyPressed(MOUSEBUTTON_RIGHT) && selected == 1) {
         stereoseparation -= 0.001;
         updateStereoConfigMenu();
     }
@@ -708,7 +712,7 @@ void Menu::Tick()
                     LoadStuff();
                 whichchoice = selected - NB_CAMPAIGN_MENU_ITEM - Account::active().getCampaignChoicesMade();
                 actuallevel = (Account::active().getCampaignChoicesMade() > 0 ? campaignlevels[Account::active().getCampaignChoicesMade() - 1].nextlevel[whichchoice] : 0);
-                visibleloading = 1;
+                visibleloading = true;
                 stillloading = 1;
                 Loadlevel(campaignlevels[actuallevel].mapname.c_str());
                 campaign = 1;
@@ -787,8 +791,8 @@ void Menu::Tick()
                 } else {
                     mainmenu = 1;
                 }
-                displaytext[0].clear();
-                displayselected = 0;
+                newusername.clear();
+                newuserselected = 0;
                 entername = 0;
             }
             break;
@@ -864,10 +868,10 @@ void Menu::Tick()
     OPENAL_SetFrequency(channels[stream_menutheme]);
 
     if (entername) {
-        inputText(displaytext[0], &displayselected);
+        inputText(newusername, &newuserselected);
         if (!waiting) { // the input as finished
-            if (!displaytext[0].empty()) { // with enter
-                Account::add(string(displaytext[0]));
+            if (!newusername.empty()) { // with enter
+                Account::add(string(newusername));
 
                 mainmenu = 8;
 
@@ -875,24 +879,24 @@ void Menu::Tick()
 
                 fireSound(firestartsound);
 
-                displaytext[0].clear();
+                newusername.clear();
 
-                displayselected = 0;
+                newuserselected = 0;
             }
             entername = 0;
             Load();
         }
 
-        displayblinkdelay -= multiplier;
-        if (displayblinkdelay <= 0) {
-            displayblinkdelay = .3;
-            displayblink = !displayblink;
+        newuserblinkdelay -= multiplier;
+        if (newuserblinkdelay <= 0) {
+            newuserblinkdelay = .3;
+            newuserblink = !newuserblink;
         }
     }
 
     if (entername) {
-        setText(0, displaytext[0], 20, 400, -1, -1);
-        setText(-2, displayblink ? "_" : "", 20 + displayselected * 10, 400, -1, -1);
+        setText(0, newusername, 20, 400, -1, -1);
+        setText(-2, newuserblink ? "_" : "", 20 + newuserselected * 10, 400, -1, -1);
     }
 
     if (oldmainmenu != mainmenu)