as far i can see, the player is supposed to respawn after 4 seconds, after doing.. what? a timer is only required if the script cant expect any input from a player (like a repeating /command, where the script can evaluate the time differences between), which seems not to be the case after dying/waiting to spawn.
does the user_vehicle[playerid] check gets called by a command, entering a checkpoiint/pickup?
if you cant connect the upper action to be called by another one, then you are almost forced to use a timer ><
oh, how to transform? best way: save the script (add the current date to the filename, so you will keep that backup), save it again with the old name (else you'll work with/quick-save the backup), then erase all timer relating stuff, and compledetly rewrite it.
using the GetTickCount depends on any other script running so it can compare the saved player-tick with the actual..
lets watch your post above: time= 11:10
if you would bump it @ 11:11, then its 1 minute between. too few to be honest ^^
the formula works simple:
if you post, then the time gets saved in your variable: 11:10.
after some time (without any interaction between you<->forum), you post again.
the server subtracts the actual time (11:11, which is indeed "bigger") minus yours (11.10), and the result is simply the difference.
since you had to DO the interaction (post to start time calculation), the server "knows" when, and how long it took you to spam