. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .


 
 
SEGÉDLETEK ActionScript

Dinamikus mozgások ActionScripttel - 2. rész
  feltöltve: 2003.11.04 | szerző: papp | olvasva: 15000 alkalommal

       
 

Egérkövetés effektus egyenletesen lassuló mozgással

A mozgás célpontja itt mindig az egérmutató aktuális pozíciója, tehát a labda követni fogja az egérmutatót. Mindössze pár sor kód és máris kész az egérkövetés effektus, ráadásul lassuló mozgással (labda12.fla). Adjuk meg az alábbi kódot egy tetszőleges moziklipnek és az követni fogja az egérmutatót:

onClipEvent (load) {
     sebesseg = 10;
}

onClipEvent (enterFrame) {
     _x += (_root._xmouse - _x)/sebesseg;
     _y += (_root._ymouse - _y)/sebesseg;
}

Egérmutató helyettesítése moziklippel

Például játékok készítésénél lehet szükségünk arra, hogy az egérmutatót elrejtsük és egy tetszőleges moziklippel helyettesítsük (labda13.fla). Egy tetszőleges moziklipnek az alábbi kódot kell megadnunk:

onClipEvent (load){
     Mouse.hide();
}

onClipEvent (mouseMove){
     _x = _root._xmouse;
     _y = _root._ymouse;
     updateAfterEvent();
}

Láthatjuk, hogy a mouseMove eseményt az updateAfterEvent() függvénnyel zártuk le. Miért is van rá szükség? Végül is elhagyható, de a moziklip mozgása sokkal csúnyább lesz. A képernyő tartalma minden egyes frame-ben frissül, az updateAfterEvent viszont rögtön frissíti a képernyőt, amint az esemény (elmozdítottuk az egeret) bekövetkezett. Teszteld a kódot az updateAfterEvent függvény nélkül és látható lesz a különbség!

Végezetül térjünk vissza a labda10.fla példánkhoz, ahol a 3 labda véletlenszerű mozgást végez. Mentsd el a mozit labda14.fla névvel. Rajzolj egy kis háromszöget, vagy bármit ami fegyverre emlékeztet, alakítsd moziklippé és helyezd a lap aljára. Ha ezzel megvagy, add meg az alábbi kódot a moziklipnek:

onClipEvent (load){
     Mouse.hide();
}

onClipEvent (mouseMove){
     _x = _root._xmouse;
     updateAfterEvent();
}

Teszteld a mozit és látni fogod, hogy valami játékszerű dolog kezd kialakulni. A lap alján lévő "űrhajót" jobbra-balra irányíthatod az egérrel, a célpontok pedig összevissza ugrálnak a képernyőn. Mostmár csak golyókra és ütközés elenőrzésre lenne szükség. Mivel a segédlet sorozat témája nem a játékkészítés, itt most meg is állunk. A példa arra volt jó, hogy rávilágítsunk a dinamikus mozgások szerepére a Flash játékok készítésénél.

A következő részben nem haladunk tovább a bonyolultabb mozgások felé, hanem kitérünk az eddig átvett mozgások gyakorlati alkalmazására a web design-ban. Tovább a 3. részhez >>>

 
       
 
 

© Devnet.hu. A segédletek semmilyen formában nem másolhatók, publikálhatók a Devnet.hu és a szerzők közös írásos engedélye nélkül.
 
. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .