Základní proměnné, podmínky a operátory

Ostatní jazyky GameMaker Základy Základní proměnné, podmínky a operátory

.

Základní proměnné a práce s nimi

V mnoha akcích je třeba zadat určité argumenty, zde si popíšeme, co který znamená.

Proměnné o kterých byste měli určitě vědět:

x - x-ová souřadnice instance
y - y-ová souřadnice instance
hspeed - horizontální rychlost (v pixelech za vteřinu)
vspeed - vertikální rychlost (v pixelech za vteřinu)
direction - současný směr ve stupních (0-360)
speed - současná rychlost pro daný směr
visible - určuje viditelnost (1) či neviditelnost (0) instance
sprite_index - nastavení spritu (obrázku) objektu
image_angle - nastavení úhlu natočení (rotace) spritu objektu ve stupních
image_index - pokud máte sprite, který má více snímků, tato proměnná určuje, který z nich bude zobrazen (pokud chcete nastavovat pomocí této proměnné stálý obrázek nastavte image_speed na 0 -> jinak se sprite bude stále animovat)
image_speed - touto proměnnou nastavujete rychlost animace spritu (pokud má sprite více snímků). Defaultní hodnota je 1. Nastavíte-li vyšší, budou se některé snímky přeskakovat pro zrychlení animace. Nižší pak animaci zpomaluje.
score - tato proměnná určuje hodnotu současného skóre
lives - tato proměnná určuje současný počet životů
health - tato proměnná určuje současný stav zdraví
mouse_x - x-ová souřadnice myši
mouse_y - y-ová souřadnice myši
room_speed - udává rychlost kterou běží hra (vhodné pro převod kroků na vteřiny -> room_speed * počet
gravity - udává gravitaci, kterou je objekt přitahován
gravity_direction - směr gravitace
image_angle - natočení spritu
solid - určuje zda je objekt solid

Všechny systémové proměnné můžete nalézt zde

Globální proměnné

  • globální proměnné mohou být použity kdekoli. Stačí proměnnou deklarovat a volat s prefixem global.
  • global.snowing = true;

Dočasné proměnné

  • pomocné proměnné, které chcete použít jen v kousku kódu a nikde jinde. Zadáte var a jméno proměnné je třeba ukončit středníkem ;
  • var xx, yy, i;

Psaní podmínek

Chcete-li vyvolat akci pod nějakou podmínkou učiníte tak pomocí akce Test Variable z Controls.

Aplies to: určuje u kterého objektu se bude proměnná testovat
variable: název promenné
value: hodnota, která se bude kontrolovat jestli je (non)ekvivalentní se současnou hodnotou proměnné
operation: pokud budete chtít porovnávat čísla můžete zvolit zda má být číslo, větší nebo menší
NOT - označuje negaci (nonekvivalenci) - pokud se hodnota proměnné nemá rovnat (nemá být větší, menší) než současná hodnota proměnné


V kódu GML se s podmínkami pracuje takto: Například, budete chtít, kdykoliv nastavíte globální proměnnou snowing na true začne sněžit. (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 rovněž chtít, aby byla akce vyvolána pokud bude splněno více podmínek.

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 ....
{
...
}

Pokud chcete ověřit pouze jednu z podmínek:

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 ...
{
...
}

Při porovnání hodnot existují následující 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 "<>"

 

  Aktivity (1)

Článek pro vás napsal David Jančík [sczdavos]
Avatar
Autor je vášnivý programátor v .NET C# a PHP. Nezná slovo "nelze", nebojí se zkoušet nepoznané a pronikat do nových technologií.

Jak se ti líbí článek?
Celkem (1 hlasů) :
333 33


 


Miniatura
Předchozí článek
Proměnné - Co je to?
Miniatura
Všechny články v sekci
GameMaker - základy a ikonky
Miniatura
Následující článek
Eventy (události)

 

 

Komentáře

Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zatím nikdo nevložil komentář - buď první!