Flash MX: škola hrou V. - Grafika.cz - vše o počítačové grafice

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Poptávka práce
Soutěž

Sponzorem soutěže je:

IDIF

 

Kde se narodil známý fotograf František Drtikol?

V dnešní soutěži hrajeme o:



Webdesign

Flash MX: škola hrou V.

17. dubna 2003, 00.00 | Je tu další díl seriálu o hrách ve flashi. První hra je již za námi, dnes tedy začneme s tvorbou jednoduché "střílečky".

Po půlroční pauze si zkusíme vytvořit další hru ve Flashi a snad se přitom také něčemu naučíme. Export zdrojového souboru je proveden do verze Flash 5 pro použití také v této starší verzi. Použité postupy se však vztahují k verzi MX a opět si je vysvětlíme do detailu.

Minule jste si vyžádali střílečku, tak se do toho pusťme.

V této lekci vyrobíme vetřelce a naučíme je pohybu vytvářející různé formace:

Scéna o velikosti 400 x 400, frame rate nastaven na 30 FPS. Zdrojový soubor je samozřejmě k dispozici zde.

Nejprve trocha teorie:

Objekty ve scéně jsou kopie originálů, uložených v knihovně (CTRL+L). Obecně tyto kopie nazýváme instance. Scéna může obsahovat několik instancí od stejného symbolu a každá tato instance může mít nastaveny jiné vlastnosti. Změní-li se originál objektu, úpravy se projeví na všech jeho instancích ve scéně.

Instanci Movie Clip lze pojmenovat a pod tímto jménem ji volat pomocí Actionscriptu.

Movie clip OBJEKTY, obsahující zatím jen formace vetřelců, má následující strukturu:

objekty vyber f1 typ1
f2 typ1
f3 typ1
f4 typ1
f5 typ1

Jde o názvy objektů, pod kterými jsou uloženy v knihovně (nejde o označení instancí). Na hlavní časové ose tedy naleznete pouze MC OBJEKTY, v němž jsou ostatní movie clipy uloženy. MC TYP1 obsahuje obrázky s barevným rozlišením talířů a ve scéně je zduplikován (CTLR+D) do šesti instancí. V každém typu formace je tedy uloženo 6 kopií tohoto TYP1. Odlišeny jsou pouze názvem instance - V1, V2 ... V6, takže pokud se rozhodnete vyměnit talíře za létající čarodějnice, stačí změnit jediný MC, který je uložen v knihovně pod názvem TYP1, příp. vytvořit TYP2 a formace UFO posílit o roj čarodějnic.

Byla by nuda střílet stále do stejných vetřelců létajících po stejné trase. Objekt VYBER provádí náhodný výběr z připravených formací, každá obsahuje jinou cestu pohybu.

Pojďme se blíže podívat na náhodný výběr formací. První snímek MC VYBER obsahuje:

f = Math.round (4*Math.random ())+2;
gotoAndPlay (f);

což jej přinutí skočit na snímek dle náhodného výběru. Funkce Math.random () zajistí náhodné číslo v intervalu <0,1>, takže po vynásobení číslem 4 a přičtení čísla 2 se bude výsledek pohybovat v intervalu <2,6>. Math.round () je zaokrouhlovací funkce.

Stejným způsobem je proveden výběr létajících vetřelců v MC TYP1. Samozřejmě je nezbytné přehrávání časové osy zastavit na příslušném snímku příkazem stop ().

Jak je možné, že se UFO tak ladně pohybují po předem určených drahách? Pohyb probíhá po pohybové cestě (motion path) definované ve vodící vrstvě (guide layer). Vedená vrstva (guided layer) obsahuje létající potvory.

V ukázce je 5 formací. Pro přidání dalších doporučuji vytvořit v knihovně duplikát např. objektu F1 a tento pojmenovat dalším pořadovým číslem, v našem případě F6. Připomínám, že instance jsou důležité pro volání objektů actionscriptem. Kromě úpravy nové formace tedy nezapomeňte přiřadit také jméno instance FORM tomuto novému MC F6. Všechny teď mají shodnou instanci s názvem FORM – je to z důvodu programového volání na V1, V2 atd. Budeme-li chtít testovat kontakt kulky a mimozemšťana na výletě, musíme znát jeho konkrétní instanci včetně cesty k objektu, např. _root.objekty.vyber.form.v3. Pokud se budeme v AS odvolávat na výletníka z nějakého objektu uprostřed cesty např. z MC OBJEKTY, můžeme použít relativní odkaz a zavolat na vyber.form.v3.

Vyvolávat je ale budeme až příště.

Těším se na vaše reakce. Klidně navrhujte další vývoj hry. Pro příště předpokládám vytvořit nějaké střílející letadlo a více využít actionscript.

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » Rubriky  » Go verze  

 » Rubriky  » Webdesign  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: