- removed warlords of draenor dungeon info plugin.
- removed hellfire citadel raid info plugin.
- remove calc leech plugin.
- added emerald nightmare raid info plugin.
- added the nighthold raid info plugin.

hotfixes:
- fix for total bar where sometimes it desappears.
- fix for overall data reseting its elapsed time making dps and hps goes to millions.
- fix for overall not reseting when entering in a new dungeon.
- fix for trash cleanup on dungeons.
- fix for item level detection on dungeons.
- fix for artifact offhand always being counter as 750 item level.
- fix for segments menu sometimes not opening at all after a dungeon boss.
- fix for segments menu not showing the boss icon above the sub panel.
- fix for the top left corner of the window be ignoring the 'hide icon' setting at a /reload.
This commit is contained in:
Tercio
2016-09-13 14:12:47 -03:00
parent 04d2206505
commit f67e310133
24 changed files with 342 additions and 1076 deletions
+4
View File
@@ -82,6 +82,10 @@
return self.is_boss
end
function combate:GetPhases()
return self.PhaseData
end
function combate:GetPvPInfo()
return self.is_pvp
end
+61 -2
View File
@@ -2062,7 +2062,7 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
end
instancia:AtualizarScrollBar (amount)
local qual_barra = 1
local barras_container = instancia.barras
local percentage_type = instancia.row_info.percent_type
@@ -2118,10 +2118,12 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
instancia.player_top_dps_threshold = instancia.player_top_dps - (instancia.player_top_dps * 0.65)
end
local totalBarIsShown
if (instancia.bars_sort_direction == 1) then --top to bottom
if (use_total_bar and instancia.barraS[1] == 1) then
qual_barra = 2
local iter_last = instancia.barraS[2]
if (iter_last == instancia.rows_fit_in_window) then
@@ -2141,6 +2143,7 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
row1.icone_classe:SetTexCoord (0.0625, 0.9375, 0.0625, 0.9375)
gump:Fade (row1, "out")
totalBarIsShown = true
if (following and myPos and myPos > instancia.rows_fit_in_window and instancia.barraS[2] < myPos) then
for i = instancia.barraS[1], iter_last-1, 1 do
@@ -2205,6 +2208,7 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
row1.icone_classe:SetTexCoord (0.0625, 0.9375, 0.0625, 0.9375)
gump:Fade (row1, "out")
totalBarIsShown = true
if (following and myPos and myPos > instancia.rows_fit_in_window and instancia.barraS[2] < myPos) then
for i = iter_last-1, instancia.barraS[1], -1 do
@@ -2248,6 +2252,12 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
end
if (totalBarIsShown) then
instancia:AtualizarScrollBar (amount + 1)
else
instancia:AtualizarScrollBar (amount)
end
if (use_animations) then
instancia:fazer_animacoes (qual_barra - 1)
end
@@ -3015,6 +3025,55 @@ function atributo_damage:ToolTip_DamageDone (instancia, numero, barra, keydown)
end
--> ~Phases
local segment = instancia:GetShowingCombat()
if (segment and self.grupo) then
local bossInfo = segment:GetBossInfo()
local phasesInfo = segment:GetPhases()
if (bossInfo and phasesInfo) then
if (#phasesInfo > 1) then
--_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\MobileAppIcons]], 2*130/1024, 3*130/1024, 5*130/1024, 6*130/1024)
--_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\orderhall-missions-mechanic10]], 0, 1, 0, 1)
_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\orderhall-missions-mechanic8]], 11/64, 53/64, 11/64, 53/64)
--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)
local playerPhases = {}
local totalDamage = 0
for phase, playersTable in pairs (phasesInfo.damage) do --each phase
local allPlayers = {} --all players for this phase
for playerName, amount in pairs (playersTable) do
tinsert (allPlayers, {playerName, amount})
totalDamage = totalDamage + amount
end
table.sort (allPlayers, function(a, b) return a[2] > b[2] end)
local myRank = 0
for i = 1, #allPlayers do
if (allPlayers [i] [1] == self.nome) then
myRank = i
break
end
end
tinsert (playerPhases, {phase, playersTable [self.nome] or 0, myRank, playersTable [self.nome]/totalDamage*100})
end
table.sort (playerPhases, function(a, b) return a[1] < b[1] end)
for i = 1, #playerPhases do
--[1] Phase Number [2] Amount Done [3] Rank [4] Percent
GameCooltip:AddLine ("|cFFF0F0F0Phase|r " .. playerPhases [i][1], FormatTooltipNumber (_, playerPhases [i][2]) .. " (|cFFFFFF00#" .. playerPhases [i][3] .. "|r, " .. _cstr ("%.1f", playerPhases [i][4]) .. "%)")
GameCooltip:AddIcon ([[Interface\Garrison\orderhall-missions-mechanic9]], 1, 1, 14, 14, 11/64, 53/64, 11/64, 53/64)
_detalhes:AddTooltipBackgroundStatusbar()
end
end
end
end
return true
end
+53 -2
View File
@@ -1002,7 +1002,7 @@ end
local background_heal_vs_absorbs = {value = 100, color = {1, 1, 0, .25}, specialSpark = false, texture = [[Interface\AddOns\Details\images\bar4_glass]]}
function atributo_heal:ToolTip_HealingDone (instancia, numero, barra, keydown)
local owner = self.owner
if (owner and owner.classe) then
r, g, b = unpack (_detalhes.class_colors [owner.classe])
@@ -1013,7 +1013,7 @@ function atributo_heal:ToolTip_HealingDone (instancia, numero, barra, keydown)
local ActorHealingTable = {}
local ActorHealingTargets = {}
local ActorSkillsContainer = self.spells._ActorTable
local actor_key, skill_key = "total", "total"
if (instancia.sub_atributo == 3) then
actor_key, skill_key = "totalover", "overheal"
@@ -1225,6 +1225,57 @@ function atributo_heal:ToolTip_HealingDone (instancia, numero, barra, keydown)
end
--> ~Phases
local segment = instancia:GetShowingCombat()
if (segment and self.grupo) then
local bossInfo = segment:GetBossInfo()
local phasesInfo = segment:GetPhases()
if (bossInfo and phasesInfo) then
if (#phasesInfo > 1) then
--_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\MobileAppIcons]], 2*130/1024, 3*130/1024, 5*130/1024, 6*130/1024)
--_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\orderhall-missions-mechanic10]], 0, 1, 0, 1)
_detalhes:AddTooltipSpellHeaderText ("Phases", headerColor, 1, [[Interface\Garrison\orderhall-missions-mechanic8]], 11/64, 53/64, 11/64, 53/64)
--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)
local playerPhases = {}
local totalDamage = 0
for phase, playersTable in pairs (phasesInfo.heal) do --each phase
local allPlayers = {} --all players for this phase
for playerName, amount in pairs (playersTable) do
tinsert (allPlayers, {playerName, amount})
totalDamage = totalDamage + amount
end
table.sort (allPlayers, function(a, b) return a[2] > b[2] end)
local myRank = 0
for i = 1, #allPlayers do
if (allPlayers [i] [1] == self.nome) then
myRank = i
break
end
end
tinsert (playerPhases, {phase, playersTable [self.nome] or 0, myRank, playersTable [self.nome]/totalDamage*100})
end
table.sort (playerPhases, function(a, b) return a[1] < b[1] end)
for i = 1, #playerPhases do
--[1] Phase Number [2] Amount Done [3] Rank [4] Percent
GameCooltip:AddLine ("|cFFF0F0F0Phase|r " .. playerPhases [i][1], FormatTooltipNumber (_, playerPhases [i][2]) .. " (|cFFFFFF00#" .. playerPhases [i][3] .. "|r, " .. _cstr ("%.1f", playerPhases [i][4]) .. "%)")
GameCooltip:AddIcon ([[Interface\Garrison\orderhall-missions-mechanic9]], 1, 1, 14, 14, 11/64, 53/64, 11/64, 53/64)
_detalhes:AddTooltipBackgroundStatusbar()
end
end
end
end
--> absorbs vs heal
--[=[
if (instancia.sub_atributo == 1 or instancia.sub_atributo == 2) then
+20 -12
View File
@@ -22,7 +22,12 @@ function historico:NovoHistorico()
end
function historico:adicionar_overall (tabela)
if (tabela:GetCombatTime() <= 10) then
return
end
if (_detalhes.overall_clear_newboss) then
--> only for raids
if (tabela.instance_type == "raid" and tabela.is_boss) then
if (_detalhes.last_encounter ~= _detalhes.last_encounter2) then
for index, combat in ipairs (_detalhes.tabela_historico.tabelas) do
@@ -53,18 +58,21 @@ function historico:adicionar_overall (tabela)
end
end
if (_detalhes.tabela_overall.start_time == 0) then
_detalhes.tabela_overall:SetStartTime (tabela.start_time)
_detalhes.tabela_overall:SetEndTime (tabela.end_time)
else
_detalhes.tabela_overall:SetStartTime (tabela.start_time - _detalhes.tabela_overall:GetCombatTime())
_detalhes.tabela_overall:SetEndTime (tabela.end_time)
end
if (_detalhes.tabela_overall.data_inicio == 0) then
_detalhes.tabela_overall.data_inicio = _detalhes.tabela_vigente.data_inicio or 0
end
--
if (_detalhes.tabela_overall.start_time == 0) then
--print ("start_time == 0 NO!")
_detalhes.tabela_overall:SetStartTime (tabela.start_time)
_detalhes.tabela_overall:SetEndTime (tabela.end_time)
else
--print ("start_time ~= 0 OKAY", tabela.start_time, _detalhes.tabela_overall:GetCombatTime(), tabela.start_time - _detalhes.tabela_overall:GetCombatTime())
_detalhes.tabela_overall:SetStartTime (tabela.start_time - _detalhes.tabela_overall:GetCombatTime())
_detalhes.tabela_overall:SetEndTime (tabela.end_time)
end
if (_detalhes.tabela_overall.data_inicio == 0) then
_detalhes.tabela_overall.data_inicio = _detalhes.tabela_vigente.data_inicio or 0
end
--
_detalhes.tabela_overall:seta_data (_detalhes._detalhes_props.DATA_TYPE_END)
_detalhes:ClockPluginTickOnSegment()