Areatrigger actions: различия между версиями
Нет описания правки Метка: visualeditor |
Нет описания правки Метка: visualeditor |
||
| Строка 95: | Строка 95: | ||
|Уменьшение количества возможного исцеления (волна отхила может хильнуть 100к. Первого хильнула 10к, значит, осталось 90к для последующих) | |Уменьшение количества возможного исцеления (волна отхила может хильнуть 100к. Первого хильнула 10к, значит, осталось 90к для последующих) | ||
|} | |} | ||
===== targetFlags ===== | |||
Кого считать целью? | |||
{| class="wikitable" | |||
!Название | |||
!№ | |||
!Комментарий/описание | |||
|- | |||
|AT_TARGET_FLAG_FRIENDLY | |||
|1 | |||
|Применяется к целям, которые дружелюбны для владельца AreaTrigger (кто призвал его) | |||
|- | |||
|AT_TARGET_FLAG_VALIDATTACK | |||
|2 | |||
|Применяется к целям, которых может атаковать владелец AreaTrigger | |||
|- | |||
|AT_TARGET_FLAG_OWNER | |||
|4 | |||
|Применяется к владельцу AreaTrigger | |||
|- | |||
|AT_TARGET_FLAG_PLAYER | |||
|8 | |||
|Применяется только к игрокам | |||
|- | |||
|AT_TARGET_FLAG_NOT_PET | |||
|10 | |||
|Применяется ко всем, кроме петов | |||
|- | |||
|AT_TARGET_FLAG_CAST_AT_SRC | |||
|20 | |||
|Применяется к местоположению AreaTrigger`а | |||
|- | |||
|AT_TARGET_FLAG_CASTER_IS_TARGET | |||
|40 | |||
|Применяется к кастеру | |||
|- | |||
|AT_TARGET_FLAG_NOT_FULL_HP | |||
|80 | |||
|Применяется к целям, с неполным здоровьем | |||
|- | |||
|AT_TARGET_FLAG_ALWAYS_TRIGGER | |||
|100 | |||
|Применяется к каким-либо действиям, направленным на владельца. | |||
|- | |||
|AT_TARGET_FLAT_IN_FRONT | |||
|200 | |||
|Если цель подойдет со спины, то скилл не кастанется | |||
|- | |||
|AT_TARGET_FLAG_NOT_FULL_ENERGY | |||
|400 | |||
|Применяется к целям, у которых неполная энергия | |||
|- | |||
|AT_TARGET_FLAG_GROUP_OR_RAID | |||
|800 | |||
|Применяется к целям, которые находятся в группе с владельцом | |||
|- | |||
|AT_TARGET_FLAG_HOSTILE | |||
|1000 | |||
|Применяется к целям, которые являются врагами владельца | |||
|- | |||
|AT_TARGET_FLAG_TARGET_IS_CASTER | |||
|2000 | |||
|Применяется на цель кастера | |||
|} | |||
===== spellId ===== | |||
Скилл, с которым выполняется действие | |||
===== maxCharges ===== | |||
Количество срабатываний, после которых AreaTrigger исчезнет. Например, если стоит 0, то не используется; Если = 3, то повесит ауру 3 раза, после чего исчезнет | |||
===== aura ===== | |||
Проверяет наличие ауры на цели - если ауры нету, то действие не выполнится. Может быть отрицательным значением - тогда если есть аура, то действие не выполнится. | |||
===== hasspell ===== | |||
Проверяет наличие выученного спела у цели. Так же может быть отрицательным, как и '''aura''' | |||
===== chargeRecoveryTime ===== | |||
Время отката. Грубо говоря - КД между срабатываниями. T.е. если кто-то наступил на АТ, тогда повесит ауру, а следующее срабатывание будет только через выставленное КД | |||
===== scale ===== | |||
Если не равно 0, то при попадании по цели изменяет свой размер. Может быть отрицательным и положительным, соответственно увеличивает или уменьшает размер на заданное значение | |||
===== hitMaxCount ===== | |||
Максимально возможное число срабатываний АreaТrigger | |||
===== amount ===== | |||
Используется только в '''AT_ACTION_TYPE_CHANGE_AMOUNT_FROM_HEALT. '''Когда '''amont''' заканчивается, АreaТrigger исчезает | |||
Версия от 12:04, 3 ноября 2015
areatrigger_actions - таблица выполнения действий для areatriggers
Структура таблицы:
entry
Берется из EffectMiscValueA в спелах с эфектом SPELL_EFFECT_CREATE_AREATRIGGER или из ауры SPELL_AURA_CREATE_AREATRIGGER берется misc
id
Уникальный номер действия.
moment
Флаги момента срабатывания. Бывают следующих видов:
| Название | № | Комментарий/описание |
|---|---|---|
| AT_ACTION_MOMENT_ENTER | 1 | срабатывает при входе в зону дейсвтия АreaТrigger |
| AT_ACTION_MOMENT_LEAVE | 2 | срабатывает, когда цель (таргет) покидает зону действия АreaТrigger |
| AT_ACTION_MOMENT_UPDATE | 4 | срабатывает при апдейте(обнлвлении) АreaТrigger |
| AT_ACTION_MOMENT_DESPAWN | 8 | срабатывает, когда AreaTrigger деспаунится (исчезает) |
| AT_ACTION_MOMENT_SPAWN | 10 | срабатывает, когда AreaTrigger устанавливается (появляется) |
| AT_ACTION_MOMENT_REMOVE | 20 | срабатывает при удалении AreaTrigger |
| AT_ACTION_MOMENT_ON_THE_WAY | 40 | момент, когда цель находится между начальной и конечной точкой. Работает, только если активен AT_ACTION_MOMENT_ENTER |
| AT_ACTION_MOMENT_ON_STOP_MOVE | 80 | момент, когда цель останавливает между начальной и конечной точкой. Работает, только если активен AT_ACTION_MOMENT_ENTER |
actionType
Действие, которое выполняется на таргет (цель) при срабатывании
| Название | № | Комментарий/описание |
|---|---|---|
| AT_ACTION_TYPE_CAST_SPELL | 0 | Кастовать способность |
| AT_ACTION_TYPE_REMOVE_AURA | 1 | Удалить ауру |
| AT_ACTION_TYPE_ADD_STACK | 2 | Добавить стак |
| AT_ACTION_TYPE_REMOVE_STACK | 3 | Удалить стак |
| AT_ACTION_TYPE_CHANGE_SCALE | 4 | Изменить размер |
| AT_ACTION_TYPE_SHARE_DAMAGE | 5 | Деление урона на количество целей |
| AT_ACTION_TYPE_APPLY_MOVEMENT_FORCE | 6 | Применяет ветер (сдувает персонажей) |
| AT_ACTION_TYPE_REMOVE_MOVEMENT_FORCE | 7 | Удаляет ветер |
| AT_ACTION_TYPE_CHANGE_DURATION_ANY_AT | 8 | Изменить задержку для AreaTrigger (например, цепной реакция при взрыве бомбы - взрываются и остальные близлежащие |
| AT_ACTION_TYPE_CHANGE_AMOUNT_FROM_HEALT | 9 | Уменьшение количества возможного исцеления (волна отхила может хильнуть 100к. Первого хильнула 10к, значит, осталось 90к для последующих) |
targetFlags
Кого считать целью?
| Название | № | Комментарий/описание |
|---|---|---|
| AT_TARGET_FLAG_FRIENDLY | 1 | Применяется к целям, которые дружелюбны для владельца AreaTrigger (кто призвал его) |
| AT_TARGET_FLAG_VALIDATTACK | 2 | Применяется к целям, которых может атаковать владелец AreaTrigger |
| AT_TARGET_FLAG_OWNER | 4 | Применяется к владельцу AreaTrigger |
| AT_TARGET_FLAG_PLAYER | 8 | Применяется только к игрокам |
| AT_TARGET_FLAG_NOT_PET | 10 | Применяется ко всем, кроме петов |
| AT_TARGET_FLAG_CAST_AT_SRC | 20 | Применяется к местоположению AreaTrigger`а |
| AT_TARGET_FLAG_CASTER_IS_TARGET | 40 | Применяется к кастеру |
| AT_TARGET_FLAG_NOT_FULL_HP | 80 | Применяется к целям, с неполным здоровьем |
| AT_TARGET_FLAG_ALWAYS_TRIGGER | 100 | Применяется к каким-либо действиям, направленным на владельца. |
| AT_TARGET_FLAT_IN_FRONT | 200 | Если цель подойдет со спины, то скилл не кастанется |
| AT_TARGET_FLAG_NOT_FULL_ENERGY | 400 | Применяется к целям, у которых неполная энергия |
| AT_TARGET_FLAG_GROUP_OR_RAID | 800 | Применяется к целям, которые находятся в группе с владельцом |
| AT_TARGET_FLAG_HOSTILE | 1000 | Применяется к целям, которые являются врагами владельца |
| AT_TARGET_FLAG_TARGET_IS_CASTER | 2000 | Применяется на цель кастера |
spellId
Скилл, с которым выполняется действие
maxCharges
Количество срабатываний, после которых AreaTrigger исчезнет. Например, если стоит 0, то не используется; Если = 3, то повесит ауру 3 раза, после чего исчезнет
aura
Проверяет наличие ауры на цели - если ауры нету, то действие не выполнится. Может быть отрицательным значением - тогда если есть аура, то действие не выполнится.
hasspell
Проверяет наличие выученного спела у цели. Так же может быть отрицательным, как и aura
chargeRecoveryTime
Время отката. Грубо говоря - КД между срабатываниями. T.е. если кто-то наступил на АТ, тогда повесит ауру, а следующее срабатывание будет только через выставленное КД
scale
Если не равно 0, то при попадании по цели изменяет свой размер. Может быть отрицательным и положительным, соответственно увеличивает или уменьшает размер на заданное значение
hitMaxCount
Максимально возможное число срабатываний АreaТrigger
amount
Используется только в AT_ACTION_TYPE_CHANGE_AMOUNT_FROM_HEALT. Когда amont заканчивается, АreaТrigger исчезает