Allow multiple ResourceRenderer traits.
This commit is contained in:
committed by
teinarss
parent
521b516bf9
commit
ac381a6f58
@@ -25,7 +25,7 @@ namespace OpenRA.Mods.Common.Widgets
|
|||||||
public class ViewportControllerWidget : Widget
|
public class ViewportControllerWidget : Widget
|
||||||
{
|
{
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
readonly ResourceRenderer resourceRenderer;
|
readonly IEnumerable<ResourceRenderer> resourceRenderers;
|
||||||
|
|
||||||
public readonly HotkeyReference ZoomInKey = new HotkeyReference();
|
public readonly HotkeyReference ZoomInKey = new HotkeyReference();
|
||||||
public readonly HotkeyReference ZoomOutKey = new HotkeyReference();
|
public readonly HotkeyReference ZoomOutKey = new HotkeyReference();
|
||||||
@@ -144,7 +144,7 @@ namespace OpenRA.Mods.Common.Widgets
|
|||||||
tooltipContainer = Exts.Lazy(() =>
|
tooltipContainer = Exts.Lazy(() =>
|
||||||
Ui.Root.Get<TooltipContainerWidget>(TooltipContainer));
|
Ui.Root.Get<TooltipContainerWidget>(TooltipContainer));
|
||||||
|
|
||||||
resourceRenderer = world.WorldActor.TraitOrDefault<ResourceRenderer>();
|
resourceRenderers = world.WorldActor.TraitsImplementing<ResourceRenderer>().ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Initialize(WidgetArgs args)
|
public override void Initialize(WidgetArgs args)
|
||||||
@@ -266,13 +266,14 @@ namespace OpenRA.Mods.Common.Widgets
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (resourceRenderer != null)
|
foreach (var resourceRenderer in resourceRenderers)
|
||||||
{
|
{
|
||||||
var resource = resourceRenderer.GetRenderedResourceType(cell);
|
var resource = resourceRenderer.GetRenderedResourceType(cell);
|
||||||
if (resource != null)
|
if (resource != null)
|
||||||
{
|
{
|
||||||
TooltipType = WorldTooltipType.Resource;
|
TooltipType = WorldTooltipType.Resource;
|
||||||
ResourceTooltip = resource;
|
ResourceTooltip = resource;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user