From 501c6313957183509ae1e4d10800b3fac4194131 Mon Sep 17 00:00:00 2001 From: darkrose Date: Sat, 22 Jul 2017 04:27:46 +1000 Subject: [PATCH] ui prettying up --- src/character_creator.cpp | 18 ++++++++---------- src/guiFormSpecMenu.cpp | 14 +++++++++++--- src/guiFormSpecMenu.h | 1 + src/guiMainMenu.cpp | 19 ++++++------------- src/guiMessageMenu.cpp | 14 ++++++++++---- src/guiMessageMenu.h | 1 + src/guiMultiplayerMenu.cpp | 19 ++++++------------- src/guiPasswordChange.cpp | 14 ++++++++++---- src/guiPasswordChange.h | 1 + src/guiPauseMenu.cpp | 13 ++++++++++--- src/guiPauseMenu.h | 1 + src/guiSettingsMenu.cpp | 27 ++++++++++----------------- src/gui_colours.h | 28 ++++++++++++++-------------- src/map.cpp | 4 ---- 14 files changed, 89 insertions(+), 85 deletions(-) diff --git a/src/character_creator.cpp b/src/character_creator.cpp index f4a3351..fc92c0b 100644 --- a/src/character_creator.cpp +++ b/src/character_creator.cpp @@ -435,23 +435,21 @@ void GUICharDefMenu::drawMenu() video::IVideoDriver* driver = Environment->getVideoDriver(); core::rect left( - AbsoluteRect.UpperLeftCorner.X, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.UpperLeftCorner.X+250, - AbsoluteRect.LowerRightCorner.Y + 0, + 0, + 250, + m_screensize.Y ); core::rect right( - AbsoluteRect.LowerRightCorner.X-230, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X, - AbsoluteRect.LowerRightCorner.Y + m_screensize.X-230, + 0, + m_screensize.X, + m_screensize.Y ); driver->draw2DRectangle(left, GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(left, GUI_BORDER); driver->draw2DRectangle(right, GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(right, GUI_BORDER); if (path_get((char*)"texture",(char*)"menulogo.png",1,buff,1024)) { video::ITexture *texture = driver->getTexture(buff); diff --git a/src/guiFormSpecMenu.cpp b/src/guiFormSpecMenu.cpp index 085e682..fb705c0 100644 --- a/src/guiFormSpecMenu.cpp +++ b/src/guiFormSpecMenu.cpp @@ -60,7 +60,8 @@ GUIFormSpecMenu::GUIFormSpecMenu(gui::IGUIEnvironment* env, m_selected_item(NULL), m_selected_amount(0), m_selected_dragging(false), - m_tooltip_element(NULL) + m_tooltip_element(NULL), + m_screensize(1024,600) { } @@ -104,6 +105,8 @@ void GUIFormSpecMenu::regenerateGui(v2u32 screensize) // Remove children removeChildren(); + m_screensize = screensize; + v2s32 size(100,100); s32 helptext_h = 15; core::rect rect; @@ -598,8 +601,13 @@ void GUIFormSpecMenu::drawMenu() return; video::IVideoDriver* driver = Environment->getVideoDriver(); - driver->draw2DRectangle(AbsoluteRect,GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(AbsoluteRect, GUI_BORDER); + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y + ); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); m_tooltip_element->setVisible(false); diff --git a/src/guiFormSpecMenu.h b/src/guiFormSpecMenu.h index 34818f1..3cd1a5a 100644 --- a/src/guiFormSpecMenu.h +++ b/src/guiFormSpecMenu.h @@ -225,6 +225,7 @@ protected: v2s32 m_pointer; gui::IGUIStaticText *m_tooltip_element; + v2u32 m_screensize; }; #endif diff --git a/src/guiMainMenu.cpp b/src/guiMainMenu.cpp index 0310062..589440f 100644 --- a/src/guiMainMenu.cpp +++ b/src/guiMainMenu.cpp @@ -245,20 +245,13 @@ void GUIMainMenu::drawMenu() { char buff[1024]; - core::rect left( - AbsoluteRect.UpperLeftCorner.X, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X-550, - AbsoluteRect.LowerRightCorner.Y + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y ); - core::rect right( - AbsoluteRect.UpperLeftCorner.X+250, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X, - AbsoluteRect.LowerRightCorner.Y - ); - driver->draw2DRectangle(left, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangle(right, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, &AbsoluteClippingRect); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); if (path_get((char*)"texture",(char*)"menulogo.png",1,buff,1024)) { video::ITexture *texture = driver->getTexture(buff); if (texture != 0) { diff --git a/src/guiMessageMenu.cpp b/src/guiMessageMenu.cpp index 9fa3c5e..be9998e 100644 --- a/src/guiMessageMenu.cpp +++ b/src/guiMessageMenu.cpp @@ -43,7 +43,8 @@ GUIMessageMenu::GUIMessageMenu(gui::IGUIEnvironment* env, ): GUIModalMenu(env, parent, id, menumgr), m_message_text(message_text), - m_status(false) + m_status(false), + m_screensize(1024,600) { } @@ -71,6 +72,7 @@ void GUIMessageMenu::regenerateGui(v2u32 screensize) /* Remove stuff */ + m_screensize = screensize; removeChildren(); /* @@ -120,9 +122,13 @@ void GUIMessageMenu::drawMenu() if (!skin) return; video::IVideoDriver* driver = Environment->getVideoDriver(); - - driver->draw2DRectangle(AbsoluteRect, GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(AbsoluteRect, GUI_BORDER); + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y + ); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); gui::IGUIElement::draw(); } diff --git a/src/guiMessageMenu.h b/src/guiMessageMenu.h index e874b6a..92ab92f 100644 --- a/src/guiMessageMenu.h +++ b/src/guiMessageMenu.h @@ -61,6 +61,7 @@ public: private: std::wstring m_message_text; bool m_status; + v2u32 m_screensize; }; #endif diff --git a/src/guiMultiplayerMenu.cpp b/src/guiMultiplayerMenu.cpp index 475bec5..5f2672d 100644 --- a/src/guiMultiplayerMenu.cpp +++ b/src/guiMultiplayerMenu.cpp @@ -330,20 +330,13 @@ void GUIMultiplayerMenu::drawMenu() { char buff[1024]; - core::rect left( - AbsoluteRect.UpperLeftCorner.X, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X-550, - AbsoluteRect.LowerRightCorner.Y + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y ); - core::rect right( - AbsoluteRect.UpperLeftCorner.X+250, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X, - AbsoluteRect.LowerRightCorner.Y - ); - driver->draw2DRectangle(left, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangle(right, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, &AbsoluteClippingRect); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); if (path_get((char*)"texture",(char*)"menulogo.png",1,buff,1024)) { video::ITexture *texture = driver->getTexture(buff); diff --git a/src/guiPasswordChange.cpp b/src/guiPasswordChange.cpp index a0bc5ab..a1a9617 100644 --- a/src/guiPasswordChange.cpp +++ b/src/guiPasswordChange.cpp @@ -51,7 +51,8 @@ GUIPasswordChange::GUIPasswordChange(gui::IGUIEnvironment* env, Client* client ): GUIModalMenu(env, parent, id, menumgr), - m_client(client) + m_client(client), + m_screensize(1024,600) { } @@ -78,6 +79,7 @@ void GUIPasswordChange::regenerateGui(v2u32 screensize) Remove stuff */ removeChildren(); + m_screensize = screensize; /* Calculate new sizes and positions @@ -175,9 +177,13 @@ void GUIPasswordChange::drawMenu() if (!skin) return; video::IVideoDriver* driver = Environment->getVideoDriver(); - - driver->draw2DRectangle(AbsoluteRect, GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(AbsoluteRect, GUI_BORDER); + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y + ); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); gui::IGUIElement::draw(); } diff --git a/src/guiPasswordChange.h b/src/guiPasswordChange.h index b6fe005..f2eb060 100644 --- a/src/guiPasswordChange.h +++ b/src/guiPasswordChange.h @@ -56,6 +56,7 @@ public: private: Client* m_client; + v2u32 m_screensize; }; diff --git a/src/guiPauseMenu.cpp b/src/guiPauseMenu.cpp index c75241c..6cd17c3 100644 --- a/src/guiPauseMenu.cpp +++ b/src/guiPauseMenu.cpp @@ -48,6 +48,7 @@ GUIPauseMenu::GUIPauseMenu(gui::IGUIEnvironment* env, m_gamecallback = gamecallback; this->env = env; this->parent = parent; + this->m_screensize = v2u32(1024,600); this->id = id; this->menumgr = menumgr; } @@ -76,6 +77,8 @@ void GUIPauseMenu::regenerateGui(v2u32 screensize) */ removeChildren(); + m_screensize = screensize; + /* Calculate new sizes and positions */ @@ -168,9 +171,13 @@ void GUIPauseMenu::drawMenu() if (!skin) return; video::IVideoDriver* driver = Environment->getVideoDriver(); - - driver->draw2DRectangle(AbsoluteRect, GUI_BG_TOP, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangleOutline(AbsoluteRect, GUI_BORDER); + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y + ); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); gui::IGUIElement::draw(); } diff --git a/src/guiPauseMenu.h b/src/guiPauseMenu.h index 8de6d05..6c870b0 100644 --- a/src/guiPauseMenu.h +++ b/src/guiPauseMenu.h @@ -62,6 +62,7 @@ private: gui::IGUIEnvironment* env; gui::IGUIElement* parent; + v2u32 m_screensize; s32 id; IMenuManager *menumgr; }; diff --git a/src/guiSettingsMenu.cpp b/src/guiSettingsMenu.cpp index 14a7e48..78cc480 100644 --- a/src/guiSettingsMenu.cpp +++ b/src/guiSettingsMenu.cpp @@ -366,7 +366,7 @@ void GUISettingsMenu::regenerateGui(v2u32 screensize) if (m_data.selected_tab == TAB_SETTINGS_CONTROLS) { { core::rect rect(0, 0, 550, 20); - rect += topleft_content + v2s32(0, 20); + rect += topleft_content + v2s32(0, 0); gui::IGUIStaticText *t = Environment->addStaticText(narrow_to_wide(gettext("Controls")).c_str(), rect, false, true, this, -1); t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); } @@ -397,7 +397,7 @@ void GUISettingsMenu::regenerateGui(v2u32 screensize) }else if (m_data.selected_tab == TAB_SETTINGS_GRAPHICS) { { core::rect rect(0, 0, 550, 20); - rect += topleft_content + v2s32(0, 20); + rect += topleft_content + v2s32(0, 0); gui::IGUIStaticText *t = Environment->addStaticText(narrow_to_wide(gettext("Graphics")).c_str(), rect, false, true, this, -1); t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); } @@ -496,7 +496,7 @@ void GUISettingsMenu::regenerateGui(v2u32 screensize) }else if (m_data.selected_tab == TAB_SETTINGS_VIDEO) { { core::rect rect(0, 0, 550, 20); - rect += topleft_content + v2s32(0, 20); + rect += topleft_content + v2s32(0, 0); gui::IGUIStaticText *t = Environment->addStaticText(narrow_to_wide(gettext("Video")).c_str(), rect, false, true, this, -1); t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); } @@ -544,7 +544,7 @@ void GUISettingsMenu::regenerateGui(v2u32 screensize) }else if (m_data.selected_tab == TAB_SETTINGS_SOUND) { { core::rect rect(0, 0, 550, 20); - rect += topleft_content + v2s32(0, 20); + rect += topleft_content + v2s32(0, 0); gui::IGUIStaticText *t = Environment->addStaticText(narrow_to_wide(gettext("Sound")).c_str(), rect, false, true, this, -1); t->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); } @@ -596,20 +596,13 @@ void GUISettingsMenu::drawMenu() { char buff[1024]; - core::rect left( - AbsoluteRect.UpperLeftCorner.X, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X-550, - AbsoluteRect.LowerRightCorner.Y + core::rect rect( + 0, + 0, + m_screensize.X, + m_screensize.Y ); - core::rect right( - AbsoluteRect.UpperLeftCorner.X+250, - AbsoluteRect.UpperLeftCorner.Y, - AbsoluteRect.LowerRightCorner.X, - AbsoluteRect.LowerRightCorner.Y - ); - driver->draw2DRectangle(left, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, GUI_BG_BTM, &AbsoluteClippingRect); - driver->draw2DRectangle(right, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, &AbsoluteClippingRect); + driver->draw2DRectangle(rect, GUI_BG_TOP, GUI_BG_BTM, GUI_BG_TOP, GUI_BG_BTM, NULL); if (path_get((char*)"texture",(char*)"menulogo.png",1,buff,1024)) { video::ITexture *texture = driver->getTexture(buff); diff --git a/src/gui_colours.h b/src/gui_colours.h index 42fa448..c719178 100644 --- a/src/gui_colours.h +++ b/src/gui_colours.h @@ -3,35 +3,35 @@ #include "common_irrlicht.h" -#define GUI_BG_TOP video::SColor(240,50,50,70) -#define GUI_BG_BTM video::SColor(240,30,30,50) -#define GUI_BORDER video::SColor(245,60,60,80) +#define GUI_BG_TOP video::SColor(128,0,0,0) +#define GUI_BG_BTM video::SColor(128,0,0,0) +#define GUI_BORDER video::SColor(0,0,0,0) #define GUI_BG_DEATH video::SColor(180,50,0,0) -#define GUI_BG_TT video::SColor(200,30,30,50) +#define GUI_BG_TT video::SColor(200,70,130,30) #define GUI_TT_TEXT video::SColor(255,255,255,255) -#define GUI_INV_BORDER video::SColor(245,60,60,80) -#define GUI_INV_HIGHLIGHT video::SColor(240,255,0,0) -#define GUI_INV_BG video::SColor(240,30,30,50) +#define GUI_INV_BORDER video::SColor(128,60,60,60) +#define GUI_INV_HIGHLIGHT video::SColor(240,170,30,30) +#define GUI_INV_BG video::SColor(128,60,60,60) -#define GUI_3D_HIGH_LIGHT video::SColor(255,0,0,0) +#define GUI_3D_HIGH_LIGHT video::SColor(128,70,130,30) #define GUI_HIGH_LIGHT video::SColor(255,70,100,50) #define GUI_HIGH_LIGHT_TEXT video::SColor(255,255,255,255) #define GUI_BUTTON_TEXT video::SColor(255,255,255,255) #if (IRRLICHT_VERSION_MAJOR >= 1 && IRRLICHT_VERSION_MINOR >= 8) || IRRLICHT_VERSION_MAJOR >= 2 // Irrlicht 1.8 input colours -#define GUI_3D_FACE video::SColor(255,60,60,80) -#define GUI_3D_SHADOW video::SColor(255,60,60,80) -#define GUI_3D_DARK_SHADOW video::SColor(255,30,30,50) -#define GUI_EDITABLE video::SColor(255,60,60,80) -#define GUI_FOCUSED_EDITABLE video::SColor(255,60,60,80) +#define GUI_3D_FACE video::SColor(255,70,130,30) +#define GUI_3D_SHADOW video::SColor(255,70,130,30) +#define GUI_3D_DARK_SHADOW video::SColor(255,70,130,30) +#define GUI_EDITABLE video::SColor(128,70,130,30) +#define GUI_FOCUSED_EDITABLE video::SColor(192,70,130,30) #else -#define GUI_3D_SHADOW video::SColor(255,0,0,0) +#define GUI_3D_SHADOW video::SColor(255,70,130,30) #endif diff --git a/src/map.cpp b/src/map.cpp index 43b28c5..37061d2 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -3241,10 +3241,6 @@ void ClientMap::renderPostFx() post_effect_color = video::SColor(255, 0, 0, 0); } } - if (m_client->getFormState()) { - if (post_effect_color.getAlpha() < 128) - post_effect_color = video::SColor(128,0,0,0); - } if (post_effect_color.getAlpha() != 0) { // Draw a full-screen rectangle video::IVideoDriver* driver = SceneManager->getVideoDriver();