Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Топ:
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов...
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Интересное:
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2018-01-29 | 199 |
5.00
из
|
Заказать работу |
|
|
Устанавливает поведение «тумана войны» на суше и на море. Если соответствующий параметр равен 1, то герой игрока будет открывать «туман войны», иначе – нет.
void Trigger(nTriggerType,...)
Приводит к вызову заданной параметром процедуры по наступлению того или иного события. Для останова триггера используется аналогичный по параметрам вызов Trigger, в котором вместо названия процедуры передается nil. Для каждого типа события можно установить только один перехватчик.
Функция имеет алиас с именем SetTrigger.
Для большинства событий (за исключением, разве что OBJECT_TOUCH) можно написать аналогичную конструкцию без использования функции Trigger, а с использованием проверки условия в отдельном потоке. Нужно ли это делать – практика покажет.
Формат параметров (и список параметров вызываемой процедуры) зависят от типа триггера nTriggerType (константы прописаны в прописаны в /scripts/advmap-startup.lua) Разберу их отдельно.
NEW_DAY_TRIGGER = 0
Формат вызова:
Trigger(NEW_DAY_TRIGGER, sProc)
Формат вызываемой процедуры:
void sProc()
Останов:
Trigger(NEW_DAY_TRIGGER, nil)
Процедура будет вызываться по наступлении каждого нового дня.
PLAYER_ADD_HERO_TRIGGER = 1
Формат вызова:
Trigger(PLAYER_ADD_HERO_TRIGGER, nPlayerID, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName)
Останов:
Trigger(PLAYER_ADD_HERO_TRIGGER, nPlayerID, nil)
Процедура вызывается, когда игрок nPlayerID получает нового героя. Имя данного героя передается в процедуру в качестве параметра.
PLAYER_REMOVE_HERO_TRIGGER = 2
Формат вызова:
Trigger(PLAYER_REMOVE_HERO_TRIGGER, nPlayerID, sProc)
Формат вызываемой процедуры:
void sProc(sHeroNameLooser, sHeroNameWinner)
Останов:
Trigger(PLAYER_REMOVE_HERO_TRIGGER, nPlayerID, nil)
Процедура вызывается, когда игрок nPlayerID теряет героя. В процедуру передается имена двух героев – потерянного игроком и победившего в битве, вызвавшей эту потерю. В случае, если герой был просто уволен, в качестве второго параметра будет передан nil.
|
OBJECTIVE_STATE_CHANGE_TRIGGER = 3
Формат вызова:
Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER, sObjectiveID, sProc)
Формат вызываемой процедуры:
void sProc(nPlayerID)
Останов:
Trigger(OBJECTIVE_STATE_CHANGE_TRIGGER, sObjectiveID, nil)
Процедура вызывается, когда состояние объективы sObjectiveID для какого-либо игрока меняется. Идентификатор игрока передается в процедуру в качестве параметра.
OBJECT_TOUCH_TRIGGER = 4
Формат вызова:
Trigger(OBJECT_TOUCH_TRIGGER, sObjectID, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName, sObjectID)
Останов:
Trigger(OBJECT_TOUCH_TRIGGER, sObjectID, nil)
Процедура вызывается, когда игрок тыркнулся героем в объект с именем sObjectID. Имя данного героя и имя захваченного объекта передаются в процедуру в качестве параметров. См. функции IsObjectEnabled и SetObjectEnabled.
OBJECT_CAPTURE_TRIGGER = 5
Формат вызова:
Trigger(OBJECT_CAPTURE_TRIGGER, sObjectID, sProc)
Формат вызываемой процедуры:
void sProc(nPrevOwnerID, nNewOwnerID, sHeroName, sObjectID)
Останов:
Trigger(OBJECT_CAPTURE_TRIGGER, sObjectID, nil)
Процедура вызывается, когда объект с именем sObjectID меняет владельца. В процедуру передается в качестве параметров идентификатор прежнего владельца, идентификатор нового владельца, имя захватившего героя и собственно имя захваченного объекта.
REGION_ENTER_AND_STOP_TRIGGER = 6
Формат вызова:
Trigger(REGION_ENTER_AND_STOP_TRIGGER, sRegionName, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName)
Останов:
Trigger(REGION_ENTER_AND_STOP_TRIGGER, sRegionName, nil)
Процедура вызывается, когда какой-либо герой останавливается в регионе с именем sRegionName. Имя данного героя передается в процедуру в качестве параметра.
REGION_ENTER_WITHOUT_STOP_TRIGGER = 7
Формат вызова:
Trigger(REGION_ENTER_WITHOUT_STOP_TRIGGER, sRegionName, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName)
Останов:
Trigger(REGION_ENTER_WITHOUT_STOP_TRIGGER, sRegionName, nil)
Процедура вызывается, когда какой-либо герой попадает в регион с именем sRegionName (и не останавливается в нем). Имя данного героя передается в процедуру в качестве параметра.
HERO_LEVELUP_TRIGGER = 8
Формат вызова:
Trigger(LEVELUP_TRIGGER, sHeroName, sProc)
Формат вызываемой процедуры:
|
void sProc()
Останов:
Trigger(LEVELUP_TRIGGER, sHeroName, nil)
Процедура вызывается, когда герой с именем sHeroName повышает уровень.
WAR_FOG_ENTER_TRIGGER = 9
Формат вызова:
Trigger(WAR_FOG_ENTER_TRIGGER, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName)
Останов:
Trigger(WAR_FOG_ENTER_TRIGGER, nil)
Процедура вызывается, когда какой-либо герой вступает в область «тумана войны». (См. функцию SetWarfogBehaviour). Все параметры взяты из официального руководства по скриптам, добиться того, чтобы данный триггер как-то работал, лично мне не удалось.
TOWN_HERO_DEPLOY_TRIGGER = 10
Формат вызова:
Trigger(TOWN_HERO_DEPLOY_TRIGGER, sTownName, sProc)
Формат вызываемой процедуры:
void sProc(sHeroName)
Останов:
Trigger(TOWN_HERO_DEPLOY_TRIGGER, sTownName, nil)
Процедура вызывается, когда герой покидает город. В процедуру передается имя героя, покинувшего город.
Работа со звуком.
|
|
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!