public static void SetHSL(this Color color, float h, float s, float l)
{
if (s == 0f)
{
color.R = (byte)(l * 255);
color.G = (byte)(l * 255);
color.B = (byte)(l * 255);
}
else
{
float var_2;
float var_1;
if (l < 0.5)
var_2 = l * (1 + s);
else
var_2 = (l + s) - (s * l);
var_1 = 2 * l - var_2;
color.R = (byte)(255 * Hue_2_RGB(var_1, var_2, h + (1 / 3)));
color.G = (byte)(255 * Hue_2_RGB(var_1, var_2, h));
color.B = (byte)(255 * Hue_2_RGB(var_1, var_2, h - (1 / 3)));
}
}