Podmínka IF a operátory

Určitě víte co znamená anglické slovíčko IF. Pro neznalé to je „když“, neboli když něco platí proveď tohle a pokud ne udělej onohle :-). Fuknce ma jeden hlavní ukol, rozhodovat o dané podmínce a provádět podle toho funkce či skoky. Podmínka IF je velmi užitečná i při kontrolách a jiných ověření. Brzy pochopíte, že složitý script je složen jen s „Ifu“ a „Mesu“ :-). Opérátory zná určitě každy již ze školy a ten kdo ne tak se to doví zde. Asi bych začal právě operátory.

Operátory

Existuji tři základní druhy operátorů. Matematické, podmíněné (děsné slovo, ale je to překlad pokud má někdo lepší slovo at jej napise) a logické operátory.

Matematické

Výsledek všech matematických operaci je vždy číslo. Až na několik výjimek.

Podmíněné

Tyto operátory vrací hodnotu typu boolean. Asi si řikate co to je? Ale nebojte nic sprostého. Typ boolean nabývá dvou hodnot. True = pravda neboli taky 1 a False = nepravda nebo taky 0. Občas se setkame i s -1 a možna i až s -5, ale to pořádně popíšu až na to dojde.


Příklad:

Jednotlivé výrazy mužou být spojovány do jedné podmínky.

Příklad:

Samozřejmě je možné použít více podmínek než pouze dvě. Příklad:

Logické

Logické oprátory se dají použí pouze na číslech.

Poznámka - pochybuji, že budete hojne používat logické operátory, ale až ta chvíle nastane tak ať víte, že existují :-)

Podmínka IF

Konečně jsem se dostal k hlavní věci této lekce. Nebudu to okecávat a přejdu rovnou k věci.

Funkce


prontera.gat,100,100,0	script	Honza	120,{
      if (BaseLevel < 80) end; // pokud je level postavy mensi jak 80 nebude se s clovekem vubec bavit.
      mes "Ahoj ja jsem Honza.";
skok: mes "Opakuj po me tohle cislo: 1";
      next;
      mes "Ted je rada na tobe";
      input @cislo;
      if (@cislo == 1) 
         {
         mes "Spravne jsi sikovny";
         close;
         }
      mes "Spatne zkus to znovu.";
      next;
      goto skok;
      close;
 }

NEBO s použitím else:
      if (@cislo == 1) 
         {
         mes "Spravne jsi sikovny";
         close;
         }
         else
      { // - viz nize
      mes "Spatne zkus to znovu.";
      next;
      goto skok;
      close;
      } // - "prikazova zavorka", else plati pouze na 1 prikaz primo nasledujici po else,
              proto pro vice prikazu se pouziva tato zavorka {} (napr. stejne jako begin end v pascalu)
 }

Poznámka - snad jsem na něco nezapomněl, pokud maté jakýkoliv dotaz nebo mate pocit, že tomu něco chýbí nebojte se napsat.