Remove ServerExternalMod from OrderManager
This commit is contained in:
@@ -1006,5 +1006,6 @@ namespace OpenRA
|
|||||||
{
|
{
|
||||||
public static string Password;
|
public static string Password;
|
||||||
public static ConnectionTarget Target;
|
public static ConnectionTarget Target;
|
||||||
|
public static ExternalMod ServerExternalMod;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,7 +30,6 @@ namespace OpenRA.Network
|
|||||||
|
|
||||||
public string ServerError = null;
|
public string ServerError = null;
|
||||||
public bool AuthenticationFailed = false;
|
public bool AuthenticationFailed = false;
|
||||||
public ExternalMod ServerExternalMod = null;
|
|
||||||
|
|
||||||
public int NetFrameNumber { get; private set; }
|
public int NetFrameNumber { get; private set; }
|
||||||
public int LocalFrameNumber;
|
public int LocalFrameNumber;
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ namespace OpenRA.Network
|
|||||||
Game.ExternalMods.TryGetValue(externalKey, out var external))
|
Game.ExternalMods.TryGetValue(externalKey, out var external))
|
||||||
{
|
{
|
||||||
// The ConnectionFailedLogic will prompt the user to switch mods
|
// The ConnectionFailedLogic will prompt the user to switch mods
|
||||||
orderManager.ServerExternalMod = external;
|
CurrentServerSettings.ServerExternalMod = external;
|
||||||
orderManager.Connection.Dispose();
|
orderManager.Connection.Dispose();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
{
|
{
|
||||||
CloseWindow();
|
CloseWindow();
|
||||||
|
|
||||||
var switchPanel = om.ServerExternalMod != null ? "CONNECTION_SWITCHMOD_PANEL" : "CONNECTIONFAILED_PANEL";
|
var switchPanel = CurrentServerSettings.ServerExternalMod != null ? "CONNECTION_SWITCHMOD_PANEL" : "CONNECTIONFAILED_PANEL";
|
||||||
Ui.OpenWindow(switchPanel, new WidgetArgs()
|
Ui.OpenWindow(switchPanel, new WidgetArgs()
|
||||||
{
|
{
|
||||||
{ "orderManager", om },
|
{ "orderManager", om },
|
||||||
@@ -106,7 +106,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
widget.Get<LabelWidget>("CONNECTING_DESC").GetText = () => $"Could not connect to {connection.Target}";
|
widget.Get<LabelWidget>("CONNECTING_DESC").GetText = () => $"Could not connect to {connection.Target}";
|
||||||
|
|
||||||
var connectionError = widget.Get<LabelWidget>("CONNECTION_ERROR");
|
var connectionError = widget.Get<LabelWidget>("CONNECTION_ERROR");
|
||||||
connectionError.GetText = () => orderManager.ServerError ?? orderManager.Connection.ErrorMessage ?? "Unknown error";
|
connectionError.GetText = () => orderManager.ServerError ?? connection.ErrorMessage ?? "Unknown error";
|
||||||
|
|
||||||
var panelTitle = widget.Get<LabelWidget>("TITLE");
|
var panelTitle = widget.Get<LabelWidget>("TITLE");
|
||||||
panelTitle.GetText = () => orderManager.AuthenticationFailed ? "Password Required" : "Connection Failed";
|
panelTitle.GetText = () => orderManager.AuthenticationFailed ? "Password Required" : "Connection Failed";
|
||||||
@@ -157,14 +157,14 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
var abortButton = panel.Get<ButtonWidget>("ABORT_BUTTON");
|
var abortButton = panel.Get<ButtonWidget>("ABORT_BUTTON");
|
||||||
var switchButton = panel.Get<ButtonWidget>("SWITCH_BUTTON");
|
var switchButton = panel.Get<ButtonWidget>("SWITCH_BUTTON");
|
||||||
|
|
||||||
var mod = orderManager.ServerExternalMod;
|
var mod = CurrentServerSettings.ServerExternalMod;
|
||||||
var modTitle = mod.Title;
|
var modTitle = mod.Title;
|
||||||
var modVersion = mod.Version;
|
var modVersion = mod.Version;
|
||||||
|
|
||||||
switchButton.OnClick = () =>
|
switchButton.OnClick = () =>
|
||||||
{
|
{
|
||||||
var launchCommand = $"Launch.URI={new UriBuilder("tcp", connection.EndPoint.Address.ToString(), connection.EndPoint.Port)}";
|
var launchCommand = $"Launch.URI={new UriBuilder("tcp", connection.EndPoint.Address.ToString(), connection.EndPoint.Port)}";
|
||||||
Game.SwitchToExternalMod(orderManager.ServerExternalMod, new[] { launchCommand }, () =>
|
Game.SwitchToExternalMod(CurrentServerSettings.ServerExternalMod, new[] { launchCommand }, () =>
|
||||||
{
|
{
|
||||||
orderManager.ServerError = "Failed to switch mod.";
|
orderManager.ServerError = "Failed to switch mod.";
|
||||||
Ui.CloseWindow();
|
Ui.CloseWindow();
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
|
|
||||||
Action<string> onRetry = pass => ConnectionLogic.Connect(connection.Target, pass, onConnect, onExit);
|
Action<string> onRetry = pass => ConnectionLogic.Connect(connection.Target, pass, onConnect, onExit);
|
||||||
|
|
||||||
var switchPanel = om.ServerExternalMod != null ? "CONNECTION_SWITCHMOD_PANEL" : "CONNECTIONFAILED_PANEL";
|
var switchPanel = CurrentServerSettings.ServerExternalMod != null ? "CONNECTION_SWITCHMOD_PANEL" : "CONNECTIONFAILED_PANEL";
|
||||||
Ui.OpenWindow(switchPanel, new WidgetArgs()
|
Ui.OpenWindow(switchPanel, new WidgetArgs()
|
||||||
{
|
{
|
||||||
{ "orderManager", om },
|
{ "orderManager", om },
|
||||||
|
|||||||
Reference in New Issue
Block a user