IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Základné premenné, podmienky a operátormi

.

Základné premenné a práca s nimi

V mnohých akciách je potrebné zadať určité argumenty, tu si popíšeme, čo ktorý znamená.

Premenné o ktorých by ste mali určite vedieť:

x - x-ová súradnice inštancie
y - y-ová súradnice inštancie
hspeed - horizontálna rýchlosť (v pixeloch za sekundu)
vspeed - vertikálnu rýchlosť (v pixeloch za sekundu)
direction - súčasný smer v stupňoch (0-360)
speed - súčasná rýchlosť pre daný smer
visible - určuje viditeľnosť (1) či neviditeľnosť (0) inštancie
sprite_index - nastavenie Spritu (obrázku) objektu
image_angle - nastavenie uhlu natočenia (rotácia) Spritu objektu v stupňoch
image_index - ak máte sprite, ktorý má viac snímok, táto premenná určuje, ktorý z nich bude zobrazený (ak chcete nastavovať pomocou tejto premennej stály obrázok nastavte image_speed na 0 -> inak sa sprite bude stále animovať)
image_speed - touto premennú nastavujete rýchlosť animácie Spritu (ak má sprite viac snímok). Defaultná hodnota 1. Ak nastavíte vyššie, budú sa niektoré snímky preskakovať pre zrýchlenie animácia. Nižšia potom animáciu spomaľuje.
score - táto premenná určuje hodnotu súčasného skóre
lives - táto premenná určuje súčasný počet životov
health - táto premenná určuje súčasný stav zdravia
mouse_x - x-ová súradnice myši
mouse_y - y-ová súradnice myši
room_speed - udáva rýchlosť ktorú beží hra (vhodné pre prevod krokov na sekundy -> room_speed * počet
gravity - udáva gravitáciu, ktorou je objekt priťahovaný
gravity_direction - smer gravitácie
image_angle - natočenie Spritu
solid - určuje či je objekt solid

Všetky systémové premenné môžete nájsť tu

globálne premenné

  • globálne premenné môžu byť použité kdekoľvek. Stačí premennú deklarovať a volať s prefixom global.
  • global.snowing = true;

dočasné premenné

  • pomocné premenné, ktoré chcete použiť len v kúsku kódu a nikde inde. Zadáte var a meno premennej je potrebné ukončiť bodkočiarkou;
  • var xx, yy, i;

Písanie podmienok

Ak chcete vyvolať akciu pod nejakou podmienkou urobíte tak pomocou akcie Test Variable Game maker - základy a ikonky
z Controls.

Game maker - základy a ikonky
Aplies to: určuje u ktorého objekte sa bude premenná testovať
variable: názov premenné
value: hodnota, ktorá sa bude kontrolovať či je (non) ekvivalentná so súčasnou hodnotou premennej
operation: ak budete chcieť porovnávať čísla môžete zvoliť či má byť číslo, väčšie alebo menšie
NOT - označuje negáciu (nonekvivalencie) - ak sa hodnota premennej nemá rovnať (nemá byť väčšia, menšia) ako súčasná hodnota premennej


V kóde GML sa s podmienkami pracuje takto: Napríklad, budete chcieť, kedykoľvek nastavíte globálnej premennej snowing na true začne snežiť. (Global.snowing = true;) Do step eventu napíšete tento kód
if (global.snowing == true)//pokud je hodnota globální proměnné snowing ekvivalentní (rovna) true
{
    effect_create_above(ef_snow,0,0,1,c_white);//vyvolá se effekt sněžení
}

Môžete tiež chcieť, aby bola akcia vyvolaná že je splnená viac podmienok.

if ((place_meeting(x,y,dvere)) && (keyboard_check_pressed(vk_enter)) and (mam_klic = true)) then//jednotlivé podmínky spojujeme pomocí *&&* nebo *and*, pokud jste zvyklí na pascalovou syntaxi můžete používat za podmínkou *then* -> pokud hráč stojí před dveřima zmáčknul enter a má klíč pak ....
{
...
}

Ak chcete overiť iba jednu z podmienok:

if ((place_meeting(x,y,dvere)) && ((keyboard_check_pressed(vk_enter)) || (keyboard_check_pressed(vk_space)) or (keyboard_check_pressed(vk_shift)))//-> pokud hráč stojí před dveřmi a zmáčknul enter nebo space nebo shift ...
{
...
}

Pri porovnaní hodnôt existujú nasledujúce operátory:

number >= number2//větší nebo rovno
number <= number2//menší nebo rovno
number > number2//větší
number < number2//menší
number == number2//rovno
number != number2//nerovno -> dá se rovněž zapsat "<>"

 

Všetky články v sekcii
Game maker - základy a ikonky
Článok pre vás napísal David Jančík
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor je vášnivý programátor. Nezná slovo "nelze", nebojí se zkoušet nepoznané a pronikat do nových technologií.
Aktivity