Autor Zpráva
dudies
Profil *
Dobrý den,
potřeboval bych vytvořit animaci nezávisle na provádění actionscriptu. V actionscriptu mám objekt a mám jeho počáteční a koncové body. Chtěl bych,aby se objekt animací dostal z počátku na konec,přitom chci aby tato animace proběhla nezávisle na dalším kódu,tzn. aby následný kód běžel a přitom se animoval můj objekt. Nevíte někdo jak na to? Díky moc za radu
dredie
Profil *
Nevim presne co myslis.... animace bezi nezavisle na kodu, proste frame po framu a tam, kde mas kod, se ti ten kod spusti, tam kde ho nemas, logicky neni co spoustet. Nicmene celkove vzato nejak netusim na co se to vlastne ptas :)

D.
XXX
Profil
No ja tusim,na co se ptas. I kdyz na druhou stranu tomu odporuje hned ta druha veta,ze mas ten objekt v ActionScriptu,tak nevim . Nejdrive jsem to pochopil tak, ze by sis mel vytvorit novy MovieClip, ve kterem bude ta tvoje animace, na jejim konci akce stop(); at se ti prehraje od sveho zacatku do konce jen jednou a tento movieclip das na hlavni casovou osu do snimku,ve kterem potrebujes,aby se ti to zacalo prehravat. Ale jelikoz pises, ze mas ten objekt v ActionScriptu,tak jsem asi vedle, pokud si to spatne nenapsal.Mel bys to vic konkretizovat ;)
dudies
Profil *
Konkrétně mám vytvořený MovieClip pomocí attachMovie a potřebuju s ním pohybovat po hlavní scéně jak se mi zachce(tím chci říct že nemůžu dát MotionTween do toho MovieClipu,protože ještě nevím kde s ním budu hýbat). Těch instancí MovieClipů mám víc a chci aby se pohybovaly po scéně nezávisle na sobě tj.že všechny pojedou naráz a ne že se odanimuje jeden a až pak druhý. Chtěl jsem to udělat přičítáním k souřadnicím,ale tím bych dosáhl toho,že se bude animovat až ten předchozí skončí.
Snad jsem to napsal srozumitelně:) Díky
XXX
Profil
Tak to potom nechapu, kde je problem. Jestlize tam mas vice tech instanci,tak si kazdou pojmenujes jinak a pak muzes spoustet a ridit kazdou zvlast.nechapu,jak muzes napsat,ze by se prehravaly po sobe
dudies
Profil *
Mě je jasné,že můžu spouštět každou zvlášť,ale potřebuju aby se všechny začly pohybovat stejně,ne pomocí MotionTween vytvořeného v samotném MovieClipu,ale pokud existuje něco takového tak nějakou funkcí v ActionScriptu. Možná to půjde lépe pochopit tady odsud http://eva.fit.vutbr.cz/~xdudat00/bakalarka/seznamy.html . Potřebuju aby se např.při vložení na začátek seznamu odanimoval celý zbytek zbytek seznamu na další pozice a ne aby tam jen skočil.
XXX
Profil
No tak jsem te konecne pochopil ;) Bud se s tim bude muset hooodne potrapit a vytvorit si na to funkce a resit ty posuny pricitanim resp. odcitanim hodnot souradnic v metode zpracovatele udalosti onEnterFrame, nebo pokud muze byt reseni ve Flashi 8ce, tak existuje trida Tween, ktera ti to vyresi jednoduseji ;) Tady mas ilustracni priklad:

import mx.transitions.Tween;
import mx.transitions.easing.*;
new Tween(kostka_mc, "_x", None.easeOut, 10, 100, 1, true);

ty parametry znamenaji: nazev objektu, vlastnost,kterou chces menit, "easing" - tady je spousta moznosti, pocatecni hodnota, koncova hodnota, doba prubehu animace, pouziti sekund - pokud je true-sekundy, pokud false - snimky ;)
dudies
Profil *
Dělám to v MX 2004,ale vidím,že i tady to funguje!! Doufám,že to nějak splácám do té mojí animačky :) Fakt díky moc za tohle!! Pokud si z brna tak bych tě nejradši pozval na pivo!! :)
XXX
Profil
Bohuzel nejsem :( , ale zrovna si jdu dat tady u nas ;) Melo by ti to pomoct, najdi si k tomu neco na netu nebo v helpu ;)
dudies
Profil *
Teď už to snad pude! Fakt ještě jednou dík. Ať chutná!!! ;)
dudies
Profil *
Zdravim,
uz jsem to rozjel,ale jeste bych potreboval udelat nejakou akci pri zacatku animovani. Nasel jsem metodu onMotionStarted,ale za boha ji neumim pouzit na tom spravnem miste :( Nevite nekdo kde by mela byt? Diky
XXX
Profil
Na to prece nepotrebujes zadnou metodu. Dyt tu akci das na stejne misto,kde spoustis ten Tween, takze se ti to spusti zaroven ;)
dudies
Profil *
Aha tak to se mi zacykli kvuli necemu jinemu....ok dik :)
XXX
Profil
Jj, proc resit veci jednoduse, kdyz .... :-D To znam ;)
dudies
Profil *
Presne taak,kdyz to jde slozite,jako by me to kopirovalo! :)

btw.tak ted uz by to melo jet a vubec se mu nechce,muze to tak byt?

myTween = new Tween(jmeno, "_x", None.easeOut, pred_x, pred_x+66, _root.rychlost, false);

myTween.onMotionStarted = function() {
trace("zacatek animovani");
};
XXX
Profil
nechapu smysl te metody onMotionStarted. ona se zacne animovat ve chvili, kdy ji nadefinujes. Mel bys to mit dobre, pokud teda ty jednotlive promenne jsou spravne a spravne na ne odkazujes, to z toho neni poznat. Predpokladam, ze mas chybu v tom, ze nemas naimportovane tridy pro praci s Tweenem a Easingem. Uplne na zacatku toho skriptu musis mit tyto dva radky,aby ti to jelo:

import mx.transitions.Tween;
import mx.transitions.easing.*;

;)
dudies
Profil *
Ten kod v metode to je jenom ilustracni,at to proste neco provede jenze ono to neprovede(jde mi o to abych zakazal tlacitko v dobe animace). Ty tridy naimportovane mam,animace jede v pohode,vse ok,krome toho ze ta metoda se neprovede,kdyz ji nadefinuju. Netusis kde by teda moh byt hacek?
dredie
Profil *
//zkopirovano z adobe live docs - tento zapis je na 100% spravny

import mx.transitions.Tween;
var myTween:Tween = new Tween(img1_mc, "_x", mx.transitions.easing.None.easeNone,0, Stage.width, 4, true);

myTween.onMotionFinished = function() {
myTween.start();
};

myTween.onMotionStarted = function() {
trace("onMotionStarted");
};

- mozna je problem v tom ze tween nemas striktne definovany jako promennou typu tween... ale tezko rict :)

D.
dudies
Profil *
Tak v tom to asi nebude...pri spusteni mi to hned hodi chybu

There is no property with the name 'onMotionStarted'.


Je mozne, ze to jeste v MX 2004 nejde:(
XXX
Profil
Presne tak, tahle metoda je pristupna az od Flashe 8 ... bohuzel pro tebe
Toto téma je uzamčeno. Odpověď nelze zaslat.

0