Hai ragione, non avevo considerato le "inutili" variabili riproduzioneN e le altrettanto inutili condizionali (le "if").
La preparazione dell'oggetto Sound crea di per sé le variabili occorrenti ad ogni mp3 che vai a caricare; non ti resta che gestirle nelle rispettive funzioni degli eventi "on".
Nota:
Il metodo start (sec, nV), col loadSound può fallire clamorosamente, a meno che tu non abbia aspettato almeno 5 sec prima dell'ascolto (a seconda della tua velocità di connessione, e in diretta proporzione con la lunghezza del brano, il cosiddetto "primo buffer" di caricamento potrebbe durare anche di più.
Ipotesi:
a - Ammesso che tu abbia aspettato un tot di secondi, è possibile che il tuo "hoste" (della molora), non permetta la riproduzione dei file mp3 (sono rari ma esistono).
b - i tuoi mp3 potrebbero essere dei .wav o chissà cos'altro semplicemente rinominati con la desinenza .mp3
Consiglio:
Comunque sia, scartata la Nota e le due ipotesi, il tuo script, dal punto di vista della grammatica non ha difetti, ma possono appalesarsi nella pratica.
Tuttavia, per snellirlo e far sì che funzioni, ti consiglio questo tipo di architettura:
codice:
pulsante1.onRelease = function () {
s1 = new Sound ();
s2 = s3 = false;
s1.loadSound ("Music1.mp3", true);
s1.onSoundComplete = function () {
s1.loadSound ("Music1.mp3", true);
}
}
pulsante2.onPress = function () {
s2 = new Sound ();
s1 = s3 = false;
s2.loadSound ("Music2.mp3", true);
s2.onSoundComplete = function () {
s2.loadSound ("Music2.mp3", true);
}
}
pulsante3.onPress = function () {
s3 = new Sound ();
s1 = s2 = false;
s3.loadSound ("Music3.mp3", true);
s3.onSoundComplete = function () {
s3.loadSound ("Music3.mp3", true);
}
}
off.onRelease = function () {
s1 = s2 = s3 = false;
}
Ciao,
NAP