Pfade in die Sackgasse

gygra

Mitglied
Hallo,

ich krieg gleich die Krise. Seit einer Woche versuche ich jetzt einen Pfad in einen verschachtelten Movieclip zu finden und krieg´s nicht gebacken. Mittlerweile hab ich die obersimple Szene gebaut, nur um überhaupt einen Einstieg zu kriegen:

In der Hauptzeitleiste gibt es zwei AS-Keyframes, "begin" und "schluss".
Im Bild "schluss" liegt ein Movieclip "tester" mit einer kleinen Tween-Anim. Das erste Bild von "tester" heisst "anfang", das letzte "ende". Im "begin" liegt eine Grafik als MC mit Namen "starter".

Mein erster Schritt war ein stop(); im Bild "schluss" und "ende". Anim lief bis "schluss" spielte das Tween - Super!
Zweiter Schritt: Die getweente Grafik wurde als zurueck_mc instanziiert und mit dem Sript

stop();
this.zurueck_mc.onRelease = function(){
_parent.gotoAndPlay("begin");
}
versehen. Anim lief bis zum Ende und fing auf Mausklick wieder von vorne an. Jetzt kam der dritte Schritt: starter wurde zu ""klick_mc". Im Bild "begin" wurde folgendes Script eingebaut:
stop();
this.klick_mc.onRelease = function(){
play();
}
Bis lang lief alles nach Wunsch. Auf Klick lief die Anim los, zeigte das Tween, sprang auf Klick zurück und lief beim nächsten Klick wieder los. Hurra, hurra!
Also weiter, vierter Schritt:
"tester" wurde als anim_mc instanziiert und "begin" bekam den Script:
stop();
this.klick_mc.onRelease = function(){
this.anim_mc.gotoAndPlay("ende");
}
Und siehe da, nix geht mehr.
Starter steht und wird noch als Schaltfläche deutlich gemacht, aber es passiert nichts.
Die Pfade habe ich alle über die Zielpfadfunktion im Aktionenfenster ermittelt, die Funktionen laufen von unten nach oben ohne Schwierigkeiten, aber von oben nach unten klappt nichts. Ich habe mit _parent, _root, this, rumprobiert, den Instanznamen verwandt, den Bibliotheksnamen die Instanzen als Movieclip, oder Schaltfläche deklariert, die komplette Funktion aus dem Verhaltenfenster übernommen, gotoAndPlay, gotoAndStop...etc. Nada, Niente, Nüx! Wieso funginieren diese Sch*** -Pfade nicht
Hiiiiilfe
 
Zuletzt bearbeitet:
wenn this.klick ein MC ist sucht er anim_mc in sich selbst..
also ausserhalb suchen oder verweise von Root aus drauf zu..
oder
this.klick_mc.onRelease = function(){
_parent.anim_mc.gotoAndPlay("ende");
}

this.klick_mc.onRelease = function(){
this._parent.anim_mc.gotoAndPlay("ende");
}

wie auch immer..häng die fla mal immer mit an..so kann man sich ein Bild von machen.
 
Zuletzt bearbeitet:
Hallo,
erstmal Dank für die Antwort. Leider bringts mich nicht weiter ich versuch mal die .fla anzuhängen.
Gruss gygra
 

Anhänge

Hi,

1. hast Du in Frame 1 keinen Zugriff auf den MC "anim_mc", da das Objekt an dieser Stelle noch nicht existiert. Es lassen sich nur Objekte ansprechen, die auf dem aktuellen Schlüsselbild liegen.

2. Der Code im letzten Frame von "tester1" ist korrekt.

Gruß
.
 
Aaaaaaha,
das heisst also der onRelease muss auf ein schlüsselbild verweisen, in dem anim_mc drinsitzt und dort im AS-Schlüssebild ist dann der Befehl this.gotoAndPlay ("ende")?
Oder geht´s auch einfacher?

Vielleicht sollte ich anfangen nur doof auf´m Sofa zu sitzen, das kann ich wenigstens:confused:
 
Hi,

Nun, ich befürchte, ich habe nicht ganz verstanden, was Du vorhast (oder Du hast das Konzept der Zeitleiste nicht ganz verstanden ..). Wenn Du einfach nur vom ersten Frame zum letzten springen willst, genügt ein einfaches "play" (oder eben auch gotoAndStop("letzterFrame"); ). Wenn - sobald Du dort angekommen bist - der dortige MC sofort abgespielt werden soll, brauchst Du nur das "stop" aus seinem ersten Schlüsselbild zu entfernen. ... irgendwie habe ich das Gefühl, Du gehst davon aus, dass auch MovieClips in Schlüsselbildern, die noch gar nicht angezeigt werden schon abgespielt werden . :confused:

Gruß
.
 
´n Aahmd,

also dass sich die Zeitleisten offenbar anders verhalten, als ich mir das vorstelle scheint mir auch immer wahrscheilnlicher...
Die Grundidee war eine Navigation. Dabei sollte die Hauptzeitleiste nur die einzelnen Seiten verwalten, die als MC in der Hauptleiste vorliegen. Jeder Mc hat nun seinerseits wieder einen oder mehrere MC in seiner Zeitliste, die zum Teil Zwischenanimationen oder Infos enthalten.
Die pfade.fla war jetzt nur der Versuch, von einem MC zu einem bestimmten Bild in einem andern MC zu gelangen. Konkret muss es doch irgendwie gehen, dass ich beim onRelease von klick_mc zum letzten Bild von anim_mc gelange. Z.B Beispiel weil klick_mc ja auch eine Einleitungsanimation zu anim_mc sein kann, die ich auf Klick überspringen kann, um gleich zum Ende von anim_mc zugelangen, von wo es weitergehen soll.:confused:
 
Hi,

wenn Du vom ersten Frame der Hauptzeitleiste zu dem letzten Frame eines MC springen willst, der sich auf einem anderen Frame der Hauptzeitleiste befindet, kannst Du so vorgehen:
Code:
// auf der Hauptzeitleiste, Frame 1:
gotoAndStop(nummerDesZielFrames);

Code:
// auf der Hauptzeitleiste, Zielframe:
zielMC.gotoAndStop(letzterFrame);

Ich möchte Dir aber generell davon abraten, Zeitleisten zum Zwecke der Navigation etc. zu misbrauchen; Du handelst Dir damit mittelfristig viel mehr Probleme ein, als Du löst und vervielfachst höchstwahrscheinlich Deinen Arbeitsaufwand. Menüstrukturen lassen sich problemlos in einem einzigen Schlüsselbild unterbringen, wenn Du die entsprechenden Objekte per AS ein- und ausblendest bzw. unter Masken verschiebst. Übergangsanimationen können dabei mit Callback-Funktionen in einander übergehen. Zeitleisten (oder gar Szenen) sollten möglichst nur für statisch ablaufende Animationen verwendet werden.

Gruß
.
 
Hi,
danke,das hilft mir auf jeden Fall weiter. Über diesen "Umweg" hatte ich das bislang gelöst, ich dachte halt nur es, ginge mit AS auch "eleganter", mit einem direkten Sprung. Aber dadurch habe ich die Zeitleistensteurung ja sowieso nicht hingekriegt, insofern hat sich diese Idee dann ja auch erledigt. Aber trotzdem, oder gerade deshalb vielen Dank für den strukturellen Einwand.
Bis zur nächsten dummen Frage
gygra:)
 
Zurück