duplicateMovieClip -> unendlich loopen

Z

Zatic

>>>>>[ Ich habe folgendes Problem:

Ich will einen MC per duplicateMovieClip in die Mainstage kopieren. Und zwar sagen wir mal jedes frame einmal, oder jede sekunde, wie auhc immer.
Wenn ich das ganze mit einer while schleife mache, dann kopiert er ja immer den MC 20 mal auf einmal.

zaehler = 1;
while (zaehler<20) {
duplicateMovieClip ("_root.rauch", "rauchx"+zaehler, zaehler);
zaehler = Number(zaehler)+1;
}

Ich will das ganze aber so haben, das der Movieclip immer wieder kopiert wird, und dsa ganze möglichst unendlich gelooped.
Ich hoffe es ist klar was ich meine....
Einen Matrix code effekt ließe sich damit zum beispiel machen... ]<<<<<
 
erstma vorneweg:
langfristig wird sich flash dabei aufhängen.

und so würd´s gehen:
du nimmst dir irgendeine filmsequenz (oder du machst dir kuats eine - ist total egal was der mc sonst macht oder nicht macht [mc=filmsequenz])

dem gibst du als objekt-action: (markieren & strg+a)

onClipEvent (enterFrame) {
duplicateMovieClip ("_root.der-instanz-name-deines-schon vorhandenen-mc", "der-neue-name+i", i);
i++;
}


das bewirkt, dass jeden frame (abhängig von der framerate) dein mc dubliziert wird....

*hicks*
 
>>>>>[ ah, sehr gut, auf sowas hätte ich auch irgendwie selber kommen können *andenkopfklatsch*
Ich kann doch einfach, wenn der Movieclip beispielsweise nicht mehr sichbar ist, ihn entfernen oder?

Wie kann ich denn dem zu kopierenden MC eine Action geben, die er an sich selbst ausführt? z.B.:

with(itself) { removeMovieClip }

oder so ähnlich...
dann sollte Flash nicht mehr verrecken... Lieg ich da richtig? ]<<<<<
 
du kannst auch einfach sagen

if (_root.i=="50"){
_root.i=1;
}

dadurch das die tiefe (_depth) wieder 1 ist, wird der mc der vorher auf 1 war rausgeworfen und durch nen neuen ersetzt.
also wenn man schon nen objekt auf/in einer bestimmten tiefe hat und in/auf dieselbe tiefe ein neues objekt dubliziert, bzw mit swapdepth reintauscht, dann wird das alte gelöscht.
genau wie bei loadmovie wird auch die alte swf rausgekickt wenn man ins gleiche level ne neue swf lädt.

oder

onClipEvent (enterFrame) {
duplicateMovieClip ("_root.der-instanz-name-deines-schon vorhandenen-mc", "_root.der-neue-name+i", i);
i++;
x=i-50;
if (x>0) {
removeMovieClip ("_root.der-neue-name"+x);
}
}
 

Neue Beiträge

Zurück