void PreUpdate(int i)
{
if (i >= discreteUpdateables.Count)
{
i -= discreteUpdateables.Count;
if (i >= passiveUpdateables.Count)
{
i -= passiveUpdateables.Count;
//It's a continuous updateable.
if (continuousUpdateables.Elements[i].IsActive)
continuousUpdateables.Elements[i].PreUpdatePosition(timeStepSettings.TimeStepDuration);
}
else
{
//It's a passive updateable.
if (passiveUpdateables.Elements[i].IsActive)
passiveUpdateables.Elements[i].PreUpdatePosition(timeStepSettings.TimeStepDuration);
}
}
else
{
//It's a discrete updateable.
if (discreteUpdateables.Elements[i].IsActive)
discreteUpdateables.Elements[i].PreUpdatePosition(timeStepSettings.TimeStepDuration);
}
}