ho inserito un loop musicale (loop.swf) esterno in un'altro filmato (video.swf)
loadMovieNum("loop.swf",1);
Come posso gestire play e stop in video.swf?
:master:
Grazie
ho inserito un loop musicale (loop.swf) esterno in un'altro filmato (video.swf)
loadMovieNum("loop.swf",1);
Come posso gestire play e stop in video.swf?
:master:
Grazie
Vediamo un po...
1) importo il loop nella libreria
2) imposto il nome di linkage (concatenamento):
> click destro sul simbolo in libreria
> seleziono "linkage" (concatenamento)
> nelle pannello che compare imposto:
° identifier = il nome con cui viene collegato, p. es. myloop
° seleziono la checkbox "Export for ActionScript"
° premo il pulsante OK
3) sul 1° frame della timeline scrivo il seguente codice:
per il movie contenente il suono è tutto qui.codice:// eseguo l'attachsound basemusicale = new Sound(_root); basemusicale.attachSound("myloop"); // "myloop" è il nome indicato al punto 2 // function suona () { basemusicale.start(0, 999); musik_on = true; } // function spegni () { basemusicale.stop(); musik_on = false; }
4) per caricare il filmato contenente il loop musicale scriverò:
(come del resto già fai)codice:loadMovieNum ("loop.swf", 1);
5) vediamo ora come richiamarlo dal main o da qualsiasi altro punto (tipicamente con un pulsante):
codice:on (release) { if (_level1.musik_on) { _level1.spegni(); } else { _level1.suona(); } }
Tutto chiaro?
spero di sì...provo poi ti faccio sapere, grazie 1000!![]()
Paolo... sei un tutorial vivente !!!![]()
NAPtiammira
A volte la diplomazia va condita con un pizzico di siluri fotonici. (K. Janeway)
La stima è reciproca caro NAP.Originariamente inviato da NAP
Paolo... sei un tutorial vivente !!!![]()
NAPtiammira
Grazie funziona benissimo, ma se volessi applicare un effetto di attenuazione in uscita e in entrata del loop ?
Si riesce? Cioè che quando clicco su stop si abbassa piano e lo stesso x quando clicco su play?
Grazie![]()
A richiesta, "commento" ulteriormente gli script già postati, per una maggior comprensione.
Codice inserito sul 1° frame della timeline del movie esterno che contiene unicamente il loop mosicale.
Siccome questo filmato verrà caricato su un livello superiore, ogni riferimento ad esso avverrà tramite l'anteposizione di _level1.per il movie contenente il suono è tutto qui.codice:// eseguo l'attachsound basemusicale = new Sound(_root); basemusicale.attachSound("myloop"); // "myloop" è il nome indicato al punto 2 // Funzione di "accensione" della musica function suona () { basemusicale.start(0, 999); // fa partire il loop musik_on = true; // variabile che indica che la "musica è accesa" } // Funzione di "spegnimento" della musica function spegni () { basemusicale.stop(); // ferma il loop musik_on = false; // variabile che indica che la "musica è spenta" }
Vediamo ora il codice associato al pulsante (ne basta uno per spegnere/accendere)
codice:on (release) { // se la variabile (vedi sopra) mi indica che la musica è accesa if (_level1.musik_on) { // allora la spengo _level1.spegni(); } else { // altrimenti la accendo _level1.suona(); } }
Tutto chiaro?
si perfetto solo una cosa, ma se io voglio che la musica mi parta in auto da subito e poi la spengo?
Immagino che tu abbia fatto anche un preload.
Bene, nel momento in cui il preload è finito, lanci l'istruzione:
_level1.suona();
Dici qui
onClipEvent (load) {
total = _root.getBytesTotal();
}
onClipEvent (enterFrame) {
loaded = _root.getBytesLoaded();
percent = int(loaded/total*100);
text = percent+"%";
gotoAndStop(percent);
if (loaded == total) {
_root.gotoAndPlay(2);
}
}