- packpager, hello?

This commit is contained in:
Tercio
2017-07-26 10:14:37 -03:00
parent 1a34278a49
commit 1b07ba9276
10 changed files with 815 additions and 41 deletions
-2
View File
@@ -1,5 +1,3 @@
package-as: Details
move-folders:
Details/plugins/Details_DmgRank: Details_DmgRank
Details/plugins/Details_EncounterDetails: Details_EncounterDetails
+9 -11
View File
File diff suppressed because one or more lines are too long
+88 -13
View File
@@ -3594,18 +3594,18 @@ function atributo_damage:MontaInfo()
end
---------> DETALHES bloco da direita BIFURCAÇÃO
function atributo_damage:MontaDetalhes (spellid, barra)
function atributo_damage:MontaDetalhes (spellid, barra, instancia)
if (info.sub_atributo == 1 or info.sub_atributo == 2) then
return self:MontaDetalhesDamageDone (spellid, barra)
return self:MontaDetalhesDamageDone (spellid, barra, instancia)
elseif (info.sub_atributo == 3) then
return self:MontaDetalhesDamageTaken (spellid, barra)
return self:MontaDetalhesDamageTaken (spellid, barra, instancia)
elseif (info.sub_atributo == 4) then
return self:MontaDetalhesFriendlyFire (spellid, barra)
return self:MontaDetalhesFriendlyFire (spellid, barra, instancia)
elseif (info.sub_atributo == 6) then
if (_bit_band (self.flag_original, 0x00000400) ~= 0) then --é um jogador
return self:MontaDetalhesDamageDone (spellid, barra)
return self:MontaDetalhesDamageDone (spellid, barra, instancia)
end
return self:MontaDetalhesEnemy (spellid, barra)
return self:MontaDetalhesEnemy (spellid, barra, instancia)
--return self:MontaDetalhesDamageDone (spellid, barra)
end
end
@@ -3705,7 +3705,7 @@ function atributo_damage:MontaInfoFriendlyFire()
barra:Show()
if (self.detalhes and self.detalhes == barra.show) then
self:MontaDetalhes (self.detalhes, barra)
self:MontaDetalhes (self.detalhes, barra, instancia)
end
end
@@ -3815,10 +3815,17 @@ end
row.textura:SetValue (value/max*100)
end
row.texto_esquerdo:SetText (index .. ". " .. name)
if (type (index) == "number") then
row.texto_esquerdo:SetText (index .. ". " .. name)
else
row.texto_esquerdo:SetText (name)
end
row.texto_esquerdo.text = row.texto_esquerdo:GetText()
row.texto_direita:SetText (value_formated .. " (" .. _cstr ("%.1f", percent) .."%)")
if (value_formated) then
row.texto_direita:SetText (value_formated .. " (" .. _cstr ("%.1f", percent) .."%)")
end
row.texto_esquerdo:SetSize (row:GetWidth() - row.texto_direita:GetStringWidth() - 40, 15)
@@ -3937,12 +3944,27 @@ function atributo_damage:MontaInfoDamageDone()
_table_sort (ActorSkillsSortTable, _detalhes.Sort2)
gump:JI_AtualizaContainerBarras (#ActorSkillsSortTable)
gump:JI_AtualizaContainerBarras (#ActorSkillsSortTable + 1)
local max_ = ActorSkillsSortTable[1] and ActorSkillsSortTable[1][2] or 0 --> dano que a primeiro magia vez
local barra
--aura bar
if (false) then --> disabled for now
barra = barras [1]
if (not barra) then
barra = gump:CriaNovaBarraInfo1 (instancia, 1)
end
self:UpdadeInfoBar (barra, "", -51, "Auras", max_, false, max_, 100, [[Interface\BUTTONS\UI-GroupLoot-DE-Up]], true, nil, nil)
barra.textura:SetStatusBarColor (_detalhes.gump:ParseColors ("purple"))
end
--spell bars
for index, tabela in _ipairs (ActorSkillsSortTable) do
--index = index + 1 --with the aura bar
index = index
barra = barras [index]
if (not barra) then
barra = gump:CriaNovaBarraInfo1 (instancia, index)
@@ -3954,14 +3976,13 @@ function atributo_damage:MontaInfoDamageDone()
if (info.sub_atributo == 2) then
local formated_value = SelectedToKFunction (_, _math_floor (tabela[2]/meu_tempo))
self:UpdadeInfoBar (barra, index, tabela[1], name, tabela[2], formated_value, max_, tabela[3], tabela[5], true, nil, tabela [7])
self:UpdadeInfoBar (barra, index-1, tabela[1], name, tabela[2], formated_value, max_, tabela[3], tabela[5], true, nil, tabela [7])
else
local formated_value = SelectedToKFunction (_, _math_floor (tabela[2]))
self:UpdadeInfoBar (barra, index, tabela[1], name, tabela[2], formated_value, max_, tabela[3], tabela[5], true, nil, tabela [7])
self:UpdadeInfoBar (barra, index-1, tabela[1], name, tabela[2], formated_value, max_, tabela[3], tabela[5], true, nil, tabela [7])
end
self:FocusLock (barra, tabela[1])
end
--> TOP INIMIGOS
@@ -4374,6 +4395,56 @@ local critical_table = {c = {1, 1, 1, 0.5}, p = 0}
local data_table = {}
local t1, t2, t3, t4 = {}, {}, {}, {}
local function FormatSpellString(str)
return (string.gsub(str, "%d+", function(spellID)
local name, _, icon = GetSpellInfo (spellID);
return string.format("|T%s:16|t", icon);
end));
end
local MontaDetalhesBuffProcs = function (actor, row, instance)
instance = instance or info.instancia
local spec = actor.spec
if (spec) then
local mainAuras = _detalhes.important_auras [spec]
if (mainAuras) then
local miscActor = instance:GetShowingCombat():GetActor (4, actor:name())
if (miscActor and miscActor.buff_uptime_spells) then
--> get the auras
local added = 0
for i = 1, #mainAuras do
local spellID = mainAuras [i]
local spellObject = miscActor.buff_uptime_spells._ActorTable [spellID]
if (spellObject) then
local spellName, spellIcon = GetSpellInfo (spellID)
local spellUptime = spellObject.uptime
local spellApplies = spellObject.appliedamt
local spellRefreshes = spellObject.refreshamt
gump:SetaDetalheInfoTexto (i, 100, FormatSpellString ("" .. spellID .. " " .. spellName), "Activations: " .. spellApplies, " ", "Refreshes: " .. spellRefreshes, " ", "Uptime: " .. spellUptime .. "s")
added = added + 1
end
end
for i = added + 1, 5 do
gump:HidaDetalheInfo (i)
end
return
end
end
end
for i = 1, 5 do
gump:HidaDetalheInfo (i)
end
end
function atributo_damage:MontaDetalhesDamageDone (spellid, barra, instancia)
local esta_magia
@@ -4383,6 +4454,10 @@ function atributo_damage:MontaDetalhesDamageDone (spellid, barra, instancia)
esta_magia = self.spells._ActorTable [spellid]
end
if (spellid == -51) then
return MontaDetalhesBuffProcs (self, barra, instancia)
end
if (not esta_magia) then
return
end
+28 -1
View File
@@ -162,6 +162,8 @@ function atributo_misc:CreateBuffTargetObject()
uptime = 0,
actived = false,
activedamt = 0,
refreshamt = 0,
appliedamt = 0,
}
end
@@ -248,7 +250,12 @@ function _detalhes:ToolTipDead (instancia, morte, esta_barra, keydown)
elseif (evtype == 3) then
--> last cooldown used
lastcooldown = event
elseif (evtype == 4) then
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s [x" .. amount .. "] " .. spellname .. " (" .. source .. ")", "debuff (" .. hp .. "%)", 1, "white", "white")
GameCooltip:AddIcon (spellicon)
GameCooltip:AddStatusBar (100, 1, "purple", true)
end
end
end
@@ -399,6 +406,20 @@ function atributo_misc:ReportSingleDeadLine (morte, instancia)
else
tinsert (report_array, {elapsed .. " ", spellname, " (" .. source .. ")", "+" .. _detalhes:ToK (amount) .. " (" .. hp .. "%) "})
end
elseif (type (evento [1]) == "number" and evento [1] == 4) then --> debuff
local elapsed = _cstr ("%.1f", evento [4] - time_of_death) .."s"
local spelllink = GetSpellLink (evento [2])
local source = _detalhes:GetOnlyName (evento [6])
local spellname, _, spellicon = _GetSpellInfo (evento [2])
local stacks = evento [3]
local hp = _math_floor (evento [5] / max_health * 100)
if (hp > 100) then
hp = 100
end
tinsert (report_array, {elapsed .. " ", "x" .. stacks .. "" .. spelllink, " (" .. source .. ")", "(" .. hp .. "%) "})
end
end
@@ -2495,6 +2516,8 @@ function atributo_misc:r_connect_shadow (actor, no_refresh)
end
t.uptime = t.uptime + amount.uptime
t.activedamt = t.activedamt + amount.activedamt
t.refreshamt = t.refreshamt + amount.refreshamt
t.appliedamt = t.appliedamt + amount.appliedamt
else
shadow.debuff_uptime_targets [target_name] = (shadow.debuff_uptime_targets [target_name] or 0) + amount
end
@@ -2881,6 +2904,8 @@ atributo_misc.__add = function (tabela1, tabela2)
end
t.uptime = t.uptime + amount.uptime
t.activedamt = t.activedamt + amount.activedamt
t.refreshamt = t.refreshamt + amount.refreshamt
t.appliedamt = t.appliedamt + amount.appliedamt
else
tabela1.debuff_uptime_targets [target_name] = (tabela1.debuff_uptime_targets [target_name] or 0) + amount
end
@@ -3115,6 +3140,8 @@ atributo_misc.__sub = function (tabela1, tabela2)
end
t.uptime = t.uptime - amount.uptime
t.activedamt = t.activedamt - amount.activedamt
t.refreshamt = t.refreshamt - amount.refreshamt
t.appliedamt = t.appliedamt - amount.appliedamt
else
tabela2.debuff_uptime_targets [target_name] = (tabela2.debuff_uptime_targets [target_name] or 0) - amount
end
+12 -2
View File
@@ -32,13 +32,19 @@
if (token == "BUFF_UPTIME" or token == "DEBUFF_UPTIME") then
_newMiscSpell.uptime = 0
_newMiscSpell.actived = false
_newMiscSpell.activedamt = 0
_newMiscSpell.activedamt = 0 --são quantos estao ativados no momento
_newMiscSpell.refreshamt = 0
_newMiscSpell.appliedamt = 0
elseif (token == "SPELL_INTERRUPT") then
_newMiscSpell.interrompeu_oque = {}
elseif (token == "SPELL_DISPEL" or token == "SPELL_STOLEN") then
_newMiscSpell.dispell_oque = {}
elseif (token == "SPELL_AURA_BROKEN" or token == "SPELL_AURA_BROKEN_SPELL") then
_newMiscSpell.cc_break_oque = {}
end
return _newMiscSpell
@@ -46,6 +52,8 @@
function habilidade_misc:Add (serial, nome, flag, who_nome, token, spellID, spellName)
--print (self.id, GetSpellInfo (self.id))
if (spellID == "BUFF_OR_DEBUFF") then
if (spellName == "COOLDOWN") then
@@ -56,8 +64,8 @@
elseif (spellName == "BUFF_UPTIME_REFRESH") then
if (self.actived_at and self.actived) then
self.uptime = self.uptime + _detalhes._tempo - self.actived_at
self.refreshamt = self.refreshamt + 1
token.buff_uptime = token.buff_uptime + _detalhes._tempo - self.actived_at --> token = actor misc object
end
self.actived_at = _detalhes._tempo
self.actived = true
@@ -73,6 +81,7 @@
elseif (spellName == "BUFF_UPTIME_IN" or spellName == "DEBUFF_UPTIME_IN") then
self.actived = true
self.activedamt = self.activedamt + 1
self.appliedamt = self.appliedamt + 1
if (self.actived_at and self.actived and spellName == "DEBUFF_UPTIME_IN") then
--> ja esta ativo em outro mob e jogou num novo
@@ -85,6 +94,7 @@
elseif (spellName == "DEBUFF_UPTIME_REFRESH") then
if (self.actived_at and self.actived) then
self.uptime = self.uptime + _detalhes._tempo - self.actived_at
self.refreshamt = self.refreshamt + 1
token.debuff_uptime = token.debuff_uptime + _detalhes._tempo - self.actived_at
end
self.actived_at = _detalhes._tempo
+1 -1
View File
@@ -97,7 +97,7 @@
if (lower_instance) then
lower_instance = _detalhes:GetInstance (lower_instance)
if (lower_instance) then
lower_instance:InstanceAlert ("Update Available!", {[[Interface\GossipFrame\AvailableQuestIcon]], 16, 16, false}, 360, {_detalhes.OpenUpdateWindow})
lower_instance:InstanceAlert ("Update Available!", {[[Interface\GossipFrame\AvailableQuestIcon]], 16, 16, false}, _detalhes.update_warning_timeout, {_detalhes.OpenUpdateWindow})
end
end
_detalhes.lastUpdateWarning = time()
+106 -6
View File
@@ -194,6 +194,7 @@
--> kil jaeden encounter:
--> REMOVE THIS ON 7.3 RELEASE
local _encounter_kiljaeden_eruptingreflection_loc = "Erupting Reflection"
local _encounter_kiljaeden_wailingreflection_loc = "Wailing Reflection"
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--> internal functions
@@ -284,6 +285,21 @@
--Erupting Reflection on kiljaeden encounter on ToS
--REMOVE THIS ON 7.3 RELEASE
if (_current_encounter_id == 2051) then --2051 = kiljaeden
--tank add
if (alvo_serial:match ("^Creature%-0%-%d+%-%d+%-%d+%-119107%-%w+$")) then
if (_encounter_kiljaeden_wailingreflection_loc == "Wailing Reflection") then
_encounter_kiljaeden_wailingreflection_loc = GetSpellInfo (236378)
end
alvo_name = _encounter_kiljaeden_wailingreflection_loc
elseif (who_serial:match ("^Creature%-0%-%d+%-%d+%-%d+%-119107%-%w+$")) then
if (_encounter_kiljaeden_wailingreflection_loc == "Wailing Reflection") then
_encounter_kiljaeden_wailingreflection_loc = GetSpellInfo (236378)
end
who_name = _encounter_kiljaeden_wailingreflection_loc
end
--dps add
if (alvo_serial:match ("^Creature%-0%-%d+%-%d+%-%d+%-119206%-%w+$")) then
if (_encounter_kiljaeden_eruptingreflection_loc == "Erupting Reflection") then
_encounter_kiljaeden_eruptingreflection_loc = GetSpellInfo (236710)
@@ -1767,7 +1783,7 @@ ameHealer: Bombad
ThisDebuff = {}
SoloDebuffPower [spellid] = ThisDebuff
end
local ThisDebuffOnTarget = ThisDebuff [alvo_serial]
local base, posBuff, negBuff = UnitAttackPower ("player")
@@ -1962,7 +1978,7 @@ ameHealer: Bombad
--> recording debuffs applied by player
elseif (tipo == "DEBUFF") then
--print ("debuff - ", token, spellname)
if (_in_combat) then
------------------------------------------------------------------------------------------------
--> buff uptime
@@ -1971,7 +1987,7 @@ ameHealer: Bombad
--> call record debuffs uptime
parser:add_debuff_uptime (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, "DEBUFF_UPTIME_REFRESH")
elseif (raid_members_cache [alvo_serial] and not raid_members_cache [who_serial]) then --> alvo é da raide e o caster é inimigo
parser:add_bad_debuff_uptime (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, spellschool, "DEBUFF_UPTIME_REFRESH")
parser:add_bad_debuff_uptime (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, spellschool, "DEBUFF_UPTIME_REFRESH", amount)
end
end
@@ -2162,7 +2178,7 @@ ameHealer: Bombad
--> MISC search key: ~buffuptime ~buffsuptime |
-----------------------------------------------------------------------------------------------------------------------------------------
function parser:add_bad_debuff_uptime (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, spellschool, in_out)
function parser:add_bad_debuff_uptime (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, spellschool, in_out, stack_amount)
if (not alvo_name) then
--> no target name, just quit
@@ -2216,6 +2232,43 @@ ameHealer: Bombad
end
este_alvo.actived_at = _tempo
--death log
--> record death log
local t = last_events_cache [alvo_name]
if (not t) then
t = _current_combat:CreateLastEventsTable (alvo_name)
end
local i = t.n
local this_event = t [i]
if (not this_event) then
return print ("Parser Event Error -> Set to 16 DeathLogs and /reload", i, _death_event_amt)
end
--print ("DebuffIN", ">", "Added to the DeathLog")
this_event [1] = 4 --> 4 = debuff aplication
this_event [2] = spellid --> spellid
this_event [3] = 1
this_event [4] = time --> parser time
this_event [5] = _UnitHealth (alvo_name) --> current unit heal
this_event [6] = who_name --> source name
this_event [7] = false
this_event [8] = false
this_event [9] = false
this_event [10] = false
i = i + 1
if (i == _death_event_amt+1) then
t.n = 1
else
t.n = i
end
elseif (in_out == "DEBUFF_UPTIME_REFRESH") then
if (este_alvo.actived_at and este_alvo.actived) then
este_alvo.uptime = este_alvo.uptime + _tempo - este_alvo.actived_at
@@ -2224,6 +2277,50 @@ ameHealer: Bombad
este_alvo.actived_at = _tempo
este_alvo.actived = true
--death log
--local name, rank, texture, count, debuffType, duration, expirationTime, caster, canStealOrPurge, nameplateShowPersonal, spellId = UnitAura (alvo_name, spellname, nil, "HARMFUL")
--UnitAura ("Kastfall", "Gulp Frog Toxin", nil, "HARMFUL")
--print ("Hello World", spellname, name)
--if (name) then
--> record death log
local t = last_events_cache [alvo_name]
if (not t) then
t = _current_combat:CreateLastEventsTable (alvo_name)
end
local i = t.n
local this_event = t [i]
if (not this_event) then
return print ("Parser Event Error -> Set to 16 DeathLogs and /reload", i, _death_event_amt)
end
--print ("DebuffRefresh", ">", "Added to the DeathLog", stack_amount)
this_event [1] = 4 --> 4 = debuff aplication
this_event [2] = spellid --> spellid
this_event [3] = stack_amount or 1
this_event [4] = time --> parser time
this_event [5] = _UnitHealth (alvo_name) --> current unit heal
this_event [6] = who_name --> source name
this_event [7] = false
this_event [8] = false
this_event [9] = false
this_event [10] = false
i = i + 1
if (i == _death_event_amt+1) then
t.n = 1
else
t.n = i
end
--end
elseif (in_out == "DEBUFF_UPTIME_OUT") then
if (este_alvo.actived_at and este_alvo.actived) then
este_alvo.uptime = este_alvo.uptime + _detalhes._tempo - este_alvo.actived_at
@@ -3570,6 +3667,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
token_list ["SPELL_AURA_APPLIED"] = parser.buff
token_list ["SPELL_AURA_REMOVED"] = parser.unbuff
token_list ["SPELL_AURA_REFRESH"] = parser.buff_refresh
token_list ["SPELL_AURA_APPLIED_DOSE"] = parser.buff_refresh
_recording_buffs_and_debuffs = false
elseif (capture_type == "energy") then
@@ -3636,6 +3734,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
token_list ["SPELL_AURA_APPLIED"] = parser.buff
token_list ["SPELL_AURA_REMOVED"] = parser.unbuff
token_list ["SPELL_AURA_REFRESH"] = parser.buff_refresh
token_list ["SPELL_AURA_APPLIED_DOSE"] = parser.buff_refresh
_recording_buffs_and_debuffs = true
elseif (capture_type == "energy") then
@@ -3724,7 +3823,8 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
["SPELL_AURA_APPLIED"] = "buff",
["SPELL_AURA_REMOVED"] = "unbuff",
["SPELL_AURA_REFRESH"] = "buff_refresh",
["SPELL_AURA_REFRESH"] = "buff_refresh",
["SPELL_AURA_APPLIED_DOSE"] = "buff_refresh",
["SPELL_ENERGIZE"] = "energize",
["SPELL_PERIODIC_ENERGIZE"] = "energize",
@@ -3952,7 +4052,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
return
end
if (not _detalhes.WhoAggroTimer) then
if (not _detalhes.WhoAggroTimer and _detalhes.announce_firsthit.enabled) then
_detalhes.WhoAggroTimer = C_Timer.NewTimer (0.5, who_aggro)
end
+282
View File
@@ -4160,6 +4160,288 @@ this is automatically performed when the search script runs.
DetailsAPIPanel:Show()
end
function Details.OpenDpsBenchmark()
--main frame
local DF = _detalhes.gump
local _ = nil
--declaration
local f = CreateFrame ("frame", "DetailsBenchmark", UIParent)
f:SetSize (800, 600)
f:SetPoint ("left", UIParent, "left")
f:SetFrameStrata ("LOW")
f:EnableMouse (true)
f:SetMovable (true)
f:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
f:SetBackdropColor (0, 0, 0, 0.9)
f:SetBackdropBorderColor (0, 0, 0, 1)
--register to libwindow
local LibWindow = LibStub ("LibWindow-1.1")
LibWindow.RegisterConfig (f, _detalhes.benchmark_db.frame)
LibWindow.RestorePosition (f)
LibWindow.MakeDraggable (f)
LibWindow.SavePosition (f)
--titlebar
f.TitleBar = CreateFrame ("frame", "$parentTitleBar", f)
f.TitleBar:SetPoint ("topleft", f, "topleft", 2, -3)
f.TitleBar:SetPoint ("topright", f, "topright", -2, -3)
f.TitleBar:SetHeight (20)
f.TitleBar:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
f.TitleBar:SetBackdropColor (.2, .2, .2, 1)
f.TitleBar:SetBackdropBorderColor (0, 0, 0, 1)
--close button
f.Close = CreateFrame ("button", "$parentCloseButton", f)
f.Close:SetPoint ("right", f.TitleBar, "right", -2, 0)
f.Close:SetSize (16, 16)
f.Close:SetNormalTexture (_detalhes.gump.folder .. "icons")
f.Close:SetHighlightTexture (_detalhes.gump.folder .. "icons")
f.Close:SetPushedTexture (_detalhes.gump.folder .. "icons")
f.Close:GetNormalTexture():SetTexCoord (0, 16/128, 0, 1)
f.Close:GetHighlightTexture():SetTexCoord (0, 16/128, 0, 1)
f.Close:GetPushedTexture():SetTexCoord (0, 16/128, 0, 1)
f.Close:SetAlpha (0.7)
f.Close:SetScript ("OnClick", function() f:Hide() end)
--title
f.Title = f.TitleBar:CreateFontString ("$parentTitle", "overlay", "GameFontNormal")
f.Title:SetPoint ("center", f.TitleBar, "center")
f.Title:SetTextColor (.8, .8, .8, 1)
f.Title:SetText ("Details! Benchmark")
DF:InstallTemplate ("font", "DETAILS_BENCHMARK_NORMAL", {color = "white", size = 10, font = "Friz Quadrata TT"})
function f.CreateCombatObject()
local t = {}
return t
end
function f.StartNewBenchmark()
end
function f.StopCurrentBenchmark()
end
f.OnTickInterval = 0
function f.UpdateOnTick (self, deltaTime)
f.OnTickInterval = f.OnTickInterval + deltaTime
if (f.OnTickInterval >= 0.024) then
--do the update
--reset the interval
f.OnTickInterval = 0
end
end
function f.StartUpdateOnTick()
f:SetScript ("OnUpdate", f.UpdateOnTick)
end
--events
f:RegisterEvent ("PLAYER_REGEN_DISABLED")
f:RegisterEvent ("PLAYER_REGEN_ENABLED")
f:SetScript ("OnEvent", function (self, event, ...)
if (event == "PLAYER_REGEN_DISABLED") then
f.StartNewBenchmark()
elseif (event == "PLAYER_REGEN_ENABLED") then
f.StopCurrentBenchmark()
end
end)
local normal_text_template = DF:GetTemplate ("font", "DETAILS_BENCHMARK_NORMAL")
local options_dropdown_template = DF:GetTemplate ("dropdown", "OPTIONS_DROPDOWN_TEMPLATE")
local options_switch_template = DF:GetTemplate ("switch", "OPTIONS_CHECKBOX_TEMPLATE")
local options_slider_template = DF:GetTemplate ("slider", "OPTIONS_SLIDER_TEMPLATE")
local options_button_template = DF:GetTemplate ("button", "OPTIONS_BUTTON_TEMPLATE")
--locations
f.FrameLocations = {
summary = {10, -30},
auras = {10, -120},
spells = {10, -180},
history = {10, -280},
}
f.FrameSizes = {
default = {300, 200},
}
--summary block
--declaration
local summaryFrame = CreateFrame ("frame", "$parentSummaryFrame", f)
summaryFrame:SetPoint ("topleft", f, "topleft", unpack (f.FrameLocations.summary))
summaryFrame:SetSize (unpack (f.FrameSizes.default))
summaryFrame:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
summaryFrame:SetBackdropColor (0, 0, 0, 0.9)
summaryFrame:SetBackdropBorderColor (0, 0, 0, 1)
--time to test string and dropdown
local build_time_list = function()
local t = {
{value = 40, label = "40 seconds"},
{value = 60, label = "60 seconds"},
{value = 90, label = "90 seconds"},
{value = 120, label = "2 minutes"},
{value = 180, label = "3 minutes"},
{value = 300, label = "5 minutes"},
}
return t
end
summaryFrame.TimeToTestLabel = DF:CreateLabel (summaryFrame, "Amount of Time", normal_text_template)
summaryFrame.TimeToTestDropdown = DF:CreateDropDown (summaryFrame, build_time_list, default, 150, 20, _, _, options_dropdown_template)
--description string and text entry
summaryFrame.DescriptionLabel = DF:CreateLabel (summaryFrame, "Description", normal_text_template)
summaryFrame.DescriptionEntry = DF:CreateTextEntry (summaryFrame, function()end, 120, 20, nil, _, nil, options_dropdown_template)
--DPS Amount string
summaryFrame.DPSLabel = DF:CreateLabel (summaryFrame, "100K", normal_text_template)
--TIME ELAPSED string
summaryFrame.TimeElapsedLabel = DF:CreateLabel (summaryFrame, "01:00", normal_text_template)
--boss simulation string and dropdown
local build_bosssimulation_list, default = function()
local t = {
{value = "patchwerk", label = "Patchwerk"},
}
return t
end
summaryFrame.BossSimulationLabel = DF:CreateLabel (summaryFrame, "Boss Simulation", normal_text_template)
summaryFrame.BossSimulationDropdown = DF:CreateDropDown (summaryFrame, build_bosssimulation_list, default, 150, 20, _, _, options_dropdown_template)
--boss records line with a tooltip importing data from the storage
summaryFrame.BossRecordsFrame = CreateFrame ("frame", nil, summaryFrame)
summaryFrame.BossRecordsFrame:SetSize (f.FrameSizes.default[1]-20, 20)
summaryFrame.BossRecordsFrame:SetBackdropColor (0, 0, 0, 0.3)
summaryFrame.BossRecordsFrame:SetScript ("OnEnter", function()
end)
summaryFrame.BossRecordsFrame:SetScript ("OnLeave", function()
end)
--set the points
do
local x, y = 10, -10
summaryFrame.TimeToTestLabel:SetPoint ("topleft", summaryFrame, "topleft", x, y)
summaryFrame.TimeToTestDropdown:SetPoint ("topleft", summaryFrame.TimeToTestLabel, "bottomleft", 0, -2)
--y = y - 40
summaryFrame.DescriptionLabel:SetPoint ("topleft", summaryFrame, "topleft", x+160, y)
summaryFrame.DescriptionEntry:SetPoint ("topleft", summaryFrame.DescriptionLabel, "bottomleft", 0, -2)
y = y - 40
summaryFrame.DPSLabel:SetPoint ("topleft", summaryFrame, "topleft", x, y)
summaryFrame.TimeElapsedLabel:SetPoint ("topleft", summaryFrame, "topleft", x + 100, y)
y = y - 40
summaryFrame.BossSimulationLabel:SetPoint ("topleft", summaryFrame, "topleft", x, y)
summaryFrame.BossSimulationDropdown:SetPoint ("topleft", summaryFrame.BossSimulationLabel, "bottomleft", 0, -2)
y = y - 40
summaryFrame.BossRecordsFrame:SetPoint ("topleft", summaryFrame, "topleft", 0, 0)
end
--spells block
--declaration
local spellsFrame = CreateFrame ("frame", "$parentSpellsFrame", f)
spellsFrame:SetPoint ("topleft", f, "topleft", unpack (f.FrameLocations.spells))
spellsFrame:SetSize (unpack (f.FrameSizes.default))
spellsFrame:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
spellsFrame:SetBackdropColor (0, 0, 0, 0.9)
spellsFrame:SetBackdropBorderColor (0, 0, 0, 1)
--header with the string titles:
--Spell Icon | DPS | Damage | Casts | Criticals | Highest Damage
--scrollpanel
--each line with:
--Texture for the icon
--5 strings for the data
--hover over scripts
--auras block
--declaration
local aurasFrame = CreateFrame ("frame", "$parentAurasFrame", f)
aurasFrame:SetPoint ("topleft", f, "topleft", unpack (f.FrameLocations.auras))
aurasFrame:SetSize (unpack (f.FrameSizes.default))
aurasFrame:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
aurasFrame:SetBackdropColor (0, 0, 0, 0.9)
aurasFrame:SetBackdropBorderColor (0, 0, 0, 1)
--will be 9 blocks?
--each block with:
--Texture for the icon
--3 strings for Total Update, Applications and Refreshes
--history block
--declaration
local historyFrame = CreateFrame ("frame", "$parentHistoryFrame", f)
historyFrame:SetPoint ("topleft", f, "topleft", unpack (f.FrameLocations.history))
historyFrame:SetSize (unpack (f.FrameSizes.default))
historyFrame:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
historyFrame:SetBackdropColor (0, 0, 0, 0.9)
historyFrame:SetBackdropBorderColor (0, 0, 0, 1)
--header with the string titles:
--Spec | ILevel | DPS | Time | Talents | Crit | Haste | Versatility | Mastery | Int | Description
--scrollpanel
--each line with:
--7 Textures for talent icons
--10 strings for the data
--hover over scripts
--mechanics
--to open the window
--on target a training dummy
--need to be on a specific map / sanctuary
--on start a new combat:
--start the timer
--start the boss script if not patchwerk
--create the graphic tables for *player total damage and *spell damage
--create aura tables / grab auras already applied to the player / auras with no duration wont be added
--on tick:
--*check if the time is gone *update the time string *update the graphic *update the spells *upate the auras
--on finishes:
--stop the timer and check if the elapsed time is done
--create a new benchmark object to store the test
--export the data to this new object
--add this new object to the benchmark storage table
--update the history scrollbar
end
--old versions dialog
--[[
--print ("Last Version:", _detalhes_database.last_version, "Last Interval Version:", _detalhes_database.last_realversion)
+72 -1
View File
@@ -1121,7 +1121,11 @@ local default_player_data = {
enabled = true,
channel = "SELF",
},
--> benchmark
benchmark_db = {
frame = {},
},
}
_detalhes.default_player_data = default_player_data
@@ -1139,6 +1143,7 @@ local default_global_data = {
savedCustomSpells = {},
savedTimeCaptures = {},
lastUpdateWarning = 0,
update_warning_timeout = 30,
report_where = "SAY",
realm_sync = true,
spell_school_cache = {},
@@ -1190,6 +1195,72 @@ local default_global_data = {
},
spell_pool = {},
encounter_spell_pool = {},
-- important auras
--[=[
important_auras = {
[577] = {}, -- Havoc Demon Hunter
[581] = {}, -- Vengeance Demon Hunter
[252] = {}, -- Unholy Death Knight
[251] = {}, -- Frost Death Knight
[250] = {}, -- Blood Death Knight
[102] = {}, -- Balance Druid
[103] = {}, -- Feral Druid
[104] = {}, -- Guardian Druid
[105] = {}, -- Restoration Druid
[253] = {}, -- Beast Mastery Hunter
[254] = {}, -- Marksmanship Hunter
[255] = {}, -- Survival Hunter
[62] = { -- Arcane Mage
},
[63] = { -- Fire Mage
157644, --Enhanced Pyrotechnics
48107, --Heating Up
48108, --Hot Streak!
194329, --Pyretic Incantation
},
[64] = { -- Frost Mage
44544, --fingers of frost
195418, --chain reaction
190446, --brain freeze
12472, --icyveins
},
[268] = {}, -- Brewmaster Monk
[269] = {}, -- Windwalker Monk
[270] = {}, -- Mistweaver Monk
[65] = {}, -- Holy Paladin
[66] = {}, -- Protection Paladin
[70] = {}, -- Retribution Paladin
[256] = {}, -- Discipline Priest
[257] = {}, -- Holy Priest
[258] = {}, -- Shadow Priest
[259] = {}, -- Assassination Rogue
[260] = {}, -- Outlaw Rogue
[261] = {}, -- Subtlety Rogue
[262] = {}, -- Elemental Shaman
[263] = {}, -- Enhancement Shaman
[264] = {}, -- Restoration Shaman
[265] = {}, -- Affliction Warlock
[266] = {}, -- Demonology Warlock
[267] = {}, -- Destruction Warlock
[71] = {}, -- Arms Warrior
[72] = {}, -- Fury Warrior
[73] = {}, -- Protection Warrior
},
--]=]
}
_detalhes.default_global_data = default_global_data
+217 -4
View File
@@ -1659,7 +1659,7 @@ function gump:CriaJanelaInfo()
--> tabs:
--> tab default
_detalhes:CreatePlayerDetailsTab ("Summary", Loc ["STRING_INFO_TAB_SUMMARY"], --[1] tab name [2] localized name
_detalhes:CreatePlayerDetailsTab ("Summary", Loc ["STRING_SPELLS"], --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
if (playerObject) then
return true
@@ -2332,8 +2332,195 @@ function gump:CriaJanelaInfo()
nil, --[4] onclick
avoidance_create --[5] oncreate
)
)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--> ~auras
local auras_tab_create = function (tab, frame)
local DF = _detalhes.gump
local scroll_line_amount = 17
local scroll_line_height = 19
local scroll_width = 350
local scroll_line_height = 19
local text_size = 9
local line_onenter = function (self)
GameTooltip:SetOwner (self, "ANCHOR_TOPRIGHT")
_detalhes:GameTooltipSetSpellByID (self.spellID)
GameTooltip:Show()
self:SetBackdropColor (1, 1, 1, .2)
end
local line_onleave = function (self)
GameTooltip:Hide()
self:SetBackdropColor (unpack (self.BackgroundColor))
end
local line_onclick = function (self)
end
--buff scroll
--icon - name - applications - refreshes - uptime
--
local scroll_createline = function (self, index)
local line = CreateFrame ("button", "$parentLine" .. index, self)
line:SetPoint ("topleft", self, "topleft", 0, -((index-1)*(scroll_line_height+1)))
line:SetSize (scroll_width, scroll_line_height)
line:SetScript ("OnEnter", line_onenter)
line:SetScript ("OnLeave", line_onleave)
line:SetScript ("OnClick", line_onclick)
line:SetBackdrop ({bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
line:SetBackdropColor (0, 0, 0, 0.2)
local icon = line:CreateTexture ("$parentIcon", "overlay")
icon:SetSize (scroll_line_height, scroll_line_height)
local name = line:CreateFontString ("$parentName", "overlay", "GameFontNormal")
local uptime = line:CreateFontString ("$parentName", "overlay", "GameFontNormal")
local apply = line:CreateFontString ("$parentName", "overlay", "GameFontNormal")
local refresh = line:CreateFontString ("$parentName", "overlay", "GameFontNormal")
DF:SetFontSize (name, text_size)
DF:SetFontSize (uptime, text_size)
DF:SetFontSize (apply, text_size)
DF:SetFontSize (refresh, text_size)
icon:SetPoint ("left", line, "left", 2, 0)
name:SetPoint ("left", icon, "right", 2, 0)
uptime:SetPoint ("left", line, "left", 186, 0)
apply:SetPoint ("left", line, "left", 260, 0)
refresh:SetPoint ("left", line, "left", 310, 0)
line.Icon = icon
line.Name = name
line.Uptime = uptime
line.Apply = apply
line.Refresh = refresh
name:SetJustifyH ("left")
uptime:SetJustifyH ("left")
apply:SetJustifyH ("left")
refresh:SetJustifyH ("left")
return line
end
local line_bg_color = {{1, 1, 1, .1}, {1, 1, 1, 0}}
local scroll_buff_refresh = function (self, data, offset, total_lines)
for i = 1, total_lines do
local index = i + offset
local aura = data [index]
if (aura) then
local line = self:GetLine (i)
line.spellID = aura.spellID
line.Icon:SetTexture (aura [1])
line.Name:SetText (aura [2])
line.Uptime:SetText (DF:IntegerToTimer (aura [3]) .. " (|cFFBBAAAA" .. floor (aura [6]) .. "%|r)")
line.Apply:SetText (aura [4])
line.Refresh:SetText (aura [5])
if (i%2 == 0) then
line:SetBackdropColor (unpack (line_bg_color [1]))
line.BackgroundColor = line_bg_color [1]
else
line:SetBackdropColor (unpack (line_bg_color [2]))
line.BackgroundColor = line_bg_color [2]
end
end
end
end
local buffLabel = DF:CreateLabel (frame, "Buff Name")
buffLabel:SetPoint (6, -10)
local uptimeLabel = DF:CreateLabel (frame, "Uptime")
uptimeLabel:SetPoint (200, -10)
local appliedLabel = DF:CreateLabel (frame, "Applied")
appliedLabel:SetPoint (250, -10)
local refreshedLabel = DF:CreateLabel (frame, "Refreshed")
refreshedLabel:SetPoint (300, -10)
local buffScroll = DF:CreateScrollBox (frame, "$parentBuffUptimeScroll", scroll_buff_refresh, {}, scroll_width, 340, scroll_line_amount, scroll_line_height)
buffScroll:SetPoint ("topleft", frame, "topleft", 5, -30)
for i = 1, scroll_line_amount do
buffScroll:CreateLine (scroll_createline)
end
buffScroll:SetBackdrop ({bgFile = "Interface\\Tooltips\\UI-Tooltip-Background", tile = true, tileSize = 16})
buffScroll:SetBackdropColor (0, 0, 0, .4)
tab.BuffScroll = buffScroll
--debuff scroll
--icon - name - applications - refreshes - uptime
--
local debuffLabel = DF:CreateLabel (frame, "Debuff Name")
debuffLabel:SetPoint (406, -10)
local uptimeLabel2 = DF:CreateLabel (frame, "Uptime")
uptimeLabel2:SetPoint (600, -10)
local appliedLabel2 = DF:CreateLabel (frame, "Applied")
appliedLabel2:SetPoint (650, -10)
local refreshedLabel2 = DF:CreateLabel (frame, "Refreshed")
refreshedLabel2:SetPoint (700, -10)
local debuffScroll = DF:CreateScrollBox (frame, "$parentDebuffUptimeScroll", scroll_buff_refresh, {}, scroll_width, 340, scroll_line_amount, scroll_line_height)
debuffScroll:SetPoint ("topleft", frame, "topleft", 405, -30)
for i = 1, scroll_line_amount do
debuffScroll:CreateLine (scroll_createline)
end
debuffScroll:SetBackdrop ({bgFile = "Interface\\Tooltips\\UI-Tooltip-Background", tile = true, tileSize = 16})
debuffScroll:SetBackdropColor (0, 0, 0, .4)
tab.DebuffScroll = debuffScroll
end
local auras_tab_fill = function (tab, player, combat)
local miscActor = combat:GetActor (4, player:name())
local combatTime = combat:GetCombatTime()
do --buffs
local newAuraTable = {}
if (miscActor and miscActor.buff_uptime_spells) then
for spellID, spellObject in pairs (miscActor.buff_uptime_spells._ActorTable) do
local spellName, _, spellIcon = GetSpellInfo (spellID)
tinsert (newAuraTable, {spellIcon, spellName, spellObject.uptime, spellObject.appliedamt, spellObject.refreshamt, spellObject.uptime/combatTime*100, spellID = spellID})
end
end
table.sort (newAuraTable, _detalhes.Sort3)
tab.BuffScroll:SetData (newAuraTable)
tab.BuffScroll:Refresh()
end
do --debuffs
local newAuraTable = {}
if (miscActor and miscActor.debuff_uptime_spells) then
for spellID, spellObject in pairs (miscActor.debuff_uptime_spells._ActorTable) do
local spellName, _, spellIcon = GetSpellInfo (spellID)
tinsert (newAuraTable, {spellIcon, spellName, spellObject.uptime, spellObject.appliedamt, spellObject.refreshamt, spellObject.uptime/combatTime*100, spellID = spellID})
end
end
table.sort (newAuraTable, _detalhes.Sort3)
tab.DebuffScroll:SetData (newAuraTable)
tab.DebuffScroll:Refresh()
end
end
_detalhes:CreatePlayerDetailsTab ("Auras", "Auras", --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
return true
end,
auras_tab_fill, --[3] fill function
nil, --[4] onclick
auras_tab_create --[5] oncreate
)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--> ~compare
@@ -2342,7 +2529,7 @@ function gump:CriaJanelaInfo()
local plus = red .. "-"
local minor = green .. "+"
local bar_color = {.5, .5, .5, .4} -- bar of the second and 3rd player
local bar_color_on_enter = {.9, .9, .9, .9}
@@ -2379,6 +2566,7 @@ function gump:CriaJanelaInfo()
bar [2].righttext:SetText ("")
bar [2].righttext2:SetText ("")
bar [2]:SetValue (0)
bar [2]:SetBackdropColor (1, 1, 1, 0)
bar [3][4] = nil
bar_2 [1]:SetTexture (nil)
bar_2 [2].lefttext:SetText (empty_text)
@@ -2386,6 +2574,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
bar_2 [3][4] = nil
bar_3 [1]:SetTexture (nil)
bar_3 [2].lefttext:SetText (empty_text)
@@ -2393,6 +2582,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
bar_3 [3][4] = nil
end
@@ -2522,6 +2712,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
bar_2 [3][4] = nil
end
else
@@ -2531,6 +2722,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
bar_2 [3][4] = nil
end
@@ -2591,6 +2783,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
bar_3 [3][4] = nil
end
else
@@ -2600,6 +2793,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
bar_3 [3][4] = nil
end
@@ -2610,6 +2804,7 @@ function gump:CriaJanelaInfo()
bar [2].righttext:SetText ("")
bar [2].righttext2:SetText ("")
bar [2]:SetValue (0)
bar [2]:SetBackdropColor (1, 1, 1, 0)
bar [3][4] = nil
bar_2 [1]:SetTexture (nil)
bar_2 [2].lefttext:SetText (empty_text)
@@ -2617,6 +2812,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
bar_2 [3][4] = nil
bar_3 [1]:SetTexture (nil)
bar_3 [2].lefttext:SetText (empty_text)
@@ -2624,6 +2820,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
bar_3 [3][4] = nil
end
end
@@ -2749,6 +2946,8 @@ function gump:CriaJanelaInfo()
bar [1]:SetTexture (icon) --bar[1] = spellicon bar[2] = statusbar
bar [1]:SetTexCoord (unpack (IconTexCoord)) --bar[1] = spellicon bar[2] = statusbar
bar [2]:SetBackdropColor (1, 1, 1, 0.1)
if (petName) then
bar [2].lefttext:SetText (index .. ". " .. name .. " (|cFFCCBBBB" .. petName:gsub (" <.*", "") .. "|r)")
@@ -2787,6 +2986,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].lefttext:SetText (player_2_spell_info [spellid] .. ". " .. name)
bar_2 [2].lefttext:SetTextColor (1, 1, 1, 1)
bar_2 [2]:SetStatusBarColor (unpack (bar_color))
bar_2 [2]:SetBackdropColor (1, 1, 1, 0.1)
if (spell.total == 0 and data [2] == 0) then
bar_2 [2].righttext2:SetText ("0")
@@ -2828,6 +3028,7 @@ function gump:CriaJanelaInfo()
bar_2 [3][1] = spell.counter --tooltip hits
bar_2 [3][2] = spell.total / spell.counter --tooltip average
bar_2 [3][3] = _math_floor (spell.c_amt / spell.counter * 100) --tooltip critical
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
else
bar_2 [1]:SetTexture (nil)
bar_2 [2].lefttext:SetText (empty_text)
@@ -2835,6 +3036,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
end
--player 3
@@ -2861,6 +3063,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].lefttext:SetText (player_3_spell_info [spellid] .. ". " .. name)
bar_3 [2].lefttext:SetTextColor (1, 1, 1, 1)
bar_3 [2]:SetStatusBarColor (unpack (bar_color))
bar_3 [2]:SetBackdropColor (1, 1, 1, 0.1)
if (spell.total == 0 and data [2] == 0) then
bar_3 [2].righttext2:SetText ("0")
@@ -2908,6 +3111,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
end
else
bar_3 [1]:SetTexture (nil)
@@ -2916,6 +3120,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
end
else
bar [1]:SetTexture (nil)
@@ -2923,6 +3128,7 @@ function gump:CriaJanelaInfo()
bar [2].lefttext:SetTextColor (.5, .5, .5, 1)
bar [2].righttext:SetText ("")
bar [2]:SetValue (0)
bar [2]:SetBackdropColor (1, 1, 1, 0)
local bar_2 = frame2.bars [i]
bar_2 [1]:SetTexture (nil)
bar_2 [2].lefttext:SetText (empty_text)
@@ -2930,6 +3136,7 @@ function gump:CriaJanelaInfo()
bar_2 [2].righttext:SetText ("")
bar_2 [2].righttext2:SetText ("")
bar_2 [2]:SetValue (0)
bar_2 [2]:SetBackdropColor (1, 1, 1, 0)
local bar_3 = frame3.bars [i]
bar_3 [1]:SetTexture (nil)
bar_3 [2].lefttext:SetText (empty_text)
@@ -2937,6 +3144,7 @@ function gump:CriaJanelaInfo()
bar_3 [2].righttext:SetText ("")
bar_3 [2].righttext2:SetText ("")
bar_3 [2]:SetValue (0)
bar_3 [2]:SetBackdropColor (1, 1, 1, 0)
end
end
@@ -3765,6 +3973,10 @@ function gump:CriaJanelaInfo()
bar:SetPoint ("topright", parent, "topright", -4, y)
bar:SetStatusBarTexture ([[Interface\AddOns\Details\images\bar_serenity]])
bar:SetStatusBarColor (.5, .5, .5, 1)
bar:SetBackdrop ({bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
bar:SetBackdropColor (1, 1, 1, 0.1)
bar:SetMinMaxValues (0, 100)
bar:SetValue (100)
bar:SetHeight (14)
@@ -4252,7 +4464,7 @@ function gump:CriaJanelaInfo()
compare_create --[5] oncreate
)
-- ~tab
-- ~tab ~tabs
function este_gump:ShowTabs()
local amt_positive = 0
@@ -4291,6 +4503,7 @@ function gump:CriaJanelaInfo()
tab:Show()
amt_positive = amt_positive + 1
tab:SetPoint ("BOTTOMLEFT", info.container_barras, "TOPLEFT", 490 - (94 * (amt_positive-1)), 1)
tab:SetAlpha (0.8)
else
tab.frame:Hide()
tab:Hide()