Replace ColorRamp with HSLColor everywhere.
Fixes: * Nuclear-purple color exploit. * #3247. * Removes a bunch of unnecessary color conversions every frame. Caveats: * The ramp range is now defined on the palette, so ramps can no longer be set per-player (may impact maps which define custom colors). * It's no longer possible to perfectly recreate the original WW color ramps (I doubt we care). * The old ColorRamp setting isn't migrated, so players will lose their color settings.
This commit is contained in:
@@ -155,7 +155,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
graph.GetSeries = () =>
|
||||
players.Select(p => new LineGraphSeries(
|
||||
p.PlayerName,
|
||||
p.ColorRamp.GetColor(0),
|
||||
p.Color.RGB,
|
||||
(p.PlayerActor.TraitOrDefault<PlayerStatistics>() ?? new PlayerStatistics(p.PlayerActor)).EarnedSamples.Select(s => (float)s)
|
||||
));
|
||||
|
||||
@@ -302,7 +302,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
|
||||
var playerName = template.Get<LabelWidget>("PLAYER");
|
||||
playerName.GetText = () => player.PlayerName + (player.WinState == WinState.Undefined ? "" : " (" + player.WinState + ")");
|
||||
playerName.GetColor = () => player.ColorRamp.GetColor(0);
|
||||
playerName.GetColor = () => player.Color.RGB;
|
||||
}
|
||||
|
||||
static Color GetPowerColor(PowerState state)
|
||||
|
||||
Reference in New Issue
Block a user