Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Proměnné a pohyb

Názvy funkcí

Náš aktuální program / hra hned skončí, ale my chceme aby běžela pořád. Je to proto, že jsme udělali funkci _init která se spustí jen jednou na začátku. Existuje ale název funkce která se spustí každou chvilku.

Takže pokud ji přejmenujeme na _draw, tak nám hra poběží pořád (dokud nezmáčkneme Esc):

function _draw()
 cls()
 print("zdarec")
 spr(1, 60, 60)
end

Jak poznáme, že se _draw spouští pořád?

Zatím jsme vypisovali a kreslili pořád to stejné, takže nepoznáme jak často se náš kód pouští. A na to si musíme něco uložit.

Proměnné

Proměnná je něco jako baťůžek kam si můžeme uložit co chceme a pak se na to zase podívat. Má nějaký název (podle čeho je rozeznáme když jich bude víc) a “hodnotu” – to je to, co jsme si uložili dovnitř.

Když si náš baťůžek pojmenujeme třeba n a chceme si do něj uložit jedničku, tak stačí napsat:

n=1

A když budeme chtít použít hodnotu kterou máme v baťůžku uloženou, tak jen napíšeme jeho název místo toho, co máme vevnitř. Na vypsání čísla použijeme funkci print kterou už v kódu máme:

n=1

function _draw()
 cls()
 print(n)
 spr(1, 60, 60)
end

Když kód spustíme, tak ze místo zdarec vypíše 1, protože se místo názvu proměnné n použije to, co jsme do ní dali (1).

Note

Jak byste to udělali aby se místo čísla 1 napsalo písmenko n?

Tip

Podívejte se jak jsme vypsali zdarec

Tak jsme vypsali 1, ale to nám nic neřekne. Co my můžeme udělat je, že si to číslo pokaždé změníme. A to vždycky když jsi proměnnou vypíšeme!

Stejně jak jsme si do proměnné uložili číslo, tak si do ni můžeme uložit hodnotu proměnné.

Tento program taky vypíše 1:

n=1
p=n

print(p)

Tento program vypíše 3 protože 1 + 2 = 3:

n=1
p=n+2

print(p)

A tento program vypíše taky 3:

n=1
n=n+2

print(n)

Takže co mi uděláme je, že n pod funkcí print hned zvětšíme o jedničku:

n=1

function _draw()
 cls()
 print(n)
 n=n+1
 spr(1, 60, 60)
end

Procvičení

Zkuste si v programu udělat tyhle změny:

  • Všechny čísla přepište na proměnné, použijte názvy sprite, x a y.
  • Vytvoření proměnných (nastavení na první hodnotu) udělejte ve funkci _init. Tip: napište novou, funkci _draw totiž budeme dál potřebovat.

Tip

Po každé změně zkuste, že hra funguje pořád stejně!

Konečně pohyb

Jako poslední věc udělejte to, že po zavolání funkce spr proměnné X a Y změníte o malý kousek (přičtěte nebo odečtěte 1 nebo 2).