chore: hoist plugins to root and move main into Details/
Each Details_* plugin and the main Details addon now lives in its own repo-root folder, matching the Exiles fork-layout convention.
This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
-- misc ability file
|
||||
local _detalhes = _G.Details
|
||||
local _
|
||||
local addonName, Details222 = ...
|
||||
local classUtility = _detalhes.habilidade_misc
|
||||
|
||||
function classUtility:NovaTabela(id, link, token)
|
||||
local spellTable = {
|
||||
id = id,
|
||||
counter = 0,
|
||||
targets = {}
|
||||
}
|
||||
|
||||
if (token == "BUFF_UPTIME" or token == "DEBUFF_UPTIME") then
|
||||
spellTable.uptime = 0
|
||||
spellTable.actived = false
|
||||
spellTable.activedamt = 0 --amount of active auras
|
||||
spellTable.refreshamt = 0
|
||||
spellTable.appliedamt = 0
|
||||
|
||||
elseif (token == "SPELL_INTERRUPT") then
|
||||
spellTable.interrompeu_oque = {}
|
||||
|
||||
elseif (token == "SPELL_DISPEL" or token == "SPELL_STOLEN") then
|
||||
spellTable.dispell_oque = {}
|
||||
|
||||
elseif (token == "SPELL_AURA_BROKEN" or token == "SPELL_AURA_BROKEN_SPELL") then
|
||||
spellTable.cc_break_oque = {}
|
||||
end
|
||||
|
||||
return spellTable
|
||||
end
|
||||
|
||||
---@param spellTable spelltable
|
||||
---@param targetName string
|
||||
---@param token string|actor
|
||||
---@param spellId number
|
||||
---@param parserToken string
|
||||
function classUtility.Add(spellTable, targetName, token, spellId, parserToken, tempoOverrided)
|
||||
--as the passed parameters for aura are different from the reset of the abilities, this should be a different function
|
||||
if (spellId == "BUFF_OR_DEBUFF") then
|
||||
local actorUtilityObject = token
|
||||
local _tempo = tempoOverrided or _detalhes._tempo
|
||||
|
||||
if (parserToken == "COOLDOWN") then
|
||||
spellTable.counter = spellTable.counter + 1
|
||||
spellTable.targets[targetName] = (spellTable.targets[targetName] or 0) + 1
|
||||
|
||||
elseif (parserToken == "BUFF_UPTIME_REFRESH") then
|
||||
if (spellTable.actived_at and spellTable.actived) then
|
||||
spellTable.uptime = spellTable.uptime + (_tempo - spellTable.actived_at)
|
||||
spellTable.refreshamt = spellTable.refreshamt + 1
|
||||
actorUtilityObject.buff_uptime = actorUtilityObject.buff_uptime + (_tempo - spellTable.actived_at)
|
||||
end
|
||||
|
||||
spellTable.actived_at = _tempo
|
||||
spellTable.actived = true
|
||||
|
||||
elseif (parserToken == "BUFF_UPTIME_OUT") then
|
||||
if (spellTable.actived_at and spellTable.actived) then
|
||||
spellTable.uptime = spellTable.uptime + (_tempo - spellTable.actived_at)
|
||||
actorUtilityObject.buff_uptime = actorUtilityObject.buff_uptime + (_tempo - spellTable.actived_at)
|
||||
end
|
||||
|
||||
spellTable.actived = false
|
||||
spellTable.actived_at = nil
|
||||
|
||||
elseif (parserToken == "BUFF_UPTIME_IN" or parserToken == "DEBUFF_UPTIME_IN") then
|
||||
--aura applied
|
||||
spellTable.actived = true
|
||||
spellTable.activedamt = spellTable.activedamt + 1
|
||||
spellTable.appliedamt = spellTable.appliedamt + 1
|
||||
|
||||
if (spellTable.actived_at and spellTable.actived and parserToken == "DEBUFF_UPTIME_IN") then
|
||||
--ja esta ativo em outro mob e jogou num novo
|
||||
spellTable.uptime = spellTable.uptime + (_tempo - spellTable.actived_at)
|
||||
actorUtilityObject.debuff_uptime = actorUtilityObject.debuff_uptime + (_tempo - spellTable.actived_at)
|
||||
end
|
||||
|
||||
spellTable.actived_at = _tempo
|
||||
|
||||
if (not spellTable.uptime) then
|
||||
spellTable.uptime = 0
|
||||
end
|
||||
|
||||
elseif (parserToken == "DEBUFF_UPTIME_REFRESH") then
|
||||
if (spellTable.actived_at and spellTable.actived) then
|
||||
spellTable.uptime = spellTable.uptime + (_tempo - spellTable.actived_at)
|
||||
spellTable.refreshamt = spellTable.refreshamt + 1
|
||||
actorUtilityObject.debuff_uptime = actorUtilityObject.debuff_uptime + (_tempo - spellTable.actived_at)
|
||||
end
|
||||
|
||||
spellTable.actived_at = _tempo
|
||||
spellTable.actived = true
|
||||
|
||||
elseif (parserToken == "DEBUFF_UPTIME_OUT") then
|
||||
if (spellTable.actived_at and spellTable.actived) then
|
||||
spellTable.uptime = spellTable.uptime + (_tempo - spellTable.actived_at)
|
||||
actorUtilityObject.debuff_uptime = actorUtilityObject.debuff_uptime + (_tempo - spellTable.actived_at)
|
||||
end
|
||||
|
||||
spellTable.activedamt = spellTable.activedamt - 1
|
||||
|
||||
if (spellTable.activedamt == 0) then
|
||||
spellTable.actived = false
|
||||
spellTable.actived_at = nil
|
||||
else
|
||||
spellTable.actived_at = _tempo
|
||||
end
|
||||
end
|
||||
|
||||
elseif (token == "SPELL_INTERRUPT") then
|
||||
spellTable.counter = spellTable.counter + 1
|
||||
|
||||
if (not spellTable.interrompeu_oque[spellId]) then
|
||||
spellTable.interrompeu_oque[spellId] = 1
|
||||
else
|
||||
spellTable.interrompeu_oque[spellId] = spellTable.interrompeu_oque[spellId] + 1
|
||||
end
|
||||
|
||||
--target
|
||||
spellTable.targets[targetName] = (spellTable.targets[targetName] or 0) + 1
|
||||
|
||||
elseif (token == "SPELL_RESURRECT") then
|
||||
spellTable.ress = (spellTable.ress or 0) + 1
|
||||
--target
|
||||
spellTable.targets[targetName] = (spellTable.targets[targetName] or 0) + 1
|
||||
|
||||
elseif (token == "SPELL_DISPEL" or token == "SPELL_STOLEN") then
|
||||
spellTable.dispell = (spellTable.dispell or 0) + 1
|
||||
|
||||
if (not spellTable.dispell_oque[spellId]) then
|
||||
spellTable.dispell_oque[spellId] = 1
|
||||
else
|
||||
spellTable.dispell_oque[spellId] = spellTable.dispell_oque[spellId] + 1
|
||||
end
|
||||
|
||||
--target
|
||||
spellTable.targets[targetName] = (spellTable.targets[targetName] or 0) + 1
|
||||
|
||||
elseif (token == "SPELL_AURA_BROKEN_SPELL" or token == "SPELL_AURA_BROKEN") then
|
||||
spellTable.cc_break = (spellTable.cc_break or 0) + 1
|
||||
|
||||
if (not spellTable.cc_break_oque[spellId]) then
|
||||
spellTable.cc_break_oque[spellId] = 1
|
||||
else
|
||||
spellTable.cc_break_oque[spellId] = spellTable.cc_break_oque[spellId] + 1
|
||||
end
|
||||
|
||||
--target
|
||||
spellTable.targets[targetName] = (spellTable.targets[targetName] or 0) + 1
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user