scusami, ma se sei sicuro di quanto tempo passa tra una lettere all'altra allora devi creare una funzione di "passa tempo", che calcoli esattamente i secondi reali.
setInterval non calcola effettivamente i secondi reali!
Inoltre bisogna vedere come hai impostato ogni lettera, se cioè la richiami da codice (quindi basterebbe richiamare la funzione del suono ogni volta che viene richiamata la lettera), oppure se le lettere sono sullo stage e l'animazione va avanti per frame.
E' FONDAMENTALE SAPERE CIO'.
Cerca di spiegare come è l'animazione.
Intanto ti scrivo la funzione per far passare esattamente 3 secondi e poi riprodurre il suono:
codice:
//FUNZIONE TRASCORRE TEMPO
var secondi;
var tempo_max;
var time_start_game;
//Funzione che converte i secondi in millisecondi
function convertSecondiToMillisecondi(secondi) {
//Un secondo è equivalente a 1000 millisecondi
var milliseconds = secondi*1000;
return milliseconds;
}
//Funzione per far passare tot secondi
function passaTempo() {
tempo_max = convertSecondiToMillisecondi(secondi);
time_start_game = getTimer();
var now = getTimer();
this.onEnterFrame = function() {
var now = getTimer();
if ((now-time_start_game)<=tempo_max) {
now = getTimer();
trace(now-time_start_game);
} else {
delete this.onEnterFrame;
playSound("mds");
}
};
}
//FUNZIONE SUONO
function playSound(soundID) {
soundobject = new Sound();
soundobject.attachSound(soundID);
soundobject.start(0, 1);
}
//dichiaro i secondi
secondi = 3;
//richiamo la funzione
passaTempo();