Skip to content

Commit

Permalink
Allow different color picker preview actors per faction.
Browse files Browse the repository at this point in the history
  • Loading branch information
IceReaper committed Oct 26, 2018
1 parent b815e80 commit 1a348a5
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 5 deletions.
10 changes: 6 additions & 4 deletions OpenRA.Mods.Common/Widgets/Logic/ColorPickerLogic.cs
Expand Up @@ -25,11 +25,12 @@ public class ColorPickerLogic : ChromeLogic
int paletteTabHighlighted = 0;

[ObjectCreator.UseCtor]
public ColorPickerLogic(Widget widget, ModData modData, World world, HSLColor initialColor, Action<HSLColor> onChange, Dictionary<string, MiniYaml> logicArgs)
public ColorPickerLogic(Widget widget, ModData modData, World world, HSLColor initialColor, string initialFaction, Action<HSLColor> onChange,
Dictionary<string, MiniYaml> logicArgs)
{
string actorType;
if (!ChromeMetrics.TryGet("ColorPickerActorType", out actorType))
actorType = "mcv";
if (initialFaction == null || !ChromeMetrics.TryGet("ColorPickerActorType-" + initialFaction, out actorType))
actorType = ChromeMetrics.Get<string>("ColorPickerActorType");

var preview = widget.GetOrNull<ActorPreviewWidget>("PREVIEW");
var actor = world.Map.Rules.Actors[actorType];
Expand Down Expand Up @@ -194,7 +195,8 @@ public static void ShowColorDropDown(DropDownButtonWidget color, ColorPreviewMan
var colorChooser = Game.LoadWidget(world, "COLOR_CHOOSER", null, new WidgetArgs()
{
{ "onChange", onChange },
{ "initialColor", Game.Settings.Player.Color }
{ "initialColor", Game.Settings.Player.Color },
{ "initialFaction", null }
});

color.AttachPanel(colorChooser, onExit);
Expand Down
3 changes: 2 additions & 1 deletion OpenRA.Mods.Common/Widgets/Logic/Lobby/LobbyUtils.cs
Expand Up @@ -217,7 +217,8 @@ public SlotDropDownOption(string title, string order, Func<bool> selected)
var colorChooser = Game.LoadWidget(world, "COLOR_CHOOSER", null, new WidgetArgs()
{
{ "onChange", onChange },
{ "initialColor", client.Color }
{ "initialColor", client.Color },
{ "initialFaction", client.Faction }
});

color.AttachPanel(colorChooser, onExit);
Expand Down

0 comments on commit 1a348a5

Please sign in to comment.