Film vollständig neu laden

yson

Mitglied
Hallo zusammen,

ich bastele gerade ein Spiel in Flash. Dazu verwende ich ActionScript.
Am Ende des Spiels soll es möglich sein, das Spiel neu zu starten.
Leider bekomme ich dann teilweise Probleme mit dynamisch generierten
Checkboxen. Beim zweiten Durchlauf werden sie nicht mehr ordentlich
erstellt.

Gibt es eine Möglichkeit, den Film durch ActionScript wieder komplett neu
zu laden? Also im Grunde als würde ein Benutzer die Datei aufrufen?

Vielen Dank im voraus für die Hilfe
yson
 
Hallo,

ich löse dieses Problem jeweils so, dass ich den Code der auf dem ersten Keyframe ausgeführt wird (also keine Funktionsdeklarationen, Klassen-Imports, Includes usw.!) in eine Funktion init packe, mit der ich meinen Film reinitialisieren kann.

gruss
 
Sofern du MovieClips mit createEmptyMovieClip bzw attachMovie generierst,
oder bei vorhandenen MovieClips mit swapDepths das Level veränderst,
sind diese MovieClips quasi "losgelöst" von dem Schlüsselbild, bzw der Zeitleiste.

Also wenn ein Mc nur in Frame 5 vorkommt
und durch eine der 3 Möglichkeiten erstellt/modifiziert wurde,
dann ist er immernoch da, auch wenn man zurück in Frame 1 springt.

Eine brachiale Art alles neu zu starten wäre sowas:
Code:
_root.gotoAndStop( irgendEinFrameDerNichtEinsIst );
for ( i in _root)
{
   _root[i].removeMovieClip();
   delete _root[i];
   _root.gotoAndPlay(1);
}
wobei delete nur Variabeln löscht.
Noch brachialer ginge es auch mit
Code:
 _root.loadMovie ( _url )

Am besten ist es im Vorfeld sich ein genaues Bild davon zu machen welche Mcs, Arrays, Variabeln, Klassen, etc... man wann bzw wo braucht und dementsprechend diese zu verschachteln.
Also z.B. alles was zum Spiel gehört in einen MovieClip, den man danach schön löschen/wegschieben kann.
Alle Variabeln die zum Spiel gehören optimalerweise nicht in diesen MovieClip, sofern man sie noch braucht usw.
 
Zurück