Пользовательские дополнения

На главную


EVENT_UNIT_DAMAGE_RECEIVED

Событие присылается при нанесение повреждения юниту. Тип повреждения - "ENUM_SubElement_...".

Для срабатывания данного события требуется указание идентификатора объекта ObjectId(number) в качестве параметра функции common.RegisterEventHandler( eventFunction, sysEventName, params, requireMainThread ).

Замечание. Если повреждений нет, то может быть несколько факторов, повлиявших на это (вовсе не обязательно, что такой фактор только один).

Замечание. Если повреждений нет и не один из факторов не сработал, то можно считать, что урон был полностью поглощен (full absorb).

-- поля:

source: ObjectId (or nil) - идентификатор того, кто наносит повреждения
sourceName: WString - имя того, кто наносит повреждения
target: ObjectId (not nil) - идентификатор того, кто получает повреждения. Этот объект может уже исчезнуть и надо проверять его на существование (см. object.IsExist())
amount: number - количество нанесенных повреждений
ability: WString - имя спелла или умения
sysSubElement: string (enum "ENUM_SubElement_...")  - тип повреждения

lethal: boolean / nil - этот удар был финальным. Юнит умер.

В зависимости от того, чем был нанесен урон, одно из следующих полей будет не nil:
 spellId: SpellId (ResourceId) / nil - Id спелла, если били спеллом.
 abilityId: AbilityId (ResourceId) / nil - Id абилки, если били абилкой.
 buffId: BuffId (ResourceId) / nil - Id буффа, если били буффом.
 mapModifierId: MapModifierId (ResourceId) / nil - модификатор карты, если повреждения от модификатора карты
 isFall: boolean - повреждение от падения
 isExploit: boolean - повреждения от эксплойта

Следующие поля заполняются, если был факт срабатывания соответствующего модификатора:

isDodge: boolean / nil - увернулась ли цель от удара
isMiss: boolean / nil - был ли промах
isCritical: boolean / nil - был ли нанесён Critical Damage (увеличенное повреждение)
isGlancing: boolean / nil - был ли нанесён glancing damage (уменьшенное повреждение)

shieldBlock: number (int) - величина заблокированного урона, если был Shield Block, иначе 0
parry: number (int) - величина парированного урона, если был Parry, иначе 0
resist: number (int) - величина зарезистенного урона, если был резист, иначе 0

barrier: number (int) - величина урона, поглощеного барьером, если последний сработал, иначе 0
absorb: number (int) - неотрицательная величина урона, поглощённого бафами
toMount: number (int) - неотрицательная величина урона, поглощённого маунтом
multipliersAbsorb: number (int) - величина, на которую уменьшился урон из-за множителей урона на цели (может быть отрицательной если урон увеличился)
runesAbsorb: number (int) - неотрицательная величина урона, отражённого защитными рунами

damageSource: string - типа источника дамага, возможные значения:
  "DamageSource_SPELL"
  "DamageSource_DOT"
  "DamageSource_MAINATTACK"
  "DamageSource_RANGEDATTACK"
  "DamageSource_BARRIER"
  "DamageSource_DAMAGEPOOL"
  "DamageSource_OTHER"

overallAbsorbedDamage: number (int) - величина всего поглощенного урона (урон ушёл в какую-то сущность)
overallPreventedDamage: number (int) - величина всего предотвращённого урона (урон вообще не попал в игрока)

sourceTags: table of CombatTagId or nil - список усиливающих и ослабляющих эффектов на том, кто наносит повреждения
targetTags: table of CombatTagId or nil - список усиливающих и ослабляющих эффектов на том, кто получает повреждения

В данный момент:

overallAbsorbedDamage = absorb + barrier + toMount
overallPreventedDamage = multipliersAbsorb + runesAbsorb

См. также

Search: "CategoryLuaApi" "CategoryUnit"

CombatTagId
EnumMobWorldOvertipCustomView
EnumPridenFactionChoice
EventAccountHasDestroyed
EventActivePetChanged
EventActivePetSpellsChanged
EventActivePetStateChanged
EventAfkStateChanged
EventCrosshairTargetPosChanged
EventEndureBarrierDamage
EventEquipmentRitualEnableChanged
EventGuildBuffAdded
EventGuildBuffsChanged
EventHealAbsorbPoolAppeared
EventHealAbsorbPoolChanged
EventHealAbsorbPoolDisappeared
EventItemRelatedQuestsChanged
EventManaReceived
EventMobRelatedGoalsChanged
EventMobRelatedQuestsChanged
EventObjectBuffAdded
EventObjectBuffProgressAdded
EventObjectBuffProgressRemoved
EventObjectBuffRemoved
EventObjectBuffsChanged
EventObjectBuffsElementChanged
EventPartyMemberActivePetChanged
EventPartyMemberPositionUpdated
EventPetInfoChanged
EventPlayerAstralUnlockChanged
EventPlayerGearScoreChanged
EventPlayerGreatChanged
EventPlayerTitleChanged
EventPlayerTitlesChanged
EventPridenFactionChoice
EventPurgeBarrierDamage
EventRaidMemberPositionUpdated
EventReliefBarrierDamage
EventSpousePositionUpdated
EventTargetPosChanged
EventUnitClassChanged
EventUnitDamageReceived
EventUnitDeadChanged
EventUnitEquipmentChanged
EventUnitFactionChanged
EventUnitFairyChanged
EventUnitFairyRankChanged
EventUnitFatalityChanged
EventUnitFollowersListChanged
EventUnitGuildChanged
EventUnitHonorValueChanged
EventUnitLevelChanged
EventUnitManaChanged
EventUnitManaPercentageChanged
EventUnitMessage
EventUnitMoodChanged
EventUnitMountHealthChanged
EventUnitPosChanged
EventUnitPvPFlagChanged
EventUnitRageChanged
EventUnitRelationChanged
EventUnitsChanged
EventUnitTagChanged
EventUnitTookMoney
EventUnitVeteranRankChanged
EventUnitWillChanged
EventUnitZonePvPTypeChanged
FunctionMountGetUnitMountHealth
FunctionObjectGetBuffCount
FunctionUnitCanHaveEnemy
FunctionUnitCanSelectTarget
FunctionUnitCanUse
FunctionUnitGetActivePet
FunctionUnitGetAvatarLoginType
FunctionUnitGetCharacterForm
FunctionUnitGetClass
FunctionUnitGetClassId
FunctionUnitGetEquipmentItemId
FunctionUnitGetEquipmentItemIds
FunctionUnitGetEquipmentItemSlotUnlockedQualities
FunctionUnitGetEquipmentSize
FunctionUnitGetEquipmentSlotBonus
FunctionUnitGetFactionId
FunctionUnitGetFairyInfo
FunctionUnitGetFairyPowerBonus
FunctionUnitGetFollowerMaster
FunctionUnitGetFollowers
FunctionUnitGetGearScore
FunctionUnitGetGuildInfo
FunctionUnitGetHealAbsorbPoolInfo
FunctionUnitGetLastPetType
FunctionUnitGetLevel
FunctionUnitGetMana
FunctionUnitGetManaPercentage
FunctionUnitGetMobActionProgress
FunctionUnitGetMoodEmoteId
FunctionUnitGetOvertipCustomView
FunctionUnitGetOvertipTexture
FunctionUnitGetPetName
FunctionUnitGetPetOwner
FunctionUnitGetPlayerShardName
FunctionUnitGetPlayerTitle
FunctionUnitGetPlayerTitles
FunctionUnitGetPlayerValuedObject
FunctionUnitGetPrimaryTarget
FunctionUnitGetPvPFlagInfo
FunctionUnitGetQuality
FunctionUnitGetRace
FunctionUnitGetRage
FunctionUnitGetRelatedGoals
FunctionUnitGetRelatedQuestObjectives
FunctionUnitGetReputationLevel
FunctionUnitGetRuneWoundsComplexity
FunctionUnitGetSex
FunctionUnitGetTarget
FunctionUnitGetTitle
FunctionUnitGetTrainerClass
FunctionUnitGetTransport
FunctionUnitGetTrioInfo
FunctionUnitGetUnitValuedObject
FunctionUnitGetVeteranRank
FunctionUnitGetWill
FunctionUnitGetZonePvPDanger
FunctionUnitGetZonePvPType
FunctionUnitGetZonesMapId
FunctionUnitHasBossPlate
FunctionUnitHasEquipment
FunctionUnitIsAfk
FunctionUnitIsAggressive
FunctionUnitIsFatalityDeath
FunctionUnitIsGreat
FunctionUnitIsPet
FunctionUnitIsPlayer
FunctionUnitIsRitualEnabled
FunctionUnitIsTagged
FunctionUnitIsTaggedByMainPlayer
FunctionUnitIsTrainer
FunctionUnitIsUsable
FunctionUnitSelect
FunctionUnitSetPlayerTitle


CategoryLuaApi CategoryEvent CategoryUnit

На главную