Оператор If/Then/Else (Если/То/Иначе) - Wc3-Maps Форум













[ Главная · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: Strateg, Melissa 
Wc3-Maps Форум » Раздел для картостроителей » GUI / Jass » Оператор If/Then/Else (Если/То/Иначе) (Автор урока: Ariantas)
Оператор If/Then/Else (Если/То/Иначе)
-
AriantasДата: Воскресенье, 13-01-2013, 09:48:41 | Сообщение # 1
Гражданин

загрузка наград ...
Группа: Заблокирован
Сообщений: 47
Репутация: 90
Статус: Не на сайте
О функции If/Then/Else


If/Then/Else - очень полезный оператор, позволяющий производить дополнительные проверки внутри триггера, деление его на несколько ветвей и т.д.

Данный оператор находится в категории
"Общие параметры":



Там мы видим две разновидности оператора:

"If/Then/Else, Multiple Functions" и "If/Then/Else". Выбираем "If/Then/Else, Multiple Functions", он более удобен

После создания мы видим следующее:



"Если" - сюда вносятся условия, необходимы для дальнейших действия
"То" - действия, которые будут выполнены в случае истинности условия
"Иначе" - действия, которые будут выполнены в случае ложности условия

Применение функции

Оператор широко применяется при создании различных систем, спеллов и т.д. Рассмотрим такой пример. Нам нужно создать спелл, которые будет наносить урон враждебным войскам, а дружеских исцелять. Тут нам на помощь приходит функция If/Then/Else.



В условии мы указали проверку на враждебность цели заклинания. Если цель враждебна, ТО ему будет нанесен урон в размере "500", ИНАЧЕ ему будет нанесен урон в размере "-500" (Отрицательное значение означает, что ему будет добавлено хп, т.е. исцеление)

Домашнее задание


Попробуйте реализовать спелл "Lvl?" Люцифера из DotA. Он основан на этом операторе

Код
Спелл: 100\150\200\250 урона + доп. 250 урона, если уровень вражеского героя кратен 6\5\4\3 или равен 25.

Дополнительные указания:

Алгоритм для решения этой задачи. Здесь Вам понадобятся знания из школьного курса математики. Вам необходимо будет найти остаток от деления уровня потенциальной жертвы на кратность на данном уровне спелла. Если остаток равен 0, то число кратно, иначе не кратно.

Кратность находится по формуле - "7 - [Уровень способности]"

Если не получится, обращайтесь по лс или в этой теме. Разберем решение поподробнее
 
-
Алексей456Дата: Воскресенье, 13-01-2013, 10:40:04 | Сообщение # 2
Темный маг

загрузка наград ...
Группа: Избранные
Сообщений: 293
Репутация: 442
Статус: Не на сайте
А почему "оператор"? Я всегда ее функцией называл.
А вообще очень полезная функция.

Здесь что-то было
 
-
AriantasДата: Воскресенье, 13-01-2013, 10:53:40 | Сообщение # 3
Гражданин

загрузка наград ...
Группа: Заблокирован
Сообщений: 47
Репутация: 90
Статус: Не на сайте
Алексей456, ее и функцией называют. В языках программирования она обычно называется условный оператор или условная инструкция
 
Wc3-Maps Форум » Раздел для картостроителей » GUI / Jass » Оператор If/Then/Else (Если/То/Иначе) (Автор урока: Ariantas)
Страница 1 из 11
Поиск:
Рейтинг@Mail.ru
Яндекс.Метрика

Copyright © 2010-2017
Вакансии :: Контакты
Мобильная версия сайта
chat