Úvod do ikonek - Řídící akce (control actions)
Vyskytují se zde hlavně podmínky, práce s proměnnými, s kódem etc. Podívejte se na následující příklad, kde si vysvětlíme jak podmínky a bloky fungují:

Pokud otázka na pozici (Check empty) vrátí true (pozice je volná) provede se příkaz pod ní. Pokud chceme více příkazů vložíme blok (v jazyce GML je blok označován složenými uvozovkami { příkazy }). Můžete přidat i else které se bude provádět v případě že podmínka vrátila false.
Všechny podmínky mají check box nazvaný NOT což je negace, pokud jej zaškrtnete pak budou podmínky vracet true pokud příkaz bude nepravda (pokud pozice volná nebude a bude zaškrtlé NOT vrátí true).
Check empty (zkontroluj prázdno)
Vrátí true, pokud na zadaných souřadnicích není dle nastavení solid instancí nebo jakoukoli instancí.
Check collision (kontrola kolize)
Vrátí true, pokud na zadaných souřadnicích dochází ke kolizi dle nastavení se solid instancí nebo jakoukoli instancí.
Check object (zkontroluj objekt)
Vrátí true v případě že instance na zadaných souřadnicích protíná instanci zadaného objektu.
Test
instance count (kontrola počtu instancí)
Vrtátí true, pokud je počet instancí zadaného objektu roven zadanému počtu. Můžete si vybrat větší, menší, rovno či použít negaci. Hodí se například pro kontrolu počtu penízků, které je třeba všechny sesbírat pro postup do dalšího levelu.
Test
chance (otestuj šanci)
Side určuje počet stran kostky. Je zde pravděpodobnost 1:počtu stěn (např. pro 2 stěny 50:50). Pokud padne provedou se akce umístěné pod touto. Můžete si také nastavit negaci. Číslo 1 a menší než 1 nemá cenu zadávat -> akce by se prováděli vždy.
Check question (prověř otázku)
Zadáte otázku a hráči je poté zobrazen dialog, kde může zvolit ano či ne. True je vráceno v případě že odpoví ano (pokud zaškrtnete NOT je vráceno v opačném případě).
Test
expression (otestuj příkaz)
Zadáte příkaz v kódu GML. Například 2 > 1 nebo ship.x >= 5 můžete používat AND pro zkontrolování zda zároveň platí i další podmínka nebo OR pro zjištění zda platí alespoň jedna z podmínek.
Check mouse (kontrola myši)
Vrátí true, když je zmáčknuto zadané tlačítko myši. Standardně používáno ve step eventu. Pohybovat kurzorem můžete pomocí proměnných (mouse_x a mouse_y, kterým nastavíte nějakou hodnotu pomocí set variable)
Check gird (zkontroluj mřížku)
Vrátí true pokud je instance zarovnána na velikost zadané mřížky. Vhodné použití napříkald u pacmana, který může zatočit pouze v uličce (vše se skládá ze stejných kostiček o velikosti napříkald 32x32) pokud je zarovnán na 32x32 může zatočit bez obavy narazení na zeď.
Start block (začátek bloku)
Začátek bloku s akcemi.
End
block (konec bloku)
Konec bloku s akcemi.
Else (jinak)
Příkaz nebo blok akcí pod tímto příkazem se provede, pokud podmínka na kterou tento příkaz navazuje vrátí false.
Repeat (opakovat)
Tato akce je použita pro opakování akce umístěné za ní (nebo bloku akcí). Akce se budou opakovat dle zadaného počtu.
Exit
event (konec eventu)
Když použijete tuto akci ostatní akce v eventu, který probíhá se již neprovedou. (Vhodé použít s podmínkou.)
Execute code (vložit kód)
Vloží kód -> otevře editor do kterého lze psát kód GML, který slouží stejným principem jako ikonky.
Comment (komentář)
Jednoduše napíšete nějakou poznámku, která vám bude třeba připomínat co kód dělá. (V kódu GML se komentář píše pomocí // jednořádkový a /* více řádkový */)
Execute script (vložit script)
Vloží script, který máte ve složce scripty (přidat lze pomocí papírku se zelenou šipečkou anhoře v ovládacím panelu). Slouží například k tomu když používáte jeden kód na více místech a chcete třeba jen změnit rychlost nebo nějakou maličkost. Ve scriptu ji uvedete jako argument_x (kde x je číslo od 0 do 4), které potom bude nahrazeno dle zadaných argumentů.
Set
variable (nastavit proměnnou)
Můžete změnit hodntotu některé z globálních (již zabudovaných ve hře) proměnných nebo vlastní proměnné. Zadáte jméno a hodnotu proměnné, zaškrtnout také můžete políčko relative (napříkald chete zvýšit hodnotu souřadnice x instance o 5 napíšete 5 a zaškrtnete relative) -> Pozn. funguje pouze pokud proměnná je již někde deklarovaná (má již nějakou hodnotu).
Test
variable
Vrátí true pokud hodnota zadané proměnné je vzhledem k zadanému dotazu pravdivá.
Draw
variable (vykresli proměnnou)
Vykreslí na zadaných souřadnicích hodnotu zadané proměnné. Relative se vztahuje k souřadnicím -> budou brány vzhledem k instanci.
Call
parent event (zavolej rodiče)
Tato akce je užitečná pouze tehdy, pokud objekt má rodičovský objekt. Zavolá odpovídající event v rodičovském objektu.