Change Color.ToAhsv to tuple syntax.
This commit is contained in:
@@ -49,10 +49,10 @@ namespace OpenRA.Primitives
|
||||
return FromAhsv(255, h, s, v);
|
||||
}
|
||||
|
||||
public void ToAhsv(out int a, out float h, out float s, out float v)
|
||||
public (float A, float H, float S, float V) ToAhsv()
|
||||
{
|
||||
a = A;
|
||||
(h, s, v) = RgbToHsv(R, G, B);
|
||||
var (h, s, v) = RgbToHsv(R, G, B);
|
||||
return (A, h, s, v);
|
||||
}
|
||||
|
||||
Color(long argb)
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace OpenRA.Traits
|
||||
|
||||
public void LoadPlayerPalettes(WorldRenderer wr, string playerName, Color color, bool replaceExisting)
|
||||
{
|
||||
color.ToAhsv(out _, out var h, out var s, out _);
|
||||
var (_, h, s, _) = color.ToAhsv();
|
||||
|
||||
var remap = new PlayerColorRemap(info.RemapIndex, h, s);
|
||||
var pal = new ImmutablePalette(wr.Palette(info.BasePalette).Palette, remap);
|
||||
|
||||
@@ -48,7 +48,7 @@ namespace OpenRA.Traits
|
||||
|
||||
public void LoadPalettes(WorldRenderer wr)
|
||||
{
|
||||
info.Color.ToAhsv(out _, out var h, out var s, out _);
|
||||
var (_, h, s, _) = info.Color.ToAhsv();
|
||||
|
||||
var remap = new PlayerColorRemap(info.RemapIndex, h, s);
|
||||
wr.AddPalette(info.Name, new ImmutablePalette(wr.Palette(info.Base).Palette, remap), info.AllowModifiers);
|
||||
|
||||
@@ -71,8 +71,7 @@ namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
Color = color;
|
||||
|
||||
Color.ToAhsv(out _, out var h, out var s, out _);
|
||||
|
||||
var (_, h, s, _) = Color.ToAhsv();
|
||||
var newPalette = new MutablePalette(worldRenderer.Palette(PaletteName).Palette);
|
||||
newPalette.ApplyRemap(new PlayerColorRemap(RemapIndices, h, s));
|
||||
worldRenderer.ReplacePalette(PaletteName, newPalette);
|
||||
@@ -141,7 +140,7 @@ namespace OpenRA.Mods.Common.Traits
|
||||
|
||||
public Color MakeValid(Color color, MersenneTwister random, IEnumerable<Color> terrainColors, IEnumerable<Color> playerColors, Action<string> onError = null)
|
||||
{
|
||||
color.ToAhsv(out _, out var h, out var s, out _);
|
||||
var (_, h, s, _) = color.ToAhsv();
|
||||
return MakeValid(h, s, random, terrainColors, playerColors, onError);
|
||||
}
|
||||
|
||||
@@ -181,10 +180,7 @@ namespace OpenRA.Mods.Common.Traits
|
||||
// until we either find a suitable color or loop back to where we started.
|
||||
// This is a simple way to avoid being trapped between two blocking colors.
|
||||
if (stepSign == 0)
|
||||
{
|
||||
Color.FromLinear(255, blocker.R, blocker.G, blocker.B).ToAhsv(out _, out var blockerHue, out _, out _);
|
||||
stepSign = blockerHue > hue ? -1 : 1;
|
||||
}
|
||||
stepSign = Color.FromLinear(255, blocker.R, blocker.G, blocker.B).ToAhsv().H > hue ? -1 : 1;
|
||||
|
||||
hue += stepSign * 0.01f;
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ namespace OpenRA.Mods.Common.Widgets
|
||||
/// </summary>
|
||||
public void Set(Color color)
|
||||
{
|
||||
color.ToAhsv(out _, out var h, out var s, out _);
|
||||
var (_, h, s, _) = color.ToAhsv();
|
||||
|
||||
if (H != h || S != s)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user