void GUIPauseMenu::regenerateGui(v2u32 screensize){ /* Remove stuff */ removeChildren(); /* Calculate new sizes and positions */ core::rect<s32> rect( screensize.X/2 - 580/2, screensize.Y/2 - 300/2, screensize.X/2 + 580/2, screensize.Y/2 + 300/2 ); DesiredRect = rect; recalculateAbsolutePosition(false); v2s32 size = rect.getSize(); /* Add stuff */ const s32 btn_height = 30; const s32 btn_gap = 20; const s32 btn_num = 4; s32 btn_y = size.Y/2-((btn_num*btn_height+(btn_num-1)*btn_gap))/2; changeCtype(""); { core::rect<s32> rect(0, 0, 140, btn_height); rect = rect + v2s32(size.X/2-140/2, btn_y); Environment->addButton(rect, this, 256, wgettext("Continue")); } btn_y += btn_height + btn_gap; { core::rect<s32> rect(0, 0, 140, btn_height); rect = rect + v2s32(size.X/2-140/2, btn_y); Environment->addButton(rect, this, 261, wgettext("Change Password")); } btn_y += btn_height + btn_gap; { core::rect<s32> rect(0, 0, 140, btn_height); rect = rect + v2s32(size.X/2-140/2, btn_y); Environment->addButton(rect, this, 260, wgettext("Disconnect")); } btn_y += btn_height + btn_gap; { core::rect<s32> rect(0, 0, 140, btn_height); rect = rect + v2s32(size.X/2-140/2, btn_y); Environment->addButton(rect, this, 257, wgettext("Exit to OS")); } { core::rect<s32> rect(0, 0, 180, 240); rect = rect + v2s32(size.X/2 + 90, size.Y/2-rect.getHeight()/2); Environment->addStaticText(chartowchar_t(gettext( "Default Controls:/n" "- WASD: Walk/n" "- Mouse left: dig/hit/n" "- Mouse right: place/use/n" "- Mouse wheel: select item/n" "- 0...9: select item/n" "- Shift: sneak/n" "- R: Toggle viewing all loaded chunks/n" "- I: Inventory menu/n" "- ESC: This menu/n" "- T: Chat/n" )), rect, false, true, this, 258); } { core::rect<s32> rect(0, 0, 180, 220); rect = rect + v2s32(size.X/2 - 90 - rect.getWidth(), size.Y/2-rect.getHeight()/2); v2u32 max_texture_size; { video::IVideoDriver* driver = Environment->getVideoDriver(); max_texture_size = driver->getMaxTextureSize(); } /*wchar_t text[200]; swprintf(text, 200, L"Minetest-c55/n" L"by Perttu Ahola/n" L"[email
C++ v3函数代码示例
C++ v2s16函数代码示例