From 5e334eb19682fdd8c79fd7375a186b1aa3fc5f9a Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 4 Jan 2024 11:54:28 -0600 Subject: [PATCH 1/4] don't save map population elements when editing track addOption entry/slider/group position in the overall list, and use that found key to hook in the "<" and ">" subelements for selection purposes --- .../BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript | 1 + Templates/BaseGame/game/data/UI/guis/optionsMenu.tscript | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript index bf871146a..c64222332 100644 --- a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript +++ b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript @@ -87,6 +87,7 @@ function ChooseLevelMenu::onWake(%this) textLocation = "left"; textMargin = 120; groupNum = 2; + cansave = false; }; LevelPreviewArray.add(%preview); diff --git a/Templates/BaseGame/game/data/UI/guis/optionsMenu.tscript b/Templates/BaseGame/game/data/UI/guis/optionsMenu.tscript index ffbfcaf1f..f297b1159 100644 --- a/Templates/BaseGame/game/data/UI/guis/optionsMenu.tscript +++ b/Templates/BaseGame/game/data/UI/guis/optionsMenu.tscript @@ -19,6 +19,7 @@ function OptionsMenu::onAdd(%this) function OptionsMenu::onWake(%this) { + %this.optsListCount = -1; $optionsChangeRequiresRestart = false; %this.populateVideoSettings(); @@ -759,6 +760,7 @@ function OptionsMenu::resetSettings(%this) // Option types function addOptionGroup(%displayName) { + OptionsMenu.optsListCount++; %group = new GuiTextCtrl() { text = %displayName; position = "0 0"; @@ -785,6 +787,7 @@ function optionsMenuButton::onHighlighted(%this, %highlighted) function addOptionEntry(%optionObj) { + OptionsMenu.optsListCount++; if(!isObject(%optionObj) || (%optionObj.class !$= "OptionsSettings" && %optionObj.class !$= "AudioOptionsSettings")) { error("addOptionsEntry() - attempting to create a new options entry, but was provided an invalid options object"); @@ -818,6 +821,7 @@ function addOptionEntry(%optionObj) class = "OptionsListEntry"; optionsObject = %optionObj; currentOptionIndex = %qualityLevelIndex; + selectionID = OptionsMenu.optsListCount; canSave = "0"; new GuiButtonCtrl() { @@ -862,6 +866,7 @@ function addOptionEntry(%optionObj) text = "<"; profile = GuiMenuButtonProfile; internalName = "prevValButton"; + command = "$MenuList.listPosition = $thisControl.getParent().getParent().selectionID; OptionMenuPrevSetting(1);"; }; new GuiTextCtrl() { @@ -881,6 +886,7 @@ function addOptionEntry(%optionObj) text = ">"; profile = GuiMenuButtonProfile; internalName = "nextValButton"; + command = "$MenuList.listPosition = $thisControl.getParent().getParent().selectionID; OptionMenuNextSetting(1);"; }; }; }; @@ -890,6 +896,7 @@ function addOptionEntry(%optionObj) function addOptionSlider(%optionName, %optionDesc, %prefName, %sliderMin, %sliderMax, %sliderTicks) { + OptionsMenu.optsListCount++; %currentVal = getVariable(%prefName); %tempVarName = %prefName @ "_tempVar"; From 2fee2902f62b41b9135217e5cbaadc82c08c5b3a Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 4 Jan 2024 12:07:57 -0600 Subject: [PATCH 2/4] don't automatically set the server password --- Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui index 3b43eb163..89648cacf 100644 --- a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui +++ b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui @@ -240,7 +240,7 @@ $guiContent = new GuiControl(ChooseLevelMenu) { tooltipProfile = "GuiToolTipProfile"; }; new GuiTextEditCtrl() { - text = "Torque 3D Server"; + text = ""; position = "606 4"; extent = "295 22"; horizSizing = "left"; From e4342079f14339e1ccc7cb3933e06c6c611d0260 Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 4 Jan 2024 12:55:07 -0600 Subject: [PATCH 3/4] function ChooseLevelMenu::fillPrefEntries( %this ) utility method to set gui elements to prefs --- .../BaseGame/game/data/UI/guis/ChooseLevelMenu.gui | 12 ++++++------ .../game/data/UI/guis/ChooseLevelMenu.tscript | 10 ++++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui index 89648cacf..fb98ec6e9 100644 --- a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui +++ b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.gui @@ -187,7 +187,7 @@ $guiContent = new GuiControl(ChooseLevelMenu) { profile = "MenuMLSubHeaderText"; tooltipProfile = "GuiToolTipProfile"; }; - new GuiTextEditCtrl() { + new GuiTextEditCtrl(playerNameCTRL) { text = "Visitor"; position = "606 4"; extent = "295 22"; @@ -213,8 +213,8 @@ $guiContent = new GuiControl(ChooseLevelMenu) { profile = "MenuMLSubHeaderText"; tooltipProfile = "GuiToolTipProfile"; }; - new GuiTextEditCtrl() { - text = "Torque 3D Server"; + new GuiTextEditCtrl(serverNameCTRL) { + text = ""; position = "606 4"; extent = "295 22"; horizSizing = "left"; @@ -239,7 +239,7 @@ $guiContent = new GuiControl(ChooseLevelMenu) { profile = "MenuMLSubHeaderText"; tooltipProfile = "GuiToolTipProfile"; }; - new GuiTextEditCtrl() { + new GuiTextEditCtrl(serverPassCTRL) { text = ""; position = "606 4"; extent = "295 22"; @@ -265,7 +265,7 @@ $guiContent = new GuiControl(ChooseLevelMenu) { profile = "MenuMLSubHeaderText"; tooltipProfile = "GuiToolTipProfile"; }; - new GuiTextEditCtrl() { + new GuiTextEditCtrl(serverInfoCTRL) { text = "This is a Torque 3D server."; position = "606 4"; extent = "295 22"; @@ -291,7 +291,7 @@ $guiContent = new GuiControl(ChooseLevelMenu) { profile = "MenuMLSubHeaderText"; tooltipProfile = "GuiToolTipProfile"; }; - new GuiTextEditCtrl(JoinServerPlayerNameTxt) { + new GuiTextEditCtrl(serverMaxPlayersCTRL) { text = "64"; position = "606 4"; extent = "295 22"; diff --git a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript index c64222332..b11a3a062 100644 --- a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript +++ b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript @@ -26,6 +26,16 @@ function ChooseLevelMenu::onAdd( %this ) new AssetQuery(ChooseLevelAssetQuery); %this.previewButtonSize = "445 120"; + %this.fillPrefEntries(); +} + +function ChooseLevelMenu::fillPrefEntries( %this ) +{ + serverNameCTRL.setText($Pref::Player::Name); + serverNameCTRL.setText($Pref::Server::Name); + serverPassCTRL.setText($Pref::Server::Password); + serverInfoCTRL.setText($Pref::Server::Info); + serverMaxPlayersCTRL.setText($Pref::Server::MaxPlayers); } function ChooseLevelMenu::onWake(%this) From f4491f82021215170b9234ad251b772e5d4da3ab Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 4 Jan 2024 13:10:17 -0600 Subject: [PATCH 4/4] typofix. also, repopulate pref GuiTextEditCtrl each onWake just to be sure --- Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript index b11a3a062..6d22b40d4 100644 --- a/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript +++ b/Templates/BaseGame/game/data/UI/guis/ChooseLevelMenu.tscript @@ -26,12 +26,11 @@ function ChooseLevelMenu::onAdd( %this ) new AssetQuery(ChooseLevelAssetQuery); %this.previewButtonSize = "445 120"; - %this.fillPrefEntries(); } function ChooseLevelMenu::fillPrefEntries( %this ) { - serverNameCTRL.setText($Pref::Player::Name); + playerNameCTRL.setText($Pref::Player::Name); serverNameCTRL.setText($Pref::Server::Name); serverPassCTRL.setText($Pref::Server::Password); serverInfoCTRL.setText($Pref::Server::Info); @@ -40,6 +39,7 @@ function ChooseLevelMenu::fillPrefEntries( %this ) function ChooseLevelMenu::onWake(%this) { + %this.fillPrefEntries(); LevelPreviewArray.clear(); ChooseLevelAssetQuery.clear();