Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-05-2006, 14:48   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 22
MC und Variable

Hallo,

es gibt mehrere MC in dem Film. Auf dem ersten Frame jedes MC steht isPlaying = 2; und in dem letzten isPlaying = 3;

Wenn ich in MC1 bin und eine Ausgabe von isPlaying für alle anderen MCs mache dann hat isPlaying den Wert 2 obwohl diese MCs noch nicht abgespielt worden sind.

Ich möchte eigentlich isPlaying in den MCs mit 3 oder einen anderen Wert verschieden von 2 initialisieren.
Wenn ich auf dem Frame des Hauptfilms isPlaying in den MCs mit 3 initialisiere hat es kein Effekt.

for (i=0; i<5; ++i){
_root["mc"+i].isPlaying = 3;
}

Wüsste jemand, wie man das machen kann.

Gruß

Capwel
Capwello ist offline   Mit Zitat antworten
Alt 03-05-2006, 14:54   #2 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
...kannste da mal kurz ne beispiel fla hochladen, grad zu faul zum sleber bauen, das müsste aber eigentlich gehen.

Zitat:
Wenn ich in MC1 bin und eine Ausgabe von isPlaying für alle anderen MCs mache dann hat isPlaying den Wert 2 obwohl diese MCs noch nicht abgespielt worden sind.
Is ja normal da diese alle auf Frame 1 stehen und in diesem ja isPlaying mit 2 initialisiert wurde.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 04-05-2006, 09:43   #3 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Jap, wollt ich auch grade sagen. Wenn sie im ersten Fram stehen und dort auf 2 gestellt werden, dann sind sie natürlich auf 2. Lege sonst dinen "= 2" in den zweiten Frame damit sie erst gesetzt werden, wenn die MCs gestartet sind.

Gruß,
Dwarf
djdwarf ist offline   Mit Zitat antworten
Alt 04-05-2006, 12:06   #4 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 22
Hallo,
* Lege sonst dinen "= 2" in den zweiten Frame damit sie erst gesetzt werden, wenn die MCs gestartet sind.

- Diese Variable isPlaying wird dazu verwendet um herauszufinden, welche MC gerade abgespielt wird (Die MCs werden nacheinander abgespielt).
Wenn ich isPlaying erst im zweiten Frame auf 2 setze, dann würde eine Abfrage if (isPLaying == 2) im ersten Frame nicht zutreffend.

Wenn ich versuche die MCs auf dem letzten Frame stehen zu lassen (damit isPlaying auf 3 gesetzt wird), klappt es nur beim ersten MC. Die anderen MCs stehen dann auf dem ersten Frame.

Gruß
Capwello ist offline   Mit Zitat antworten
Alt 04-05-2006, 12:11   #5 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Zitat:
Zitat von Capwello
- Diese Variable isPlaying wird dazu verwendet um herauszufinden, welche MC gerade abgespielt wird (Die MCs werden nacheinander abgespielt).
Wenn ich isPlaying erst im zweiten Frame auf 2 setze, dann würde eine Abfrage if (isPLaying == 2) im ersten Frame nicht zutreffend.
Ja! Darum geht es doch ... oder wie?

Zitat:
Zitat von Capwello
Wenn ich versuche die MCs auf dem letzten Frame stehen zu lassen (damit isPlaying auf 3 gesetzt wird), klappt es nur beim ersten MC. Die anderen MCs stehen dann auf dem ersten Frame.
Irgendwie ist das schwer verständlich was du genau möchtest. Das einfachste ist wirklich du lädst ein Beispiel hoch, damit man das mal vor sich hat.

EDIT: oder aber du erklärst es nochmal gaaanz ausführlich
djdwarf ist offline   Mit Zitat antworten
Alt 04-05-2006, 15:12   #6 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 22
Ja! Darum geht es doch ... oder wie?

Nicht wirklich. isPlaying muß am Anfang in jedem MC (außer dem ersten eventuell) auf einem Wert verschieden von 2 initialisiert sein. Beim ersten Frame jedes MC muß diesen Wert auf 2 gesetzt werden und im letzten Frame wieder auf einem Wert verschieden von 2 . Mit deinem Vorschlag wirtd diesen Wert erst im zweiten Frame auf 2 gesetzt.

Vielleicht gibt es eine andere Möglichkeit um herauszufinden welcher Clip gerade abgespielt wird.
Capwello ist offline   Mit Zitat antworten
Alt 04-05-2006, 15:26   #7 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Ich hab das Gefühl wir reden aneinander vorbei ...


Wie ichs meine siehst du im Anhang. Zum starten eines MC auf den Kreis klicken.
Angehängte Dateien
Dateityp: zip is_playing.zip (7,4 KB, 2x aufgerufen)
djdwarf ist offline   Mit Zitat antworten
Alt 04-05-2006, 23:23   #8 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 22
Hallo,

schon mal Danke für die Antworten. Was ich gemeint habe ist etwa anders. Wenn ich die Datei in dem PLayer aufmache soll mc_1 ohne Mausklick laufen, mc_2 und mc_3 werden mit einem Stop oder gotoAndStop angehalten. Wenn der Clip mc_1 fertig ist, geht die Wiedergabe mit mc_2 weiter ohne Mausklick usw.. Im letzten Frame von mc_1 steht _root.mc_2.gotoAndPlay(1) bei mc_2 genauso...

Meine Probeversion von Flash ist abgelaufen. Wenn ich das Programm auftreibe, kann ich das fla hochladen.
Ein paar Hinweise könnten mir aber schon nützlich sein.
Capwello ist offline   Mit Zitat antworten
Alt 04-05-2006, 23:41   #9 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Soll die Geschichte loopen?
Also wenn der letzte mc durch ist wieder von vorne??
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 05-05-2006, 00:22   #10 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Was solls, dann halt erst mal die einfache art!
PHP-Code:
var mcArray:Array = ["mc_1""mc_2""mc_3"];
var 
count 0;
for (var 
0i<mcArray.lengthi++) 
{
    
this[mcArray[i]].stop();
}
this[mcArray[count]].play();
this.createEmptyMovieClip("ctr"1000);
this.ctr.onEnterFrame = function() 
{
    if (
this._parent[mcArray[count]]._currentframe>=this._parent[mcArray[count]]._totalframes
    {
        
this._parent[mcArray[count]].gotoAndStop(1);
        
count++;
        if(
count>=mcArray.length)
        {
            
delete this.onEnterFrame;
        }
    }
    
this._parent[mcArray[count]].play();
}; 
Angehängte Dateien
Dateityp: zip durchMarsch.zip (6,4 KB, 3x aufgerufen)
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 05-05-2006, 08:18   #11 (permalink)
Hardstyle DJ
 
Benutzerbild von djdwarf
 
Registriert seit: Nov 2004
Ort: Hamburg
Beiträge: 622
Zitat:
Zitat von Capwello
Was ich gemeint habe ist etwa anders. Wenn ich die Datei in dem PLayer aufmache soll mc_1 ohne Mausklick laufen, mc_2 und mc_3 werden mit einem Stop oder gotoAndStop angehalten. Wenn der Clip mc_1 fertig ist, geht die Wiedergabe mit mc_2 weiter ohne Mausklick usw.. Im letzten Frame von mc_1 steht _root.mc_2.gotoAndPlay(1) bei mc_2 genauso...
Das war mir klar, aber es ging ja gerade darum wie du erkennen kannst ob ein MC läuft oder nicht. Dachte der Rest erklärt sich von selbst. Natürlich kannst du dann am Ende von mc_1 ein _parent.mc_2.play(); einfügen usw. .. dann spielt einer nach dem anderen ab. Oder machs wie rusty beschrieben hat ein Script das selbstständig erkennt ob ein MC am ende ist und dann automatisch den neuen startet.
djdwarf ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele