Tutorial ke hře Hit The Ball ve zjednodušené verzi
Hit the ball je hra, která vás naučí používat základní funkce GM. Doporučuji přečíst 1. tutorial z první série, který vás obeznámí s teorií a celkovým interfacem. Ale teď k samotné hře. Obrázky si můžete stáhnout spolu s hotovým kódem dole na stránce. (pokud je nechcete shánět jinde).
Jak na to
První věc, kterou bychom měli udělat, je přidat si sprity (v našem případě zeď a míček). Z prvního tutorialu byste měli vědět jak na to (kliknete na ikonku Pac-Mana a pokračujete pojmenováním a výběrem spritu). Potom tu máme jeden zvuk, který se přehraje při strefení se do míčku a jedno pozadí. A teď to základní - vytvoření objektů:
Objekty ve hře
Nejprve si vytvoříme objekt "zed". Zde zaškrtneme políčko "solid" a
dáme OK. poté si vytvoříme objekt míček. Kliknutím na "Add Event do něj
přidáme událost "Create". Tato událost říká hře, co se má stát při
vytvoření daného objektu. Do "Create" přidáme příkaz, aby skóre
začínalo na nule. Tento příkaz je na kartě "score" (třetí odspodu).
Přetažením ikonky pro nastavení skóre. Vypadá takto: . Tam nastavíme dafaultní
hodnotu 0. Také bychom měli nastavit čas, po který bude možné se pokoušet
strefit do míčku. To se dělá přes příkaz "Set Health". Ikonka je opět na
kartě "score" a je to tahle:
. Zdraví nastavíme na 100. Také
by nebylo špatné aby se míček hýbal. Proto mu přidáme příkaz "Move
Fixed". Jeho ikonka je první ikona na kartě "move". Tam aktivujeme všechny
šipky a rychlost nastavíme na jakoukolik hodnotu, asi
nejlepší na start je 5-8. Naše snažení po prvním eventu by mělo vypadat
takhle:
Další z kroků je event "Step". Ten vytvoříme kliknutím na "Add Event",
potom na "Step" a nakonec znovu "Step". Jakmile se bude míč pohybovat po
ploše, budeme chtít, aby se nám započítalo skóre, ale aby nám také
ubíhal čas. Proto přidáme příkaz "Set Score" a v okně do políčka
napíšeme počet bodů získaných za jeden krok a zaškrtneme "Relative"
(Zaškrtnutí "Relative" je důležitý krok, bez něj by vám skore stálo na 1
bodu). OK. Nyní přidáme i příkaz "Set Health" a nastavíme jeho parametry.
Zde musíte zadat záporné číslo, jinak by se vám čas prodlužoval a hra by
byla nekonečná (i když z hlediska výsledného skore by to nebylo špatné
). Va našem příkladu máme
tuto hodnotu nastavenou na -0.5. Opět zaškrtneme "Relative". Takže jak to
teď vypadá?
Dále bych si udělal ovládání. Do míčku se budeme strefovat myší,
proto přidáme event Mouse a vybereme "Left pressed". Do něj přidáme
přehrání zvuku, uskočení míčku, jiný směr pohybu a obnovení
časomíry. Ale pěkně popořadě. Začal bych přehráním zvuku. Otevřeme si
kartu "main1" a přetáhneme ikonku repráku ve čtverci ( ) a vybereme zvuk
"zvuk". "Loop" dáme na "false". Potom by měl míček uskočit, proto přejdeme
na kartu "move" a vezmeme příkaz "Jump To Random" (jeho ikonka je takováto:
). Zde nic nenastavujeme a pouze
klikneme na OK. Teď by se měl míč hýbat jiným směrem, proto vezmeme a
přetáhneme ikonu příkazu "Move Fixed" (n kartě "move" ) a aktivujeme
všechny šipky a nastavíme rychlost. Na konec eventu potřebujeme obnovir
časový limit. To uděláme jednosuše přes ikonu "Set Health" a hodnotu
nastavíme na 100. Cím byl asi takovýto:
Pokud chceme, aby hra skončila po vypršení časového limitu, musíme
nastavit event "No More Health". Ten najdete v sekci "Other". Chceme aby se nám
zobrazola tabulka výsledků a také chceme hrát znovu. Proto přidáme
příkaz "Show Highscore" ( ) a nastavíme podle libosti
("new color" nastavuje nový výsledek a "other color" výsledky předchozí).
Potom (opravdu je důležité napřed zobrazit tabulku výsledků a pak až
hrát znovu
) přetáhneme
ikonu
, která má na svědomí
příkaz "Restart Room" a nachází se na kartě "main1". Jediné co zde
můžeme nestavit, je efekt přechodu. Sami se rozhodněte, který se vám
líbí nejvíce. Event hotov a vysledek?
Míček by se měl při nárazu do stěny odrazit, proto nastavíme event "Collision". Zde nám stačí nastavit pouze příkaz z karty "move" - "Bounce". Pokud chceme, aby se míček odrazil do stran, v kolonce "precise" nastavíme "precisely", nás ale zajímá hlavně druhý parametr - "against". Tady zvolíme možnost "solid objects".
Na konec vytvoříme event "Draw". Obyčejně to není nutné, my však chceme vidět, kolik času nám zbývá a jaké máme skóre. Proto nastavíme příkazy "Draw Health" (ikonka je stejná jako u nastavování zdraví (v našem případě času), jenom barva na pozadí je žlutá). Ten se bude vykreslovat na souřadnicích x1=10, y1=10, x2=200 a y2=50. Dále si můžete nastavit barvy ukazatele. Chtěli jsme vidět i skore, proto přidáme příkaz "Draw Score" (ikonka je stejný případ jako "Draw Health") a opět nastavíme souřadnice (x=300, y=30). Protože chceme vidět míček, musíme přidat i příkaz pro vykreslení míčku. Ten najdeme na kartě "draw" a je to ta první ikonka. U první kolonky vybereme jako sprite "micek" a souřadnice x a y necháme na nule. "subimage" bude na -1. Zaškrtneme "Relative". Konečný výsledek vytváření objektu "mic" je tohle:
Ale abychom si zahráli, musíme to všechno posadit do roomu. Takže si vytvoříme místnost (jejedno jak ji nazvete). V jejím okně si dole vyberete sprite "zed" a umístíte ho kolem celého roomu. Potom tam hodíme i objekt "mic" a pozadí. Pozadí vložíme na kartě "backgrounds" vybráním obrázku s pozadím (jediný seznam na záložce)
Takže toto je výsledek našeho snažení:
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 505x (32.12 kB)
Aplikace je včetně zdrojových kódů v jazyce GameMaker