From 424aa5c2d2b70b614d5e892774db3643a70b4df3 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 11 Jul 2010 12:23:24 +1200 Subject: [PATCH] Persist server settings --- OpenRA.Game/GameRules/UserSettings.cs | 3 ++- .../Delegates/CreateServerMenuDelegate.cs | 19 +++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/OpenRA.Game/GameRules/UserSettings.cs b/OpenRA.Game/GameRules/UserSettings.cs index 3c07436099..cd6db11e37 100644 --- a/OpenRA.Game/GameRules/UserSettings.cs +++ b/OpenRA.Game/GameRules/UserSettings.cs @@ -54,9 +54,10 @@ namespace OpenRA.GameRules public string[] InitialMods = { "ra" }; // Server settings + public string LastServerTitle = "OpenRA Game"; public int ListenPort = 1234; public int ExternalPort = 1234; - public bool InternetServer = true; + public bool AdvertiseOnline = true; public string MasterServer = "http://open-ra.org/master/"; string SettingsFile; diff --git a/OpenRA.Game/Widgets/Delegates/CreateServerMenuDelegate.cs b/OpenRA.Game/Widgets/Delegates/CreateServerMenuDelegate.cs index df302f9f30..a87b3b97eb 100644 --- a/OpenRA.Game/Widgets/Delegates/CreateServerMenuDelegate.cs +++ b/OpenRA.Game/Widgets/Delegates/CreateServerMenuDelegate.cs @@ -41,7 +41,6 @@ namespace OpenRA.Widgets.Delegates cs.GetWidget("BUTTON_START").OnMouseUp = mi => { r.OpenWindow("SERVER_LOBBY"); - Log.Write("debug", "Creating server"); // TODO: Get this from a map chooser string map = Game.AvailableMaps.Keys.FirstOrDefault(); @@ -49,24 +48,24 @@ namespace OpenRA.Widgets.Delegates // TODO: Get this from a mod chooser var mods = Game.Settings.InitialMods; - var gameName = cs.GetWidget("GAME_TITLE").Text; + Game.Settings.LastServerTitle = cs.GetWidget("GAME_TITLE").Text; + Game.Settings.ListenPort = int.Parse(cs.GetWidget("LISTEN_PORT").Text); + Game.Settings.ExternalPort = int.Parse(cs.GetWidget("EXTERNAL_PORT").Text); + Game.Settings.Save(); - int listenPort = int.Parse(cs.GetWidget("LISTEN_PORT").Text); - int extPort = int.Parse(cs.GetWidget("EXTERNAL_PORT").Text); - - Server.Server.ServerMain(Game.Settings.InternetServer, Game.Settings.MasterServer, - gameName, listenPort, extPort, mods, map); + Server.Server.ServerMain(Game.Settings.AdvertiseOnline, Game.Settings.MasterServer, Game.Settings.LastServerTitle, + Game.Settings.ListenPort, Game.Settings.ExternalPort, mods, map); - Log.Write("debug", "Joining server"); Game.JoinServer(IPAddress.Loopback.ToString(), Game.Settings.ListenPort); return true; }; + cs.GetWidget("GAME_TITLE").Text = Game.Settings.LastServerTitle; cs.GetWidget("LISTEN_PORT").Text = Game.Settings.ListenPort.ToString(); cs.GetWidget("EXTERNAL_PORT").Text = Game.Settings.ExternalPort.ToString(); - cs.GetWidget("CHECKBOX_ONLINE").Checked = () => Game.Settings.InternetServer; + cs.GetWidget("CHECKBOX_ONLINE").Checked = () => Game.Settings.AdvertiseOnline; cs.GetWidget("CHECKBOX_ONLINE").OnMouseDown = mi => { - Game.Settings.InternetServer ^= true; + Game.Settings.AdvertiseOnline ^= true; Game.Settings.Save(); return true; };