PDA

Volledige versie bekijken : Knop met gotoAndPlay delay


nicotine007
%Europe/Berlin %668 %2008, 16:02
Hoi allemaal,

Heb de andere topic over dit onderwerp ook even doorgespit maar het lukt me nog niet echt.
Ben nog niet bepaald een held met Flash en actionscript, dus voor jullie een erg simpele vraag:

Even heel simpel gesteld: ik heb een flash animatie met daarin een aantal shape tweens op de tijdlijn

Dus als de animatie begint zie je de tweens bewegen die ik heb gemaakt. Er staat gedurende de animatie een button waarop je kan klikken. Hier zit het volgende scriptje aan:

on(release){
_root.stop();
}
on(release){
gotoAndPlay(61);
}

Waarschijnlijk is die _root. voor stop(); helemaal niet nodig? Maargoed, het werkt in ieder geval.

Als je op de knop drukt stopt de animatie en springt ie naar frame 61. Het enige wat ik wil is dat NADAT je op de knop hebt gedrukt de animatie stopt, DAN EEN AANTAL SECONDEN WACHT, en dan pas naar frame 61 gaat.

Het zal wel erg primitief overkomen, maar zo heb ik gebouwd. Kunnen jullie me helpen?

Thanks

Jan
%Europe/Berlin %678 %2008, 16:17
Het is beter van niet op je objecten te scripten. Geef die knop een instance name (knop1 bijvoorbeeld) door op die knop te klikken en dan CTRL+F3 te drukken en daar bij <instance name> in te vullen.
In een FRAME op de hoofdtijdlijn waar ook die knop (voor het eerst) staat zet je volgend script dan:
knop1.onRelease=function()
{
this._parent.stop();//of _root.stop()
setTimeout(goto,2000,this._parent,61);//voer functie goto uit na 2000 milliseconden en geef this.parent (of _root) en framenummer 61 mee als argumenten naar die functie
}
function goto(scope:MovieClip, nr:Number)
{
scope.gotoAndPlay(nr);
}

Eigenlijk vermijd je best altijd _root en gebruik je combinaties van this en _parent om een aantal niveaus hoger/terug te gaan. Zie hier voor een voorbeeld en wat meer uitleg: http://www.flashfocus.nl/forum/showpost.php?p=343843&postcount=3

Groeten,
Jan

nicotine007
%Europe/Berlin %682 %2008, 16:22
Wow!

Het werkt perfect!

Ik was al bekend met instance names enzo, soms gebruik ik ze ook, maar niet in deze (voor mij) gecompliceerde actie.

Ik zal proberen rekening te houden met je tips. Voor nu heb ik in ieder geval wat ik wou!

Nogmaals bedankt!

Greetz