Flash 5 – jak na testování kolizí 2.

26. listopadu 2001

V dnešním článku bych vám chtěl ukázat další možnost testování kolizí. Jejich využití nechám opět na vaši fantazii. V prvním článku jsme si ukázali, jak vyhodnocujeme střet dvou objektů pomocí obrysů – Shape (kulička odrážející se od okrajů). V dnešním článku si ukážeme, jak budeme testovat, jestli došlo ke střetu Movie clipu s kurzorem myši.

Pro dnešní příklad jsem si připravil jednoduchou ukázku, kdy kurzor myši se bude pohybovat po vytvořené dráze uvnitř Movie clipu. Při tvorbě jsem ponechal základní nastavení plochy o velikosti Frame (550 x 400 px) včetně prednastavené přehrávací rychlosti.

Vytvoříme si nový symbol pomocí kláves (ctrl+F8) – Movie clip, který pojmenujeme „plocha“. Nyní si nakreslíme nástrojem čtverec (R) jednoduchý obdélník zhruba o velikosti 350 x 300 px. Barevnost ponechám na vašem uvážení. Nástrojem šipka (Arrow Tool – V) si dvojím kliknutím na tento obdélník vybereme celý objekt a zarovnáme na střed pomocí nástroje Align (ctrl+k).

Zarovnání

Základním nastavením nástroje Guma (Eraser tool – E) si nyní vytvoříme pomyslnou dráhu pro pohyb myši. Jak náročnou si ji vytvoříte, bude záležet pouze na Vaši fantazii. Nebo naopak může být pouze velmi jednoduchá. Pro náš účel to není podstatné.

Tvar dráhy

Nyní se vrátíme do hlavní scény. Otevřeme si knihovnu příkazem CTRL+L a MC „plocha“ si přetáhneme na hlavní plochu. Tuto instanci si pojmenujeme „draha“:

Instance

V panelu instance si nyní rovnou klepneme na šipku a vložíme si následující akce:

onClipEvent (enterFrame) {
if (this.hitTest(_root._xmouse,_root._ymouse,true)) {
_root.dotyk = _root.dotyk+1;
c = new Color(_root.draha);
c.setRGB(parseInt(random(1000000),16));
}
}

Pro začátečníky přeložíme tyto akce následovně: Při každém vložení tohoto MC do scény zjisti, jestli nedochází ke kontaktu kurzoru myši a MC. V případě, že ano (true), tak zvětši počet dotyků o jeden výše a nastav náhodně zvolenou barvu tohoto MC (draha). Podle potřeby si můžete jednotlivé akce upravit podle vašich požadavků. Já jsem tady zvolil jednoduché počítadlo a změnu barev.

Nyní se vrátíme k dotvoření plochy. Necháme si zobrazit počet dotyků. K tomu nám pomůže vložení dynamické proměnné na hrací plochu.

Pomocí nástroje text (T) si vytvoříme textovou proměnnou. Barevnost, velikost písma i font nechám na vás. V panelu Text options si pro dané textové pole vybereme „Dynamic text“ a ostatní položky si nastavíme podle obrázku.

Text options

Nyní si přidáme ještě jednu vrstvu (insert Layer), do které nyní vložíme akce. Stiskneme pravé tlačítko nad prvním okénkem a vybereme si záložku Actions. Do prvního okénka vložíme následující akci:

dotyk=0;

Třetí okénko ve stejné vrstvě si označíme levým tlačítkem myši a vytvoříme si zde klávesou F6 klíčový rámeček (keyframe). Do tohoto okénka si vložíme následující akci, která nám zajistí neustále načítání polohy myši a vyhodnocování kolizí:

GotoAndPlay (2);

Nyní si můžete celou ukázku vyzkoušet stiskem CTRL+Enter. Zdrojový soubor je možné stáhnout zde.

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *