+ /*\r
+ Add stuff\r
+ */\r
+ const s32 btn_height = 30;\r
+ const s32 btn_gap = 20;\r
+ const s32 btn_num = m_simple_singleplayer_mode ? 3 : 4;\r
+ s32 btn_y = size.Y/2-((btn_num*btn_height+(btn_num-1)*btn_gap))/2;\r
+ changeCtype("");\r
+ {\r
+ core::rect<s32> rect(0, 0, 140, btn_height);\r
+ rect = rect + v2s32(size.X/2-140/2, btn_y);\r
+ Environment->addButton(rect, this, 256,\r
+ wgettext("Continue"));\r
+ }\r
+ btn_y += btn_height + btn_gap;\r
+ if(!m_simple_singleplayer_mode)\r
+ {\r
+ {\r
+ core::rect<s32> rect(0, 0, 140, btn_height);\r
+ rect = rect + v2s32(size.X/2-140/2, btn_y);\r
+ Environment->addButton(rect, this, 261,\r
+ wgettext("Change Password"));\r
+ }\r
+ btn_y += btn_height + btn_gap;\r
+ }\r
+ {\r
+ core::rect<s32> rect(0, 0, 140, btn_height);\r
+ rect = rect + v2s32(size.X/2-140/2, btn_y);\r
+ Environment->addButton(rect, this, 260,\r
+ wgettext("Exit to Menu"));\r
+ }\r
+ btn_y += btn_height + btn_gap;\r
+ {\r
+ core::rect<s32> rect(0, 0, 140, btn_height);\r
+ rect = rect + v2s32(size.X/2-140/2, btn_y);\r
+ Environment->addButton(rect, this, 257,\r
+ wgettext("Exit to OS"));\r
+ }\r
+\r
+ {\r
+ core::rect<s32> rect(0, 0, 180, 240);\r
+ rect = rect + v2s32(size.X/2 + 90, size.Y/2-rect.getHeight()/2);\r
+ Environment->addStaticText(chartowchar_t(gettext(\r
+ "Default Controls:\n"\r
+ "- WASD: Walk\n"\r
+ "- Mouse left: dig/hit\n"\r
+ "- Mouse right: place/use\n"\r
+ "- Mouse wheel: select item\n"\r
+ "- 0...9: select item\n"\r
+ "- Shift: sneak\n"\r
+ "- R: Toggle viewing all loaded chunks\n"\r
+ "- I: Inventory menu\n"\r
+ "- ESC: This menu\n"\r
+ "- T: Chat\n"\r
+ )), rect, false, true, this, 258);\r
+ }\r
+ {\r
+ core::rect<s32> rect(0, 0, 180, 220);\r
+ rect = rect + v2s32(size.X/2 - 90 - rect.getWidth(), size.Y/2-rect.getHeight()/2);\r
+ \r
+ v2u32 max_texture_size;\r
+ {\r
+ video::IVideoDriver* driver = Environment->getVideoDriver();\r
+ max_texture_size = driver->getMaxTextureSize();\r
+ }\r