- Ensures if there is a $pref::server::password set and you're creating a localConnection game, you can connect even if you don't have a client password set

- Changed ChooseLevelMenu layout to have a vertical list for levels with a static preview set, as well as a separate tab for server configs if trying to create a server
- Added field to set password for connecting to passworded servers on the JoinServerMenu
- Added sanity check so you can't try and activate a menuList that has no children(caused error spam)
This commit is contained in:
Areloch 2024-01-03 23:45:36 -06:00
parent 150684a47d
commit c809dbb4be
6 changed files with 446 additions and 98 deletions

View file

@ -10,7 +10,8 @@ $guiContent = new GuiControl(ChooseLevelMenu) {
isContainer = "1";
canSaveDynamicFields = "1";
launchInEditor = "0";
previewButtonSize = "445 120";
new GuiInputCtrl(ChooseLevelInputHandler) {
ignoreMouseEvents = "1";
ActionMap = "ChooseLevelActionMap";
@ -21,7 +22,6 @@ $guiContent = new GuiControl(ChooseLevelMenu) {
profile = "GuiInputCtrlProfile";
tooltipProfile = "GuiToolTipProfile";
};
new GuiPanel(ChooseLevelTitlePanel) {
extent = "1281 60";
horizSizing = "width";
@ -36,6 +36,275 @@ $guiContent = new GuiControl(ChooseLevelMenu) {
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiStackControl(ChooseLevelMenuTabList) {
stackingType = "Horizontal";
padding = "10";
position = "485 61";
extent = "310 41";
horizSizing = "center";
profile = "GuiDefaultProfile";
visible = "0";
tooltipProfile = "GuiToolTipProfile";
hidden = "1";
new GuiButtonCtrl() {
text = "Level";
groupNum = "1";
extent = "150 41";
profile = "GuiMenuButtonProfile";
command = "ChooseLevelMenu.openMenu(0);";
tooltipProfile = "GuiToolTipProfile";
class = "ChooseLevelMenuButton";
};
new GuiButtonCtrl() {
text = "Server Config";
groupNum = "1";
position = "160 0";
extent = "150 41";
profile = "GuiMenuButtonProfile";
command = "ChooseLevelMenu.openMenu(1);";
tooltipProfile = "GuiToolTipProfile";
class = "ChooseLevelMenuButton";
};
};
new GuiControl(ChooseLevelMenuNavButtonOverlay) {
position = "0 61";
extent = "1281 60";
horizSizing = "width";
profile = "GuiNonModalDefaultProfile";
visible = "0";
tooltipProfile = "GuiToolTipProfile";
isContainer = "1";
hidden = "1";
new GuiBitmapCtrl(ChooseLevelMenuPrevNavIcon) {
BitmapAsset = "UI:Keyboard_Black_Q_image";
position = "485 24";
extent = "40 40";
vertSizing = "top";
profile = "GuiNonModalDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
};
new GuiBitmapCtrl(ChooseLevelMenuNextNavIcon) {
BitmapAsset = "UI:Keyboard_Black_E_image";
position = "595 24";
extent = "40 40";
vertSizing = "top";
profile = "GuiNonModalDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiContainer(LevelSelectContainer) {
position = "196 119";
extent = "888 566";
horizSizing = "center";
profile = "GuiNonModalDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiScrollCtrl(LevelPreviewScroll) {
hScrollBar = "alwaysOff";
vScrollBar = "dynamic";
extent = "445 562";
vertSizing = "height";
profile = "GuiMenuScrollProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiStackControl(LevelPreviewArray) {
padding = "5";
position = "0 1";
extent = "445 120";
horizSizing = "width";
vertSizing = "height";
profile = "GuiMenuDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiBitmapCtrl(LevelPreviewBitmap) {
BitmapAsset = "testMaps:EmptyLevel_preview_image";
position = "448 0";
extent = "440 440";
horizSizing = "left";
profile = "GuiNonModalDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextCtrl(LevelNameText) {
text = "EmptyLevel";
position = "448 445";
extent = "440 20";
horizSizing = "left";
profile = "MenuSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
internalName = "levelNameTxt";
};
new GuiMLTextCtrl(LevelDescriptionText) {
position = "448 473";
extent = "440 19";
horizSizing = "left";
profile = "GuiMLTextProfile";
tooltipProfile = "GuiToolTipProfile";
internalName = "levelDescTxt";
};
};
new GuiContainer(ServerConfigContainer) {
position = "196 119";
extent = "888 566";
horizSizing = "center";
profile = "GuiNonModalDefaultProfile";
visible = "0";
tooltipProfile = "GuiToolTipProfile";
hidden = "1";
new GuiScrollCtrl(ServerConfigScroll) {
hScrollBar = "alwaysOff";
vScrollBar = "dynamic";
extent = "888 566";
horizSizing = "width";
vertSizing = "height";
profile = "GuiMenuScrollProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiStackControl(ServerConfigList) {
padding = "5";
changeChildSizeToFit = "0";
position = "1 1";
extent = "900 170";
horizSizing = "width";
vertSizing = "height";
profile = "GuiMenuDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiContainer() {
extent = "900 30";
horizSizing = "width";
profile = "GuiDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiTextCtrl() {
text = "Host Player Name";
position = "0 3";
extent = "140 23";
vertSizing = "center";
profile = "MenuMLSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextEditCtrl() {
text = "Visitor";
position = "606 4";
extent = "295 22";
horizSizing = "left";
vertSizing = "center";
profile = "MenuTextEditprofile";
variable = "$pref::Player::Name";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiContainer() {
position = "0 35";
extent = "900 30";
horizSizing = "width";
profile = "GuiDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiTextCtrl() {
text = "Server Name";
position = "0 3";
extent = "101 23";
vertSizing = "center";
profile = "MenuMLSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextEditCtrl() {
text = "Torque 3D Server";
position = "606 4";
extent = "295 22";
horizSizing = "left";
vertSizing = "center";
profile = "MenuTextEditprofile";
variable = "$Pref::Server::Name";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiContainer() {
position = "0 70";
extent = "900 30";
horizSizing = "width";
profile = "GuiDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiTextCtrl() {
text = "Server Password";
position = "0 3";
extent = "135 23";
vertSizing = "center";
profile = "MenuMLSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextEditCtrl() {
text = "Torque 3D Server";
position = "606 4";
extent = "295 22";
horizSizing = "left";
vertSizing = "center";
profile = "MenuTextEditprofile";
variable = "$Pref::Server::Password";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiContainer() {
position = "0 105";
extent = "900 30";
horizSizing = "width";
profile = "GuiDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiTextCtrl() {
text = "Server Description";
position = "0 3";
extent = "147 23";
vertSizing = "center";
profile = "MenuMLSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextEditCtrl() {
text = "This is a Torque 3D server.";
position = "606 4";
extent = "295 22";
horizSizing = "left";
vertSizing = "center";
profile = "MenuTextEditprofile";
variable = "$Pref::Server::Info";
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiContainer() {
position = "0 140";
extent = "900 30";
horizSizing = "width";
profile = "GuiDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiTextCtrl() {
text = "Max Players";
position = "0 3";
extent = "94 23";
vertSizing = "center";
profile = "MenuMLSubHeaderText";
tooltipProfile = "GuiToolTipProfile";
};
new GuiTextEditCtrl(JoinServerPlayerNameTxt) {
text = "64";
position = "606 4";
extent = "295 22";
horizSizing = "left";
vertSizing = "center";
profile = "MenuTextEditprofile";
variable = "$Pref::Server::MaxPlayers";
tooltipProfile = "GuiToolTipProfile";
};
};
};
};
};
new GuiPanel(ChooseLevelButtonPanel) {
position = "0 683";
extent = "1281 40";
@ -49,9 +318,9 @@ $guiContent = new GuiControl(ChooseLevelMenu) {
sizeIconToButton = "1";
makeIconSquare = "1";
textLocation = "Center";
text = "Start";
position = "1115 0";
extent = "140 40";
text = "Start Game";
position = "1092 0";
extent = "163 40";
horizSizing = "left";
vertSizing = "center";
profile = "GuiMenuButtonProfile";
@ -72,25 +341,5 @@ $guiContent = new GuiControl(ChooseLevelMenu) {
tooltipProfile = "GuiToolTipProfile";
};
};
new GuiScrollCtrl(LevelPreviewScroll) {
hScrollBar = "dynamic";
vScrollBar = "alwaysOff";
position = "0 118";
extent = "1283 500";
horizSizing = "width";
vertSizing = "center";
profile = "GuiMenuScrollProfile";
tooltipProfile = "GuiToolTipProfile";
new GuiStackControl(LevelPreviewArray) {
position = "1 1";
extent = "1280 480";
vertSizing = "center";
profile = "GuiMenuDefaultProfile";
tooltipProfile = "GuiToolTipProfile";
padding = "5";
stackingType = "Horizontal";
};
};
};
//--- OBJECT WRITE END ---