public float[] GetTicksAtLevel(int level, bool excludeTicksFromHigherlevels)
{
if (level < 0)
{
return new float[0];
}
int index = Mathf.Clamp(this.m_SmallestTick + level, 0, this.m_TickModulos.Length - 1);
List<float> list = new List<float>();
int num2 = Mathf.FloorToInt(this.m_MinValue / this.m_TickModulos[index]);
int num3 = Mathf.CeilToInt(this.m_MaxValue / this.m_TickModulos[index]);
for (int i = num2; i <= num3; i++)
{
if ((!excludeTicksFromHigherlevels || (index >= this.m_BiggestTick)) || ((i % Mathf.RoundToInt(this.m_TickModulos[index + 1] / this.m_TickModulos[index])) != 0))
{
list.Add(i * this.m_TickModulos[index]);
}
}
return list.ToArray();
}