Simplify colour retrieval function

This commit is contained in:
smoogipoo
2019-10-11 14:01:36 +09:00
parent 824595427d
commit 2df519ddfa

View File

@ -125,22 +125,19 @@ namespace osu.Game.Screens.Edit.Compose.Components
/// <returns>The applicable colour.</returns> /// <returns>The applicable colour.</returns>
protected ColourInfo GetColourForBeatIndex(int index) protected ColourInfo GetColourForBeatIndex(int index)
{ {
int divIndex = beatDivisor.Value - (index % beatDivisor.Value) - 1; int beat = (index + 1) % beatDivisor.Value;
ColourInfo colour = colours.Gray5; ColourInfo colour = colours.Gray5;
{
for (int i = 0; i < BindableBeatDivisor.VALID_DIVISORS.Length; i++) for (int i = 0; i < BindableBeatDivisor.VALID_DIVISORS.Length; i++)
{ {
int divisor = BindableBeatDivisor.VALID_DIVISORS[i]; int divisor = BindableBeatDivisor.VALID_DIVISORS[i];
if ((divIndex * divisor) % beatDivisor.Value == 0) if ((beat * divisor) % beatDivisor.Value == 0)
{ {
colour = BindableBeatDivisor.GetColourFor(divisor, colours); colour = BindableBeatDivisor.GetColourFor(divisor, colours);
break; break;
} }
} }
}
int repeatIndex = index / beatDivisor.Value; int repeatIndex = index / beatDivisor.Value;
return colour.MultiplyAlpha(0.5f / (repeatIndex + 1)); return colour.MultiplyAlpha(0.5f / (repeatIndex + 1));