Adjust lobby tooltip plumbing:

- Pass Client instead of Client ID
- Pass WorldRenderer and OrderManager to util helpers.
This commit is contained in:
Paul Chote
2018-07-06 20:51:00 +01:00
committed by abcdefg30
parent 97c03b00f2
commit 630936a211
4 changed files with 41 additions and 25 deletions

View File

@@ -29,6 +29,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
readonly Action onStart;
readonly Action onExit;
readonly OrderManager orderManager;
readonly WorldRenderer worldRenderer;
readonly bool skirmishMode;
readonly Ruleset modRules;
readonly World shellmapWorld;
@@ -100,6 +101,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
lobby = widget;
this.modData = modData;
this.orderManager = orderManager;
this.worldRenderer = worldRenderer;
this.onStart = onStart;
this.onExit = onExit;
this.skirmishMode = skirmishMode;
@@ -558,7 +560,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
template = emptySlotTemplate.Clone();
if (isHost)
LobbyUtils.SetupEditableSlotWidget(template, slot, client, orderManager, map);
LobbyUtils.SetupEditableSlotWidget(template, slot, client, orderManager, worldRenderer, map);
else
LobbyUtils.SetupSlotWidget(template, slot, client);
@@ -577,9 +579,9 @@ namespace OpenRA.Mods.Common.Widgets.Logic
LobbyUtils.SetupLatencyWidget(template, client, orderManager, client.Bot == null);
if (client.Bot != null)
LobbyUtils.SetupEditableSlotWidget(template, slot, client, orderManager, map);
LobbyUtils.SetupEditableSlotWidget(template, slot, client, orderManager, worldRenderer, map);
else
LobbyUtils.SetupEditableNameWidget(template, slot, client, orderManager);
LobbyUtils.SetupEditableNameWidget(template, slot, client, orderManager, worldRenderer);
LobbyUtils.SetupEditableColorWidget(template, slot, client, orderManager, shellmapWorld, colorPreview);
LobbyUtils.SetupEditableFactionWidget(template, slot, client, orderManager, factions);
@@ -601,12 +603,12 @@ namespace OpenRA.Mods.Common.Widgets.Logic
{
LobbyUtils.SetupEditableTeamWidget(template, slot, client, orderManager, map);
LobbyUtils.SetupEditableSpawnWidget(template, slot, client, orderManager, map);
LobbyUtils.SetupPlayerActionWidget(template, slot, client, orderManager, lobby,
() => panel = PanelType.Kick, () => panel = PanelType.Players);
LobbyUtils.SetupPlayerActionWidget(template, slot, client, orderManager, worldRenderer,
lobby, () => panel = PanelType.Kick, () => panel = PanelType.Players);
}
else
{
LobbyUtils.SetupNameWidget(template, slot, client);
LobbyUtils.SetupNameWidget(template, slot, client, orderManager, worldRenderer);
LobbyUtils.SetupTeamWidget(template, slot, client);
LobbyUtils.SetupSpawnWidget(template, slot, client);
}
@@ -640,7 +642,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
if (template == null || template.Id != editableSpectatorTemplate.Id)
template = editableSpectatorTemplate.Clone();
LobbyUtils.SetupEditableNameWidget(template, null, c, orderManager);
LobbyUtils.SetupEditableNameWidget(template, null, c, orderManager, worldRenderer);
if (client.IsAdmin)
LobbyUtils.SetupEditableReadyWidget(template, null, client, orderManager, map);
@@ -652,10 +654,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
template = nonEditableSpectatorTemplate.Clone();
if (isHost)
LobbyUtils.SetupPlayerActionWidget(template, null, client, orderManager, lobby,
() => panel = PanelType.Kick, () => panel = PanelType.Players);
LobbyUtils.SetupPlayerActionWidget(template, null, client, orderManager, worldRenderer,
lobby, () => panel = PanelType.Kick, () => panel = PanelType.Players);
else
LobbyUtils.SetupNameWidget(template, null, client);
LobbyUtils.SetupNameWidget(template, null, client, orderManager, worldRenderer);
if (client.IsAdmin)
LobbyUtils.SetupReadyWidget(template, null, client);