SetTimer ignores inRate

I found the issue:

When inFirstDelay is non-negative, it is used as the first delay. For non-repeating timers, this effectively replaces inRate.
Unfortunately the tutorial code uses 0 instead of not specifying that argument or using the default -1.0f for inFirstDelay, which causes this behavior.