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
z Controls.
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
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 "<>"