Status Anfänger: abwechselnd 2 verschiedene movieclips abspielen 8 mal?

dingdong

Grünschnabel
halli hallo,

also meine frage ist wie kann ich abwechselnd 2 verschiedene movieclips abspielen lassen und zwar genau 8 mal, hab mir mal in dynamischem text die variablen x&i ausgeben lassen. das porblem scheint zu sein das i erreicht ist bevor es zum abpspielen des zweiten movieclips kommt und somit die abbruchbedinung erfüllt ist und flair2 deshalb nicht abgespielt wird :(

i=0;
x=1
do {
if ( x == 1){
_root.flair1.play();
_root.flair2.stop();
x = 2;
}else{
_root.flair1.stop();
_root.flair2.play();
x = 1;
}
i = i + 1;
}while(i <= 7);



kann mir jemdand helfen!!?
 
Hi,

so wie Dein Code da steht, kann ich leider nicht viel damit anfangen ... steht das in einem onEnterFrame-Handler, oder in einer Funktion, die von den letzten Frames der beiden Clips aufgerufen wird?

theoretisch würde ich sagen: Setze ins letzte Bild der beiden Clips jeweils folgendes:
PHP:
_root.countup();
stop();
Auf die Hauptzeitleiste (_root-Ebene) kommt dann diese Funktion:
PHP:
function countup() {
  if (counter<=16) { // die Zahl der Wiederholungen (beide Clips)
    counter++;
    if (counter%2==0) {
      flair2.gotoAndPlay(1);
    } else {
      flair1.gotoAndPlay(1);
    }
  }
}
Um mit dem Abspielen zu beginnen, muss dann nur irgendwo die Variable "counter" auf Null gesetzt werden und einmal die Funktion "countup" aufgerufen werden.

Gruß
 
Zuletzt bearbeitet:
funtz ;)

halli hallo!

und danke ! allerdings wäre es mit meiner methode auch gegangen hätte ich die switches x=1 und x=2 am ende des jeweiligen mc's flair1&flair2 positioniert. allerdings muss ich erstens zugeben das deines die elegantere variante ist und zweitens haste mir was wichtiges beigebracht ALSO DOPPELT DANKE!

noch ne frage :) ich hab die beiden movieclips auf _root ebene platziert und ich muss sie daher am anfang stopen damit sie ned wie beklopt loslaufen ohne das ich das will :D sieht so aus jetzt
PHP:
stop();
_root.flair1.stop();
_root.flair2.stop();

countup();

function countup() { 
  if (counter<=16) { // die Zahl der Wiederholungen (beide Clips) 
    counter++; 
    if (counter%2==0) { 
      flair2.gotoAndPlay(1); 
    } else { 
      flair1.gotoAndPlay(1); 
    } 
  } 
}

kann ich das auch irgendwie eleganter lösen ?
 
Hi,

normalerweise setze ich in dem Fall das "stop()" in den ersten Frame der beiden Clips.
Da diese ja mit "gotoAndPlay(1)" angesprochen werden, dürfte das in Deinem Fall auch funktionieren. Um gaanz;) sicher zu gehen, kannst Du in den ersten Frame der beiden Clips auch z.B. folgendes setzen:
PHP:
if (!_root.counter) stop();
dann werden sie nur angehalten, wenn _root.counter 0, false oder undefiniert ist.

Gruß

P.S.: ich meinte nicht, dass Dein Script nicht funktioniert, nur weil ich nicht wusste, wie und wo es aufgerufen wird (und was in den Clips steht), bin ich nicht weiter darauf eingegangen.;)

P.P.S.: noch eleganter wäre es z.B., die Clips von der obersten Ebene erst laden zu lassen:
PHP:
cont1.attachMovie("flair1","flair1",1);
cont2.attachMovie("flair2","flair2",1);
Dazu würden 2 leere Clips ("cont1" und "cont2") auf der Bühne benötigt, und die Clips flair1 und 2 müssten zum Export für AS freigegeben sein.
Dann könnte man sie nach Ablauf der Schleife auch wieder entfernen:
PHP:
cont1.flair1.unloadMovie();
cont2.flair2.unloadMovie();
 
Zuletzt bearbeitet:
funtz ;)

halli hallo!

und danke ! allerdings wäre es mit meiner methode auch gegangen hätte ich die switches x=1 und x=2 am ende des jeweiligen mc's flair1&flair2 positioniert. allerdings muss ich erstens zugeben das deines die elegantere variante ist und zweitens haste mir was wichtiges beigebracht ALSO DOPPELT DANKE!

noch ne frage :) ich hab die beiden movieclips auf _root ebene platziert und ich muss sie daher am anfang stopen damit sie ned wie beklopt loslaufen ohne das ich das will :D sieht so aus jetzt
PHP:
stop();
_root.flair1.stop();
_root.flair2.stop();

countup();

function countup() { 
  if (counter<=16) { // die Zahl der Wiederholungen (beide Clips) 
    counter++; 
    if (counter%2==0) { 
      flair2.gotoAndPlay(1); 
    } else { 
      flair1.gotoAndPlay(1); 
    } 
  } 
}

kann ich das auch irgendwie eleganter lösen ?
 
geiler trick!

hallihallo!

ups das mit dem alten nochmal war nen amateur fehler hoffenltich werde ich jetzt nicht gekicked! j0w hört sich gut an mit dem stop ins erste frame! dann mache ich einfach alles so das es erst beim zweiten frame startet und anschliesend gotoandplay(2) :-D

vielden danke für die hilllllllllllllfe ich bastel mal weiter :)))
 
ui load und unload!

hi datic,

das mit dem load und unload habe ich erst zu spät gelesen ^^ verdammt das ist ja mega ELEGANT! ok ich versuche das mal so umzubauen und poste es dann wenn es klappt. damit könnte man sich ne menge e sachen einfallen lassen. doch nicht so schlecht dieses actionscript man muss nur etwas von den abhänigkeiten kapieren und die befehlsreferänz noch etwas besser kennenlernen. jedenfalls zählt das für MICH! :-D

ps: vielen DANK
 
ja sorry!

hi datic,


P.S.: ich meinte nicht, dass Dein Script nicht funktioniert, nur weil ich nicht wusste, wie und wo es aufgerufen wird (und was in den Clips steht), bin ich nicht weiter darauf eingegangen.

dessen bin ich mir sicher bei dem plan den du an den tag legst ich hatte es nur zu lamer mässig und ohne zusammenhang reingeklatscht. :rolleyes:
 
:-) dann ist ja alles klar.

Stichwort Doppelpost: na ja, so lange es sich nicht um einen Doppelthread handelt, und Du immer brav die Nettiquette befolgst, werden die Mods vielleicht noch mal ein Auge zudrücken...;)

Gruß
 
Zurück