Spell linked spell: различия между версиями
Нет описания правки Метка: visualeditor |
User1 (обсуждение | вклад) (→type) |
||
| (не показаны 3 промежуточные версии этого же участника) | |||
| Строка 9: | Строка 9: | ||
===== type ===== | ===== type ===== | ||
SPELL_LINK_CAST = 0, // +: cast; -: remove | |||
SPELL_LINK_REMOVE = 0, | |||
SPELL_LINK_ON_HIT = 1, | |||
SPELL_LINK_AURA = 2, // +: aura; -: immune | |||
SPELL_LINK_BEFORE_HIT = 3, | |||
SPELL_LINK_AURA_HIT = 4, | |||
SPELL_LINK_BEFORE_CAST = 5, | |||
SPELL_LINK_PREPARE_CAST = 6, | |||
SPELL_LINK_BEFORE_CHECK = 7, | |||
SPELL_LINK_FINISH_CAST = 8, | |||
SPELL_LINK_ON_ADD_TARGET = 9, | |||
SPELL_LINK_FAILED_CAST = 10, | |||
===== caster ===== | ===== caster ===== | ||
Текущая версия от 19:46, 26 апреля 2026
spell_linked_spell - таблица линкования спелов, частично переписана для увеличения функционала
Структура таблицы:
spell_trigger
ID способности
spell_effect
ID, который будет срабатывать
type
SPELL_LINK_CAST = 0, // +: cast; -: remove SPELL_LINK_REMOVE = 0, SPELL_LINK_ON_HIT = 1, SPELL_LINK_AURA = 2, // +: aura; -: immune SPELL_LINK_BEFORE_HIT = 3, SPELL_LINK_AURA_HIT = 4, SPELL_LINK_BEFORE_CAST = 5, SPELL_LINK_PREPARE_CAST = 6, SPELL_LINK_BEFORE_CHECK = 7, SPELL_LINK_FINISH_CAST = 8, SPELL_LINK_ON_ADD_TARGET = 9, SPELL_LINK_FAILED_CAST = 10,
caster
Кого брать за кастера? (данные берутся из GetUnitForLinkedSpell)
0 = нету
1 = пет
2 = Владелец (овнер)
3 = Кастер
4 = Выбранный (цель)
5 = таргет
6 = текущая цель (victim)
target
Кого брать за таргета? (данные в проверке HasAuraLinkedSpell)
0 = нету
1 = пет
2 = Владелец (овнер)
3 = Кастер
4 = Выбранный (цель)
5 = таргет
6 = текущая цель (victim)
hastype, hastype2
при hastalent != 0 будет проверять по заданному типу: (данные берутся из GetUnitForLinkedSpell)
LINK_HAS_AURA_ON_CASTER = 0,
LINK_HAS_AURA_ON_TARGET = 1,
LINK_HAS_SPELL_ON_CASTER = 2,
LINK_HAS_AURA_ON_OWNER = 3,
LINK_HAS_AURATYPE = 4,
hastalent, hastalen2
ID ауры или спела, который проверять по типу проверки (данные в проверке HasAuraLinkedSpell)
chance
Шанс срабатывания, если стоит >0
cooldown
Ставит КД на способность после срабатывания
hitmask
Маска хита, при каком типе хита срабатывать?
SPELL_MISS_NONE = 0, // hitmask = 1
SPELL_MISS_MISS = 1, // hitmask = 2
SPELL_MISS_RESIST = 2, // hitmask = 4
SPELL_MISS_DODGE = 3, // hitmask = 8
SPELL_MISS_PARRY = 4, // hitmask = 16
SPELL_MISS_BLOCK = 5, // hitmask = 32
SPELL_MISS_EVADE = 6, // hitmask = 64
SPELL_MISS_IMMUNE = 7, // hitmask = 128
SPELL_MISS_IMMUNE2 = 8, // one of these 2 is MISS_TEMPIMMUNE, hitmask = 256
SPELL_MISS_DEFLECT = 9, // hitmask = 512
SPELL_MISS_ABSORB = 10, // hitmask = 1024
SPELL_MISS_REFLECT = 11, // hitmask = 2048
SPELL_MISS_MISFIRED = 12, // hitmask = 4096
removeMask
Маска мода удаления
AURA_REMOVE_NONE = 0,
AURA_REMOVE_BY_DEFAULT = 1, // scripted remove, remove by stack with aura with different ids and sc aura remove
AURA_REMOVE_BY_CANCEL = 2,
AURA_REMOVE_BY_ENEMY_SPELL = 3, // dispel and absorb aura destroy
AURA_REMOVE_BY_EXPIRE = 4, // aura duration has ended
AURA_REMOVE_BY_DEATH = 5,
AURA_REMOVE_BY_MECHANIC = 6,
AURA_REMOVE_BY_DROP_CHARGERS = 7, // aura remove by drop charges
actiontype
Тип действия?
LINK_ACTION_DEFAULT = 0,
LINK_ACTION_LEARN = 1,
LINK_ACTION_AURATYPE = 2,
LINK_ACTION_SPELLCOOLDOWN = 3,
LINK_ACTION_CASTNOTRIGGER = 4,
LINK_ACTION_ADDAURA = 5,
LINK_ACTION_CASTINAURA = 6,
LINK_ACTION_CASTINAURA = 6,
LINK_ACTION_CHANGE_STACK = 7,
LINK_ACTION_REMOVE_COOLDOWN = 8,
LINK_ACTION_REMOVE_MOVEMENT = 9, // RemoveMovementImpairingAuras
LINK_ACTION_CHANGE_DURATION = 10, // Mod Duration
LINK_ACTION_CAST_DEST = 11,
LINK_ACTION_CHANGE_CHARGES = 12,