update
This commit is contained in:
+58
-14
@@ -405,6 +405,7 @@ end
|
||||
|
||||
--total: amount of damage done
|
||||
total = alphabetical,
|
||||
extra_bar = 0,
|
||||
--totalabsorbed: amount of damage done absorbed by shields
|
||||
totalabsorbed = alphabetical,
|
||||
--total_without_pet: amount of damage done without pet damage
|
||||
@@ -2125,18 +2126,17 @@ function damageClass:RefreshWindow(instancia, combatObject, forcar, exportar, re
|
||||
instancia.top = actorTableContent[1] and actorTableContent[1][keyName]
|
||||
|
||||
elseif (windowMode == modo_ALL) then --mostrando ALL
|
||||
|
||||
--faz o sort da categoria e retorna o amount corrigido
|
||||
--print(keyName)
|
||||
if (subAttribute == 2) then
|
||||
local combat_time = instancia.showing:GetCombatTime()
|
||||
total = damageClass:ContainerRefreshDps (actorTableContent, combat_time)
|
||||
total = damageClass:ContainerRefreshDps(actorTableContent, combat_time)
|
||||
else
|
||||
--pega o total ja aplicado na tabela do combate
|
||||
total = combatObject.totals [class_type]
|
||||
total = combatObject.totals[class_type]
|
||||
end
|
||||
|
||||
amount = Details:ContainerSort (actorTableContent, amount, keyName)
|
||||
amount = Details:ContainerSort(actorTableContent, amount, keyName)
|
||||
|
||||
--grava o total
|
||||
instancia.top = actorTableContent[1][keyName]
|
||||
@@ -2589,10 +2589,11 @@ local actor_class_color_r, actor_class_color_g, actor_class_color_b
|
||||
perSecondText = perSecondText or ""
|
||||
percentText = percentText or ""
|
||||
|
||||
-- local actorSerial = thisLine:GetActor().serial
|
||||
-- local currentDps = Details.CurrentDps.GetCurrentDps(actorSerial) or perSecondText
|
||||
-- perSecondText = currentDps
|
||||
-- end
|
||||
if (Details.time_type == 3 and Details.in_combat) then --real time
|
||||
local actorSerial = thisLine:GetActor().serial
|
||||
local currentDps = Details.CurrentDps.GetCurrentDps(actorSerial) or perSecondText
|
||||
perSecondText = currentDps
|
||||
end
|
||||
|
||||
--check if the instance is showing total, dps and percent
|
||||
local instanceSettings = instance.row_info
|
||||
@@ -2628,7 +2629,7 @@ local actor_class_color_r, actor_class_color_g, actor_class_color_b
|
||||
end
|
||||
|
||||
-- ~atualizar ~barra ~update
|
||||
function damageClass:RefreshLine(instance, lineContainer, whichRowLine, rank, total, sub_atributo, forcar, keyName, combat_time, percentage_type, use_animations, bars_show_data, bars_brackets, bars_separator)
|
||||
function damageClass:RefreshLine(instance, lineContainer, whichRowLine, rank, total, sub_atributo, forcar, keyName, combat_time, percentage_type, bUseAnimations, bars_show_data, bars_brackets, bars_separator)
|
||||
local thisLine = lineContainer[whichRowLine]
|
||||
|
||||
if (not thisLine) then
|
||||
@@ -2888,11 +2889,34 @@ function damageClass:RefreshLine(instance, lineContainer, whichRowLine, rank, to
|
||||
|
||||
actor_class_color_r, actor_class_color_g, actor_class_color_b = self:GetBarColor()
|
||||
|
||||
return self:RefreshLineValue(thisLine, instance, previousData, forcar, percentNumber, whichRowLine, lineContainer, use_animations)
|
||||
return self:RefreshLineValue(thisLine, instance, previousData, forcar, percentNumber, whichRowLine, lineContainer, bUseAnimations)
|
||||
end
|
||||
|
||||
local alignExtraBar = function(thisLine, actorObject, instanceObject, percentAmount)
|
||||
local extraAmount = actorObject.extra_bar
|
||||
if (extraAmount > 0 and Details.combat_log.evoker_calc_damage) then
|
||||
local bIsUsingBarStartAfterIcon = instanceObject.row_info.start_after_icon
|
||||
local initialOffset = 0
|
||||
if (bIsUsingBarStartAfterIcon) then
|
||||
initialOffset = thisLine.icone_classe:GetWidth()
|
||||
end
|
||||
|
||||
local whiteBarStartOffset = initialOffset + thisLine:GetWidth() * percentAmount / 100
|
||||
local whiteBarWidth = (extraAmount / actorObject.total) * (percentAmount / 100) * thisLine:GetWidth()
|
||||
|
||||
thisLine.extraTexture:SetPoint("left", thisLine, "left", whiteBarStartOffset - 7, 0)
|
||||
thisLine.extraTexture:SetWidth(whiteBarWidth)
|
||||
|
||||
thisLine.extraTexture:SetHeight(thisLine:GetHeight())
|
||||
thisLine.extraTexture:Show()
|
||||
end
|
||||
end
|
||||
|
||||
function Details:RefreshLineValue(thisLine, instance, previousData, isForceRefresh, percent, whichRowLine, lineContainer, bUseAnimations) --[[ exported]]
|
||||
if (self.spec ~= 1473) then
|
||||
thisLine.extraTexture:Hide()
|
||||
end
|
||||
|
||||
function Details:RefreshLineValue(thisLine, instance, previousData, isForceRefresh, percent, whichRowLine, lineContainer, useAnimations) --[[ exported]]
|
||||
if (thisLine.colocacao == 1) then
|
||||
thisLine.animacao_ignorar = true
|
||||
|
||||
@@ -2910,7 +2934,7 @@ function Details:RefreshLineValue(thisLine, instance, previousData, isForceRefre
|
||||
else
|
||||
if (thisLine.hidden or thisLine.fading_in or thisLine.faded) then
|
||||
--setando o valor mesmo com anima��es pq o barra esta hidada com o value do �ltimo actor que ela mostrou
|
||||
if (useAnimations) then
|
||||
if (bUseAnimations and self.spec ~= 1473) then
|
||||
thisLine.animacao_fim = percent
|
||||
thisLine:SetValue(percent)
|
||||
else
|
||||
@@ -2920,11 +2944,15 @@ function Details:RefreshLineValue(thisLine, instance, previousData, isForceRefre
|
||||
|
||||
Details.FadeHandler.Fader(thisLine, "out")
|
||||
|
||||
if (self.spec == 1473) then
|
||||
alignExtraBar(thisLine, self, instance, percent)
|
||||
end
|
||||
|
||||
return self:RefreshBarra(thisLine, instance)
|
||||
else
|
||||
--agora esta comparando se a tabela da barra � diferente da tabela na atualiza��o anterior
|
||||
if (not previousData or previousData ~= thisLine.minha_tabela or isForceRefresh) then --aqui diz se a barra do jogador mudou de posi��o ou se ela apenas ser� atualizada
|
||||
if (useAnimations) then
|
||||
if (bUseAnimations and self.spec ~= 1473) then
|
||||
thisLine.animacao_fim = percent
|
||||
else
|
||||
thisLine:SetValue(percent)
|
||||
@@ -2933,17 +2961,25 @@ function Details:RefreshLineValue(thisLine, instance, previousData, isForceRefre
|
||||
|
||||
thisLine.last_value = percent --reseta o ultimo valor da barra
|
||||
|
||||
if (self.spec == 1473) then
|
||||
alignExtraBar(thisLine, self, instance, percent)
|
||||
end
|
||||
|
||||
return self:RefreshBarra(thisLine, instance)
|
||||
|
||||
elseif (percent ~= thisLine.last_value) then --continua mostrando a mesma tabela ent�o compara a porcentagem
|
||||
--apenas atualizar
|
||||
if (useAnimations) then
|
||||
if (bUseAnimations and self.spec ~= 1473) then
|
||||
thisLine.animacao_fim = percent
|
||||
else
|
||||
thisLine:SetValue(percent)
|
||||
end
|
||||
thisLine.last_value = percent
|
||||
|
||||
if (self.spec == 1473) then
|
||||
alignExtraBar(thisLine, self, instance, percent)
|
||||
end
|
||||
|
||||
return self:RefreshBarra(thisLine, instance)
|
||||
end
|
||||
end
|
||||
@@ -3044,6 +3080,14 @@ function Details:SetBarColors(bar, instance, r, g, b, a) --[[exported]]
|
||||
a = a or 1
|
||||
|
||||
if (instance.row_info.texture_class_colors) then
|
||||
if (self.classe == "UNGROUPPLAYER") then
|
||||
if (self.spec) then
|
||||
local specId, specName, specDescription, specIcon, specRole, specClass = DetailsFramework.GetSpecializationInfoByID(self.spec)
|
||||
if (specClass) then
|
||||
self.classe = specClass
|
||||
end
|
||||
end
|
||||
end
|
||||
bar.textura:SetVertexColor(r, g, b, a)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user