- Chart Viewer (plugin): has been revamped and now it's less complicated to use.

- Time Line (plugin): added options to change the background color and scale.
- Raid Check (plugin): its window is now 'always on top'.
- Accuracy adjustments on overheal of Divine Aegis and Illuminated Healing.
- Removed healthstone from cooldown list, added Nature's Vigil.
- Enemies display now shows damage taken instead of damage done.
- Tooltip for enemies display now also show damage and healing done by the enemy.
- Added an option under miscellaneous to show neutral and hostile creatures on damage taken display.
- Added an option to ignore nicknames and always use character names.
- Enabling the display icon on title bar now makes the title text automatically move slightly to right.
- Fixed issue with skin changing when the window has the statusbar enabled.
This commit is contained in:
Tercio
2015-02-11 22:02:33 -02:00
parent 1b08512cae
commit dd3451f99f
12 changed files with 505 additions and 164 deletions
+4 -4
View File
File diff suppressed because one or more lines are too long
+40 -46
View File
@@ -498,11 +498,17 @@
-- update tooltip function--
if (self.id) then
--if (self.id == 1) then
-- self.classe = 1
--end
local school_color = _detalhes.school_colors [self.classe]
if (not school_color) then
school_color = _detalhes.school_colors ["unknown"]
end
actor_class_color_r, actor_class_color_g, actor_class_color_b = _unpack (school_color)
else
actor_class_color_r, actor_class_color_g, actor_class_color_b = self:GetBarColor()
end
@@ -1501,7 +1507,12 @@
desc = Loc ["STRING_CUSTOM_DTBS_DESC"],
source = false,
target = false,
script_version = 13,
script_version = 20,
on_shift_click = [[
local row, object, instance = ...
local spellname, _, spellicon = _detalhes.GetSpellInfo (object.id)
_detalhes:OpenAuraPanel (object.id, spellname, spellicon)
]],
script = [[
--> get the parameters passed
local combat, instance_container, instance = ...
@@ -1527,52 +1538,29 @@
if (source) then
local AllSpells = source:GetSpellList()
for spellid, spell in pairs (AllSpells) do
local on_player = spell.targets [character.nome]
if (not source:IsPlayer()) then
local AllSpells = source:GetSpellList()
for spellid, spell in pairs (AllSpells) do
local on_player = spell.targets [character.nome]
if (on_player and on_player >= 1) then
instance_container:AddValue (spell, on_player)
total = total + on_player
local value = instance_container:GetValue (spell)
if (value > top) then
top = value
end
if (not NoRepeat [spellid]) then
amount = amount + 1
NoRepeat [spellid] = true
end
end
end
else -------------
if (on_player and on_player >= 1) then
instance_container:AddValue (spell, on_player)
total = total + on_player
local value = instance_container:GetValue (spell)
if (value > top) then
top = value
end
if (not NoRepeat [spellid]) then
amount = amount + 1
NoRepeat [spellid] = true
end
end
end
-------------
local friendlyfire = source.friendlyfire [character.nome]
if (friendlyfire and friendlyfire.total >= 1) then
for _spellid, _on_player in pairs (friendlyfire.spells) do
local _spellname = GetSpellInfo (_spellid)
local _object
local _index = instance_container._NameIndexTable [_spellname]
if (_index) then
_object = instance_container._ActorTable [_index]
else
_object = {id = _spellid, spellschool = 1}
end
instance_container:AddValue (_object, _on_player)
total = total + _on_player
local _value = instance_container:GetValue (_object)
if (_value > top) then
top = _value
end
if (not NoRepeat [_spellid]) then
amount = amount + 1
NoRepeat [_spellid] = true
end
end
end
------------
end -----------
end
end
end
@@ -1660,6 +1648,12 @@
GameCooltip:AddIcon ("Interface\\AddOns\\Details\\images\\classes_small_alpha", 1, 1, 14, 14, 0.25, 0.49609375, 0.75, 1)
end
end
if (WeakAuras) then
GameCooltip:AddLine (" ")
GameCooltip:AddLine ("Shift Click: Create WeakAura")
GameCooltip:AddStatusBar (100, 1, 0, 0, 0, 0.6, true, bar_background)
end
]],
}
+32 -10
View File
@@ -157,6 +157,7 @@
[31216] = true, --mirror image
[53006] = true, --spirit link totem
[63508] = true, --xuen
[73967] = true, --xuen
}
-- Night-Twisted Brute - Creature-0-3024-1228-19402-85241-00001E2097
@@ -473,12 +474,13 @@
function atributo_damage:ReportSingleFragsLine (frag, instancia)
local barra = instancia.barras [frag.minha_barra]
local reportar = {"Details! " .. Loc ["STRING_ATTRIBUTE_DAMAGE_TAKEN"].. ": " .. frag [1]} --> localize-me
for i = 1, GameCooltip:GetNumLines() do
local reportar = {"Details!: " .. frag [1] .. " - " .. Loc ["STRING_ATTRIBUTE_DAMAGE_TAKEN"]}
for i = 2, GameCooltip:GetNumLines()-2 do
local texto_left, texto_right = GameCooltip:GetText (i)
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
reportar [#reportar+1] = ""..texto_left.." "..texto_right..""
reportar [#reportar+1] = "" .. texto_left .. " ....... " .. texto_right
end
end
@@ -575,12 +577,12 @@
function atributo_damage:ReportSingleVoidZoneLine (actor, instancia)
local barra = instancia.barras [actor.minha_barra]
local reportar = {"Details! " .. Loc ["STRING_ATTRIBUTE_DAMAGE_DEBUFFS_REPORT"] .. ": " .. actor.nome} --> localize-me
for i = 1, GameCooltip:GetNumLines() do
local reportar = {"Details!: " .. actor.nome .. " - " .. Loc ["STRING_ATTRIBUTE_DAMAGE_DEBUFFS_REPORT"]}
for i = 2, GameCooltip:GetNumLines()-2 do
local texto_left, texto_right = GameCooltip:GetText (i)
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
reportar [#reportar+1] = ""..texto_left.." "..texto_right..""
reportar [#reportar+1] = "" .. texto_left .. " ..... " .. texto_right
end
end
@@ -830,6 +832,9 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
keyName = "last_dps"
elseif (sub_atributo == 3) then --> TAMAGE TAKEN
keyName = "damage_taken"
if (_detalhes.damage_taken_everything) then
modo = modo_ALL
end
elseif (sub_atributo == 4) then --> FRIENDLY FIRE
keyName = "friendlyfire_total"
elseif (sub_atributo == 5) then --> FRAGS
@@ -1027,7 +1032,7 @@ function atributo_damage:RefreshWindow (instancia, tabela_do_combate, forcar, ex
total = index
if (exportar) then
return vtable
return voidzone_damage_total, "damage", instancia.top, total, vtable
end
if (total < 1) then
@@ -2350,6 +2355,7 @@ function atributo_damage:MontaDetalhes (spellid, barra)
return self:MontaDetalhesDamageDone (spellid, barra)
end
return self:MontaDetalhesEnemy (spellid, barra)
--return self:MontaDetalhesDamageDone (spellid, barra)
end
end
@@ -2557,11 +2563,13 @@ end
row.textura:SetValue (value/max*100)
end
--end
row.texto_esquerdo:SetText (index .. ". " .. name)
--> seta o texto da direita
row.texto_esquerdo.text = row.texto_esquerdo:GetText()
row.texto_direita:SetText (value_formated .. " (" .. _cstr ("%.1f", percent) .."%)")
row.texto_esquerdo:SetSize (row:GetWidth() - row.texto_direita:GetStringWidth() - 40, 15)
--> seta o icone
if (icon) then
row.icone:SetTexture (icon)
@@ -2691,7 +2699,7 @@ function atributo_damage:MontaInfoDamageDone()
end
self:FocusLock (barra, tabela[1])
end
--> TOP INIMIGOS
@@ -2927,6 +2935,20 @@ function atributo_damage:MontaDetalhesEnemy (spellid, barra)
local container = info.instancia.showing[1]
local barras = info.barras3
local instancia = info.instancia
local other_actor = barra.other_actor
if (other_actor) then
self = other_actor
end
if (barra.texto_esquerdo:IsTruncated()) then
_detalhes:CooltipPreset (2)
GameCooltip:SetOption ("FixedWidth", nil)
GameCooltip:AddLine (barra.texto_esquerdo.text)
GameCooltip:SetOwner (barra, "bottomleft", "topleft", 5, -10)
GameCooltip:ShowCooltip()
end
local spell = self.spells:PegaHabilidade (spellid)
local targets = spell.targets
+2 -2
View File
@@ -182,8 +182,8 @@ end
function atributo_heal:ReportSingleDamagePreventedLine (actor, instancia)
local barra = instancia.barras [actor.minha_barra]
local reportar = {"Details! " .. Loc ["STRING_ATTRIBUTE_HEAL_PREVENT"].. ": " .. actor.nome} --> localize-me
for i = 1, GameCooltip:GetNumLines() do
local reportar = {"Details!: " .. actor.nome .. " - " .. Loc ["STRING_ATTRIBUTE_HEAL_PREVENT"]}
for i = 2, GameCooltip:GetNumLines()-2 do
local texto_left, texto_right = GameCooltip:GetText (i)
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
+8 -2
View File
@@ -2705,9 +2705,8 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
local atributo = self.atributo
local container = self.showing [atributo]._ActorTable
--print ("amt: ",#container)
if (atributo == 1) then --> damage
if (self.sub_atributo == 5) then --> frags
local frags = self.showing.frags
local reportarFrags = {}
@@ -2716,7 +2715,14 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
reportarFrags [#reportarFrags+1] = {frag = tostring (amount), nome = name}
end
container = reportarFrags
container_amount = #reportarFrags
keyName = "frag"
elseif (self.sub_atributo == 7) then --> auras e voidzones
total, keyName, first, container_amount, container = _detalhes.atributo_damage:RefreshWindow (self, self.showing, true, true)
else
total, keyName, first, container_amount = _detalhes.atributo_damage:RefreshWindow (self, self.showing, true, true)
if (self.sub_atributo == 1) then
+52 -39
View File
@@ -207,11 +207,12 @@ function _detalhes:ToolTipDead (instancia, morte, esta_barra, keydown)
if (overkill > 0) then
amount = amount - overkill
overkill = " (" .. _detalhes:ToK (overkill) .. " |cFFFF8800overkill|r)"
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s |cFFFFFF00" .. spellname .. "|r (|cFFC6B0D9" .. source .. "|r)", "-" .. _detalhes:ToK (amount) .. overkill .. " (" .. hp .. "%)", 1, "white", "white")
else
overkill = ""
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s " .. spellname .. " (|cFFC6B0D9" .. source .. "|r)", "-" .. _detalhes:ToK (amount) .. overkill .. " (" .. hp .. "%)", 1, "white", "white")
end
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s " .. spellname .. " (" .. source .. ")", "-" .. _detalhes:ToK (amount) .. overkill .. " (" .. hp .. "%)", 1, "white", "white")
GameCooltip:AddIcon (spellicon)
if (event [9]) then
@@ -223,7 +224,7 @@ function _detalhes:ToolTipDead (instancia, morte, esta_barra, keydown)
end
else
--> heal
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s " .. spellname .. " (" .. source .. ")", "+" .. _detalhes:ToK (amount) .. " (" .. hp .. "%)", 1, "white", "white")
GameCooltip:AddLine ("" .. _cstr ("%.1f", time - hora_da_morte) .. "s " .. spellname .. " (|cFFC6B0D9" .. source .. "|r)", "+" .. _detalhes:ToK (amount) .. " (" .. hp .. "%)", 1, "white", "white")
GameCooltip:AddIcon (spellicon)
GameCooltip:AddStatusBar (hp, 1, "green", true)
@@ -381,41 +382,50 @@ end
function atributo_misc:ReportSingleCooldownLine (misc_actor, instancia)
local barra = misc_actor.minha_barra
local reportar = {"Details! " .. Loc ["STRING_REPORT_SINGLE_COOLDOWN"] .. " " .. barra.texto_esquerdo:GetText()} --> localize-me
reportar [#reportar+1] = "> " .. Loc ["STRING_SPELLS"] .. ":"
local reportar = {"Details!: " .. misc_actor.nome .. " - " .. Loc ["STRING_ATTRIBUTE_MISC_DEFENSIVE_COOLDOWNS"]}
for i = 1, GameCooltip:GetNumLines() do
local texto_left, texto_right = GameCooltip:GetText (i)
local meu_total = _math_floor (misc_actor.cooldowns_defensive)
local cooldowns = misc_actor.cooldowns_defensive_spells._ActorTable
local cooldowns_used = {}
for spellid, spell in _pairs (cooldowns) do
cooldowns_used [#cooldowns_used+1] = {spellid, spell.counter, spell}
end
_table_sort (cooldowns_used, _detalhes.Sort2)
for i, spell in _ipairs (cooldowns_used) do
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
reportar [#reportar+1] = " "..texto_left.." "..texto_right..""
elseif (i ~= 1) then
reportar [#reportar+1] = "> " .. Loc ["STRING_TARGETS"] .. ":"
local spelllink = GetSpellLink (spell [1])
reportar [#reportar+1] = spelllink .. ": " .. spell [2]
for target_name, amount in _pairs (spell[3].targets) do
if (target_name ~= misc_actor.nome and target_name ~= Loc ["STRING_RAID_WIDE"] and amount > 0) then
reportar [#reportar+1] = " -" .. target_name .. ": " .. amount
end
end
end
return _detalhes:Reportar (reportar, {_no_current = true, _no_inverse = true, _custom = true})
end
function atributo_misc:ReportSingleBuffUptimeLine (misc_actor, instancia)
local barra = misc_actor.minha_barra
local reportar = {"Details! " .. Loc ["STRING_REPORT_SINGLE_BUFFUPTIME"] .. " " .. barra.texto_esquerdo:GetText()} --> localize-me
reportar [#reportar+1] = "> " .. Loc ["STRING_SPELLS"] .. ":"
local reportar = {"Details!: " .. misc_actor.nome .. " - " .. Loc ["STRING_ATTRIBUTE_MISC_BUFF_UPTIME"]}
for i = 1, GameCooltip:GetNumLines() do
local texto_left, texto_right = GameCooltip:GetText (i)
local buffs = {}
local combat_time = instancia.showing:GetCombatTime()
for spellid, spell in _pairs (misc_actor.buff_uptime_spells._ActorTable) do
buffs [#buffs+1] = {spellid, spell.uptime, spell}
end
_table_sort (buffs, _detalhes.Sort2)
for i, spell in _ipairs (buffs) do
local spelllink = GetSpellLink (spell [1])
local m, s = _math_floor (spell [2] / 60), _math_floor (spell [2] % 60)
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
reportar [#reportar+1] = " "..texto_left.." "..texto_right..""
elseif (i ~= 1) then
reportar [#reportar+1] = "> " .. Loc ["STRING_TARGETS"] .. ":"
end
reportar [#reportar+1] = spelllink .. ": " .. m .. "m " .. s .. "s (" .. _cstr ("%.1f", spell [2] / combat_time * 100) .. "%)"
end
return _detalhes:Reportar (reportar, {_no_current = true, _no_inverse = true, _custom = true})
@@ -423,23 +433,26 @@ end
function atributo_misc:ReportSingleDebuffUptimeLine (misc_actor, instancia)
local barra = misc_actor.minha_barra
local reportar = {"Details!: " .. misc_actor.nome .. " - " .. Loc ["STRING_ATTRIBUTE_MISC_DEBUFF_UPTIME"]}
local reportar = {"Details! " .. Loc ["STRING_REPORT_SINGLE_DEBUFFUPTIME"] .. " " .. barra.texto_esquerdo:GetText()} --> localize-me
reportar [#reportar+1] = "> " .. Loc ["STRING_SPELLS"] .. ":"
local debuffs = {}
local combat_time = instancia.showing:GetCombatTime()
for i = 1, GameCooltip:GetNumLines() do
local texto_left, texto_right = GameCooltip:GetText (i)
if (texto_left and texto_right) then
texto_left = texto_left:gsub (("|T(.*)|t "), "")
reportar [#reportar+1] = " "..texto_left.." "..texto_right..""
elseif (i ~= 1) then
reportar [#reportar+1] = "> " .. Loc ["STRING_TARGETS"] .. ":"
end
for spellid, spell in _pairs (misc_actor.debuff_uptime_spells._ActorTable) do
debuffs [#debuffs+1] = {spellid, spell.uptime, spell}
end
return _detalhes:Reportar (reportar, {_no_current = true, _no_inverse = true, _custom = true})
_table_sort (debuffs, _detalhes.Sort2)
for i, spell in _ipairs (debuffs) do
local spelllink = GetSpellLink (spell [1])
local m, s = _math_floor (spell [2] / 60), _math_floor (spell [2] % 60)
reportar [#reportar+1] = spelllink .. ": " .. m .. "m " .. s .. "s (" .. _cstr ("%.1f", spell [2] / combat_time * 100) .. "%)"
end
return _detalhes:Reportar (reportar, {_no_current = true, _no_inverse = true, _custom = true})
end
function atributo_misc:DeadAtualizarBarra (morte, qual_barra, colocacao, instancia)
+27 -25
View File
@@ -421,32 +421,34 @@
) 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
if (este_jogador.grupo) then --> se tiver ele não adiciona o evento lá em cima
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]
this_event [1] = true --> true if this is a damage || false for healing
this_event [2] = spellid --> spellid || false if this is a battle ress line
this_event [3] = amount --> amount of damage or healing
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] = absorbed
this_event [8] = school
this_event [9] = true
this_event [10] = overkill
i = i + 1
if (i == 17) then
t.n = 1
else
t.n = i
local this_event = t [i]
this_event [1] = true --> true if this is a damage || false for healing
this_event [2] = spellid --> spellid || false if this is a battle ress line
this_event [3] = amount --> amount of damage or healing
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] = absorbed
this_event [8] = school
this_event [9] = true
this_event [10] = overkill
i = i + 1
if (i == 17) then
t.n = 1
else
t.n = i
end
end
--> faz a adição do friendly fire
+301 -32
View File
@@ -1,45 +1,314 @@
--[[ Link actor with his twin shadow ]]
do
local _detalhes = _G._detalhes
local _rawget = rawget
local _setmetatable = setmetatable
local _ipairs = ipairs
--> default weaktable
_detalhes.weaktable = {__mode = "v"}
--> create link between two tables
function _detalhes:FazLinkagem (objeto)
local meus_links = _rawget (self, "links")
if (not meus_links) then
meus_links = _setmetatable ({}, _detalhes.weaktable)
self.links = meus_links
end
meus_links [#meus_links+1] = objeto
end
--> check if there is a link between tables
function _detalhes:EstaoLinkados (objeto)
local meus_links = _rawget (self, "links")
if (not meus_links) then
return false
end
for index, actor in _ipairs (meus_links) do
if (actor == objeto) then
return true
end
--weak auras
local group_prototype = {
["xOffset"] = -678.999450683594,
["yOffset"] = 212.765991210938,
["id"] = "Details! Aura Group",
["grow"] = "RIGHT",
["controlledChildren"] = {},
["animate"] = true,
["border"] = "None",
["anchorPoint"] = "CENTER",
["regionType"] = "dynamicgroup",
["sort"] = "none",
["actions"] = {},
["space"] = 0,
["background"] = "None",
["expanded"] = true,
["constantFactor"] = "RADIUS",
["trigger"] = {
["type"] = "aura",
["spellIds"] = {},
["unit"] = "player",
["debuffType"] = "HELPFUL",
["names"] = {},
},
["borderOffset"] = 16,
["animation"] = {
["start"] = {
["type"] = "none",
["duration_type"] = "seconds",
},
["main"] = {
["type"] = "none",
["duration_type"] = "seconds",
},
["finish"] = {
["type"] = "none",
["duration_type"] = "seconds",
},
},
["align"] = "CENTER",
["rotation"] = 0,
["frameStrata"] = 1,
["width"] = 199.999969482422,
["height"] = 20,
["stagger"] = 0,
["radius"] = 200,
["numTriggers"] = 1,
["backgroundInset"] = 0,
["selfPoint"] = "LEFT",
["load"] = {
["use_combat"] = true,
["race"] = {
["multi"] = {},
},
["talent"] = {
["multi"] = {},
},
["role"] = {
["multi"] = {},
},
["spec"] = {
["multi"] = {},
},
["class"] = {
["multi"] = {},
},
["size"] = {
["multi"] = {},
},
},
["untrigger"] = {},
}
local icon_prototype = {
["yOffset"] = -10.08984375,
["xOffset"] = -3.2294921875,
["fontSize"] = 14,
["displayStacks"] = "%s",
["parent"] = "Details! Aura Group",
["color"] = {1, 1, 1, 1},
["stacksPoint"] = "BOTTOMRIGHT",
["regionType"] = "icon",
["untrigger"] = {},
["anchorPoint"] = "CENTER",
["icon"] = true,
["numTriggers"] = 1,
["customTextUpdate"] = "update",
["id"] = "UNNAMED",
["actions"] = {},
["fontFlags"] = "OUTLINE",
["stacksContainment"] = "INSIDE",
["zoom"] = 0,
["auto"] = false,
["animation"] = {
["start"] = {
["duration_type"] = "seconds",
["type"] = "preset",
["preset"] = "grow",
},
["main"] = {
["duration_type"] = "seconds",
["type"] = "preset",
["preset"] = "pulse",
},
["finish"] = {
["duration_type"] = "seconds",
["type"] = "none",
},
},
["trigger"] = {
["type"] = "aura",
["spellId"] = "0",
["subeventSuffix"] = "_CAST_START",
["custom_hide"] = "timed",
["event"] = "Health",
["subeventPrefix"] = "SPELL",
["debuffClass"] = "magic",
["use_spellId"] = true,
["spellIds"] = {},
["name_operator"] = "==",
["fullscan"] = true,
["unit"] = "player",
["names"] = {
"", -- [1]
},
["debuffType"] = "HARMFUL",
},
["desaturate"] = false,
["frameStrata"] = 1,
["stickyDuration"] = false,
["width"] = 192,
["font"] = "Friz Quadrata TT",
["inverse"] = false,
["selfPoint"] = "CENTER",
["height"] = 192,
["displayIcon"] = "Interface\\Icons\\Spell_Holiday_ToW_SpiceCloud",
["load"] = {
["use_combat"] = true,
["race"] = {
["multi"] = {
},
},
["talent"] = {
["multi"] = {
},
},
["role"] = {
["multi"] = {
},
},
["spec"] = {
["multi"] = {
},
},
["class"] = {
["multi"] = {
},
},
["size"] = {
["multi"] = {
},
},
},
["textColor"] = {
1, -- [1]
1, -- [2]
1, -- [3]
1, -- [4]
},
}
local actions_prototype = {
["start"] = {
["do_glow"] = true,
["glow_action"] = "show",
["do_sound"] = true,
["glow_frame"] = "WeakAuras:Crystalline Barrage Step",
["sound"] = "Interface\\AddOns\\WeakAuras\\Media\\Sounds\\WaterDrop.ogg",
["sound_channel"] = "Master",
},
["finish"] = {},
}
function _detalhes:CreateWeakAura (spellid, name, icon_texture, glow, sound)
if (not WeakAuras or not WeakAurasSaved) then
return
end
return false
if (not WeakAurasSaved.displays ["Details! Aura Group"]) then
local group = _detalhes.table.copy ({}, group_prototype)
WeakAuras.Add (group)
end
local icon = _detalhes.table.copy ({}, icon_prototype)
icon.id = name
icon.displayIcon = icon_texture
icon.trigger.spellId = spellid
tinsert (icon.trigger.spellIds, spellid)
WeakAuras.Add (icon)
tinsert (WeakAurasSaved.displays ["Details! Aura Group"].controlledChildren, name)
local options_frame = WeakAuras.OptionsFrame and WeakAuras.OptionsFrame()
if (options_frame and options_frame:IsShown()) then
WeakAuras.ToggleOptions()
WeakAuras.ToggleOptions()
else
WeakAuras.OpenOptions()
end
end
function _detalhes:OpenAuraPanel (spellid, spellname, spellicon)
if (not DetailsAuraPanel) then
local f = CreateFrame ("frame", "DetailsAuraPanel", UIParent, "ButtonFrameTemplate")
f:SetSize (300, 250)
f:SetPoint ("center", UIParent, "center")
f:SetFrameStrata ("HIGH")
f:SetToplevel (true)
f:SetMovable (true)
tinsert (UISpecialFrames, "DetailsAuraPanel")
f:SetScript ("OnMouseDown", function(self, button)
if (self.isMoving) then
return
end
if (button == "RightButton") then
self:Hide()
else
self:StartMoving()
self.isMoving = true
end
end)
f:SetScript ("OnMouseUp", function(self, button)
if (self.isMoving and button == "LeftButton") then
self:StopMovingOrSizing()
self.isMoving = nil
end
end)
f.TitleText:SetText ("Create Aura")
f.portrait:SetTexture ([[Interface\CHARACTERFRAME\TEMPORARYPORTRAIT-FEMALE-BLOODELF]])
local fw = _detalhes:GetFramework()
--aura name
local name_label = fw:CreateLabel (f, "Name: ", nil, nil, "GameFontNormal")
local name_textentry = fw:CreateTextEntry (f, _detalhes.empty_function, 150, 20)
name_textentry:SetPoint ("left", name_label, "right", 2, 0)
f.name = name_textentry
--aura icon
local icon_label = fw:CreateLabel (f, "Icon: ", nil, nil, "GameFontNormal")
local icon_button_func = function (texture)
f.IconButton.icon.texture = texture
end
local icon_pick_button = fw:NewButton (f, nil, "$parentIconButton", "IconButton", 20, 20, function() fw:IconPick (icon_button_func, true) end)
local icon_button_icon = fw:NewImage (icon_pick_button, [[Interface\ICONS\TEMP]], 19, 19, "background", nil, "icon", "$parentIcon")
icon_pick_button:InstallCustomTexture()
icon_pick_button:SetPoint ("left", icon_label, "right", 2, 0)
icon_button_icon:SetPoint ("left", icon_label, "right", 2, 0)
f.icon = icon_button_icon
--create
local create_func = function()
_detalhes:CreateWeakAura (f.spellid, f.name.text, DetailsAuraPanel.icon.texture, nil, nil)
f:Hide()
end
local create_button = fw:CreateButton (f, create_func, 106, 16, "Create Aura")
create_button:InstallCustomTexture()
local cancel_button = fw:CreateButton (f, function() name_textentry:ClearFocus(); f:Hide() end, 106, 16, "Cancel")
cancel_button:InstallCustomTexture()
create_button:SetIcon ([[Interface\Buttons\UI-CheckBox-Check]], nil, nil, nil, {0.125, 0.875, 0.125, 0.875}, nil, 4, 2)
cancel_button:SetIcon ([[Interface\Buttons\UI-GroupLoot-Pass-Down]], nil, nil, nil, {0.125, 0.875, 0.125, 0.875}, nil, 4, 2)
local x_start = 20
local y_start = 20
name_label:SetPoint ("topleft", f, "topleft", x_start, ((y_start*1) + (50)) * -1)
icon_label:SetPoint ("topleft", f, "topleft", x_start, ((y_start*2) + (50)) * -1)
--> create the link
function _detalhes:CriaLink (link)
--> se tiver a tabela no overall
--if (link) then
-- link:FazLinkagem (self)
--end
create_button:SetPoint ("topleft", f, "topleft", x_start, ((y_start*4) + (50)) * -1)
cancel_button:SetPoint ("left", create_button, "right", 20, 0)
end
DetailsAuraPanel.spellid = spellid
DetailsAuraPanel.name.text = spellname
DetailsAuraPanel.icon.texture = spellicon
DetailsAuraPanel:Show()
end
end
+1 -1
View File
@@ -891,7 +891,7 @@ function SlashCmdList.DETAILS (msg, editbox)
local _, _, flags = barra.texto_esquerdo:GetFont()
print ("outline:",flags)
end
else
--if (_detalhes.opened_windows < 1) then
+17 -2
View File
@@ -3064,14 +3064,27 @@ function _detalhes.janela_info:monta_relatorio (botao)
local report_lines
if (botao == 1) then --> botão da esquerda
report_lines = {"Details! " .. Loc ["STRING_ACTORFRAME_SPELLSOF"] .. " " .. player.nome .. " (" .. _detalhes.sub_atributos [atributo].lista [sub_atributo] .. ")"}
if (atributo == 1 and sub_atributo == 4) then --> friendly fire
report_lines = {"Details!: " .. player.nome .. " " .. Loc ["STRING_ATTRIBUTE_DAMAGE_FRIENDLYFIRE"] .. ":"}
elseif (atributo == 1 and sub_atributo == 3) then --> damage taken
report_lines = {"Details!: " .. player.nome .. " " .. Loc ["STRING_ATTRIBUTE_DAMAGE_TAKEN"] .. ":"}
else
-- report_lines = {"Details! " .. Loc ["STRING_ACTORFRAME_SPELLSOF"] .. " " .. player.nome .. " (" .. _detalhes.sub_atributos [atributo].lista [sub_atributo] .. ")"}
report_lines = {"Details!: " .. player.nome .. " - " .. _detalhes.sub_atributos [atributo].lista [sub_atributo] .. ""}
end
for index, barra in _ipairs (info.barras1) do
if (barra:IsShown()) then
local spellid = barra.show
if (atributo == 1 and sub_atributo == 4) then --> friendly fire
report_lines [#report_lines+1] = barra.texto_esquerdo:GetText() .. ": " .. barra.texto_direita:GetText()
elseif (spellid > 10) then
elseif (type (spellid) == "number" and spellid > 10) then
local link = GetSpellLink (spellid)
report_lines [#report_lines+1] = index .. ". " .. link .. ": " .. barra.texto_direita:GetText()
else
@@ -3329,6 +3342,8 @@ local row_on_leave = function (self)
GameTooltip:Hide()
GameCooltip:Hide()
if (self.isMain) then
--> retira o zoom no icone
self.icone:SetWidth (14)
+20
View File
@@ -1899,6 +1899,26 @@ local barra_scripts_onmouseup = function (self, button)
if (self.button == "LeftButton" or self.button == "MiddleButton") then
if (self._instance.atributo == 5 or _IsShiftKeyDown()) then
--> report
if (self._instance.atributo == 5 and _IsShiftKeyDown()) then
local custom = self._instance:GetCustomObject()
if (custom and custom.on_shift_click) then
local func = loadstring (custom.on_shift_click)
if (func) then
local successful, errortext = pcall (func, self, self.minha_tabela, self._instance)
if (not successful) then
_detalhes:Msg ("error occurred custom script shift+click:", errortext)
end
--local spellname, _, spellicon = _detalhes.getspellinfo (self.minha_tabela.id)
--_detalhes:OpenAuraPanel (self.minha_tabela.id, spellname, spellicon)
--func (object.id, spellname, spellicon)
return
end
end
end
return _detalhes:ReportSingleLine (self._instance, self)
end
self._instance:AbreJanelaInfo (self.minha_tabela)
+1 -1
View File
@@ -529,7 +529,7 @@ General/Trade: 255 189 192
local este_gump = _CreateFrame ("Frame", "DetailsReportWindow", _UIParent)
este_gump:SetPoint ("CENTER", UIParent, "CENTER")
este_gump:SetFrameStrata ("HIGH")
este_gump:SetFrameStrata ("DIALOG")
este_gump:SetScript ("OnShow", function (self)
local dropdown = este_gump.select.MyObject