actionscript GotoAndPlay problem

Seite 1 von 2 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/actionscript_gotoandplay_problem_187997/page_1 - zur Vollversion wechseln!


hynk schrieb am 19.11.2007 um 07:07

grüsse

bin zwar schon seit einigen jahren groß in flash drinnen,
aber bin reiner grafiker und für alles weitere gabs immer programmierer.
daraus ergibt sich mein aktuelles problem. ich schaffs
anscheinend nichtmal ein simples menü für ein swf zu machen.

vorgestellt habe ich mir das ganze so:
menü besteht aus 4 buttons die mit GotoAndPlay zu grafiken
die einmal ablaufen springen und dort sobald das ganze
abgelaufen ist einfich mit stop(); als standbild angehalten werden.
vom ende jeder animation gehts per "home" button wieder zurück ins menü.

erster schritt waren die buttons. die die entsprechenden
instanznamen damit sie auch erkannt werden bekommen haben im ersten frame.
ab dem zweiten frame laufen die animationen einfach so lange wie sie eben dauern.
alles ganz simpel. aber flash ist da anderer meinung.
per gotoandplay springe ich zum ersten bild jeder animation, nur leider springt das ganze,
egal was ich tue immer nur zum zweiten frame, auf dem die erste animation beginnt.

würd mich intressieren was ich hier falsch verstanden habe.

das ganze soll ein flash6/as2 swf werden damits auch bei jedem läut.
hier der code der auf einer eigenen ebene ganz am anfang des files steht

Code:
stop();
btn_lan.onRelease = function(){
 gotoAndPlay("2");
};
btn_buro.onRelease = function(){
 gotoAndPlay("40");
};
btn_halo.onRelease = function(){
 gotoAndPlay("120");
};
btn_naruto.onRelease = function(){
 gotoAndPlay("289");
};
btn_home.onRelease = function(){
 gotoAndStop("1");
};

hab auch schon probiert den animationen namen zu geben und direkt dorthin zu springen, sowie die szene mit azugeben.
komplett egal. es springt immer zum zweiten frame.

tia
hynk


Nico schrieb am 19.11.2007 um 12:48

http://livedocs.adobe.com/flash/9.0...e=00001182.html


hynk schrieb am 19.11.2007 um 12:52

ich würd mein problem hier nicht posten wenn ich nicht wenigstens schon die flash hilfe probiert hätte.
anscheinend hab ich bei eben genau dieser anleitung was falsch verstanden und darum rennts nicht. nur bekomm ich eben auch keinen fehler ausgespuckt.


fatmike182 schrieb am 19.11.2007 um 14:06

hab die Fehlfuktion nicht ganz verstanden... also er macht immer das was er machen soll wenn btn_lan released wird, auch wenn man einen anderen Knopf drückt?

Wird nichts helfen, aber änders mal in onclick, evtl hat er probleme mit der Definition von Release? (eher nicht)
Evtl will ers auch in einer altmodischen if()Schreibweise haben?


hynk schrieb am 19.11.2007 um 14:15

das problem is dass er bei jedem button auf btn_lan springt
bzw einfach auf den folgeframe, welcher genau dieser ist (frame 2)

werds mal mit onclick probieren. bezweifel aber auch dass es hilft

könntest mir zeigen wie ichs mit if löse?
bin wie gesagt a relatives nackapatzl wenns um sowas geht.


fatmike182 schrieb am 19.11.2007 um 14:20

Sry, das mitn if is ein kompletter Schwachsinn... geht ja garnicht. Du hast das eh richtig gemacht.

Dass du den eventhandler auf den Button schreibst geht nicht? (is blöd, ich weiß)
Wieder keine große Hilfe, aber anstatt auf Frames zu hupfen, lass dir was mit trace("buttonname geklickt") ode rso ausgeben. (also btn1.onclick = function() {trace("btn1 geklickt")};)

edit: eventhandler: überbegriff für onclock, onrelease, ... also Funktionsauslöser bei events


hynk schrieb am 19.11.2007 um 14:25

eventhandler?
wie gesagt. nackapatzl :D

ich glaub dass ich wie gesagt einen kleinen fehler drin hab.


3mind schrieb am 19.11.2007 um 14:30

Code:
on (release) { 
trace("Pre-Story"); //you need to target the main timeline first with _root and then go to and play. 
_root.gotoAndPlay("Pre-Story", 1); 
}

hab keinen tau von actionscript, aber vielleicht hilft dir ja das weiter?

ist aus diesem thread:
http://www.actionscript.org/forums/...;threadid=22496


hth


mr.nice. schrieb am 19.11.2007 um 14:37

Aus jedem Button einen eigenen MovieClip machen, stops einbauen wo nötig. Die Buttons in den Hauptfilm einfügen und jeden Button so einstellen, dass bei onrollover der Movieclip spielt und bei onrelease, er zu dem Frame springt wo der gewünschte Content wartet.


fatmike182 schrieb am 19.11.2007 um 15:36

@3mind:
das mitn on() war altes AS, beim neuen kann mans gleich so aufrufen wie hynk es getan hat. Trace ist nicht notwendig - dient afaik nur zum Testen, damit man Sachen in Outputwindows ausgeben lassen kann.

@mr.nice:
wobeis auf der Timeline eleganter wäre als jedem Objekt die Sachen zuzuweisen (in dem fall, imho). aber stimmt schon...

@hynk: bei onclick is das gleiche rausgekommen, oder liegts wirklich am Release?


hynk schrieb am 19.11.2007 um 17:47

@3mind
is die alte lösung
hab ich aber auch schon probiert und irgendwie wars mir zu kompliziert und wollt daher auch nicht klappen.

@fatmike
bei onclick is das selbe.

hab jetz auch noch variationen der genauen punkte in der timeline probiert und das hilft auch nicht.

wennst die muse hast könnt ich dir die fla schicken :)

tja. die seltene art des reinen flashgrafikers is einfach ohne einen programmierer der alles macht hilflos.

*edit
http://www.tendo.at/spielwiese/work.fla
33MB


Nico schrieb am 19.11.2007 um 17:49

uploade mal ;)


hynk schrieb am 19.11.2007 um 17:53

http://www.tendo.at/spielwiese/work.fla
33MB

danke für die hilfe :)


fatmike182 schrieb am 19.11.2007 um 20:24

funzt!
ich hab so viel von deinem Code weggehaut, also schick ichs ungern zurück. Aber ich schreib gleich alles da rein!


hynk schrieb am 19.11.2007 um 20:43

bin gespannt.
hab selbst noch bischen probiert aber so richtig schlau werd ich nicht draus.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025