Correct UI for unslowed queues in low power.
Because of the way the tick logic works, 0 (or any negative number) for LowPowerSlowdown is functionally equivalent to 1. But LowPowerSlowdown is multipled by a time in several cases, so while 1 will produce the correct result (no slowdown), 0 will say that the time remaining is 00:00. Forbid nonpositive values, and correct the d2k mod which was using 0. Additionally, in the production tooltip, the colour should display as white even in low power if there is no slowdown.
This commit is contained in:
@@ -103,7 +103,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
var timeMultiplier = pm.PowerState != PowerState.Normal ? tooltipIcon.ProductionQueue.Info.LowPowerSlowdown : 1;
|
||||
|
||||
timeLabel.Text = formatBuildTime.Update(buildTime * timeMultiplier);
|
||||
timeLabel.TextColor = pm.PowerState != PowerState.Normal ? Color.Red : Color.White;
|
||||
timeLabel.TextColor = (pm.PowerState != PowerState.Normal && tooltipIcon.ProductionQueue.Info.LowPowerSlowdown > 1) ? Color.Red : Color.White;
|
||||
var timeSize = font.Measure(timeLabel.Text);
|
||||
|
||||
costLabel.Text = cost.ToString();
|
||||
@@ -143,4 +143,4 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
return a;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user