В JASS структура условий такова: if (условие) then
//Действия после удовлетворения условия.
else
//Действия, которые выполняются, если условие не удовлетворено.
endif
Привожу простой пример. Допустим, нам нужно сделать следующее: если переменная i равна 5, то прибавить к её значению 3, в противном случае отнять от значения 2. В коде это будет выглядеть так:
if (i == 5) then
set i = i + 3
else
set i = i - 2
endif
Для того, чтобы сказать условию "равно", нужно ставить двойное равно, одинарное не воспринимается. Ниже даю все знаки сравнения:
== - равно
!= - не равно
>= - больше или равно
<= - меньше или равно
> - больше
< - меньше
Теперь оптимизируем наше условие. Допустим, что нам не нужно ничего делать, если условие не выполняется. Тогда вы можете написать так:
if (i == 5) then
set i = i + 3
else
call DoNothing()
endif
Однако вы не оптимизировали код. С ним можно сделать 2 действия:
- Убрать call DoNothing(), она ничего не делает.
- Убрать else, т.к. мы не хотим ничего делать, если условие не выполняется.
Получим:
if (i == 5) then
set i = i + 3
endif
Отдельно расскажу об операторах and и or.
and означает, что для удовлетворения условия должны выполняться все условия. Приведём такой пример: если переменная i равна пяти, а переменная b меньше двух, то прибавить к переменной i три. Код будет таким:
if(i == 5 and b < 2) then
set i = i + 3
endif
or означает, что для удовлетворения условия должно выполниться хотя бы одно из них. Приведём такой пример: если переменная i равна пяти или переменная d меньше 140, то прибавить к переменной i три. Код будет таким:
if(i == 5 or d < 140) then
set i = i + 3
endif
Если вы хотите сделать условие в действиях при неудовлетворении условия, то используйте elseif. Приведём тот же пример: если переменная i равна пяти или переменная d меньше 140, то прибавить к переменной i три, в противном случае, если i равна четырём, добавить к значению i пять. Код будет такой:
if(i == 5 or d < 140) then
set i = i + 3
elseif(i == 4) then
set i = i + 5
endif
На сегодня лекция закончена. Спасибо за внимание.
Задание:
Потренироваться в условиях и сделать ваш очередной шарж. Жду работ!