*     Kieselsteine Tutorial *


Figuren Tutorial   | Tutorial zu Pfaden   | Tutorial für Masken   | Tween's
Button's   | MovieClip   | Cinema 4d   |

Blender 2.5 VideoTutorials

FlashVideoTutorials

Video Tutorials

HTML, CSS, javaScript

Webseite der Kieselsteine

Kieselsteine Blog

    Seite 1   |    Seite 2   |    Seite 3   |    Seite 4





Hier stelle ich Dir eine Werkstatts.fla zum download zur Verfügung mit den Beispielen des Tutorials,
rechts klicken und Ziel speichern unter wählen.
Auf der Seite 4 findest Du drei weitere Werkstatt- Fla's zum herunterladen, um das Thema noch etwas zu vertiefen
(noch in Bearbeitung)


Die Werkstatt Fla



Pfade   3. Teil

Zugriffspfad auf Variablen

Du kannst auch auf Variabeln die auf einer anderen Zeitleiste liegen zugreifen.
Hier ein Beispiel eines Mehrfachschalters;
Bild 8:


Der Script im Button ist der folgende;

on(release){
    _root.quadrat.gotoAndStop(_root.zahl);
    _root.zahl ++; // dasselbe wie zahl + 1
       if(_root.zahl ==5){
          _root.zahl = 1;
       }
}
dazu steht auf dem ersten Bild der Rootzeitleiste auf einer separaten Scriptebene (nur der bessern Übersichthalber auf einer separaten Ebene) folgendes;

zahl = 2; /*der Wert 2, weil der quadratMovieClip ja schon auf dem ersten Bild steht
und beim Wert 1 beim ersten Klick sonst noch nichts geschehen würde.
Danach wird die Variable von der Rootzeitleiste abgelesen und als Parameter der Methode gotoAndStop übergeben.
Zum Schluss wird zur Variable zahl auf der Rootzeitleiste eins dazugezählt, damit beim nächsten Klick ein um 1 erhöhter Parameter eingefügt wird.
Die if Abfrage stellt die Variable zahl wieder auf den Wert 1, falls sie == 5 ist.
Und alles kann wieder von Vorne beginnen! (-; */
(siehe auch im Werkstatt Fla dort ist das Beispiel drin)

Zugriffspfade im loadMovieFall

Im Flash hast Du die Möglichkeit ein anderes swf in Dein Projekt zu laden. Es gibt zwei Möglichkeiten;

loadMovie("url",ziel [, methode]);
oder
loadMovieNum("url",stufe[, variablen]);

Ich will Dir hier einmal nur von der loadMovie Methode etwas erzählen. Falls Dich auch die loadMovieNum Methode interessiert, schreibe loadMovieNum ins ActionScript Fenster und klicke rechts oben auf das Fragezeichen. Der Unterschied der zwei Methoden wird in der Flash Hilfe eigentlich nicht schlecht erklärt.

Die Methode loadMovie erwartet zwei Parameter. Der dritte ist optional, sprich fakultativ. Der dritte Parameter kannst Du vorerst problemlos einmal vergessen.
Schreibe also nach dem Methoden Aufruf eine Klammer. Darin als erstes die URL Deines swf als String, sprich in Anführungszeichen. Du kannst auch hier wählen, ob Du den ZielPfad absolut, also die volle Adresse des swf auf dem Server oder relativ, sprich nur der Dateiname, angeben willst. Im zweiten Fall muss die swf auf dem Server aber im gleichen Ordner liegen.
Dann kommt ein Komma!
Jetzt kannst Du den zweiten erwarteten Parameter angeben. Meistens ist das ein leerer MovieClip den Du auf der Bühne Deines Haupt swf plazieren musst und ihm unten im Eigenschafts fenster einen Namen geben musst. Also zum Beispiel _root.ballbehaelter
Das ganze könnte dann in etwas so aussehen;
loadMovie("www.kieselsteine.ch/Pfadprojekt",_root.ballbehaelter);
Diesen Aufruf kannst Du in ein Bild auf einer Zeitleiste, einen Button oder in ein Flim setzen. Für das letzte bräuchtest Du allerdings die Methode onClipEvent davon ein anders mal.

So jetzt komme ich zum eigenlichen Grund wieso ich Dir das ganze hier erzähle.

Du kannst jetzt nämlich aus dem hereingeladenen swf auf das Hauptswf zugreifen und umgekehrt!
Dabei musst Du wissen, dass das hereingeladene swf seine Rootzeitleiste zwar behält, sie aber in der Pfadangabe verloren geht.
Ein Aufruf in ein hereingeladenes swf erfolgt über den Behaelter MovieClip in unserem Fall oben;
_root.ballbehälter
dann kannst Du von dort aus mit der Punktnotation beliebig tief in das hereingeladene swf zugreifen. Also zum Beispiel;
_root.ballbehaelter.ball.ballmuster._visible = 30;
So könntest Du den Ball transparent stellen, wenn Du im Ball den Ball zu einem MovieClip konvertierst namens "Ballmuster"

Im umgekehrte Fall brauchst Du am besten den absoluten Pfad und gehst von _root des Hauptswf aus.
Aus dem ball könntes Du also auf einen Spieler zugreifen der im Hauptfilm auf der Rootzeitleiste steht. Das gäbe dann so etwas;
_root.spieler.gotoAndPlay(23);

Alles ein bisschen theorethisch, nicht?
Am besten Du probierst das ganze einfach einmal aus. Sollte es nicht klappen, wende Dich an kieselsteine@bluewin.ch
Ich werde Dir gerne helfen. Schick mir dann einfach die beiden Flas die ineinandergeschachtelt werden sollen und nicht tun wie sie müssten.


_parent.

Bis jetzt zeigte ich Dir die Punktnotation (.), die tiefer hineinführt und die die _root. Angabe und das this. Daneben gibt es noch eine andere. Die _parent. Pfadangabe.

Hier alle in der Übersicht;
    _root.
    .
    this
    _parent.


_parent. verweisst auf den HüllenMovieClip (oder unter Umständen auch auf die Rootzeitleiste).

Ein Beispiel für die Punknotaion;

_root.gesicht.auge.pupille.gotoAndPlay(4);(absolut)
oder
this.gesicht.auge.pupille.gotoAndPlay(4);(das gleiche relativ)

Möchtest Du von der Pupille auf die Rootzeileiste zugreifen (hinaus greifen) wäre das;
_parent._parent._parent.zahl (zahl könnte eine Variable sein die sich auf der Rootzeileiste befindet)

So entschachtelnde _parent. Verweise auf die Rootzeitleiste machen dannn Sinn, wenn Du noch nicht sicher bist, ob Du später alles auf der Rootzeitleiste erneut in einen MovieClip packen möchtest. Die viel einfachere Pfad Angabe _root. wäre in dem Fall nicht mehr gültig. Die kompliziertere relative Pfadangabe würde aber die Gültigkeit behalten! Besonders sinnvoll ist es die relative Pfadangabe zu brauchen in einem loadMovie. Beim Hineinladen in einen anderen swf-Film verliehrt dieser nämlich seine Rootzeitleiste. Ausserhalb könnten Script einwandfrei functionieren auch mit absoluten Pfadangaben, sobald Du aber das swf in ein anderes swf lädst, sind alle Scripte kaputt. Darum in solchen Fällen lieber von Anfang an die relative Pfadangabe wählen!

Uff!!!

Das war nun ein arg theorethisches Tutorial! Jetzt also schnell Flash starten und Kopfüber Dich in die Praxis stürzen! Mit etwas Geduld solltest Du nun das Rüstzeug an der Hand haben Zielpfade richtig zu setzen.
Ansonsten;
kieselsteine@bluewin.ch
Ich bin immer am Apparat.



    Seite 1   |    Seite 2   |    Seite 3   |    Seite 4

Blender 2.5 VideoTutorials

FlashVideoTutorials

Video Tutorials

HTML, CSS, javaScript

Webseite der Kieselsteine

Kieselsteine Blog