You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
417 lines
17 KiB
417 lines
17 KiB
|
2 years ago
|
|
||
|
|
local addonId, edTable = ...
|
||
|
|
local Details = _G._detalhes
|
||
|
|
local AceLocale = LibStub("AceLocale-3.0")
|
||
|
|
local Loc = AceLocale:GetLocale("Details_EncounterDetails")
|
||
|
|
local Graphics = LibStub:GetLibrary("LibGraph-2.0")
|
||
|
|
local ipairs = ipairs
|
||
|
|
local _GetSpellInfo = Details.getspellinfo
|
||
|
|
local unpack = unpack
|
||
|
|
local detailsFramework = DetailsFramework
|
||
|
|
local CreateFrame = CreateFrame
|
||
|
|
local GameCooltip = GameCooltip
|
||
|
|
local GameTooltip = GameTooltip
|
||
|
|
local wipe = table.wipe
|
||
|
|
local _
|
||
|
|
|
||
|
|
local encounterDetails = _G.EncounterDetailsGlobal
|
||
|
|
local edFrame = encounterDetails.Frame
|
||
|
|
|
||
|
|
edFrame.EnemySpellsWidgets = {}
|
||
|
|
|
||
|
|
local CONST_MAX_AURA_LINES = 21
|
||
|
|
|
||
|
|
local aurasButtonTemplate = {
|
||
|
|
backdrop = {edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true},
|
||
|
|
backdropcolor = {.3, .3, .3, .5},
|
||
|
|
onentercolor = {1, 1, 1, .5},
|
||
|
|
backdropbordercolor = {0, 0, 0, 1},
|
||
|
|
}
|
||
|
|
|
||
|
|
local spell_blocks = {}
|
||
|
|
local bossmods_blocks = {}
|
||
|
|
|
||
|
|
local on_focus_gain = function(self)
|
||
|
|
self:HighlightText()
|
||
|
|
end
|
||
|
|
|
||
|
|
local on_focus_lost = function(self)
|
||
|
|
self:HighlightText(0, 0)
|
||
|
|
end
|
||
|
|
|
||
|
|
local on_enter_spell = function(self)
|
||
|
|
if (self.MyObject._spellid) then
|
||
|
|
GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT")
|
||
|
|
|
||
|
|
if (type(self.MyObject._spellid) == "string") then
|
||
|
|
local spellId = self.MyObject._spellid:gsub("%a", "")
|
||
|
|
spellId = tonumber(spellId)
|
||
|
|
if (spellId) then
|
||
|
|
GameTooltip:SetSpellByID(spellId)
|
||
|
|
end
|
||
|
|
else
|
||
|
|
GameTooltip:SetSpellByID(self.MyObject._spellid)
|
||
|
|
end
|
||
|
|
GameTooltip:Show()
|
||
|
|
|
||
|
|
self:SetBackdropColor(1, 1, 1, .5)
|
||
|
|
self:SetBackdropBorderColor(0, 0, 0, 1)
|
||
|
|
return true
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
local on_leave_spell = function(self, capsule)
|
||
|
|
GameTooltip:Hide()
|
||
|
|
self:SetBackdropColor(.3, .3, .3, .5)
|
||
|
|
end
|
||
|
|
|
||
|
|
local create_aura_func = function(self, button, spellid, encounter_id)
|
||
|
|
local name, _, icon = encounterDetails.getspellinfo(spellid)
|
||
|
|
encounterDetails:OpenAuraPanel(spellid, name, self and self.MyObject._icon.texture, encounter_id)
|
||
|
|
end
|
||
|
|
|
||
|
|
local info_onenter = function(self)
|
||
|
|
local spellid = self._spellid
|
||
|
|
|
||
|
|
local info = encounterDetails.EnemySpellPool[spellid]
|
||
|
|
if (info) then
|
||
|
|
Details:CooltipPreset(2)
|
||
|
|
GameCooltip:SetOption("FixedWidth", false)
|
||
|
|
|
||
|
|
for token, _ in pairs(info.token) do
|
||
|
|
GameCooltip:AddLine("event:", token, 1, nil, "white")
|
||
|
|
end
|
||
|
|
|
||
|
|
GameCooltip:AddLine("source:", info.source, 1, nil, "white")
|
||
|
|
GameCooltip:AddLine("school:", encounterDetails:GetSpellSchoolFormatedName(info.school), 1, nil, "white")
|
||
|
|
|
||
|
|
if (info.type) then
|
||
|
|
GameCooltip:AddLine("aura type:", info.type, 1, nil, "white")
|
||
|
|
end
|
||
|
|
GameCooltip:ShowCooltip(self, "tooltip")
|
||
|
|
end
|
||
|
|
|
||
|
|
self:SetBackdropColor(1, 1, 1, .5)
|
||
|
|
end
|
||
|
|
local info_onleave = function(self)
|
||
|
|
GameCooltip:Hide()
|
||
|
|
self:SetBackdropColor(.3, .3, .3, .5)
|
||
|
|
end
|
||
|
|
|
||
|
|
local bossModsTitle = detailsFramework:CreateLabel(edFrame, "Boss Mods Time Bars:", 12, "orange")
|
||
|
|
bossModsTitle:SetPoint(10, -85)
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, bossModsTitle)
|
||
|
|
bossModsTitle:Hide()
|
||
|
|
|
||
|
|
local bossSpellsTitle = detailsFramework:CreateLabel(edFrame, "Boss Spells and Auras:", 12, "orange")
|
||
|
|
bossSpellsTitle:SetPoint(444, -85)
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, bossSpellsTitle)
|
||
|
|
bossSpellsTitle:Hide()
|
||
|
|
|
||
|
|
--create boss mods list
|
||
|
|
for i = 1, CONST_MAX_AURA_LINES do
|
||
|
|
local anchor_frame = CreateFrame("frame", "BossFrameBossModsAnchor" .. i, edFrame, "BackdropTemplate")
|
||
|
|
|
||
|
|
local spellicon = detailsFramework:NewImage(anchor_frame, [[Interface\ICONS\TEMP]], 19, 19, "background", nil, "icon", "$parentIcon")
|
||
|
|
|
||
|
|
--timerId
|
||
|
|
local spellid = detailsFramework:CreateTextEntry(anchor_frame, encounterDetails.empty_function, 80, 20, nil, "$parentSpellId")
|
||
|
|
spellid:SetTemplate(aurasButtonTemplate)
|
||
|
|
spellid:SetHook("OnEditFocusGained", on_focus_gain)
|
||
|
|
spellid:SetHook("OnEditFocusLost", on_focus_lost)
|
||
|
|
spellid:SetHook("OnEnter", on_enter_spell)
|
||
|
|
spellid:SetHook("OnLeave", on_leave_spell)
|
||
|
|
|
||
|
|
--ability name
|
||
|
|
local spellname = detailsFramework:CreateTextEntry(anchor_frame, encounterDetails.empty_function, 180, 20, nil, "$parentSpellName")
|
||
|
|
spellname:SetTemplate(aurasButtonTemplate)
|
||
|
|
spellname:SetHook("OnEditFocusGained", on_focus_gain)
|
||
|
|
spellname:SetHook("OnEditFocusLost", on_focus_lost)
|
||
|
|
spellname:SetHook("OnEnter", on_enter_spell)
|
||
|
|
spellname:SetHook("OnLeave", on_leave_spell)
|
||
|
|
|
||
|
|
local create_aura = detailsFramework:NewButton(anchor_frame, nil, "$parentCreateAuraButton", "AuraButton", 90, 18, create_aura_func, nil, nil, nil, "Make Aura")
|
||
|
|
create_aura:SetTemplate(aurasButtonTemplate)
|
||
|
|
|
||
|
|
spellicon:SetPoint("topleft", edFrame, "topleft", 10, -85 +(i * 21 * -1))
|
||
|
|
spellid:SetPoint("left", spellicon, "right", 4, 0)
|
||
|
|
spellname:SetPoint("left", spellid, "right", 4, 0)
|
||
|
|
create_aura:SetPoint("left", spellname, "right", 4, 0)
|
||
|
|
|
||
|
|
spellid:SetBackdropBorderColor(0, 0, 0)
|
||
|
|
spellname:SetBackdropBorderColor(0, 0, 0)
|
||
|
|
|
||
|
|
anchor_frame.icon = spellicon
|
||
|
|
anchor_frame.spellid = spellid
|
||
|
|
anchor_frame.spellname = spellname
|
||
|
|
anchor_frame.aurabutton = create_aura
|
||
|
|
anchor_frame.aurabutton._icon = spellicon
|
||
|
|
|
||
|
|
table.insert(bossmods_blocks, anchor_frame)
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, anchor_frame)
|
||
|
|
|
||
|
|
anchor_frame:Hide()
|
||
|
|
end
|
||
|
|
|
||
|
|
--create buff list
|
||
|
|
for i = 1, CONST_MAX_AURA_LINES do
|
||
|
|
local anchor_frame = CreateFrame("frame", "BossFrameSpellAnchor" .. i, edFrame, "BackdropTemplate")
|
||
|
|
|
||
|
|
local spellicon = detailsFramework:NewImage(anchor_frame, [[Interface\ICONS\TEMP]], 19, 19, "background", nil, "icon", "$parentIcon")
|
||
|
|
|
||
|
|
local spellid = detailsFramework:CreateTextEntry(anchor_frame, encounterDetails.empty_function, 80, 20)
|
||
|
|
spellid:SetTemplate(aurasButtonTemplate)
|
||
|
|
spellid:SetHook("OnEditFocusGained", on_focus_gain)
|
||
|
|
spellid:SetHook("OnEditFocusLost", on_focus_lost)
|
||
|
|
spellid:SetHook("OnEnter", on_enter_spell)
|
||
|
|
spellid:SetHook("OnLeave", on_leave_spell)
|
||
|
|
|
||
|
|
local spellname = detailsFramework:CreateTextEntry(anchor_frame, encounterDetails.empty_function, 160, 20)
|
||
|
|
spellname:SetTemplate(aurasButtonTemplate)
|
||
|
|
spellname:SetHook("OnEditFocusGained", on_focus_gain)
|
||
|
|
spellname:SetHook("OnEditFocusLost", on_focus_lost)
|
||
|
|
spellname:SetHook("OnEnter", on_enter_spell)
|
||
|
|
spellname:SetHook("OnLeave", on_leave_spell)
|
||
|
|
|
||
|
|
--spellicon_button:SetPoint("topleft", BossFrame, "topleft", 255, -65 +(i * 21 * -1))
|
||
|
|
spellicon:SetPoint("topleft", edFrame, "topleft", 443, -85 +(i * 21 * -1))
|
||
|
|
spellid:SetPoint("left", spellicon, "right", 4, 0)
|
||
|
|
spellname:SetPoint("left", spellid, "right", 4, 0)
|
||
|
|
|
||
|
|
local spellinfo = CreateFrame("frame", nil, anchor_frame,"BackdropTemplate")
|
||
|
|
spellinfo:SetBackdrop({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true})
|
||
|
|
spellinfo:SetBackdropColor(.3, .3, .3, .5)
|
||
|
|
spellinfo:SetBackdropBorderColor(0, 0, 0, 1)
|
||
|
|
spellinfo:SetSize(80, 20)
|
||
|
|
spellinfo:SetScript("OnEnter", info_onenter)
|
||
|
|
spellinfo:SetScript("OnLeave", info_onleave)
|
||
|
|
|
||
|
|
local spellinfotext = spellinfo:CreateFontString(nil, "overlay", "GameFontNormal")
|
||
|
|
spellinfotext:SetPoint("center", spellinfo, "center")
|
||
|
|
spellinfotext:SetText("info")
|
||
|
|
spellinfo:SetPoint("left", spellname.widget, "right", 4, 0)
|
||
|
|
|
||
|
|
local create_aura = detailsFramework:NewButton(anchor_frame, nil, "$parentCreateAuraButton", "AuraButton", 90, 18, create_aura_func, nil, nil, nil, "Make Aura")
|
||
|
|
create_aura:SetPoint("left", spellinfo, "right", 4, 0)
|
||
|
|
create_aura:SetTemplate(aurasButtonTemplate)
|
||
|
|
|
||
|
|
anchor_frame.icon = spellicon
|
||
|
|
anchor_frame.spellid = spellid
|
||
|
|
anchor_frame.spellname = spellname
|
||
|
|
anchor_frame.aurabutton = create_aura
|
||
|
|
anchor_frame.aurabutton._icon = spellicon
|
||
|
|
anchor_frame.info = spellinfo
|
||
|
|
|
||
|
|
table.insert(spell_blocks, anchor_frame)
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, anchor_frame)
|
||
|
|
|
||
|
|
anchor_frame:Hide()
|
||
|
|
end
|
||
|
|
|
||
|
|
local update_enemy_spells = function()
|
||
|
|
local combat = encounterDetails:GetCombat(encounterDetails._segment)
|
||
|
|
local spell_list = {}
|
||
|
|
|
||
|
|
if (combat) then
|
||
|
|
for i, npc in combat[1]:ListActors() do
|
||
|
|
--damage
|
||
|
|
if (npc:IsNeutralOrEnemy()) then
|
||
|
|
for spellid, spell in pairs(npc.spells._ActorTable) do
|
||
|
|
if (spellid > 10) then
|
||
|
|
local name, _, icon = encounterDetails.getspellinfo(spellid)
|
||
|
|
table.insert(spell_list, {spellid, name, icon, nil, npc.serial})
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
for i, npc in combat[2]:ListActors() do
|
||
|
|
--heal
|
||
|
|
if (npc:IsNeutralOrEnemy()) then
|
||
|
|
for spellid, spell in pairs(npc.spells._ActorTable) do
|
||
|
|
if (spellid > 10) then
|
||
|
|
local name, _, icon = encounterDetails.getspellinfo(spellid)
|
||
|
|
table.insert(spell_list, {spellid, name, icon, true, npc.serial})
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
table.sort(spell_list, function(t1, t2)
|
||
|
|
return t1[2] < t2[2]
|
||
|
|
end)
|
||
|
|
|
||
|
|
encounterDetails.SpellScrollframe.spell_pool = spell_list
|
||
|
|
encounterDetails.SpellScrollframe.encounter_id = combat.is_boss and combat.is_boss.id
|
||
|
|
encounterDetails.SpellScrollframe:Update()
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
local refresh_bossmods_timers = function(self)
|
||
|
|
local combat = encounterDetails:GetCombat(encounterDetails._segment)
|
||
|
|
local offset = FauxScrollFrame_GetOffset(self)
|
||
|
|
local already_added = {}
|
||
|
|
local db = Details.boss_mods_timers
|
||
|
|
local encounter_id = combat.is_boss and combat.is_boss.id
|
||
|
|
|
||
|
|
if (db) then
|
||
|
|
wipe(already_added)
|
||
|
|
local timersToAdd = {}
|
||
|
|
|
||
|
|
for timerId, timerTable in pairs(db.encounter_timers_dbm) do
|
||
|
|
if (timerTable.id == encounter_id) then
|
||
|
|
local spellId = timerTable [7]
|
||
|
|
local spellIcon = timerTable [5]
|
||
|
|
local spellName
|
||
|
|
|
||
|
|
local spell = timerId
|
||
|
|
spell = spell:gsub("ej", "")
|
||
|
|
spell = tonumber(spell)
|
||
|
|
|
||
|
|
if (spell and not already_added[spell]) then
|
||
|
|
if (spell > 40000) then
|
||
|
|
local spellname, _, spellicon = _GetSpellInfo(spell)
|
||
|
|
table.insert(timersToAdd, {label = spellname, value = {timerTable[2], spellname, spellIcon or spellicon, timerTable.id, timerTable[7]}, icon = spellIcon or spellicon})
|
||
|
|
else
|
||
|
|
local sectionInfo = C_EncounterJournal.GetSectionInfo(spell)
|
||
|
|
table.insert(timersToAdd, {label = sectionInfo.title, value = {timerTable[2], sectionInfo.title, spellIcon or sectionInfo.abilityIcon, timerTable.id, timerTable[7]}, icon = spellIcon or sectionInfo.abilityIcon})
|
||
|
|
end
|
||
|
|
|
||
|
|
already_added[spell] = true
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
table.sort(timersToAdd, function(t1, t2)
|
||
|
|
return t1.label < t2.label
|
||
|
|
end)
|
||
|
|
|
||
|
|
local offset = FauxScrollFrame_GetOffset(self)
|
||
|
|
|
||
|
|
for barIndex = 1, CONST_MAX_AURA_LINES do
|
||
|
|
|
||
|
|
local data = timersToAdd[barIndex + offset]
|
||
|
|
local bar = bossmods_blocks[barIndex]
|
||
|
|
|
||
|
|
if (data) then
|
||
|
|
bar:Show()
|
||
|
|
|
||
|
|
bar.icon.texture = data.icon
|
||
|
|
bar.icon:SetTexCoord(.1, .9, .1, .9)
|
||
|
|
bar.spellid.text = data.value[1] or "--x--x--"
|
||
|
|
bar.spellname.text = data.label or "--x--x--"
|
||
|
|
|
||
|
|
bar.spellid._spellid = data.value[1]
|
||
|
|
bar.spellname._spellid = data.value[1]
|
||
|
|
|
||
|
|
local func = function()
|
||
|
|
local timerId, spellname, spellicon, encounterid, spellid = unpack(data.value)
|
||
|
|
encounterDetails:OpenAuraPanel(timerId, spellname, spellicon, encounterid, DETAILS_WA_TRIGGER_DBM_TIMER, DETAILS_WA_AURATYPE_TEXT, {dbm_timer_id = timerId, spellid = spellid, text = "Next " .. spellname .. " In", text_size = 72, icon = spellicon})
|
||
|
|
end
|
||
|
|
|
||
|
|
bar.aurabutton:SetClickFunction(func)
|
||
|
|
else
|
||
|
|
bar:Hide()
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
FauxScrollFrame_Update(self, #timersToAdd, CONST_MAX_AURA_LINES, 20)
|
||
|
|
|
||
|
|
if (#timersToAdd > 0) then
|
||
|
|
self:Show()
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
local refresh_spellauras = function(self)
|
||
|
|
local pool = encounterDetails.SpellScrollframe.spell_pool
|
||
|
|
local encounter_id = encounterDetails.SpellScrollframe.encounter_id
|
||
|
|
local offset = FauxScrollFrame_GetOffset(self)
|
||
|
|
|
||
|
|
for bar_index = 1, CONST_MAX_AURA_LINES do
|
||
|
|
local data = pool[bar_index + offset]
|
||
|
|
local bar = spell_blocks[bar_index]
|
||
|
|
|
||
|
|
if (data) then
|
||
|
|
bar:Show()
|
||
|
|
|
||
|
|
bar.icon.texture = data[3]
|
||
|
|
bar.icon:SetTexCoord(.1, .9, .1, .9)
|
||
|
|
bar.spellid.text = data[1]
|
||
|
|
bar.spellname.text = data[2]
|
||
|
|
|
||
|
|
bar.spellid._spellid = data[1]
|
||
|
|
bar.spellname._spellid = data[1]
|
||
|
|
bar.info._spellid = data[1]
|
||
|
|
|
||
|
|
local is_heal = data[4]
|
||
|
|
if (is_heal) then
|
||
|
|
bar.spellid:SetBackdropBorderColor(0, 1, 0)
|
||
|
|
bar.spellname:SetBackdropBorderColor(0, 1, 0)
|
||
|
|
else
|
||
|
|
bar.spellid:SetBackdropBorderColor(0, 0, 0)
|
||
|
|
bar.spellname:SetBackdropBorderColor(0, 0, 0)
|
||
|
|
end
|
||
|
|
|
||
|
|
bar.aurabutton:SetClickFunction(create_aura_func, data [1], encounter_id)
|
||
|
|
else
|
||
|
|
bar:Hide()
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
FauxScrollFrame_Update(self, #pool, CONST_MAX_AURA_LINES, 20)
|
||
|
|
end
|
||
|
|
|
||
|
|
local spellScrollFrame = CreateFrame("ScrollFrame", "EncounterDetails_SpellAurasScroll", edFrame, "FauxScrollFrameTemplate, BackdropTemplate")
|
||
|
|
spellScrollFrame:SetScript("OnVerticalScroll", function(self, offset) FauxScrollFrame_OnVerticalScroll(self, offset, 14, refresh_spellauras) end)
|
||
|
|
spellScrollFrame:SetPoint("topleft", edFrame, "topleft", 200, -75)
|
||
|
|
spellScrollFrame:SetPoint("bottomright", edFrame, "bottomright", -33, 42)
|
||
|
|
spellScrollFrame.Update = refresh_spellauras
|
||
|
|
spellScrollFrame:Hide()
|
||
|
|
encounterDetails.SpellScrollframe = spellScrollFrame
|
||
|
|
detailsFramework:ReskinSlider(spellScrollFrame)
|
||
|
|
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, spellScrollFrame)
|
||
|
|
encounterDetails.update_enemy_spells = update_enemy_spells
|
||
|
|
|
||
|
|
local bossmodsScrollFrame = CreateFrame("ScrollFrame", "EncounterDetails_BossModsScroll", edFrame, "FauxScrollFrameTemplate, BackdropTemplate")
|
||
|
|
bossmodsScrollFrame:SetScript("OnVerticalScroll", function(self, offset) FauxScrollFrame_OnVerticalScroll(self, offset, 14, refresh_bossmods_timers) end)
|
||
|
|
bossmodsScrollFrame:SetPoint("topleft", edFrame, "topleft", 10, -75)
|
||
|
|
bossmodsScrollFrame:SetPoint("bottomleft", edFrame, "bottomleft", 250, 42)
|
||
|
|
bossmodsScrollFrame.Update = refresh_bossmods_timers
|
||
|
|
bossmodsScrollFrame:Hide()
|
||
|
|
encounterDetails.BossModsScrollframe = bossmodsScrollFrame
|
||
|
|
|
||
|
|
table.insert(edFrame.EnemySpellsWidgets, bossmodsScrollFrame)
|
||
|
|
encounterDetails.update_bossmods = function() bossmodsScrollFrame:Update() end
|
||
|
|
|
||
|
|
local build_bigwigs_bars = function()
|
||
|
|
local t = {}
|
||
|
|
local db = Details.boss_mods_timers
|
||
|
|
if (db) then
|
||
|
|
wipe(already_added)
|
||
|
|
local encounter_id = encounterDetails.SpellScrollframe.encounter_id
|
||
|
|
|
||
|
|
for timer_id, timer_table in pairs(db.encounter_timers_bw) do
|
||
|
|
if (timer_table.id == encounter_id) then
|
||
|
|
local spell = timer_id
|
||
|
|
if (spell and not already_added [spell]) then
|
||
|
|
local int_spell = tonumber(spell)
|
||
|
|
if (not int_spell) then
|
||
|
|
local spellname = timer_table [2]:gsub(" %(.%)", "")
|
||
|
|
table.insert(t, {label = spellname, value = {timer_table [2], spellname, timer_table [5], timer_table.id}, icon = timer_table [5], onclick = on_select_bw_bar})
|
||
|
|
elseif (int_spell < 0) then
|
||
|
|
local title, description, depth, abilityIcon, displayInfo, siblingID, nextSectionID, filteredByDifficulty, link, startsOpen, flag1, flag2, flag3, flag4 = C_EncounterJournal.GetSectionInfo(abs(int_spell))
|
||
|
|
table.insert(t, {label = title, value = {timer_table [2], title, timer_table [5] or abilityIcon, timer_table.id}, icon = timer_table [5] or abilityIcon, onclick = on_select_bw_bar})
|
||
|
|
else
|
||
|
|
local spellname, _, spellicon = _GetSpellInfo(int_spell)
|
||
|
|
table.insert(t, {label = spellname, value = {timer_table [2], spellname, timer_table [5] or spellicon, timer_table.id}, icon = timer_table [5] or spellicon, onclick = on_select_bw_bar})
|
||
|
|
end
|
||
|
|
|
||
|
|
already_added [spell] = true
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
return t
|
||
|
|
end
|