У меня так:
Есть массив timer(кол-во кнопок-функций+один обьект массива для времени)
В цикле timer(1)=MilliSecs () - это и есть тот "один обьект массива для времени"
дальше если нужно определенное действие раз в определенное время (стрельба, разгон и т.д.), то так:
If KeyDown(сканкод)=1 Then
If timer(1)>timer(2) Then
motor%=motor%+10
timer(2)=timer(1)+200
End If
Else
timer(2)=0
End If
тут еще один подводный камень, для каждого действия или кнопки нужен свой таймер, то есть
timer(2)=таймер для первого действия
timer(3)=для второго
timer(4)=и т.д.
Иначе происходит конфликт и нипашет ничего. Выше пример сделан для кнопок, но убрать кнопки и сделать вызов функций не так уж и труден.
Ну вродь так

, если что гуру меня поправят.
