Premennej - Čo je to?
Premenná je jednoducho povedané kúsok pamäti, kam si môžeme uložiť nejaké dáta. Môže ukladať napr. Život hráča, počet jeho nábodů a podobne. Premenná vždy patrí konkrétnemu objektu.
Ak máme uloženú túto informáciu, môžeme s ňou ďalej pracovať. Napr. pri zasiahnutí príšery odpočítame z premennej zivot 20. Ďalej otestujeme, či je premenná ešte kladná. Ak nie, príšeru zničíme.
Game maker obsahuje 3 základné predpripravené premenné: lives (životy), health (zdravie) a score (skóre). Okrem tých si však môžeme tvoriť vlastné premenné, ako napr. Spomínané naboje a podobne.
Premennú založíme tým, že ju deklarujeme. V Game Makeru sa to robí jednoducho tak, že do nej uložíme nejakú počiatočnú hodnotu. Ak sa budeme snažiť pristúpiť k premennej, ktorá neexistuje, vyvolá to chybu. Napr. premennú zivoty u príšery vytvoríme tak, že v udalosti Create pri objekte príšera nastavíme premennú zivoty na 100. Hneď si ukážeme, ako sa hodnota do premennej nastavuje a ako sa číta.
Ešte je dobré vedieť, že v game maker majú premenné 2 typy: číslo a text. V programovaní sa typom premenných hovorí dátové typy. Hodnotu textových premenných píšeme do úvodzoviek.
Práca s premennými v game maker
Premenné pomocou ikoniek
- pre nastavenie premennej slúžia akcie Set variable
z Controls
- tu zadáte iba názov alebo názov s prefixom názvu objektu (prefixom sa myslí napr. hrac.naboje, ak chceme nastaviť náboja objektu hráč mimo tento objekt).
Aplies to: určuje ktorému objektu sa bude premenná
nastavovať
variable: názov premenné
value: jej hodnota
relative: ak zaškrtnete potom sa hodnota pripočíta k
súčasnej hodnote premennej
// deklarace dočasných proměnných // tyto proměnné jsou určené pro dočasné uložení nějaké hodnoty a nejsou přístupné v dalších částech kódu, označujeme je slůvkem var var temporary_1, temporary_2; temporary_1 = "dočasná proměnná"; //proto když například v eventu <on press SPACE> zavoláme fci show_message s parametrem temporary_1 dostaneme chybové hlášení o neexistující proměnné show_message(temporary_1);
lokálne premenné
// inicializace lokální proměnné local_variable = "lokální proměnná"; //tuto proměnnou můžeme používat kdekoliv v objektu show_message(local_variable); //jiný objekt //zároveň je možné k lokální proměnné přistupovat s jiného objektu show_message(object0.local_variable);
globálne premenné
Globálne premenné sú zlé a nemali by sa používať. Ak ste ich niekde videli, bolo to zle. Ak vám je niekto radí, nepočúvajte ho. Robí to veľa ľudí a je to zle. Prečo? Pretože premenná niekomu patrí. Keď budeme ukladať počet nábojov hráča, premenná naboje bude patriť objektu hráč. Neexistuje žiadny dôvod, prečo ju robiť globálne, naopak to prináša problémy s prepisovaním a porušuje to zapuzdrenie a ďalšie princípy objektového programovania.
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 275x (10.19 kB)
Aplikácia je vrátane zdrojových kódov v jazyku GameMaker