..non ho capito bene qual'è la domanda.. ma quando devo tener conto del tempo io uso setInterval. mi creo una variabile "conteggio", con setInterval ogni secondo (per dire)aumento la variabile di1, e poi gli dico di controllare se siamo arrivati al tempo che volevo io
if(conteggio==30){
//esegui questo
}else if(conteggio==60){
//esegui quello
}
..non sarà il massimo, però funziona