Variables/cs
From Original War Support Wiki
Tutoriál napsal FreeWind
Úvod
Proměnná je zástupné jméno pro určitou hodnotu(např číslo).Hodnotu proměnné je možné změnit.
var promenna; ... nejake_cislo:=10; // Nastavíme hodnotu proměnné 'nejake_cislo' na 10 nejake_cislo:=nejake_cislo+10; // Zvýšíme hodnotu proměnné 'nejake_cislo' o 10. Nová hodnota je 20 nejake_cislo:=nejake_cislo-5; // Snížíme hodnotu proměnné o 5. Nová hodnota je 15 nejake_cislo:=0; // Nastavíme hodnotu proměnné 'nejake_cislo' na 0
Booleanovské proměnné
Booleanovská proměnná je proměnná s hodnotou 'true' nebo 'false' (pravda/nepravda).
V SAILu stejně jako ve většině programovacích jazyků je za 'true' povážována jakákoliv nenulová hodnota a za 'false' nula.
var ma_se_neco_stat; ... ma_se_neco_stat:=false; if ma_se_neco_stat then begin // Protože 'ma_se_neco_stat' má hodnotu 'false' kód v těle 'if' se neprovede end; ma_se_neco_stat:=true; if ma_se_neco_stat then begin // Protože 'ma_se_neco_stat' má hodnotu 'true' kód v těle 'if' se provede end;
Hodnotu pravdivostní proměnné je možné otočit(z 'true' na 'false' a obráceně) pomocí operátoru 'not':
var ma_se_neco_stat; ... ma_se_neco_stat:=false; if not ma_se_neco_stat then // Z 'false' se stává 'true' begin // Kód se provede end;
Používání pole jako pravdivostní proměnné
Díky tomu, že při použítí názvu pole jako proměnné dojde ve skutečnosti použití jeho délky(ne vždy), můžeme jako pravdivostní hodnotu použít i pole.
var rusove; ... rusove:=FilterAllUnits([[f_side,3]]); if not rusove then // Pokud na mapě nejsou příslušníci strany 3, // pole má nulovou délku (false), tu pomocí operátoru 'not' otočime na 'true'. begin // Pokud na mapě nejsou rusové kód v těle 'if' se provede. end;