Abspielen von 2 sounds wechseln

TCMRO

Erfahrenes Mitglied
Hi Leute,

ich hab da eine Frage, undzwar würde ich gerne zwei Loops bei knopfdruck wechseln.
D.h. ein loop läuft, und wenn man den MC klickt läuft der andere loop. Irgendwas muss ich da falsch haben, es will nicht gehen. Der erste Loop läuft und stoppt wie gewollt, nur der 2te macht nichts.

"Player"
PHP:
mySound = new Sound();
mySound.attachSound("loop");
mySound.start("", 999);
mySound = new Sound();
mySound.attachSound("loop2");

Button
PHP:
_root.sound.mySound.stop();
_root.sound.mySound.attachSound("loop2");

Hab ich da irgend was vergessen? Oder geht das so nicht?

MfG

Daniel
 
Hi Basileus,

genau das habe ich auch schon versucht. aber wenn ich das so mache:
PHP:
mySound2 = new Sound();

Dann geht da garnichts. Kann ich diesen Befehl nicht zwei mal in einem MC haben?
Oder meinst Du, ich muss einen Neuen MC mit dem Soundobjekt erstellen?
 
Soundobjekte würde ich prinzipiell auf _root oder aber in einem virtuellen 0px Container auf _root registrieren. Der code für dein Prblem müsste folgendermassen funktionieren (ungetestet) :

PHP:
_root.mySound = new Sound();
_root.mySound.attachSound("loop");

_root.mySound2 = new Sound();
_root.mySound2.attachSound("loop2");

_root.mySound.start("", 999);
_root.mySound.onComplete = function{
_root.mySound.stop();
_root.mySound2.start("", 999);

}

.. und natürlich muss dafür ein loop2 in der Bibliothek mit AS-Verknüpfung exportiert sein ..

B
 
Dieser Code kommt dann praktisch in meinen Button wenn ich das richtig sehe?

PHP:
_root.mySound.start("", 999); 
_root.mySound.onComplete = function{ 
_root.mySound.stop(); 
_root.mySound2.start("", 999); 

}

Kannst Du mir die onComplete Funktion erklären?

MfG

Daniel
 
Na ja,

onComplete ist ein Handler wie zB onLoad - wenn also Sound 1 einmal abgespielt hat, dann führt er die Anweisungen zwischen den geschweiften Klammern aus ..

B
 
Ah so ist das also.

Aber irgendwas mach ich falsch...

**Fehler** Symbol=Naviga, Ebene=Ebene 3, Bild=1:Zeile 14: Funktionsname erwartet
_root.mySound.onComplete = function{

Hmm.. Cabron
 
Code:
_root.mySound.start("", 999);
_root.mySound.onComplete = function() {
    this.stop();
    _root.mySound2.start("", 999);
}

Ausserdem solltest Du die Sounds tatsächlich Ziel-MCs zuordnen:
Code:
var mySound = new Sound(this);
var mySound2 = new Sound(this); // wenn nicht unabhängig angesteuert werden muss
// oder:
var mcs = this.createEmptyMovieClip("mcs", 1000);
var mySound2 = new Sound(mcs);

Gruß
.
 
Hm,

kommt vom freihändig tippen ...

ich würde aber trotzdem stark für _root oder ein Extra Objekt auf _root anstelle this plädieren ..

B
 
ja, aber es war auch nicht ganz fair von mir, mich in Deinen Thread einzumischen. ^^

Gruß

P.S.: Ich bin einfach mal davon ausgegangen, dass _root hier this entspricht
.
 
Zurück