- pkgmeta changes
This commit is contained in:
@@ -10,8 +10,8 @@ externals:
|
||||
Libs/LibGraph-2.0: https://repos.wowace.com/wow/libgraph-2-0/trunk/LibGraph-2.0
|
||||
Libs/LibDBIcon-1.0: https://repos.wowace.com/wow/libdbicon-1-0/trunk/LibDBIcon-1.0
|
||||
Libs/LibWindow-1.1: https://repos.wowace.com/wow/libwindow-1-1/trunk/LibWindow-1.1
|
||||
Libs/LibCompress: https://repos.wowace.com/wow/libcompress/trunk/LibCompress
|
||||
Libs/LibDataBroker-1.1: https://repos.wowace.com/wow/libdatabroker-1-1/LibDataBroker-1.1
|
||||
Libs/LibCompress: https://repos.wowace.com/wow/libcompress/trunk/
|
||||
Libs/LibDataBroker-1.1: https://repos.wowace.com/wow/libdatabroker-1-1
|
||||
Libs/LibGroupInSpecT-1.1: https://repos.wowace.com/wow/libgroupinspect/trunk/LibGroupInSpecT-1.1
|
||||
Libs/LibItemUpgradeInfo-1.0: https://repos.wowace.com/wow/libitemupgradeinfo-1-0/LibItemUpgradeInfo-1.0
|
||||
Libs/NickTag-1.0: https://repos.curseforge.com/wow/nicktag/NickTag-1.0
|
||||
|
||||
+236
-1
@@ -79,6 +79,7 @@ function atributo_heal:NovaTabela (serial, nome, link)
|
||||
total = alphabetical,
|
||||
totalover = alphabetical,
|
||||
totalabsorb = alphabetical,
|
||||
totaldenied = alphabetical,
|
||||
custom = 0,
|
||||
|
||||
total_without_pet = alphabetical,
|
||||
@@ -230,6 +231,8 @@ function atributo_heal:RefreshWindow (instancia, tabela_do_combate, forcar, expo
|
||||
keyName = "heal_enemy_amt"
|
||||
elseif (sub_atributo == 6) then --> absorbs
|
||||
keyName = "totalabsorb"
|
||||
elseif (sub_atributo == 7) then --> heal absorb
|
||||
keyName = "totaldenied"
|
||||
end
|
||||
else
|
||||
keyName = exportar.key
|
||||
@@ -251,6 +254,8 @@ function atributo_heal:RefreshWindow (instancia, tabela_do_combate, forcar, expo
|
||||
keyName = "heal_enemy_amt"
|
||||
elseif (sub_atributo == 6) then --> absorbs
|
||||
keyName = "totalabsorb"
|
||||
elseif (sub_atributo == 7) then --> heal absorb
|
||||
keyName = "totaldenied"
|
||||
end
|
||||
end
|
||||
|
||||
@@ -768,6 +773,28 @@ function atributo_heal:AtualizaBarra (instancia, barras_container, qual_barra, l
|
||||
esta_barra.texto_direita:SetText (formated_absorbs .. bars_brackets[1] .. porcentagem .. bars_brackets[2])
|
||||
end
|
||||
esta_porcentagem = _math_floor ((self.totalabsorb/instancia.top) * 100)
|
||||
|
||||
elseif (sub_atributo == 7) then --> mostrando cura negada
|
||||
|
||||
local formated_absorbs = SelectedToKFunction (_, self.totaldenied)
|
||||
|
||||
if (UsingCustomRightText) then
|
||||
esta_barra.texto_direita:SetText (_string_replace (instancia.row_info.textR_custom_text, formated_absorbs, "", porcentagem, self, instancia.showing))
|
||||
else
|
||||
|
||||
if (not bars_show_data [1]) then
|
||||
formated_absorbs = ""
|
||||
end
|
||||
if (not bars_show_data [3]) then
|
||||
porcentagem = ""
|
||||
else
|
||||
porcentagem = porcentagem .. "%"
|
||||
end
|
||||
|
||||
esta_barra.texto_direita:SetText (formated_absorbs .. bars_brackets[1] .. porcentagem .. bars_brackets[2])
|
||||
end
|
||||
esta_porcentagem = _math_floor ((self.totaldenied/instancia.top) * 100)
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -920,7 +947,9 @@ function atributo_heal:ToolTip (instancia, numero, barra, keydown)
|
||||
elseif (instancia.sub_atributo == 6) then --> healing done, HPS or Overheal
|
||||
return self:ToolTip_HealingDone (instancia, numero, barra, keydown)
|
||||
elseif (instancia.sub_atributo == 4) then --> healing taken
|
||||
return self:ToolTip_HealingTaken (instancia, numero, barra, keydown)
|
||||
return self:ToolTip_HealingDenied (instancia, numero, barra, keydown)
|
||||
elseif (instancia.sub_atributo == 7) then --> heal denied
|
||||
return self:ToolTip_HealingDenied (instancia, numero, barra, keydown)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -928,6 +957,161 @@ end
|
||||
local r, g, b
|
||||
local barAlha = .6
|
||||
|
||||
---------> HEAL DENIED
|
||||
function atributo_heal:ToolTip_HealingDenied (instancia, numero, barra, keydown)
|
||||
|
||||
local owner = self.owner
|
||||
if (owner and owner.classe) then
|
||||
r, g, b = unpack (_detalhes.class_colors [owner.classe])
|
||||
else
|
||||
r, g, b = unpack (_detalhes.class_colors [self.classe])
|
||||
end
|
||||
|
||||
local container = instancia.showing [2]
|
||||
local totalDenied = self.totaldenied
|
||||
|
||||
local spellList = {} --spells the player used to deny heal
|
||||
local targetList = {} --all players affected
|
||||
local spellsDenied = {} --all spells which had heal denied
|
||||
|
||||
local icon_size = _detalhes.tooltip.icon_size
|
||||
local icon_border = _detalhes.tooltip.icon_border_texcoord
|
||||
|
||||
for spellID, spell in _pairs (self.spells._ActorTable) do
|
||||
if (spell.totaldenied > 0 and spell.heal_denied) then
|
||||
--my spells which denied heal
|
||||
tinsert (spellList, {spell, spell.totaldenied})
|
||||
|
||||
--players affected
|
||||
for playerName, amount in _pairs (spell.targets) do
|
||||
targetList [playerName] = (targetList [playerName] or 0) + amount
|
||||
end
|
||||
|
||||
--spells with heal denied
|
||||
for spellID, amount in _pairs (spell.heal_denied) do
|
||||
spellsDenied [spellID] = (spellsDenied [spellID] or 0) + amount
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--Spells
|
||||
table.sort (spellList, _detalhes.sort2)
|
||||
_detalhes:AddTooltipSpellHeaderText ("Spells", headerColor, #spellList, [[Interface\TUTORIALFRAME\UI-TutorialFrame-LevelUp]], 0.10546875, 0.89453125, 0.05859375, 0.6796875)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, barAlha)
|
||||
|
||||
local ismaximized = false
|
||||
if (keydown == "shift" or TooltipMaximizedMethod == 2 or TooltipMaximizedMethod == 3) then
|
||||
GameCooltip:AddIcon ([[Interface\AddOns\Details\images\key_shift]], 1, 2, _detalhes.tooltip_key_size_width, _detalhes.tooltip_key_size_height, 0, 1, 0, 0.640625, _detalhes.tooltip_key_overlay2)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, 1)
|
||||
ismaximized = true
|
||||
else
|
||||
GameCooltip:AddIcon ([[Interface\AddOns\Details\images\key_shift]], 1, 2, _detalhes.tooltip_key_size_width, _detalhes.tooltip_key_size_height, 0, 1, 0, 0.640625, _detalhes.tooltip_key_overlay1)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, barAlha)
|
||||
end
|
||||
|
||||
local tooltip_max_abilities = _detalhes.tooltip.tooltip_max_abilities
|
||||
if (ismaximized) then
|
||||
tooltip_max_abilities = 99
|
||||
end
|
||||
|
||||
for i = 1, _math_min (tooltip_max_abilities, #spellList) do
|
||||
local spellObject, spellTotal = unpack (spellList [i])
|
||||
|
||||
if (spellTotal < 1) then
|
||||
break
|
||||
end
|
||||
|
||||
local spellName, _, spellIcon = _GetSpellInfo (spellObject.id)
|
||||
|
||||
GameCooltip:AddLine (spellName .. ": ", FormatTooltipNumber (_, spellTotal) .. " (" .. _cstr ("%.1f", spellTotal / totalDenied) .."%)")
|
||||
|
||||
GameCooltip:AddIcon (spellIcon, nil, nil, icon_size.W, icon_size.H, icon_border.L, icon_border.R, icon_border.T, icon_border.B)
|
||||
_detalhes:AddTooltipBackgroundStatusbar()
|
||||
end
|
||||
|
||||
|
||||
--Target Players
|
||||
local playerSorted = {}
|
||||
for playerName, amount in _pairs (targetList) do
|
||||
tinsert (playerSorted, {playerName, amount})
|
||||
end
|
||||
table.sort (playerSorted, _detalhes.sort2)
|
||||
_detalhes:AddTooltipSpellHeaderText ("Targets", headerColor, #playerSorted, [[Interface\TUTORIALFRAME\UI-TutorialFrame-LevelUp]], 0.10546875, 0.89453125, 0.05859375, 0.6796875)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, barAlha)
|
||||
|
||||
local ismaximized = false
|
||||
if (keydown == "ctrl" or TooltipMaximizedMethod == 2 or TooltipMaximizedMethod == 4) then
|
||||
GameCooltip:AddIcon ([[Interface\AddOns\Details\images\key_ctrl]], 1, 2, _detalhes.tooltip_key_size_width, _detalhes.tooltip_key_size_height, 0, 1, 0, 0.640625, _detalhes.tooltip_key_overlay2)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, 1)
|
||||
ismaximized = true
|
||||
else
|
||||
GameCooltip:AddIcon ([[Interface\AddOns\Details\images\key_ctrl]], 1, 2, _detalhes.tooltip_key_size_width, _detalhes.tooltip_key_size_height, 0, 1, 0, 0.640625, _detalhes.tooltip_key_overlay1)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, barAlha)
|
||||
end
|
||||
|
||||
local tooltip_max_abilities2 = _detalhes.tooltip.tooltip_max_targets
|
||||
if (ismaximized) then
|
||||
tooltip_max_abilities2 = 99
|
||||
end
|
||||
|
||||
for i = 1, _math_min (tooltip_max_abilities2, #playerSorted) do
|
||||
|
||||
local playerName, amountDenied = unpack (playerSorted [i])
|
||||
|
||||
GameCooltip:AddLine (playerName .. ": ", FormatTooltipNumber (_, amountDenied) .." (" .. _cstr ("%.1f", amountDenied / totalDenied * 100) .. "%)")
|
||||
_detalhes:AddTooltipBackgroundStatusbar()
|
||||
|
||||
local targetActor = container:PegarCombatente (nil, playerName) or instancia.showing [1]:PegarCombatente (nil, playerName)
|
||||
if (targetActor) then
|
||||
local classe = targetActor.classe
|
||||
if (not classe) then
|
||||
classe = "UNKNOW"
|
||||
end
|
||||
if (classe == "UNKNOW") then
|
||||
GameCooltip:AddIcon ("Interface\\LFGFRAME\\LFGROLE_BW", nil, nil, 14, 14, .25, .5, 0, 1)
|
||||
else
|
||||
GameCooltip:AddIcon ("Interface\\AddOns\\Details\\images\\classes_small", nil, nil, 14, 14, _unpack (_detalhes.class_coords [classe]))
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
-- Spells Affected
|
||||
local spellsSorted = {}
|
||||
for spellID, amount in _pairs (spellsDenied) do
|
||||
tinsert (spellsSorted, {spellID, amount})
|
||||
end
|
||||
table.sort (spellsSorted, _detalhes.sort2)
|
||||
_detalhes:AddTooltipSpellHeaderText ("Spells Affected", headerColor, #spellsSorted, [[Interface\TUTORIALFRAME\UI-TutorialFrame-LevelUp]], 0.10546875, 0.89453125, 0.05859375, 0.6796875)
|
||||
_detalhes:AddTooltipHeaderStatusbar (r, g, b, barAlha)
|
||||
|
||||
local ismaximized = false
|
||||
local tooltip_max_abilities3 = _detalhes.tooltip.tooltip_max_targets
|
||||
if (keydown == "alt" or TooltipMaximizedMethod == 2 or TooltipMaximizedMethod == 5) then
|
||||
tooltip_max_abilities3 = 99
|
||||
ismaximized = true
|
||||
end
|
||||
|
||||
for i = 1, _math_min (tooltip_max_abilities3, #spellsSorted) do
|
||||
|
||||
local spellID, spellTotal = unpack (spellsSorted [i])
|
||||
|
||||
if (spellTotal < 1) then
|
||||
break
|
||||
end
|
||||
|
||||
local spellName, _, spellIcon = _GetSpellInfo (spellID)
|
||||
|
||||
GameCooltip:AddLine (spellName .. ": ", FormatTooltipNumber (_, spellTotal) .. " (" .. _cstr ("%.1f", spellTotal / totalDenied) .."%)")
|
||||
|
||||
GameCooltip:AddIcon (spellIcon, nil, nil, icon_size.W, icon_size.H, icon_border.L, icon_border.R, icon_border.T, icon_border.B)
|
||||
_detalhes:AddTooltipBackgroundStatusbar()
|
||||
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
---------> HEALING TAKEN
|
||||
function atributo_heal:ToolTip_HealingTaken (instancia, numero, barra, keydown)
|
||||
|
||||
@@ -2157,6 +2341,18 @@ end
|
||||
habilidade_shadow.targets_absorbs [target_name] = 0
|
||||
end
|
||||
end
|
||||
|
||||
--> copia o container de heal negado se ele existir
|
||||
if (habilidade.heal_denied) then
|
||||
--> cria o container na shadow de ele não existir
|
||||
habilidade_shadow.heal_denied = habilidade_shadow.heal_denied or {}
|
||||
--> copia
|
||||
for spellID, amount in _pairs (habilidade.heal_denied) do
|
||||
if (not habilidade_shadow.heal_denied [spellID]) then
|
||||
habilidade_shadow.heal_denied [spellID] = 0
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -2207,6 +2403,8 @@ end
|
||||
shadow.totalabsorb = shadow.totalabsorb + actor.totalabsorb
|
||||
--> total de cura feita em inimigos (captura de dados)
|
||||
shadow.heal_enemy_amt = shadow.heal_enemy_amt + actor.heal_enemy_amt
|
||||
--> total de heal negado
|
||||
shadow.totaldenied = shadow.totaldenied + actor.totaldenied
|
||||
--> total sem pets (captura de dados)
|
||||
shadow.total_without_pet = shadow.total_without_pet + actor.total_without_pet
|
||||
shadow.totalover_without_pet = shadow.totalover_without_pet + actor.totalover_without_pet
|
||||
@@ -2260,6 +2458,16 @@ end
|
||||
habilidade_shadow.targets_absorbs [target_name] = (habilidade_shadow.targets_absorbs [target_name] or 0) + amount
|
||||
end
|
||||
|
||||
--> copia o container de heal negado se ele existir
|
||||
if (habilidade.heal_denied) then
|
||||
--> cria o container na shadow de ele não existir
|
||||
habilidade_shadow.heal_denied = habilidade_shadow.heal_denied or {}
|
||||
--> copia
|
||||
for spellID, amount in _pairs (habilidade.heal_denied) do
|
||||
habilidade_shadow.heal_denied [spellID] = (habilidade_shadow.heal_denied [spellID] or 0) + amount
|
||||
end
|
||||
end
|
||||
|
||||
--> soma todos os demais valores
|
||||
for key, value in _pairs (habilidade) do
|
||||
if (_type (value) == "number") then
|
||||
@@ -2307,6 +2515,9 @@ atributo_heal.__add = function (tabela1, tabela2)
|
||||
tabela1.totalabsorb = tabela1.totalabsorb + tabela2.totalabsorb
|
||||
--> total de cura feita em inimigos
|
||||
tabela1.heal_enemy_amt = tabela1.heal_enemy_amt + tabela2.heal_enemy_amt
|
||||
--> total de cura negada
|
||||
tabela1.totaldenied = tabela1.totaldenied + tabela2.totaldenied
|
||||
|
||||
--> total sem pets
|
||||
tabela1.total_without_pet = tabela1.total_without_pet + tabela2.total_without_pet
|
||||
tabela1.totalover_without_pet = tabela1.totalover_without_pet + tabela2.totalover_without_pet
|
||||
@@ -2352,6 +2563,17 @@ atributo_heal.__add = function (tabela1, tabela2)
|
||||
for target_name, amount in _pairs (habilidade.targets_absorbs) do
|
||||
habilidade_tabela1.targets_absorbs = (habilidade_tabela1.targets_absorbs [target_name] or 0) + amount
|
||||
end
|
||||
|
||||
--> copia o container de heal negado se ele existir
|
||||
if (habilidade.heal_denied) then
|
||||
--> cria o container na shadow de ele não existir
|
||||
habilidade_tabela1.heal_denied = habilidade_tabela1.heal_denied or {}
|
||||
--> copia
|
||||
for spellID, amount in _pairs (habilidade.heal_denied) do
|
||||
habilidade_tabela1.heal_denied [spellID] = (habilidade_tabela1.heal_denied [spellID] or 0) + amount
|
||||
end
|
||||
end
|
||||
|
||||
--> soma os valores da habilidade
|
||||
for key, value in _pairs (habilidade) do
|
||||
if (_type (value) == "number") then
|
||||
@@ -2392,6 +2614,9 @@ atributo_heal.__sub = function (tabela1, tabela2)
|
||||
tabela1.totalabsorb = tabela1.totalabsorb - tabela2.totalabsorb
|
||||
--> total de cura feita em inimigos
|
||||
tabela1.heal_enemy_amt = tabela1.heal_enemy_amt - tabela2.heal_enemy_amt
|
||||
--> total de cura negada
|
||||
tabela1.totaldenied = tabela1.totaldenied - tabela2.totaldenied
|
||||
|
||||
--> total sem pets
|
||||
tabela1.total_without_pet = tabela1.total_without_pet - tabela2.total_without_pet
|
||||
tabela1.totalover_without_pet = tabela1.totalover_without_pet - tabela2.totalover_without_pet
|
||||
@@ -2445,6 +2670,16 @@ atributo_heal.__sub = function (tabela1, tabela2)
|
||||
end
|
||||
end
|
||||
|
||||
--> copia o container de heal negado se ele existir
|
||||
if (habilidade.heal_denied) then
|
||||
--> cria o container na shadow de ele não existir
|
||||
habilidade_tabela1.heal_denied = habilidade_tabela1.heal_denied or {}
|
||||
--> copia
|
||||
for spellID, amount in _pairs (habilidade.heal_denied) do
|
||||
habilidade_tabela1.heal_denied [spellID] = (habilidade_tabela1.heal_denied [spellID] or 0) - amount
|
||||
end
|
||||
end
|
||||
|
||||
--> soma os valores da habilidade
|
||||
for key, value in _pairs (habilidade) do
|
||||
if (_type (value) == "number") then
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
totalabsorb = 0,
|
||||
absorbed = 0,
|
||||
overheal = 0,
|
||||
totaldenied = 0,
|
||||
|
||||
--> multistrike
|
||||
m_amt = 0,
|
||||
@@ -54,21 +55,25 @@
|
||||
return _newHealSpell
|
||||
end
|
||||
|
||||
function habilidade_cura:Add (serial, nome, flag, amount, who_nome, absorbed, critical, overhealing, is_shield)
|
||||
function habilidade_cura:Add (serial, nome, flag, amount, extraSpellID, absorbed, critical, overhealing, is_shield)
|
||||
|
||||
amount = amount or 0
|
||||
self.total = self.total + amount
|
||||
self.targets [nome] = (self.targets [nome] or 0) + amount
|
||||
|
||||
if (multistrike) then
|
||||
self.m_amt = self.m_amt + 1
|
||||
self.m_healed = self.m_healed + amount
|
||||
if (absorbed == "SPELL_HEAL_ABSORBED") then
|
||||
self.counter = self.counter + 1
|
||||
self.totaldenied = self.totaldenied + amount
|
||||
|
||||
if (critical) then
|
||||
self.m_crit = self.m_crit + 1
|
||||
--create the denied table spells, on the fly
|
||||
if (not self.heal_denied) then
|
||||
self.heal_denied = {}
|
||||
end
|
||||
|
||||
self.heal_denied [extraSpellID] = (self.heal_denied [extraSpellID] or 0) + amount
|
||||
|
||||
else
|
||||
|
||||
self.total = self.total + amount
|
||||
self.counter = self.counter + 1
|
||||
|
||||
if (absorbed and absorbed > 0) then
|
||||
|
||||
+123
-1
@@ -991,6 +991,124 @@
|
||||
[152118] = true, --Clarity of Will
|
||||
}
|
||||
|
||||
function parser:heal_denied (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellidAbsorb, spellnameAbsorb, spellschoolAbsorb, serialHealer, nameHealer, flagsHealer, flags2Healer, spellidHeal, spellnameHeal, typeHeal, amountDenied)
|
||||
|
||||
if (not _in_combat) then
|
||||
return
|
||||
end
|
||||
|
||||
--> check invalid serial against pets
|
||||
if (who_serial == "") then
|
||||
if (who_flags and _bit_band (who_flags, OBJECT_TYPE_PETS) ~= 0) then --> é um pet
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
--> no name, use spellname
|
||||
if (not who_name) then
|
||||
who_name = "[*] "..spellname
|
||||
end
|
||||
|
||||
--> no target, just ignore
|
||||
if (not alvo_name) then
|
||||
return
|
||||
end
|
||||
|
||||
--> if no spellid
|
||||
if (not spellidAbsorb) then
|
||||
spellidAbsorb = 1
|
||||
spellnameAbsorb = "unknown"
|
||||
spellschoolAbsorb = 1
|
||||
end
|
||||
|
||||
if (is_using_spellId_override) then
|
||||
spellidAbsorb = override_spellId [spellidAbsorb] or spellidAbsorb
|
||||
spellidHeal = override_spellId [spellidHeal] or spellidHeal
|
||||
end
|
||||
|
||||
------------------------------------------------------------------------------------------------
|
||||
--> get actors
|
||||
|
||||
local este_jogador, meu_dono = healing_cache [who_name]
|
||||
if (not este_jogador) then --> pode ser um desconhecido ou um pet
|
||||
este_jogador, meu_dono, who_name = _current_heal_container:PegarCombatente (who_serial, who_name, who_flags, true)
|
||||
if (not meu_dono and who_flags) then --> se não for um pet, adicionar no cache
|
||||
healing_cache [who_name] = este_jogador
|
||||
end
|
||||
end
|
||||
|
||||
local jogador_alvo, alvo_dono = healing_cache [alvo_name]
|
||||
if (not jogador_alvo) then
|
||||
jogador_alvo, alvo_dono, alvo_name = _current_heal_container:PegarCombatente (alvo_serial, alvo_name, alvo_flags, true)
|
||||
if (not alvo_dono and alvo_flags) then
|
||||
healing_cache [alvo_name] = jogador_alvo
|
||||
end
|
||||
end
|
||||
|
||||
este_jogador.last_event = _tempo
|
||||
|
||||
------------------------------------------------
|
||||
|
||||
este_jogador.totaldenied = este_jogador.totaldenied + amountDenied
|
||||
|
||||
--> actor spells table
|
||||
local spell = este_jogador.spells._ActorTable [spellidAbsorb]
|
||||
if (not spell) then
|
||||
spell = este_jogador.spells:PegaHabilidade (spellidAbsorb, true, token)
|
||||
if (_current_combat.is_boss and who_flags and _bit_band (who_flags, OBJECT_TYPE_ENEMY) ~= 0) then
|
||||
_detalhes.spell_school_cache [spellnameAbsorb] = spellschoolAbsorb or 1
|
||||
end
|
||||
end
|
||||
|
||||
--return spell:Add (alvo_serial, alvo_name, alvo_flags, cura_efetiva, who_name, absorbed, critical, overhealing)
|
||||
return spell_heal_func (spell, alvo_serial, alvo_name, alvo_flags, amountDenied, spellidHeal, token, critical, overhealing)
|
||||
|
||||
|
||||
--print ("|token:", token, "|time:", time, "|whoserial:", who_serial, "|whoname:", who_name, "|whoflags:", who_flags, "|alvoserial:", alvo_serial, "|alvoname:", alvo_name, "|alvoflags", alvo_flags, "|alvoflags2:", alvo_flags2, "|spellidAbsorb:", spellidAbsorb, "|spellnameABsorb", spellnameAbsorb, "|spellschoolAbsorb", spellschoolAbsorb, "|serialhealer:", serialHealer, "|nameHealer:", nameHealer, "|flagsHealer:", flagsHealer, "|flagsHealer2:", flags2Healer, "|spellidHeal:", spellidHeal, "|spellnameHeal:", spellnameHeal, "|typeHeal:", typeHeal, "|amountDenied:", amountDenied)
|
||||
|
||||
|
||||
--[[
|
||||
1 toekn SPELL_HEAL_ABSORBED
|
||||
2 time 1493837437.157
|
||||
3 who serial Player-3209-0514A56A
|
||||
4 who name Bombadão
|
||||
5 who flags 1297
|
||||
6 alvo serial Player-3209-0514A56A
|
||||
7 alvo name Bombadão
|
||||
8 alvo flags 1297
|
||||
9 alvo flags2 0
|
||||
10 spellid 116888
|
||||
11 spellname Shroud of Purgatory
|
||||
12 school 12
|
||||
|
||||
13 GUID - Player-3209-0514A56A
|
||||
14 PLAYERNAME - Bombadão
|
||||
15 FLAGS 1297
|
||||
16 FLAGS2 0
|
||||
17 SPELLID 116888
|
||||
18 SPELLNAME Healing Potion
|
||||
19 ? 1
|
||||
20 ? 2677
|
||||
primeiro actor é o quem comandou o absorb
|
||||
o segundo é a vitima seguido da magia que o primeiro actor usou pra o absorb
|
||||
o terceiro é a vitima com a magia que ela usou e foi absorvida
|
||||
5/3 11:54:58.346 SPELL_HEAL_ABSORBED,
|
||||
Player-3209-051429E9,"Mephisstoo-Azralon",0x10548,0x0,Player-3209-05144527,"Keyspell-Azralon",0x511,0x0,223929,"Necrotic Wound",0x28,Player-3209-05144527,"Keyspell-Azralon",0x511,0x0,188016,"Ancient Healing Potion",0x1,254466
|
||||
|
||||
--heal pot spellID: 28495 - heal 2841
|
||||
|
||||
1 SPELL_HEAL_ABSORBED 2 1493837944.856 3 Player-3209-0514A56A 4 Bombadão 5 1297 6 Player-3209-0514A56A 7 Bombadão 8 1297 9 0 10 116888 11 Shroud of Purgatory 12 32 13 Player-3209-0514A56A 14 Bombadão 15 1297 16 0 17 116888 18 Healing Potion 19 1 20 1860 21 nil 22 nil 23 nil 24 nil 25 nil 26 nil 27 nil
|
||||
|
||||
1 SPELL_HEAL_ABSORBED 2 1493839447.257 3 Player-3209-0514A56A 4 Bombadão 5 1297 6 Player-3209-0514A56A 7 Bombadão 8 1297 9 0 10 nil 11 nil 12 nil 13 Player-3209-05DE3E42 14 Yakumile 15 1298 16 0 17 116888 18 Holy Word: Serenity 19 2 20 2690 21 nil 22 nil
|
||||
|
||||
1 SPELL_HEAL_ABSORBED 2 1493840761.019 3 Player-3209-0514A56A 4 Bombadão 5 1297 6 Player-3209-0514A56A 7 Bombadão 8 1297 9 0 10 nil 11 nil 12 nil 13 Player-57-06AB4689 14 Yakumile 15 1298 16 0 17 116888 18 Circle of Healing 19 2 20 673 21 nil 22 nil 23 nil 24 nil 25 nil 26 nil 27 nil
|
||||
|
||||
oken: SPELL_HEAL_ABSORBED ime: 1493841853.862 |whoserial: Player-3209-0514A56A |whoname: Bombadão |whoflags: 1297 |alvoserial: Player-3209-0514A56A |alvoname: Bombadão |alvoflags 1297 |alvoflags2: 0 |spellidAbsorb: 116888 |spellnameABsorb Shroud of Purgatory |spellschoolAbsorb 32 |serialhealer: Player-3209-0514A56A
|
||||
ameHealer: Bombadão |flagsHealer: 1297 |flagsHealer2: 0 |spellidHeal: 116888 |spellnameHeal: Healing Potion ypeHeal: 1 |amountDenied: 870
|
||||
|
||||
--]]
|
||||
end
|
||||
|
||||
function parser:heal_absorb (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, spellschool, owner_serial, owner_name, owner_flags, owner_flags2, shieldid, shieldname, shieldtype, amount)
|
||||
|
||||
--[[statistics]]-- _detalhes.statistics.absorbs_calls = _detalhes.statistics.absorbs_calls + 1
|
||||
@@ -3174,6 +3292,7 @@ SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 18
|
||||
elseif (capture_type == "heal") then
|
||||
token_list ["SPELL_HEAL"] = nil
|
||||
token_list ["SPELL_PERIODIC_HEAL"] = nil
|
||||
token_list ["SPELL_HEAL_ABSORBED"] = nil
|
||||
token_list ["SPELL_ABSORBED"] = nil
|
||||
_recording_healing = false
|
||||
|
||||
@@ -3239,6 +3358,7 @@ SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 18
|
||||
elseif (capture_type == "heal") then
|
||||
token_list ["SPELL_HEAL"] = parser.heal
|
||||
token_list ["SPELL_PERIODIC_HEAL"] = parser.heal
|
||||
token_list ["SPELL_HEAL_ABSORBED"] = parser.heal_denied
|
||||
token_list ["SPELL_ABSORBED"] = parser.heal_absorb
|
||||
_recording_healing = true
|
||||
|
||||
@@ -3284,6 +3404,7 @@ SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 18
|
||||
["environment"] = parser.environment,
|
||||
["heal"] = parser.heal,
|
||||
["heal_absorb"] = parser.heal_absorb,
|
||||
["heal_denied"] = parser.heal_denied,
|
||||
["buff"] = parser.buff,
|
||||
["unbuff"] = parser.unbuff,
|
||||
["buff_refresh"] = parser.buff_refresh,
|
||||
@@ -3327,7 +3448,8 @@ SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 18
|
||||
["ENVIRONMENTAL_DAMAGE"] = "environment",
|
||||
|
||||
["SPELL_HEAL"] = "heal",
|
||||
["SPELL_PERIODIC_HEAL"] = "heal",
|
||||
["SPELL_PERIODIC_HEAL"] = "heal",
|
||||
["SPELL_HEAL_ABSORBED"] = "heal_denied",
|
||||
["SPELL_ABSORBED"] = "heal_absorb",
|
||||
|
||||
["SPELL_AURA_APPLIED"] = "buff",
|
||||
|
||||
@@ -24,6 +24,7 @@ do
|
||||
--[[global]] DETAILS_SUBATTRIBUTE_HEALTAKEN = 4
|
||||
--[[global]] DETAILS_SUBATTRIBUTE_HEALENEMY = 5
|
||||
--[[global]] DETAILS_SUBATTRIBUTE_HEALPREVENTED = 6
|
||||
--[[global]] DETAILS_SUBATTRIBUTE_HEALABSORBED = 7
|
||||
|
||||
--[[global]] DETAILS_ATTRIBUTE_ENERGY = 3
|
||||
|
||||
@@ -60,6 +61,7 @@ do
|
||||
"heal", --healing taken
|
||||
"heal", --enemy healed
|
||||
"heal", --damage prevented
|
||||
"heal", --heal absorbed/denied
|
||||
|
||||
"energy", --mana restored
|
||||
"energy", --rage gained
|
||||
@@ -89,7 +91,7 @@ do
|
||||
|
||||
--[[ HEALING ]]
|
||||
cura = 2, --> identifier
|
||||
[2] = 6, --> sub attributes
|
||||
[2] = 7, --> sub attributes
|
||||
|
||||
--[[ ENERGY ]]
|
||||
e_energy = 3,--> identifier
|
||||
@@ -157,6 +159,7 @@ do
|
||||
healing_tanken = 4,
|
||||
heal_enemy_amt = 5,
|
||||
totalabsorb = 6,
|
||||
totaldenied = 7,
|
||||
lista = { --[[ String Names ]]
|
||||
Loc ["STRING_ATTRIBUTE_HEAL_DONE"],
|
||||
Loc ["STRING_ATTRIBUTE_HEAL_HPS"],
|
||||
@@ -164,6 +167,7 @@ do
|
||||
Loc ["STRING_ATTRIBUTE_HEAL_TAKEN"],
|
||||
Loc ["STRING_ATTRIBUTE_HEAL_ENEMY"],
|
||||
Loc ["STRING_ATTRIBUTE_HEAL_PREVENT"],
|
||||
"Heal Absorbed (in testing)",
|
||||
},
|
||||
|
||||
icones = {
|
||||
@@ -172,9 +176,10 @@ do
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {.25, .375, 0, 1}},
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {.375, .5, 0, 1}},
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {.5, 0.625, 0, 1}},
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {0.625, 0.75, 0, 1}}
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {0.625, 0.75, 0, 1}},
|
||||
{"Interface\\AddOns\\Details\\images\\atributos_icones_heal", {0.75, 0.75+.125, 0, 1}},
|
||||
},
|
||||
internal = {"total", "last_hps", "totalover", "healing_taken", "heal_enemy_amt", "totalabsorb"}
|
||||
internal = {"total", "last_hps", "totalover", "healing_taken", "heal_enemy_amt", "totalabsorb", "totaldenied"}
|
||||
},
|
||||
|
||||
{
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user