Kompletní hra v Game Makeru - Arkanoid
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kompletní hra v Game Makeru - ArkanoidKompletní hra v Game Makeru - Arkanoid

 

Kompletní hra v Game Makeru - Arkanoid

Google       Google       1. 2. 2012       17 110×

Tento návod je určen pro úplné začátečníky, jelikož v něm jsou popsány podrobně (pro pokročilé až otravně podrobně) všechny funkce s obrázky. Uděláme si jednoduchou hru jménem Arkanoid a naučíte se zde základní funkce použité v praxi.

V tomto článku vás naučím, jak v Game Makeru vytvořit arkanoid s jedním levelem.

Pro seznámení s Game Makerem si můžete přečíst Game Maker - 01: Pár slov o tvoření her.

Doporučuji stáhnout si tyto soubory, které k tutoriálu jsou (zdrojový soubor + sprity).

Příprava

Ze všeho nejdříve si vytvoříme sprity (obrázky), které nemusíte kreslit, najdete je ve složce Sprit. Takže si vytvořte tři sprity, které pojmenujte:

  • s_hrac
  • s_mic
  • s_cihla
Obr. 1: Náhled objektů s přiřazenými sprity

Když máme sprity, tak si vytvoříme objekty a k nim dané sprity přiřadíme. Viz obr. 1.

  • o_hrac
  • o_mic
  • o_cihla

Programování

Nyní k samotnému programování. Budu se snažit programovat takovou směsicí GML (Game Maker Language, což je programovací jazyk Game Makeru) a ikonek. Bohužel přes ikonky nenaprogramujete složitější hry, tak je lepší se hned ze začátku učit GML nebo kombinaci GML s ikonkami než samotné ikonky. Takže k programování.

Otevřeme si objekt o_hrac a naprogramujeme pohyb. Vložíme nový event (Add Event) - Keyboard - <Left> a dále vložíme skript vpravo z podmenu Control. Viz druhý obrázek.

Teď napíšeme první skript, díky kterému se při zmáčknutí klávesy doleva o_hrac posune doleva. Není to ani tak skript, spíš jedno písmeno a jedno číslo:

x-=4

Abych tento jednoduchý příkaz vysvětlil - když zmáčknete šipku doleva (díky eventu, který jsme si vložili), tak se objekt pousne doleva (ze souřadnice x se odečte 4, tím pádem se po souřadnici x posune o 4 dozadu).

Toto zopakujeme. Vložíme Event Keyboard - Right, do něj skript a tam napíšeme:

x+=4

Protože tentokrát chceme, aby se nám k souřadnici x 4 přičetly a o_ hrac jel doprava.

Teď si vytvoříme novou místnost (room) a vložíme do ní objekt hráč. Spustíme hru a vidíme, že pokud mačkáme šipky, hráč se hýbe.

Nyní se pustíme do naprogramování pohybu míčku. Otevřeme si objekt o_hrac a tam si dáme Add EventKey PressSpace.

Pozor, teď musíme dát Key Press, protože kdybychom vložili Keyboard, tak by se nám míč vytvářel neustále během držení mezerníku. Takto se nám míč vytvoří, jen když jej zmáčkneme, když jej budeme držet, tak se míč stejně vytvoří jen jednou. Další by se vytvořil až při dalším zmáčknutí, ale pro to si teď vytvoříme podmínku.

Do eventu, který jsme si teď vytvořili, dáme z podmenu ControlScript a napíšeme:

if not instance_exists(o_mic)

    {

    instance_create(x,y-20,o_mic)
    }

Teď si otevřeme objekt o_mic a vložíme do něj event Create. Tato část se nejlíp nastavuje přes ikonky a řekl bych, že je zbytečné to skriptovat. Myslím, že to udělá pro začátečníka zbytečný zmatek. Takže si do eventu Create dáme hned z prvního podmenu ikonku Move Fixed, viz třetí obrázek.

Zaškrtneme levou a pravou šipku nahoře a Speed nastavíme na 7.

Tady jsme si nastavili, že když se objekt o_mic vytvoří (Create), tak si náhodně vybere jeden ze dvou označených směrů a bude se pohybovat rychlostí 7.

Vytvoříme si ještě dva sprity, a to stěny (jednu vodorovnou a druhou svislou) a pojmenujeme si je:

  • s_stena1
  • s_stena2

Dále si vytvoříme dva objekty pro tyto stěny (o_stena1, o_stena2) a k nim přiřadíme dané sprity. U obou nastavíme solid (znamená to, že objekt bude pevně daný a bude stát na místě).

Otevřete si o_mic a vložte event Collision - o_stena1 a tam si vložte z podmenu move ikonku Bounce. Precise nastavte na precisely a against na solid objects.

Tady jsme nastavili, že se objekt bude odrážet od zdi ve všech směrech a jen od pevných objektů. To samé zopakujte i pro objekt o_stena2 i pro objekt o_hrac (tam ovšem místo solid zvolte all objects).

Stěny si naskládejte všude kolem místnosti kromě spodní hrany (když tam míč spadne, prohrajete, ale to až potom).

Nastavme si tedy rozbíjení cihliček. Otevřete si objekt o_cihla a nastavte tam solid. Objekt zavřete a otevřete o_mic. Do něj vložte event Collision – o_cihla a tam si dejte z podmenu move opět ikonku bounce a nastavte ji stejně jak u stěny. Dále z podmenu main1 ikonku Destroy Instance a nahoře zaškrtněte Other.

Tady jsme si nastavili, že když se o_mic srazí s o_cihla, tak se míč odrazí a zničí objekt, do kterého narazil = other (v našem případě o_cihla).

Poslední, co si musíme nastavit, je restart hry, pokud vám míč spadne dolů. Takže do míče vložíme event Other - Outside Room a tam z podmenu main2 ikonku Restart Game (takové dvě zelené šipky).

Když vše vložíte do roomu a odzkoušíte, vidíte, že máte kompletně hratelný arkanoid s jedním levelem. Doufám, že se vám tutoriál líbil a pomohl vám.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
9 hlasů
Google
(fotka) Michal BubíkMichal se zajímá o programování v Game Makeru a 3D grafiku v Blenderu. Učí se programovat v HTML a PHP. Chodí do 1. ročníku střední průmyslové školy ve Zlíně. Je učenlivý, společenský a má smysl pro humor. Jako koníček má hraní na akustickou a elektrickou kytaru.
Facebook    

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý