swf laden, wenn mc bestimmte position erreicht

harrry

Erfahrenes Mitglied
Hallo,

Mein mc namens "clip" wird per AS zu verschiedenen x-Positionen bewegt. Wenn "clip" zB. bei 0 steht, möchte ich, dass die "content.swf" hinzugeladen wird, wenn "clip" bei "100" steht, die "content2.swf", usw. Nun habe ich in der Zeitleiste folgendes Script:

PHP:
xpos = getProperty(_root.mainclip.clip, _x);
    if (xpos == 0) {
    	loadMovie("content.swf", "_root.hold");
    }
Aber es geht nicht. Bitte nicht sagen, ich brauche hierfür auch "LoadVars", sonst krieg ich die Krise!

Vielen Dank im Voraus.
 
Hi,

nee, Du brauchst kein LoadVars-Objekt. ... aber sag mir, warum Du mit Flash 4-Symtax arbeitest?

So wie der Code dort steht, wird er nur einmal ausgeführt - Du brauchst aber eine kontinuierliche Abfrage. Versuchs mal so:
PHP:
this.onEnterFrame = function() {
    if (mainclip.clip._x == 0) {
        hold.loadMovie("content.swf");
    }
}

Gruß
.
 
Vielen Dank für die rasche Antwort!

Aber gibt noch Probleme. Mit obigem Code hat sich nichts getan, allerdings mit der kleinen Änderung auf _root schon: allerdings blitzt die geladene swf leider nur für den Bruchteil einer Sekunde auf und verschwindet dann wieder!
PHP:
this.onEnterFrame = function() {
   	if (_root.mainclip.clip._x == 0) {
   		_root.hold.loadMovie("content.swf");
   	}
   } 
   stop();
Im Ausgabefenster wird der Ladevorgang nicht angezeigt. Komisch, oder?
 
Hi,

tja, wo genau befindet sich denn dieses Script? Du kannst in einem Objekt nicht mehr als eine onEnterFrame-Methode ausführen.

Ausserdem: Wenn sich der Clip länger als einen Frame auf Position 0 befindet, wird der neue Film u.U. mehrmals geladen. In dem Fall sollte man eine Überprüfung einbauen.

Vielleicht kannst Du die Datei einmal posten, denn aus dem Stehgreif ist es schwer, hierzu etwas zu sagen, wenn mir die Struktur des Films völlig unbekannt ist.

Gruß
.
 
Sieht so aus, als träfe bei mir beides zu.

Überprüfung einbauen? So wie vor den Semesterzeugnissen? ;-)

Anbei eine tester-Fla. Im Moment lädt sie die swfs im selben Moment, in dem die Positionsverschiebung meines "clips" aufgerufen wird - und das klappt auch. Ich hätte es aber viel lieber, wenn die swfs erst dann geladen werden, sobald der clip die jeweils neue Position erreicht hat.

Herzliche Grüße
 

Anhänge

  • tester.zip
    9,5 KB · Aufrufe: 20
Hi,

ich hoffe ich habe richtig verstanden, was wann geladen werden soll. ;)

So sollte es gehen:

- in der Methode "move" (Achtung: Trunctation!) wird übeprüft, ob Zielposition und aktuelle Position übereinstimmen.

- wenn ja, wird die Methode "showCT" aufgerufen, die den neuen Clip lädt.

- Beim Klick auf einen Button wird eine Hilfsvariable "sliding" auf true gesetzt und der Zielpfad des zu ladenden Clips in der Variable "destClip" abgelegt.

Gruß
.
 

Anhänge

  • tester2.zip
    20,3 KB · Aufrufe: 19
Klappt hervorragend! Habe noch in die onPress-Funktion eingefügt, dass der aktuelle Film verschwindet, bevor der Positionswechsel beginnt:
PHP:
 _root.hold.unloadMovie();
- und der neue Film kommt jetzt dank Dir, erst zum Vorschein, wenn der "Slider" wieder zur Ruhe gekommen ist.

Du hast mir sehr geholfen, vielen Dank!
 
Zurück