If (Lua): различия между версиями
Tatikoma (обсуждение | вклад) (Новая страница: «== Описание == '''if''' - условный оператор содержит логическое выражение. Позволяет выполнят...») |
Tatikoma (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
== Описание == | == Описание == | ||
'''if''' - условный оператор содержит логическое выражение. Позволяет выполнять определенный код в зависимости от результатов некоторого условия. Так же выполняет проверку последнего сообщения от сервера (для ultima online). Операция принимает вид сравнения. | '''if''' - условный оператор содержит логическое выражение. Позволяет выполнять определенный код в зависимости от результатов некоторого условия. Так же выполняет проверку последнего сообщения от сервера (для ultima online). Операция принимает вид сравнения. | ||
− | + | <br>Если логическое выражение истинно (true) - будет выполнен код. Если ложно (false)- код выполняться не будет. | |
− | + | <br>Часто if используется в связке с else. Конструкция if-else имеет тот же вид, что if, но с дополнительной возможностью для выполнения другого кода, если условие не истинно (false). | |
− | + | <br>Для выполнения операций отрицания результата выражения: if (not (условие)). | |
− | + | <br>Для операций сравнения используются знаки операций: >, <, ==(равно), <=, >=, ~=(не равно). Так же используются логические операторы or или and. | |
− | + | <br>or- логическое ИЛИ. Или один или другой или оба. | |
− | + | <br>and- логическое И. И один и другой. | |
− | + | <br>Результатом логической операции является число 1, если результат истинный, или 0, если результат ложный. | |
− | + | <br>Для указания приоритета нескольких операций используются круглые скобки: (, ). | |
− | + | <br>В конце операции необходимо поставить end для корректного выполнения сценария. | |
== Синтаксис == | == Синтаксис == | ||
Привязка к окну: опциональна. | Привязка к окну: опциональна. | ||
− | + | <br>Работа со свернутым окном: частично. | |
if условие then | if условие then | ||
[строки кода] | [строки кода] | ||
Строка 31: | Строка 31: | ||
--lua | --lua | ||
− | if 2 | + | if 2 < 3 then |
msg ("два меньше трех") | msg ("два меньше трех") | ||
end | end | ||
Строка 47: | Строка 47: | ||
local two = 2 | local two = 2 | ||
local five = 5 | local five = 5 | ||
− | if two | + | if two < five or 3 < five then |
msg ("два меньше пяти или три меньше пяти") | msg ("два меньше пяти или три меньше пяти") | ||
end | end | ||
Строка 73: | Строка 73: | ||
[[While (Lua)]] | [[While (Lua)]] | ||
− | + | <br>[[For (Lua)]] |
Версия 10:42, 28 августа 2019
Содержание
Описание
if - условный оператор содержит логическое выражение. Позволяет выполнять определенный код в зависимости от результатов некоторого условия. Так же выполняет проверку последнего сообщения от сервера (для ultima online). Операция принимает вид сравнения.
Если логическое выражение истинно (true) - будет выполнен код. Если ложно (false)- код выполняться не будет.
Часто if используется в связке с else. Конструкция if-else имеет тот же вид, что if, но с дополнительной возможностью для выполнения другого кода, если условие не истинно (false).
Для выполнения операций отрицания результата выражения: if (not (условие)).
Для операций сравнения используются знаки операций: >, <, ==(равно), <=, >=, ~=(не равно). Так же используются логические операторы or или and.
or- логическое ИЛИ. Или один или другой или оба.
and- логическое И. И один и другой.
Результатом логической операции является число 1, если результат истинный, или 0, если результат ложный.
Для указания приоритета нескольких операций используются круглые скобки: (, ).
В конце операции необходимо поставить end для корректного выполнения сценария.
Синтаксис
Привязка к окну: опциональна.
Работа со свернутым окном: частично.
if условие then [строки кода] end
if (not (условие)) then [строки кода] end
if условие then [строки кода] else [строки кода, если условие ложно] end
Примеры
--lua if 2 < 3 then msg ("два меньше трех") end -- Результат: вывод сообщения "два меньше трех"
--lua if 2 > 3 then msg ("два больше трех") else msg ("два не может быть больше трех") end -- Результат: вывод сообщения "два не может быть больше трех"
--lua local two = 2 local five = 5 if two < five or 3 < five then msg ("два меньше пяти или три меньше пяти") end -- Результат: вывод сообщения "два меньше пяти или три меньше пяти"
--lua local num = 3 if 7 ~= 4 and num ~= 4 then msg ("семь не равно четырём и три не равно четырём") else msg ("четыре и num равно семи") end -- Результат: вывод сообщения "семь не равно четырём и три не равно четырём"
--lua -- Выполнение действия в определённое время if os.date("%H:%M") == "23:14" then -- в 23:14 выполнится условие -- тут пишем что нужно выполнить, например: start_script (3) -- запустить скрипт номер 3 alarm () -- звуковой сигнал stop_script () -- остановить текущий скрипт end