From d75784df647a4fabda59f753c06cdc6699ba7384 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Sun, 21 Aug 2011 14:26:28 +1200 Subject: [PATCH] factor out build palette overlays; add timers --- OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs b/OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs index d94d7d0aad..64bda200f1 100755 --- a/OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs +++ b/OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs @@ -235,10 +235,8 @@ namespace OpenRA.Mods.RA.Widgets clock.Tick(); WidgetUtils.DrawSHP(clock.Image, drawPos, worldRenderer); - if (firstOfThis.Done) - textBits.Add( Pair.New( overlayPos, "READY" ) ); - else if (firstOfThis.Paused) - textBits.Add( Pair.New( overlayPos, "ON HOLD" ) ); + if (queue.CurrentItem() == firstOfThis) + textBits.Add( Pair.New( overlayPos, GetOverlayForItem(firstOfThis) ) ); var repeats = queue.AllQueued().Count(a => a.Item == item.Name); if (repeats > 1 || queue.CurrentItem() != firstOfThis) @@ -295,7 +293,14 @@ namespace OpenRA.Mods.RA.Widgets return 48 * y + 9; } - + + string GetOverlayForItem(ProductionItem item) + { + if (item.Paused) return "ON HOLD"; + if (item.Done) return "READY"; + return WidgetUtils.FormatTime(item.RemainingTimeActual); + } + Action HandleClick(string name, World world) { return mi => {