Smart scripts: различия между версиями

Материал из Uwow
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 50: Строка 50:
==== 7 = SMART_EVENT_EVADE ====
==== 7 = SMART_EVENT_EVADE ====
     При ивейде.
     При ивейде.
==== 8 = SMART_EVENT_SPELLHIT ====
==== 8 = SMART_EVENT_SPELLHIT ====
     При попадании спеллом по NPC / объекту.
     При попадании спеллом по NPC / объекту.
Строка 57: Строка 56:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 9 = SMART_EVENT_RANGE ====
==== 9 = SMART_EVENT_RANGE ====
     При нахождении игрока в радиусе.
     При нахождении игрока в радиусе.
Строка 64: Строка 62:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 10 = SMART_EVENT_OOC_LOS ====
==== 10 = SMART_EVENT_OOC_LOS ====
     При нахождении игрока в радиусе вне боя.
     При нахождении игрока в радиусе вне боя.
Строка 71: Строка 68:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 11 = SMART_EVENT_RESPAWN ====
==== 11 = SMART_EVENT_RESPAWN ====
     При респавне NPC / объекта.
     При респавне NPC / объекта.
Строка 77: Строка 73:
     2. Map
     2. Map
     3. Area
     3. Area
==== 12 = SMART_EVENT_TARGET_HEALTH_PCT ====
==== 12 = SMART_EVENT_TARGET_HEALTH_PCT ====
     При достижении целью определенного значения HP.
     При достижении целью определенного значения HP.
Строка 84: Строка 79:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 13 = SMART_EVENT_TARGET_CASTING ====
==== 13 = SMART_EVENT_TARGET_CASTING ====
     Если цель кастует спелл.
     Если цель кастует спелл.
     1. Время повтора проверки (мин)
     1. Время повтора проверки (мин)
     2. Время повтора проверки (макс)
     2. Время повтора проверки (макс)
==== 14 = SMART_EVENT_FRIENDLY_HEALTH ====
==== 14 = SMART_EVENT_FRIENDLY_HEALTH ====
     Если у друга не хватает HP.
     Если у друга не хватает HP.
Строка 96: Строка 89:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 15 = SMART_EVENT_FRIENDLY_IS_CC ====
==== 15 = SMART_EVENT_FRIENDLY_IS_CC ====
     Если друг сражается.
     Если друг сражается.
Строка 102: Строка 94:
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
==== 16 = SMART_EVENT_FRIENDLY_MISSING_BUFF ====
==== 16 = SMART_EVENT_FRIENDLY_MISSING_BUFF ====
     Если у друга нет баффа.
     Если у друга нет баффа.
Строка 109: Строка 100:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 17 = SMART_EVENT_SUMMONED_UNIT ====
==== 17 = SMART_EVENT_SUMMONED_UNIT ====
     При призыве NPC.
     При призыве NPC.
Строка 115: Строка 105:
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
==== 18 = SMART_EVENT_TARGET_MANA_PCT ====
==== 18 = SMART_EVENT_TARGET_MANA_PCT ====
     При достижении целью определенного значения MP.
     При достижении целью определенного значения MP.
Строка 122: Строка 111:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 19 = SMART_EVENT_ACCEPTED_QUEST ====
==== 19 = SMART_EVENT_ACCEPTED_QUEST ====
     При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
     При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
Строка 128: Строка 116:
     2. Кулдаун проверки (мин)
     2. Кулдаун проверки (мин)
     3. Кулдаун проверки (макс)
     3. Кулдаун проверки (макс)
==== 20 = SMART_EVENT_REWARD_QUEST ====
==== 20 = SMART_EVENT_REWARD_QUEST ====
     При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
     При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
Строка 134: Строка 121:
     2. Кулдаун проверки (мин)
     2. Кулдаун проверки (мин)
     3. Кулдаун проверки (макс)
     3. Кулдаун проверки (макс)
==== 21 = SMART_EVENT_REACHED_HOME ====
==== 21 = SMART_EVENT_REACHED_HOME ====
     При возвращении в изначальное положение.
     При возвращении в изначальное положение.
==== 22 = SMART_EVENT_RECEIVE_EMOTE ====
==== 22 = SMART_EVENT_RECEIVE_EMOTE ====
     При получении эмоции.
     При получении эмоции.
Строка 143: Строка 128:
     2. Кулдаун проверки (мин)
     2. Кулдаун проверки (мин)
     3. Кулдаун проверки (макс)
     3. Кулдаун проверки (макс)
==== 23 = SMART_EVENT_HAS_AURA ====
==== 23 = SMART_EVENT_HAS_AURA ====
     При наличии ауры.
     При наличии ауры.
Строка 150: Строка 134:
     3. Кулдаун проверки (мин)
     3. Кулдаун проверки (мин)
     4. Кулдаун проверки (макс)
     4. Кулдаун проверки (макс)
==== 24 = SMART_EVENT_TARGET_BUFFED ====
==== 24 = SMART_EVENT_TARGET_BUFFED ====
     При бафе таргета.
     При бафе таргета.
Строка 157: Строка 140:
     3. Кулдаун проверки (мин)
     3. Кулдаун проверки (мин)
     4. Кулдаун проверки (макс)
     4. Кулдаун проверки (макс)
==== 25 = SMART_EVENT_RESET ====
==== 25 = SMART_EVENT_RESET ====
     При иведе, при спавне и при респавне.
     При иведе, при спавне и при респавне.
==== 26 = SMART_EVENT_IC_LOS ====
==== 26 = SMART_EVENT_IC_LOS ====
     При нахождении игрока в радиусе в бою.
     При нахождении игрока в радиусе в бою.
Строка 167: Строка 148:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 27 = SMART_EVENT_PASSENGER_BOARDED ====
==== 27 = SMART_EVENT_PASSENGER_BOARDED ====
     При посадке на себя пассажира.
     При посадке на себя пассажира.
Строка 173: Строка 153:
     2. Время повтора проверки (макс)
     2. Время повтора проверки (макс)
     3. Тип пассажира (0 - all, 1 - creature, 2 - player)
     3. Тип пассажира (0 - all, 1 - creature, 2 - player)
==== 28 = SMART_EVENT_PASSENGER_REMOVED ====
==== 28 = SMART_EVENT_PASSENGER_REMOVED ====
     При высадке пассажира.
     При высадке пассажира.
Строка 179: Строка 158:
     2. Время повтора проверки (макс)
     2. Время повтора проверки (макс)
     3. Тип пассажира (0 - all, 1 - creature, 2 - player)
     3. Тип пассажира (0 - all, 1 - creature, 2 - player)
==== 29 = SMART_EVENT_CHARMED ====
==== 29 = SMART_EVENT_CHARMED ====
     При подчинении себя.
     При подчинении себя.
==== 30 = SMART_EVENT_CHARMED_TARGET ====
==== 30 = SMART_EVENT_CHARMED_TARGET ====
     При подчинении цели.
     При подчинении цели.
==== 31 = SMART_EVENT_SPELLHIT_TARGET ====
==== 31 = SMART_EVENT_SPELLHIT_TARGET ====
     При попадании спеллом по цели.
     При попадании спеллом по цели.
Строка 192: Строка 168:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 32 = SMART_EVENT_DAMAGED ====
==== 32 = SMART_EVENT_DAMAGED ====
     При получении урона.
     При получении урона.
Строка 199: Строка 174:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 33 = SMART_EVENT_DAMAGED_TARGET ====
==== 33 = SMART_EVENT_DAMAGED_TARGET ====
     При нанесении урона.
     При нанесении урона.
Строка 206: Строка 180:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 34 = SMART_EVENT_MOVEMENTINFORM ====
==== 34 = SMART_EVENT_MOVEMENTINFORM ====
     При достижении точки.
     При достижении точки.
     1. Тип точки
     1. Тип точки
     2. Идентификатор точки
     2. Идентификатор точки
==== 35 = SMART_EVENT_SUMMON_DESPAWNED ====
==== 35 = SMART_EVENT_SUMMON_DESPAWNED ====
     При деспавне суммона.
     При деспавне суммона.
Строка 217: Строка 189:
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
==== 36 = SMART_EVENT_CORPSE_REMOVED ====
==== 36 = SMART_EVENT_CORPSE_REMOVED ====
     При пропаже тела.
     При пропаже тела.
==== 37 = SMART_EVENT_AI_INIT ====
==== 37 = SMART_EVENT_AI_INIT ====
     При инициализации.
     При инициализации.
==== 38 = SMART_EVENT_DATA_SET ====
==== 38 = SMART_EVENT_DATA_SET ====
     При получении переменной.
     При получении переменной.
Строка 230: Строка 199:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 39 = SMART_EVENT_WAYPOINT_START ====
==== 39 = SMART_EVENT_WAYPOINT_START ====
     При начале пути.
     При начале пути.
     1. Идентификатор пути (waypoints)
     1. Идентификатор пути (waypoints)
==== 40 = SMART_EVENT_WAYPOINT_REACHED ====
==== 40 = SMART_EVENT_WAYPOINT_REACHED ====
     При достижении точки.
     При достижении точки.
     1. Идентификатор точки
     1. Идентификатор точки
     2. Идентификатор пути (waypoints)
     2. Идентификатор пути (waypoints)
==== 41 = SMART_EVENT_TRANSPORT_ADDPLAYER ====
==== 41 = SMART_EVENT_TRANSPORT_ADDPLAYER ====
     При посадке игрока на транспорт.
     При посадке игрока на транспорт.
==== 42 = SMART_EVENT_TRANSPORT_ADDCREATURE ====
==== 42 = SMART_EVENT_TRANSPORT_ADDCREATURE ====
     При посадке NPC на транспорт.
     При посадке NPC на транспорт.
     1. Идентификатор NPC
     1. Идентификатор NPC
==== 43 = SMART_EVENT_TRANSPORT_REMOVE_PLAYER ====
==== 43 = SMART_EVENT_TRANSPORT_REMOVE_PLAYER ====
     При высадке игрока.
     При высадке игрока.
==== 44 = SMART_EVENT_TRANSPORT_RELOCATE ====
==== 44 = SMART_EVENT_TRANSPORT_RELOCATE ====
     При достижении транспортом точки.
     При достижении транспортом точки.
     1. Идентификатор точки
     1. Идентификатор точки
==== 45 = SMART_EVENT_INSTANCE_PLAYER_ENTER ====
==== 45 = SMART_EVENT_INSTANCE_PLAYER_ENTER ====
     При попадании игрока в инст.
     При попадании игрока в инст.
Строка 259: Строка 221:
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
==== 46 = SMART_EVENT_AREATRIGGER_ONTRIGGER ====
==== 46 = SMART_EVENT_AREATRIGGER_ONTRIGGER ====
     При входе в арея триггер.
     При входе в арея триггер.
Строка 265: Строка 226:
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
==== 47 = SMART_EVENT_QUEST_ACCEPTED ====
==== 47 = SMART_EVENT_QUEST_ACCEPTED ====
     При взятии квеста (любого).
     При взятии квеста (любого).
==== 48 = SMART_EVENT_QUEST_OBJ_COPLETETION ====
==== 48 = SMART_EVENT_QUEST_OBJ_COPLETETION ====
     Выключен.
     Выключен.
==== 49 = SMART_EVENT_QUEST_COMPLETION ====
==== 49 = SMART_EVENT_QUEST_COMPLETION ====
     Выключен.
     Выключен.
==== 50 = SMART_EVENT_QUEST_REWARDED ====
==== 50 = SMART_EVENT_QUEST_REWARDED ====
     При сдаче квеста (любого).
     При сдаче квеста (любого).
==== 51 = SMART_EVENT_QUEST_FAIL ====
==== 51 = SMART_EVENT_QUEST_FAIL ====
     Выключен.
     Выключен.
==== 52 = SMART_EVENT_TEXT_OVER ====
==== 52 = SMART_EVENT_TEXT_OVER ====
     При триггере после текста (запускается 1 экшином).
     При триггере после текста (запускается 1 экшином).
     1. Идентификатор группы текстов
     1. Идентификатор группы текстов
     2. Идентификатор NPC кто говорил
     2. Идентификатор NPC кто говорил
==== 53 = SMART_EVENT_RECEIVE_HEAL ====
==== 53 = SMART_EVENT_RECEIVE_HEAL ====
     При получении исцеления.
     При получении исцеления.
Строка 292: Строка 246:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
==== 54 = SMART_EVENT_JUST_SUMMONED ====
==== 54 = SMART_EVENT_JUST_SUMMONED ====
     При суммоне.
     При суммоне.
==== 55 = SMART_EVENT_WAYPOINT_PAUSED ====
==== 55 = SMART_EVENT_WAYPOINT_PAUSED ====
     При паузе пути.
     При паузе пути.
     1. Идентификатор точки
     1. Идентификатор точки
     2. Идентификатор пути (waypoints)
     2. Идентификатор пути (waypoints)
==== 56 = SMART_EVENT_WAYPOINT_RESUMED ====
==== 56 = SMART_EVENT_WAYPOINT_RESUMED ====
     При продолжении пути.
     При продолжении пути.
     1. Идентификатор точки
     1. Идентификатор точки
     2. Идентификатор пути (waypoints)
     2. Идентификатор пути (waypoints)
==== 57 = SMART_EVENT_WAYPOINT_RESUMED ====
==== 57 = SMART_EVENT_WAYPOINT_RESUMED ====
     При остановке пути.
     При остановке пути.
     1. Идентификатор точки
     1. Идентификатор точки
     2. Идентификатор пути (waypoints)
     2. Идентификатор пути (waypoints)
==== 58 = SMART_EVENT_WAYPOINT_ENDED ====
==== 58 = SMART_EVENT_WAYPOINT_ENDED ====
     При окончании пути.
     При окончании пути.
     1. Идентификатор точки
     1. Идентификатор точки
     2. Идентификатор пути (waypoints)
     2. Идентификатор пути (waypoints)
==== 59 = SMART_EVENT_TIMED_EVENT_TRIGGERED ====
==== 59 = SMART_EVENT_TIMED_EVENT_TRIGGERED ====
     При триггере ивента (создаётся 67 экшином).
     При триггере ивента (создаётся 67 экшином).
     1. Идентификатор ивента
     1. Идентификатор ивента
==== 60 = SMART_EVENT_UPDATE ====
==== 60 = SMART_EVENT_UPDATE ====
     Таймер.
     Таймер.
Строка 326: Строка 273:
     3. Время повтора таймера (мин)
     3. Время повтора таймера (мин)
     4. Время повтора таймера (макс)
     4. Время повтора таймера (макс)
==== 61 = SMART_EVENT_LINK ====
==== 61 = SMART_EVENT_LINK ====
     При линке из другого смарта (запускается через колонку link).
     При линке из другого смарта (запускается через колонку link).
==== 62 = SMART_EVENT_GOSSIP_SELECT ====
==== 62 = SMART_EVENT_GOSSIP_SELECT ====
     При использовнии госсип меню.
     При использовнии госсип меню.
Строка 336: Строка 281:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
   
  ==== 63 = SMART_EVENT_JUST_CREATED ====
==== 63 = SMART_EVENT_JUST_CREATED ====
     При инициализации скрипта.
     При инициализации скрипта.
   
  ==== 64 = SMART_EVENT_GOSSIP_HELLO ====
==== 64 = SMART_EVENT_GOSSIP_HELLO ====
     При открытии госсип меню.
     При открытии госсип меню.
   
  ==== 65 = SMART_EVENT_FOLLOW_COMPLETED ====
==== 65 = SMART_EVENT_FOLLOW_COMPLETED ====
     При выключении следования.
     При выключении следования.
   
  ==== 66 = SMART_EVENT_DUMMY_EFFECT ====
==== 66 = SMART_EVENT_DUMMY_EFFECT ====
     При думми эффектах спелла.
     При думми эффектах спелла.
   
  ==== 67 = SMART_EVENT_IS_BEHIND_TARGET ====
==== 67 = SMART_EVENT_IS_BEHIND_TARGET ====
     При нахождении у цели за спиной.
     При нахождении у цели за спиной.
   
  ==== 68 = SMART_EVENT_GAME_EVENT_START ====
==== 68 = SMART_EVENT_GAME_EVENT_START ====
     При начале гейм ивента.
     При начале гейм ивента.
   
  ==== 69 = SMART_EVENT_GAME_EVENT_END ====
==== 69 = SMART_EVENT_GAME_EVENT_END ====
     При окончании гейм ивента.
     При окончании гейм ивента.
   
  ==== 70 = SMART_EVENT_GO_STATE_CHANGED ====
==== 70 = SMART_EVENT_GO_STATE_CHANGED ====
     При изменении состояния объекта.
     При изменении состояния объекта.
   
  ==== 71 = SMART_EVENT_GO_EVENT_INFORM ====
==== 71 = SMART_EVENT_GO_EVENT_INFORM ====
     Используется в ядре.
     Используется в ядре.
   
  ==== 72 = SMART_EVENT_ACTION_DONE ====
==== 72 = SMART_EVENT_ACTION_DONE ====
     Используется в ядре.
     Используется в ядре.
   
  ==== 73 = SMART_EVENT_ON_SPELLCLICK ====
==== 73 = SMART_EVENT_ON_SPELLCLICK ====
     При спеллклике.
     При спеллклике.
     1. Время повтора проверки (мин)
     1. Время повтора проверки (мин)
     2. Время повтора проверки (макс)
     2. Время повтора проверки (макс)
     3. Только игрок (=1)
     3. Только игрок (=1)
   
  ==== 74 = SMART_EVENT_CHECK_DIST_TO_HOME ====
==== 74 = SMART_EVENT_CHECK_DIST_TO_HOME ====
     Если расстояние до изначальной позиции больше значения.
     Если расстояние до изначальной позиции больше значения.
     1. Значение
     1. Значение
Строка 379: Строка 312:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
   
  ==== 75 = SMART_EVENT_EVENTOBJECT_ONTRIGGER ====
==== 75 = SMART_EVENT_EVENTOBJECT_ONTRIGGER ====
     При входе в ивент обжект.
     При входе в ивент обжект.
     1. Идентификатор ивент обжекта
     1. Идентификатор ивент обжекта
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
   
  ==== 76 = SMART_EVENT_ON_TAXIPATHTO ====
==== 76 = SMART_EVENT_ON_TAXIPATHTO ====
     При начале такси.
     При начале такси.
     1. Идентификатор такси
     1. Идентификатор такси
   
  ==== 77 = SMART_EVENT_EVENTOBJECT_OFFTRIGGER ====
==== 77 = SMART_EVENT_EVENTOBJECT_OFFTRIGGER ====
     При выходе из ивент обжекта.
     При выходе из ивент обжекта.
     1. Идентификатор ивент обжекта
     1. Идентификатор ивент обжекта
     2. Время повтора проверки (мин)
     2. Время повтора проверки (мин)
     3. Время повтора проверки (макс)
     3. Время повтора проверки (макс)
   
  ==== 78 = SMART_EVENT_ON_APPLY_OR_REMOVE_AURA ====
==== 78 = SMART_EVENT_ON_APPLY_OR_REMOVE_AURA ====
     При наложении или снятии ауры.
     При наложении или снятии ауры.
     1. Идентификатор спелла
     1. Идентификатор спелла
Строка 402: Строка 331:
     3. Наложение (=1) или снятие (=0)
     3. Наложение (=1) или снятие (=0)
     4. Время повтора проверки
     4. Время повтора проверки
   
  ==== 79 = SMART_EVENT_ON_FIND_OBJECT_IN_RANGE ====
==== 79 = SMART_EVENT_ON_FIND_OBJECT_IN_RANGE ====
     При нахождении в радиусе объекта.
     При нахождении в радиусе объекта.
     1. Расстояние
     1. Расстояние
Строка 410: Строка 338:
     4. Время повтора проверки
     4. Время повтора проверки
     5. Кулдаун проверки
     5. Кулдаун проверки
   
  ==== 80 = SMART_EVENT_ON_SPECIAL_DATA ====
==== 80 = SMART_EVENT_ON_SPECIAL_DATA ====
     Когда специальная переменная равна значению.
     Когда специальная переменная равна значению.
     1. Значение
     1. Значение
     2. Время повтора проверки
     2. Время повтора проверки
   
  ==== 81 = SMART_EVENT_ON_OWNER_HAS_QUEST ====
==== 81 = SMART_EVENT_ON_OWNER_HAS_QUEST ====
     Если у суммонера есть квест.
     Если у суммонера есть квест.
     1. Идентификатор квеста
     1. Идентификатор квеста
     2. Есть квест (=0) или нет квеста (=1)
     2. Есть квест (=0) или нет квеста (=1)
     3. Время повтора проверки
     3. Время повтора проверки
   
  ==== 82 = SMART_EVENT_ON_SPECIAL_DATA_SET ====
==== 82 = SMART_EVENT_ON_SPECIAL_DATA_SET ====
     При изменении специальной переменной.
     При изменении специальной переменной.
     1. Время повтора проверки (мин)
     1. Время повтора проверки (мин)
     2. Время повтора проверки (макс)
     2. Время повтора проверки (макс)
    
   ==== 83 = SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST ====
==== 83 = SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST ====
     Если у суммонера есть завершенный обжектив.
     Если у суммонера есть завершенный обжектив.
     1. Идентификатор квеста
     1. Идентификатор квеста
Строка 434: Строка 358:
     4. Время повтора проверки (мин)
     4. Время повтора проверки (мин)
     5. Время повтора проверки (макс)
     5. Время повтора проверки (макс)
 
==== 84 = SMART_EVENT_ON_ENTER_VEHICLE ====
==== 84 = SMART_EVENT_ON_ENTER_VEHICLE ====
     При посадке на вехикл.
     При посадке на вехикл.
   
==== 85 = SMART_EVENT_ON_EXIT_VEHICLE ====
==== 85 = SMART_EVENT_ON_EXIT_VEHICLE ====
     При высадке с вехикла.
     При высадке с вехикла.
   
==== 86 = SMART_EVENT_ON_RANDOM_DATA ====
==== 86 = SMART_EVENT_ON_RANDOM_DATA ====
     При получении рандомной переменной (запускается 239 ивентом).
     При получении рандомной переменной (запускается 239 ивентом).
     1. Идентификатор переменной
     1. Идентификатор переменной
     
==== 87 = SMART_EVENT_ON_LAST_HIT ====
==== 87 = SMART_EVENT_ON_LAST_HIT ====
     Перед получением смертельного удара.
     Перед получением смертельного удара.
     
==== 88 = SMART_EVENT_ON_SPELL_FINISH_CAST ====
==== 88 = SMART_EVENT_ON_SPELL_FINISH_CAST ====
     Перед завершении каста.
     Перед завершении каста.
     1. Идентификатор спелла
     1. Идентификатор спелла
       
==== 89 = SMART_EVENT_FRIENDLY_HP_PCT ====
==== 89 = SMART_EVENT_FRIENDLY_HP_PCT ====
     Если у друга не хватает HP.
     Если у друга не хватает HP.
Строка 459: Строка 377:
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
     5. Тип друга (all units = 0, only creature = 1, only player = 2)
     5. Тип друга (all units = 0, only creature = 1, only player = 2)
       
==== 90 = SMART_EVENT_ON_LOOT_RELEASE ====
==== 90 = SMART_EVENT_ON_LOOT_RELEASE ====
     При закрытии окна лута.
     При закрытии окна лута.
         
==== 91 = SMART_EVENT_ON_SUMMON_DIES ====
==== 91 = SMART_EVENT_ON_SUMMON_DIES ====
     При смерти суммона.
     При смерти суммона.
     1. Идентификатор NPC
     1. Идентификатор NPC
         
==== 92 = SMART_EVENT_ON_OWNER_RECEIVE_KILLCREDIT ====
==== 92 = SMART_EVENT_ON_OWNER_RECEIVE_KILLCREDIT ====
     При получении владельцем килкредита.
     При получении владельцем килкредита.
     1. Идентификатор килкредита
     1. Идентификатор килкредита
           
==== 93 = SMART_EVENT_ON_AT_ENTER ====
==== 93 = SMART_EVENT_ON_AT_ENTER ====
     При входе в арея триггер.
     При входе в арея триггер.
Строка 478: Строка 392:
     4. Идентификатор NPC
     4. Идентификатор NPC
     5. GUID NPC
     5. GUID NPC
           
==== 94 = SMART_EVENT_ON_AT_LEAVE ====
==== 94 = SMART_EVENT_ON_AT_LEAVE ====
     При выходе с арея триггера.
     При выходе с арея триггера.
Строка 486: Строка 399:
     4. Идентификатор NPC
     4. Идентификатор NPC
     5. GUID NPC
     5. GUID NPC
             
==== 95 = SMART_EVENT_ON_AT_DESTINATION_REACH ====
==== 95 = SMART_EVENT_ON_AT_DESTINATION_REACH ====
     При достижении арея триггером пункта назначения.
     При достижении арея триггером пункта назначения.
             
==== 96 = SMART_EVENT_ON_AT_REMOVE ====
==== 96 = SMART_EVENT_ON_AT_REMOVE ====
     При деспавне арея триггера.
     При деспавне арея триггера.
               
==== 97 = SMART_EVENT_APPLY_OR_REMOVE_CONTROL_AURA ====
==== 97 = SMART_EVENT_APPLY_OR_REMOVE_CONTROL_AURA ====
     При деспавне арея триггера.
     При деспавне арея триггера.
Строка 499: Строка 409:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
               
==== 98 = SMART_EVENT_ON_DESPAWN ====
==== 98 = SMART_EVENT_ON_DESPAWN ====
     Перед деспавном.
     Перед деспавном.
                 
==== 99 = SMART_EVENT_ON_INTERRUPT ====
==== 99 = SMART_EVENT_ON_INTERRUPT ====
     При прерывании каста.
     При прерывании каста.
Строка 509: Строка 417:
     3. Время повтора проверки (мин)
     3. Время повтора проверки (мин)
     4. Время повтора проверки (макс)
     4. Время повтора проверки (макс)
                 
==== 100 = SMART_EVENT_ON_SPELLCLICK_FINISH_CAST ====
==== 100 = SMART_EVENT_ON_SPELLCLICK_FINISH_CAST ====
     При завершении каста спеллклика.
     При завершении каста спеллклика.
     1. Идентификатор спелла
     1. Идентификатор спелла


== action_type ==
== action_type ==

Версия от 16:21, 8 февраля 2024

smart_scripts - таблица всевозможных действий существ/GO/AT

source_type

   0 - creature - 'SmartAI' (creature_template)
   1 - gameobject - 'SmartGameObjectAI' (gameobject_template)
   2 - AreaTrigger (client)
   3 - AreaTrigger (spell) - 'SmartTrigger ' (areatrigger_scripts)
   9 - TimedActionList
   10 - EventObject - 'SmartEventObject' (eventobject_template)

action_delay

   Задержка для запуска экшена (в мс)

event_type

0 = SMART_EVENT_UPDATE_IC

   Таймер в бою.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

1 = SMART_EVENT_UPDATE_OOC

   Таймер вне боя.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

2 = SMART_EVENT_HEALT_PCT

   При достижении NPC определенного значения HP.
   1. Значение HP (мин)
   2. Значение HP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

3 = SMART_EVENT_MANA_PCT

   При достижении NPC определенного значения MP.
   1. Значение MP (мин)
   2. Значение MP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

4 = SMART_EVENT_AGGRO

   При входе в бой.

5 = SMART_EVENT_KILL

   При убийстве.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Только игрок (=1), иначе
   4. Идентификатор NPC

6 = SMART_EVENT_DEATH

   При смерти.

7 = SMART_EVENT_EVADE

   При ивейде.

8 = SMART_EVENT_SPELLHIT

   При попадании спеллом по NPC / объекту.
   1. Идентификатор спелла
   2. Школа спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

9 = SMART_EVENT_RANGE

   При нахождении игрока в радиусе.
   1. Радиус (мин)
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

10 = SMART_EVENT_OOC_LOS

   При нахождении игрока в радиусе вне боя.
   1. Дружелюбный (=1) или нет
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

11 = SMART_EVENT_RESPAWN

   При респавне NPC / объекта.
   1. Тип респавна (1 = Map, 2 = Area)
   2. Map
   3. Area

12 = SMART_EVENT_TARGET_HEALTH_PCT

   При достижении целью определенного значения HP.
   1. Значение HP (мин)
   2. Значение HP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

13 = SMART_EVENT_TARGET_CASTING

   Если цель кастует спелл.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)

14 = SMART_EVENT_FRIENDLY_HEALTH

   Если у друга не хватает HP.
   1. Сколько должно не хватать
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

15 = SMART_EVENT_FRIENDLY_IS_CC

   Если друг сражается.
   1. Радиус проверки
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

16 = SMART_EVENT_FRIENDLY_MISSING_BUFF

   Если у друга нет баффа.
   1. Идентификатор спелла
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

17 = SMART_EVENT_SUMMONED_UNIT

   При призыве NPC.
   1. Идентификатор суммона
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

18 = SMART_EVENT_TARGET_MANA_PCT

   При достижении целью определенного значения MP.
   1. Значение MP (мин)
   2. Значение MP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

19 = SMART_EVENT_ACCEPTED_QUEST

   При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
   1. Идентификатор задания
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

20 = SMART_EVENT_REWARD_QUEST

   При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
   1. Идентификатор задания
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

21 = SMART_EVENT_REACHED_HOME

   При возвращении в изначальное положение.

22 = SMART_EVENT_RECEIVE_EMOTE

   При получении эмоции.
   1. Идентификатор эмоции
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

23 = SMART_EVENT_HAS_AURA

   При наличии ауры.
   1. Идентификатор спелла
   2. Количество стаков
   3. Кулдаун проверки (мин)
   4. Кулдаун проверки (макс)

24 = SMART_EVENT_TARGET_BUFFED

   При бафе таргета.
   1. Идентификатор спелла
   2. Количество стаков
   3. Кулдаун проверки (мин)
   4. Кулдаун проверки (макс)

25 = SMART_EVENT_RESET

   При иведе, при спавне и при респавне.

26 = SMART_EVENT_IC_LOS

   При нахождении игрока в радиусе в бою.
   1. Дружелюбный (=1) или нет
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

27 = SMART_EVENT_PASSENGER_BOARDED

   При посадке на себя пассажира.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип пассажира (0 - all, 1 - creature, 2 - player)

28 = SMART_EVENT_PASSENGER_REMOVED

   При высадке пассажира.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип пассажира (0 - all, 1 - creature, 2 - player)

29 = SMART_EVENT_CHARMED

   При подчинении себя.

30 = SMART_EVENT_CHARMED_TARGET

   При подчинении цели.

31 = SMART_EVENT_SPELLHIT_TARGET

   При попадании спеллом по цели.
   1. Идентификатор спелла
   2. Школа спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

32 = SMART_EVENT_DAMAGED

   При получении урона.
   1. Урон (мин)
   2. Урон (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

33 = SMART_EVENT_DAMAGED_TARGET

   При нанесении урона.
   1. Урон (мин)
   2. Урон (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

34 = SMART_EVENT_MOVEMENTINFORM

   При достижении точки.
   1. Тип точки
   2. Идентификатор точки

35 = SMART_EVENT_SUMMON_DESPAWNED

   При деспавне суммона.
   1. Идентификатор суммона
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

36 = SMART_EVENT_CORPSE_REMOVED

   При пропаже тела.

37 = SMART_EVENT_AI_INIT

   При инициализации.

38 = SMART_EVENT_DATA_SET

   При получении переменной.
   1. Идентификатор переменной
   2. Значение переменной
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

39 = SMART_EVENT_WAYPOINT_START

   При начале пути.
   1. Идентификатор пути (waypoints)

40 = SMART_EVENT_WAYPOINT_REACHED

   При достижении точки.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

41 = SMART_EVENT_TRANSPORT_ADDPLAYER

   При посадке игрока на транспорт.

42 = SMART_EVENT_TRANSPORT_ADDCREATURE

   При посадке NPC на транспорт.
   1. Идентификатор NPC

43 = SMART_EVENT_TRANSPORT_REMOVE_PLAYER

   При высадке игрока.

44 = SMART_EVENT_TRANSPORT_RELOCATE

   При достижении транспортом точки.
   1. Идентификатор точки

45 = SMART_EVENT_INSTANCE_PLAYER_ENTER

   При попадании игрока в инст.
   1. Фракция игрока
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

46 = SMART_EVENT_AREATRIGGER_ONTRIGGER

   При входе в арея триггер.
   1. Идентификатор арея триггера
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

47 = SMART_EVENT_QUEST_ACCEPTED

   При взятии квеста (любого).

48 = SMART_EVENT_QUEST_OBJ_COPLETETION

   Выключен.

49 = SMART_EVENT_QUEST_COMPLETION

   Выключен.

50 = SMART_EVENT_QUEST_REWARDED

   При сдаче квеста (любого).

51 = SMART_EVENT_QUEST_FAIL

   Выключен.

52 = SMART_EVENT_TEXT_OVER

   При триггере после текста (запускается 1 экшином).
   1. Идентификатор группы текстов
   2. Идентификатор NPC кто говорил

53 = SMART_EVENT_RECEIVE_HEAL

   При получении исцеления.
   1. Значение (мин)
   2. Значение (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

54 = SMART_EVENT_JUST_SUMMONED

   При суммоне.

55 = SMART_EVENT_WAYPOINT_PAUSED

   При паузе пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

56 = SMART_EVENT_WAYPOINT_RESUMED

   При продолжении пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

57 = SMART_EVENT_WAYPOINT_RESUMED

   При остановке пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

58 = SMART_EVENT_WAYPOINT_ENDED

   При окончании пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

59 = SMART_EVENT_TIMED_EVENT_TRIGGERED

   При триггере ивента (создаётся 67 экшином).
   1. Идентификатор ивента

60 = SMART_EVENT_UPDATE

   Таймер.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

61 = SMART_EVENT_LINK

   При линке из другого смарта (запускается через колонку link).

62 = SMART_EVENT_GOSSIP_SELECT

   При использовнии госсип меню.
   1. menuID
   2. optionID
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)
==== 63 = SMART_EVENT_JUST_CREATED ====
   При инициализации скрипта.
==== 64 = SMART_EVENT_GOSSIP_HELLO ====
   При открытии госсип меню.
==== 65 = SMART_EVENT_FOLLOW_COMPLETED ====
   При выключении следования.
==== 66 = SMART_EVENT_DUMMY_EFFECT ====
   При думми эффектах спелла.
==== 67 = SMART_EVENT_IS_BEHIND_TARGET ====
   При нахождении у цели за спиной.
==== 68 = SMART_EVENT_GAME_EVENT_START ====
   При начале гейм ивента.
==== 69 = SMART_EVENT_GAME_EVENT_END ====
   При окончании гейм ивента.
==== 70 = SMART_EVENT_GO_STATE_CHANGED ====
   При изменении состояния объекта.
==== 71 = SMART_EVENT_GO_EVENT_INFORM ====
   Используется в ядре.
==== 72 = SMART_EVENT_ACTION_DONE ====
   Используется в ядре.
==== 73 = SMART_EVENT_ON_SPELLCLICK ====
   При спеллклике.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Только игрок (=1)
==== 74 = SMART_EVENT_CHECK_DIST_TO_HOME ====
   Если расстояние до изначальной позиции больше значения.
   1. Значение
   2. 
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)
==== 75 = SMART_EVENT_EVENTOBJECT_ONTRIGGER ====
   При входе в ивент обжект.
   1. Идентификатор ивент обжекта
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)
==== 76 = SMART_EVENT_ON_TAXIPATHTO ====
   При начале такси.
   1. Идентификатор такси
==== 77 = SMART_EVENT_EVENTOBJECT_OFFTRIGGER ====
   При выходе из ивент обжекта.
   1. Идентификатор ивент обжекта
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)
==== 78 = SMART_EVENT_ON_APPLY_OR_REMOVE_AURA ====
   При наложении или снятии ауры.
   1. Идентификатор спелла
   2. Режим (AuraRemoveMode)
   3. Наложение (=1) или снятие (=0)
   4. Время повтора проверки
==== 79 = SMART_EVENT_ON_FIND_OBJECT_IN_RANGE ====
   При нахождении в радиусе объекта.
   1. Расстояние
   2. Тип объекта (1 - player, 2 - NPC, 3 - GO)
   3. Идентификатор NPC / GO
   4. Время повтора проверки
   5. Кулдаун проверки
==== 80 = SMART_EVENT_ON_SPECIAL_DATA ====
   Когда специальная переменная равна значению.
   1. Значение
   2. Время повтора проверки
==== 81 = SMART_EVENT_ON_OWNER_HAS_QUEST ====
   Если у суммонера есть квест.
   1. Идентификатор квеста
   2. Есть квест (=0) или нет квеста (=1)
   3. Время повтора проверки
==== 82 = SMART_EVENT_ON_SPECIAL_DATA_SET ====
   При изменении специальной переменной.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
 ==== 83 = SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST ====
   Если у суммонера есть завершенный обжектив.
   1. Идентификатор квеста
   2. Идентификатор обжективы
   3. Количество обжектив
   4. Время повтора проверки (мин)
   5. Время повтора проверки (макс)

84 = SMART_EVENT_ON_ENTER_VEHICLE

   При посадке на вехикл.

85 = SMART_EVENT_ON_EXIT_VEHICLE

   При высадке с вехикла.

86 = SMART_EVENT_ON_RANDOM_DATA

   При получении рандомной переменной (запускается 239 ивентом).
   1. Идентификатор переменной

87 = SMART_EVENT_ON_LAST_HIT

   Перед получением смертельного удара.

88 = SMART_EVENT_ON_SPELL_FINISH_CAST

   Перед завершении каста.
   1. Идентификатор спелла

89 = SMART_EVENT_FRIENDLY_HP_PCT

   Если у друга не хватает HP.
   1. Сколько должно не хватать (в %)
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)
   5. Тип друга (all units = 0, only creature = 1, only player = 2)

90 = SMART_EVENT_ON_LOOT_RELEASE

   При закрытии окна лута.

91 = SMART_EVENT_ON_SUMMON_DIES

   При смерти суммона.
   1. Идентификатор NPC

92 = SMART_EVENT_ON_OWNER_RECEIVE_KILLCREDIT

   При получении владельцем килкредита.
   1. Идентификатор килкредита

93 = SMART_EVENT_ON_AT_ENTER

   При входе в арея триггер.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип вошедшего объекта (player = 1, creature = 2)
   4. Идентификатор NPC
   5. GUID NPC

94 = SMART_EVENT_ON_AT_LEAVE

   При выходе с арея триггера.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип вышедшего объекта (player = 1, creature = 2)
   4. Идентификатор NPC
   5. GUID NPC

95 = SMART_EVENT_ON_AT_DESTINATION_REACH

   При достижении арея триггером пункта назначения.

96 = SMART_EVENT_ON_AT_REMOVE

   При деспавне арея триггера.

97 = SMART_EVENT_APPLY_OR_REMOVE_CONTROL_AURA

   При деспавне арея триггера.
   1. Наложение (=1) или снятие (=0)
   2. Идентификатор спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

98 = SMART_EVENT_ON_DESPAWN

   Перед деспавном.

99 = SMART_EVENT_ON_INTERRUPT

   При прерывании каста.
   1. Идентификатор спелла
   2. Тип сбившего каст объекта (all = 0, player = 1, creature = 2)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

100 = SMART_EVENT_ON_SPELLCLICK_FINISH_CAST

   При завершении каста спеллклика.
   1. Идентификатор спелла

action_type

SMART_ACTION_TALK = 1, // misc1 - groupID из creature_text, misc2 - задержка до срабатывания TEXT_OVER ивента, misc3 - 1 - персональный текст, текст будет виден только таргету(игроку)

SMART_ACTION_SET_FACTION = 2, // FactionId (or 0 for default)

SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL = 3, // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to demorph)

SMART_ACTION_SOUND = 4, // SoundId, TextRange

SMART_ACTION_PLAY_EMOTE = 5, // EmoteId

SMART_ACTION_FAIL_QUEST = 6, // QuestID

SMART_ACTION_ADD_QUEST = 7, // QuestID

SMART_ACTION_SET_REACT_STATE = 8, // state

SMART_ACTION_ACTIVATE_GOBJECT = 9, //

SMART_ACTION_RANDOM_EMOTE = 10, // EmoteId1, EmoteId2, EmoteId3...

SMART_ACTION_CAST = 11, // SpellId, CastFlags

SMART_ACTION_SUMMON_CREATURE = 12

misc1 = id npc 
misc2 = тип суммона 
misc3 = длительность(мс) 
misc4 = атаковать призывателя  
misc5 =  взять фазы цели 
misc6 = добавить в лист суммонов (storageID - 12 target_type) 

SMART_ACTION_THREAT_SINGLE_PCT = 13, // Threat%

SMART_ACTION_THREAT_ALL_PCT = 14, // Threat%

SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS = 15, // QuestID

SMART_ACTION_SEND_CASTCREATUREORGO = 16, // QuestID, SpellId

SMART_ACTION_SET_EMOTE_STATE = 17, // emoteID

SMART_ACTION_SET_UNIT_FLAG = 18, // Flags (may be more than one field OR'd together), Target

SMART_ACTION_REMOVE_UNIT_FLAG = 19, // Flags (may be more than one field OR'd together), Target

SMART_ACTION_AUTO_ATTACK = 20, // AllowAttackState (0 = stop attack, anything else means continue attacking)

SMART_ACTION_ALLOW_COMBAT_MOVEMENT = 21, // AllowCombatMovement (0 = stop combat based movement, anything else continue attacking)

SMART_ACTION_SET_EVENT_PHASE = 22, // Phase

SMART_ACTION_INC_EVENT_PHASE = 23, // Value (may be negative to decrement phase, should not be 0)

SMART_ACTION_EVADE = 24, // No Params

SMART_ACTION_FLEE_FOR_ASSIST = 25, // With Emote

SMART_ACTION_CALL_GROUPEVENTHAPPENS = 26, // QuestID

SMART_ACTION_PLAY_SPELL_VISUAL_KIT = 27, // KitType

SMART_ACTION_REMOVEAURASFROMSPELL = 28, // Spellid, 0 removes all auras

SMART_ACTION_FOLLOW = 29, // Distance (0 = default), Angle (0 = default), EndCreatureEntry, credit, creditType (0monsterkill, 1event)

SMART_ACTION_RANDOM_PHASE = 30, // PhaseId1, PhaseId2, PhaseId3...

SMART_ACTION_RANDOM_PHASE_RANGE = 31, // PhaseMin, PhaseMax

==== SMART_ACTION_RESET_GOBJECT = 32, //

SMART_ACTION_CALL_KILLEDMONSTER = 33, // CreatureId,

SMART_ACTION_SET_INST_DATA = 34, // Field, Data

SMART_ACTION_SET_INST_DATA64 = 35, // Field,

SMART_ACTION_UPDATE_TEMPLATE = 36, // Entry, Team

SMART_ACTION_DIE = 37, // No Params

SMART_ACTION_SET_IN_COMBAT_WITH_ZONE = 38, // No Params

SMART_ACTION_CALL_FOR_HELP = 39, // Radius

SMART_ACTION_SET_SHEATH = 40, // Sheath (0-unarmed, 1-melee, 2-ranged)

SMART_ACTION_FORCE_DESPAWN = 41, // timer

SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL = 42, // MinHpValue(+pct, -flat)

SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL = 43, // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to dismount)

SMART_ACTION_SET_INGAME_PHASE_MASK = 44, // mask

SMART_ACTION_SET_DATA = 45, // Field, Data (only creature TODO)

misc1 = data misc2 = value misc3 = передать инвокера цели(целью инвокера станет существо или го, которое кидает дату)

SMART_ACTION_MOVE_FORWARD = 46

Движение вперед

misc1 = Расстояние 
misc2 = 1 вкл бег, 0 выкл бег

SMART_ACTION_SET_VISIBILITY = 47, // on/off

SMART_ACTION_SET_ACTIVE = 48, // No Params

SMART_ACTION_ATTACK_START = 49, //

SMART_ACTION_SUMMON_GO = 50, // GameObjectID, DespawnTime in ms,

SMART_ACTION_KILL_UNIT = 51, //

SMART_ACTION_ACTIVATE_TAXI = 52, // TaxiID

SMART_ACTION_WP_START = 53, // run/walk, pathID, canRepeat, quest, despawntime, reactState

SMART_ACTION_WP_PAUSE = 54, // time

SMART_ACTION_WP_STOP = 55, // despawnTime, quest, fail?

SMART_ACTION_ADD_ITEM = 56, // itemID, count

SMART_ACTION_REMOVE_ITEM = 57, // itemID, count

SMART_ACTION_INSTALL_AI_TEMPLATE = 58, // AITemplateID

SMART_ACTION_SET_RUN = 59, // 0/1

SMART_ACTION_SET_FLY = 60, // 0/1

SMART_ACTION_SET_SWIM = 61, // 0/1

SMART_ACTION_TELEPORT = 62, // mapID,

SMART_ACTION_STORE_VARIABLE_DECIMAL = 63, // varID, number

SMART_ACTION_STORE_TARGET_LIST = 64, // varID,

SMART_ACTION_WP_RESUME = 65, // none

SMART_ACTION_SET_ORIENTATION = 66, //

SMART_ACTION_CREATE_TIMED_EVENT = 67, // id, InitialMin, InitialMax, RepeatMin(only if it repeats), RepeatMax(only if it repeats), chance

SMART_ACTION_PLAYMOVIE = 68, // entry

SMART_ACTION_PLAYMOVIE = 68, // entry

SMART_ACTION_MOVE_TO_POS = 69

Движение в точку

misc1 = pointid(не обязательно)
misc2 = 1 вкл бег, 0 выкл бег

SMART_ACTION_RESPAWN_TARGET = 70, //

SMART_ACTION_EQUIP = 71, // entry, slotmask slot1, slot2, slot3 , only slots with mask set will be sent to client, bits are 1, 2, 4, leaving mask 0 is defaulted to mask 7 (send all), slots1-3 are only used if no entry is set

SMART_ACTION_CLOSE_GOSSIP = 72, // none

SMART_ACTION_TRIGGER_TIMED_EVENT = 73, // id(>1)

SMART_ACTION_REMOVE_TIMED_EVENT = 74, // id(>1)

SMART_ACTION_ADD_AURA = 75, // spellid, targets

SMART_ACTION_OVERRIDE_SCRIPT_BASE_OBJECT = 76, // WARNING: CAN CRASH CORE, do not use if you dont know what you are doing

SMART_ACTION_RESET_SCRIPT_BASE_OBJECT = 77, // none

SMART_ACTION_CALL_SCRIPT_RESET = 78, // none

SMART_ACTION_SET_RANGED_MOVEMENT = 79, // Distance, angle

SMART_ACTION_CALL_TIMED_ACTIONLIST = 80, // ID (overwrites already running actionlist), stop after combat?(0/1), timer update type(0-OOC, 1-IC, 2-ALWAYS)

SMART_ACTION_SET_NPC_FLAG = 81, // Flags

SMART_ACTION_ADD_NPC_FLAG = 82, // Flags

SMART_ACTION_REMOVE_NPC_FLAG = 83, // Flags

SMART_ACTION_SIMPLE_TALK = 84, // groupID, can be used to make players say groupID, Text_over event is not triggered, whisper can not be used (Target units will say the text)

SMART_ACTION_INVOKER_CAST = 85, // spellID, castFlags, if avaliable, last used invoker will cast spellId with castFlags on targets

SMART_ACTION_CROSS_CAST = 86, // spellID, castFlags, CasterTargetType, CasterTarget param1, CasterTarget param2, CasterTarget param3, ( + the origonal target fields as Destination target), CasterTargets will cast spellID on all Targets (use with caution if targeting multiple * multiple units)

SMART_ACTION_CALL_RANDOM_TIMED_ACTIONLIST = 87, // script9 ids 1-9

SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST = 88, // script9 id min, max

SMART_ACTION_RANDOM_MOVE = 89

Случайное передвижение

misc1 = расстояние
misc2 = 1 вкл бег, 0 выкл бег НЕ РАБОТАЕТ. ЮЗАТЬ МИСК 3
misc3 = Random Move Type - RANDOM_MOVE_DEFAULT = 0, RANDOM_MOVE_WALK_AND_RUN = 1, RANDOM_MOVE_WALK_ONLY = 2, RANDOM_MOVE_RUN_ONLY = 3

SMART_ACTION_SET_UNIT_FIELD_BYTES_1 = 90, // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3)

SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1 = 91, // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3)

SMART_ACTION_INTERRUPT_SPELL = 92,

SMART_ACTION_SEND_GO_CUSTOM_ANIM = 93, // anim id

SMART_ACTION_SET_DYNAMIC_FLAG = 94, // Flags

SMART_ACTION_ADD_DYNAMIC_FLAG = 95, // Flags

SMART_ACTION_REMOVE_DYNAMIC_FLAG = 96, // Flags

SMART_ACTION_JUMP_TO_POS = 97, // speedXY, speedZ, targetX, targetY, targetZ

SMART_ACTION_SEND_GOSSIP_MENU = 98, // menuId, optionId

SMART_ACTION_GO_SET_LOOT_STATE = 99, // state

SMART_ACTION_SEND_TARGET_TO_TARGET = 100, // id

SMART_ACTION_SET_HOME_POS = 101, // none

SMART_ACTION_SET_HEALTH_REGEN = 102, // 0/1

SMART_ACTION_SET_ROOT = 103, // off/on

SMART_ACTION_SET_GO_FLAG = 104, // Flags

SMART_ACTION_ADD_GO_FLAG = 105, // Flags

SMART_ACTION_REMOVE_GO_FLAG = 106, // Flags

SMART_ACTION_SUMMON_CREATURE_GROUP = 107, // Group, attackInvoker

SMART_ACTION_SET_POWER = 108, // PowerType, newPower

SMART_ACTION_ADD_POWER = 109, // PowerType, newPower

SMART_ACTION_REMOVE_POWER = 110, // PowerType, newPower

SMART_ACTION_GAME_EVENT_STOP = 111, // GameEventId

SMART_ACTION_GAME_EVENT_START = 112, // GameEventId

SMART_ACTION_START_CLOSEST_WAYPOINT = 113, // wp1, wp2, wp3, wp4, wp5, wp6, wp7

SMART_ACTION_RISE_UP = 114, // distance

SMART_ACTION_DISABLE_EVADE = 117, // 0/1 (1 = disabled, 0 = enabled)

SMART_ACTION_SET_CAN_FLY = 119, // 0/1 (0 = disabled, 1 = enabled)

SMART_ACTION_PLAY_ANIMKIT = 128, // id, type (0 = oneShot, 1 = aiAnim, 2 = meleeAnim, 3 = movementAnim)

SMART_ACTION_DESPAWN_SUMMONS = 129, // timerMs, byEntry

SMART_ACTION_SET_CONTROLLED = 130, // state, apply|remove

SMART_ACTION_MOVE_TO_POS_TARGET = 131, // pointId. Smart target move to position

SMART_ACTION_EXIT_VEHICLE = 132, // none

SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS = 133, // flags

SMART_ACTION_SET_COMBAT_DISTANCE = 134, // combatDistance

SMART_ACTION_SET_CASTER_COMBAT_DIST = 135, // followDistance, resetToMax

SMART_ACTION_SET_LOOT_MODE = 136, // mode mask

SMART_ACTION_SET_HOVER = 141, // 0/1

SMART_ACTION_ADD_IMMUNITY = 142, // type, id, value

SMART_ACTION_REMOVE_IMMUNITY = 143, // type, id, value

SMART_ACTION_FALL = 144, //

SMART_ACTION_SET_EVENT_FLAG_RESET = 145, // 0/1

SMART_ACTION_ZONE_UNDER_ATTACK = 149,

SMART_ACTION_LOAD_GRID = 150,

SMART_ACTION_STOP_MOVING = 151,

SMART_ACTION_BOSS_EVADE = 200

Заставляет босса эвейднуться. Не имеет параметров.

SMART_ACTION_BOSS_ANOUNCE = 201

Делает анонс от лица босса в указанной локации указанного текста

tesxid - ид текста из trinity_strings, который будет заанонсен
area - арея, в которой будет анонс (по желанию). Если босс не в той арее, то анонса не будет
local - локализация
idsample - то, что будет указано перед самим текстом, так сказать, автор. Напрмер, если 3, то будет [SERVER]: {текст из tesxid}, если 4, то [Event Message]: {текст из tesxid}

SMART_ACTION_MOVE_Z  = 202

Своего рода передвижение "по воздуху", то есть, полёт или движение в указанную точку

target X
target Y
target Z

Координаты, куда переместится моб

flymode если 1 - полетит, если 0 - побежит.

SMART_ACTION_SET_KD = 203

"Вручает" игрокам в инсте, где происходят событие, КД на этот инст. Не имеет параметров

SMART_ACTION_SET_SCENATIO_ID = 204

Если в первом параметре выставить ид нужного сценария и использовать на игрока (таргет), то при попадании игроком в инст, где должен происходить указанный сценарий, сценарий запустится автоматически.

Как найти ИД сценарий?
  1. В снифах в пакете SMSG_SCENARIO_STATE идет его ИД
  2. В дбц LfgDungeons.db2(но тут сложнее так как там их много)

SMART_ACTION_UPDATE_ACHIEVEMENT_CRITERIA = 205

Активирует обновление критерия ачивки. Эту штуку можно использовать посути вообще для всего: как засчет шагов в сценарии, так и комплит каких-либо других критериев.

Параметры:
uint32 type; - тип критерия
  • ACHIEVEMENT_CRITERIA_TYPE_UPGRADE_GARRISON_BUILDING     = 168,
  • ACHIEVEMENT_CRITERIA_TYPE_CONSTRUCT_GARRISON_BUILDING   = 169,
  • ACHIEVEMENT_CRITERIA_TYPE_UPGRADE_GARRISON              = 170,
  • ACHIEVEMENT_CRITERIA_TYPE_START_GARRISON_MISSION        = 171,

Или которые используются иногда для сценариев, если там нету засчета по килу моба или касту спела

  • ACHIEVEMENT_CRITERIA_TYPE_SCRIPT_EVENT                  = 73
  • ACHIEVEMENT_CRITERIA_TYPE_SCRIPT_EVENT_2                = 92
uint32 misc1;
uint32 misc2;
uint32 misc3;

Это всевозможные параметры засчета. В основном misc1 - это количество, например убито мобов 1, 2 или 3

SMART_ACTION_SUMMON_CONVERSATION = 206

Принудительно-кастомный сумон конверсейшина. Как показала практика, не все они сумонятся из спелов.

Параметры:
uint32 id; ид конверсейшина. Берется только из снифов

Координаты, куда суммонить конверсейшин. Если они не указаны, то суммон идет под игрока (таргет).

int32 targetX;
int32 targetY;
int32 targetZ;

Зачем координаты?

В инсте суммон идет строго в одну точку. (вдруг близы забыли про спелл))) Если это всплывающая табличка, то координаты лучше не указывать, тогда будет суммон под игрока.

SMART_ACTION_SUMMON_ADD_PLR_PERSONNAL_VISIBILE  = 207

добавляет игрока в персональную фазу для этого моба. Иначе говоря, если использовать этот смарт на игрока, то ТОЛЬКО этот игрок сможет видеть данного моба.

SMART_ACTION_SUMMON_ARIATRIGGER  = 208

Параметры такие же, что и в 206 (конверсатион)

SMART_ACTION_JOIN_LFG  = 209

Присоеденить игрока к лфг

SMART_ACTION_IGNORE_PATHFINDING = 219,

Вкл/откл игнорирование поиска путей

SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY  = 220

Суммон моба с инстантным добавлением игрока(суммонера) в персональную видимость. Важно! Таргет у данного смарта всегда 7(т.е. игрок). Моб суммонится строго по координатам из данных - targetX, targetY, targetZ, targetO.

Параметры:
uint32 misc1; id npc
uint32 misc2; тип призыва. пример: TEMPSUMMON_TIMED_DESPAWN
uint32 misc3; таймер(в мс).
uint32 misc4; добавить в лист суммонов(StorageID - 12 target_type)
uint32 misc5; взять фазы призывателя при суммоне. вряд ли пригодится, так как суммон находится в персональной фазе с игроком.
uint32 misc6; 1 - суммонить в точку где стоит нпц. 0 - будут браться координаты из 7 таргета

SMART_ACTION_START_TIMED_ACHIEVEMENT = 221,

Запуск таймера у ачивмента

misc1 = Тип таймед критерии

misc2 - id критерии

SMART_ACTION_SEND_GO_VISUAL_ID = 222,

Отправка GO визуала по ид

misc1 = visual id

misc1 - misc6 = quest ID's

SMART_ACTION_COMPLETE_QUEST = 223,

Выполнить квест(условия). Больше нужно для комплита хайден квестов.

misc1 - misc6 = quest ID's

SMART_ACTION_SET_HEALTH_IN_PERCENT = 224,

Установить значение ХП от максимального в процентах

misc1 = значение

SMART_ACTION_UPDATE_PLAYER_PHASES = 225,

Принудительное обновление фаз у игрока. Например для применение кондишена для какой-то фазы, которая еще не применена у игрока, но условия(например есть аура) для ее применения выполнены.

SMART_ACTION_SET_SPECIAL_DATA = 226,

Описание в 80 ивенте

misc1; // значение
misc2; // добавить +1 к текущему значению кастом даты у таргета


SMART_ACTION_SEND_LAST_INVOKER = 227,

отправить последнего инвокера указанной цели. пример: вы берете квест у нпц Х и вам необходимо, чтобы нпц У мог юзать вас в качестве таргета #7. Соответственно вы юзаете 227 экшн при взятии квеста у нпц Х и указываете в качестве таргета нпц У.

SMART_ACTION_KILLCREDIT_GO = 228,

Засчитать в квест использование ГО. Пример квеста: q38934

misc1; // ИД ГО

SMART_ACTION_MAKE_CASTER_AND_CAST_SPELL = 229,

на данный момент бесполезен

SMART_ACTION_MEET_QUEST_OBJECTIVE_AREATRIGGER = 230,

Использовать вместо устаревшего 15 экшена.

misc1; // Id квеста

SMART_ACTION_SUMMON_GO_IN_PERSONAL_VISIBILITY = 231,

суммон го в персональную видимость

misc1; // Id GO
misc2; // despawn timer

SMART_ACTION_SET_PET_MODE = 232,

Set pet mode. Movement speed like player speed and creature can assist in fight

SMART_ACTION_ADD_PHASE_ID = 233,

Добавить фазу PhaseId.

misc1; // PhaseId

SMART_ACTION_REMOVE_PHASE_ID = 234,

Удалить фазу PhaseId.

misc1; // PhaseId

SMART_ACTION_EJECT_PASSENGER = 235,

Высадить пассажира.

misc1; // Ид пассажирского места

SMART_ACTION_MOVE_FALL = 236,

Начать падение

SMART_ACTION_HIDE_FOR_PLAYER = 237,

Исчезнуть для игрока

misc1; // Время до появления в мс

SMART_ACTION_SET_SCENARIO_STEP = 238,

Перейти на этап сценария

misc1; // ид этапа

SMART_ACTION_RUN_RANDOM_DATA = 239,

Отправить случайную дату от 1 до ...

misc1; // значение 1
misc2; // значение 2

SMART_ACTION_SET_QUEST_COMPLETITION_PHASE = 240,

Вкл\выкл опцию для применения CONDITION_QUEST_COMPLETITION для фазировок квестов. При отмене квеста автоматически сбрасывает эту опцию.

misc1; // квест ид
misc2; // 1 - вкл, 0 - выкл

SMART_ACTION_RESET_DELAYED_ACTIONS = 241,

Сброс всех дэлэй операций

SMART_ACTION_RESET_TIMED_ACTIONLIST = 242,

Выполнить сброс time action листов

SMART_ACTION_SET_ESCORT_MODE = 243,

misc1; // радиус

Включить эскорт режим. Нпц будет делать паузу на вэйпоинтах до тех пор, пока игрока нет в установленном радиусе.

SMART_ACTION_SET_UPD_NON_AUTOMATIC_PHASE_TIMER = 244,

misc1; // таймер в мс

Смотреть описание 128 флага в Phase_definitions

SMART_ACTION_SET_IGNORE_PHASE_QUEST_UPDATE_MASK = 245,

misc1; // 1 вкл - 0 выкл

Вкл выкл игнорирование изменения статуса задания при обновлении фаз. Например: включаете этот параметр, у фазы 1234 условием является выполненный квест 9000, выполняете задание и фаза 1000 не наложится пока включен параметр. Если необходимо применить фазы, то отключаем параметр и принудительно обновляем фазы в ядре, смарт экшеном или спеллом.

SMART_ACTION_GO_TO_POINT_NEAR_OBJECT = 246,

// Go to point near object. Range, Walk(0 walk, 1 run)

   SMART_ACTION_SET_TRACK_OWNER_QUEST_FOR_DESPAWN  = 247,    // QuestId(there may be a several ids), AddOrRemove(1 - add, 0 - remove).
   SMART_ACTION_SET_SCALE                          = 248,    // Set object scale. Value in action_param_float column
   SMART_ACTION_MOD_SCALE                          = 249,    // Mod object scale. Value in action_param_float column
   SMART_ACTION_SET_CAN_DESPAWN_WHEN_LEAVE_VEHICLE = 250,    // Creature can despawn when owner leave vehicle. 1 - can / 0 - can't despawn
   SMART_ACTION_SET_PLAYER_CAN_ENTER_VEHICLE_ON_SUM= 251,    // When player summons that vehicle he can instantly enter it. Can be used by event JUST_SUMMONED. 1 - can / 0 - can't insta enter
   SMART_ACTION_SET_PAUSE_ON_WAYPOINT_DATA         = 252,    // Make pause on waypoints_data. 1 - can / 0 - can't move. param 2 pause time ms
   SMART_ACTION_SET_PLAYER_CAN_UPDATE_PHASE        = 253,    // ZoneId. PhaseId. 0 - can't update, 1 - can update
   SMART_ACTION_PLAY_EMOTE_PERSONAL                = 254,    // EmoteId, EmoteId, EmoteId, EmoteId, EmoteId, EmoteId. Play personal emote for targets. If more than emote id = play random emote
   SMART_ACTION_SET_EVENT_PHASE_MASK               = 255,    // Value. Set event phase mask (1, 2, 4, 8...). Also can be multi, like 9, 12...
   SMART_ACTION_ADD_OR_REMOVE_EVENT_PHASE_MASK     = 256,    // param1 - Add event phase mask, param2 - Remove event phase mask
   SMART_ACTION_SET_PLAY_HOVER_ANIM                = 257,    // Play hover anim. 0 - off / 1 - on
   SMART_ACTION_CAN_ENTER_SPECIAL_EVADE            = 258,    // Makes creature can enter special evade(boss like). Param1 - 1 - Enable / 0 - Disable special evade. Param2 - invisibility timer ms
   SMART_ACTION_SET_VEHICLE_EXIT_POSITION          = 259,    // Set custom vehicle exit position. Param1 - UnitType(0 - all, 1 - creature, 2 - player). Param2 - Entry(0 for player). XYZO coordinates
   SMART_ACTION_SET_CAN_FOLLOW_ON_SUMMON           = 260,    // 0 - off / 1 - on follow when creature summons
   SMART_ACTION_SET_FIELD_STATE_ANIM_ID            = 261,    // Set UNIT_FIELD_STATE_ANIM_ID to units. Param1 - state anim ID
   SMART_ACTION_MOVE_BACKWARD                      = 262,    // Move backwards. param1 - pointId. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE)
   SMART_ACTION_MOVE_CHARGE                        = 263,    // Move charge. param1 - pointId. param2 - move target type. param3-5 - move target param. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE)
   SMART_ACTION_GO_SEND_CUSTOM_ANIM                = 264,    // animId, playAsDespawn
   SMART_ACTION_SET_CUSTOM_ATTACK_DISTANCE         = 265,    // Distance
   SMART_ACTION_MOVE_CIRCLE                        = 266,    // Radius, Walk, StepCount, Clockwise, Cyclic, PointId. action_param_float - Speed. X, Y, Z circle center
   SMART_ACTION_SET_CAN_STOP_COMBAT_WHEN_EMPTY_THREAT = 267, // (0 - off, 1 - on) NPC combat stop when threatlist is empty
   SMART_ACTION_COMBAT_STOP                        = 268,    // No param


target_type

   SMART_TARGET_NONE                           = 0,    // NONE, defaulting to invoket
   SMART_TARGET_SELF                           = 1,    // Self cast
   SMART_TARGET_VICTIM                         = 2,    // Our current target (ie: highest aggro)
   SMART_TARGET_HOSTILE_SECOND_AGGRO           = 3,    // Second highest aggro
   SMART_TARGET_HOSTILE_LAST_AGGRO             = 4,    // Dead last on aggro
   SMART_TARGET_HOSTILE_RANDOM                 = 5,    // Just any random target on our threat list
   SMART_TARGET_HOSTILE_RANDOM_NOT_TOP         = 6,    // Any random target except top threat
   SMART_TARGET_ACTION_INVOKER                 = 7,    // Unit who caused this Event to occur
   SMART_TARGET_POSITION                       = 8,    // use xyz from event params
   SMART_TARGET_CREATURE_RANGE                 = 9,    // CreatureEntry(0any), minDist, maxDist, Number of target (0 = all targets)
   SMART_TARGET_CREATURE_GUID                  = 10,   // guid, entry
   SMART_TARGET_CREATURE_DISTANCE              = 11,   // CreatureEntry(0any), maxDist
   SMART_TARGET_STORED                         = 12,   // id, uses pre-stored target(list)
   SMART_TARGET_GAMEOBJECT_RANGE               = 13,   // entry(0any), minDist, maxDist, Number of target (0 = all targets)
   SMART_TARGET_GAMEOBJECT_GUID                = 14,   // guid, entry
   SMART_TARGET_GAMEOBJECT_DISTANCE            = 15,   // entry(0any), maxDist
   SMART_TARGET_INVOKER_PARTY                  = 16,   // invoker's party members
   SMART_TARGET_PLAYER_RANGE                   = 17,   // min, max
   SMART_TARGET_PLAYER_DISTANCE                = 18,   // maxDist
   SMART_TARGET_CLOSEST_CREATURE               = 19,   // CreatureEntry(0any), maxDist, dead?
   SMART_TARGET_CLOSEST_GAMEOBJECT             = 20,   // entry(0any), maxDist
   SMART_TARGET_CLOSEST_PLAYER                 = 21,   // maxDist
   SMART_TARGET_ACTION_INVOKER_VEHICLE         = 22,   // Unit's vehicle who caused this Event to occur
   SMART_TARGET_OWNER_OR_SUMMONER              = 23,   // Unit's owner or summoner
   SMART_TARGET_THREAT_LIST                    = 24,   // All units on creature's threat list
   SMART_TARGET_CLOSEST_ENEMY                  = 25,   // maxDist
   SMART_TARGET_CLOSEST_FRIENDLY               = 26,   // maxDist
   SMART_TARGET_HOSTILE_RANDOM_PLAYER          = 125,   // Just any random target on our threat list player
   SMART_TARGET_HOSTILE_RANDOM_NOT_TOP_PLAYER  = 126,   // Any random target except top threat player
   SMART_TARGET_HOSTILE_RANDOM_AURA            = 127,   // Any random target with aura (entry, dist, topornot)
   SMART_TARGET_RANDOM_POSITION                = 128,   // Any random position (range, angle, distance)
   SMART_TARGET_TARGETUNIT                     = 129,   // Target unit by GetTargetUnit()
   SMART_TARGET_INVOKERS_OWNER                 = 130,   // Owner of unit who caused this event to occur
   SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY     = 131,   // NPC Id. Invokers summon with entry
   SMART_TARGET_INVOKERS_PASSENGER             = 132,   // SeatId.
   SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY    = 133,   // NPC Id. Summoners summon with entry
   SMART_TARGET_SUMMON_WITH_ENTRY              = 134,   // NPC Id. Target summon with entry
   SMART_TARGET_VEHICLE_ACCESSORY              = 135,   // Seat id
   SMART_TARGET_ALL_PLAYERS_IN_MAP             = 136,   // All players in map
   SMART_TARGET_RANDOM_CREATURE_BY_ENTRY       = 137,   // Select random creature by entry in range. entry, distance, searchType( SEARCH_ALL = 0, SEARCH_ALIVE = 1,  SEARCH_DEAD = 2)
   SMART_TARGET_RANDOM_PLAYER_IN_RANGE         = 138,   // Select random player in range.
   SMART_TARGET_RANDOM_POS_TO_PLAYER_IN_RANGE  = 139,   // Select random pos to player in range. 
   SMART_TARGET_RANDOM_CREATURE_BETWEEN_ENTRIES= 140,   // Select random creature between entries. Param 0-4 entry. Target_x as range


SMART_TARGET_INVOKER_OWNER = 130,

Пример использования: если призванный игроком нпц(Х) суммонит нпц(У) и необходимо, чтобы нпц(У) взаимодействовало напрямую с игроком-призывателем нпц(Х), то юзается этот таргет.

SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY = 131,

Таргет суммон инвокера по энтри(ид нпц) target_param1 = id NPC

SMART_TARGET_INVOKERS_PASSENGER = 132,

Таргет пассажир инвокера target_param1 = id сиденья

SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY = 133,

Таргет нпц-суммон призывателя по энтри target_param1 = id нпц

SMART_TARGET_SUMMON_WITH_ENTRY = 134,

Таргет нпц-суммон по энтри target_param1 = id нпц



   MovementType

{

   IDLE_MOTION_TYPE      = 0,                              // IdleMovementGenerator.h
   RANDOM_MOTION_TYPE    = 1,                              // RandomMovementGenerator.h
   WAYPOINT_MOTION_TYPE  = 2,                              // WaypointMovementGenerator.h
   MAX_DB_MOTION_TYPE    = 3,                              // *** this and below motion types can't be set in DB.
   ANIMAL_RANDOM_MOTION_TYPE = MAX_DB_MOTION_TYPE,         // AnimalRandomMovementGenerator.h
   CONFUSED_MOTION_TYPE  = 4,                              // ConfusedMovementGenerator.h
   CHASE_MOTION_TYPE     = 5,                              // TargetedMovementGenerator.h
   HOME_MOTION_TYPE      = 6,                              // HomeMovementGenerator.h
   FLIGHT_MOTION_TYPE    = 7,                              // WaypointMovementGenerator.h
   POINT_MOTION_TYPE     = 8,                              // PointMovementGenerator.h
   FLEEING_MOTION_TYPE   = 9,                              // FleeingMovementGenerator.h
   DISTRACT_MOTION_TYPE  = 10,                             // IdleMovementGenerator.h
   ASSISTANCE_MOTION_TYPE= 11,                             // PointMovementGenerator.h (first part of flee for assistance)
   ASSISTANCE_DISTRACT_MOTION_TYPE = 12,                   // IdleMovementGenerator.h (second part of flee for assistance)
   TIMED_FLEEING_MOTION_TYPE = 13,                         // FleeingMovementGenerator.h (alt.second part of flee for assistance)
   FOLLOW_MOTION_TYPE    = 14,
   FETCH_MOTION_TYPE     = 15,
   ROTATE_MOTION_TYPE    = 16,
   EFFECT_MOTION_TYPE    = 17,
   NULL_MOTION_TYPE      = 18,
   MAX_MOTION_TYPE,

};


event_flags

   SMART_EVENT_FLAG_NOT_REPEATABLE         = 1,                     //Event can not repeat
   SMART_EVENT_FLAG_DIFFICULTY_0           = 2,                     //Event only occurs in instance difficulty 0
   SMART_EVENT_FLAG_DIFFICULTY_1           = 4,                     //Event only occurs in instance difficulty 1
   SMART_EVENT_FLAG_DIFFICULTY_2           = 8,                     //Event only occurs in instance difficulty 2
   SMART_EVENT_FLAG_DIFFICULTY_3           = 16,                     //Event only occurs in instance difficulty 3
   SMART_EVENT_FLAG_ALLOW_EVENT_NON_COMBAT = 32,
   SMART_EVENT_FLAG_RESERVED_6             = 64,
   SMART_EVENT_FLAG_DEBUG_ONLY             = 128,                     //Event only occurs in debug build
   SMART_EVENT_FLAG_DONT_RESET             = 256,                     //Event will not reset in SmartScript::OnReset()
   SMART_EVENT_FLAG_NOT_IN_COMBAT          = 512,                     //Event only occurs only not in combat
   SMART_EVENT_FLAG_IN_COMBAT              = 1024,                     //Event only occurs only in combat