I'm not ply, and I'm not the greatest scripter. But I think your problem lies in the line:
:state=1,timerstart,timergreater=60000:state=2
I believe that your problem is that you are starting the timer on every iteration through the code. Meaning: Every time the script is checked at this line, the timer is started. And if it is started all the time (and in effect restarted every time it gets to this point), then it will never hit 60000.
Now, I could be entirely wrong on this. But, just as an aside (and to humor me a little), try the following code:
:state=0,plrwithinzone=1:timerstart,state=1
:state=1,timergreater=60000:plrmoveto=out