diff --git a/Libs/DF/cooltip.lua b/Libs/DF/cooltip.lua index 496ff4bc..ec57ba24 100644 --- a/Libs/DF/cooltip.lua +++ b/Libs/DF/cooltip.lua @@ -188,8 +188,8 @@ function DF:CreateCoolTip() CoolTip.frame1 = frame1 CoolTip.frame2 = frame2 - DF:Fade (frame1, 0) - DF:Fade (frame2, 0) + DF:FadeFrame (frame1, 0) + DF:FadeFrame (frame2, 0) --> button containers frame1.Lines = {} @@ -261,10 +261,10 @@ function DF:CreateCoolTip() CoolTip.mouseOver = true CoolTip.had_interaction = true self:SetScript ("OnUpdate", nil) - DF:Fade (self, 0) + DF:FadeFrame (self, 0) --rever if (CoolTip.sub_menus) then - DF:Fade (frame2, 0) + DF:FadeFrame (frame2, 0) end end end) @@ -278,8 +278,8 @@ function DF:CreateCoolTip() CoolTip.mouseOver = true CoolTip.had_interaction = true self:SetScript ("OnUpdate", nil) - DF:Fade (self, 0) - DF:Fade (frame1, 0) + DF:FadeFrame (self, 0) + DF:FadeFrame (frame1, 0) end end) @@ -287,11 +287,11 @@ function DF:CreateCoolTip() elapsedTime = elapsedTime+elapsed if (elapsedTime > 0.7) then if (not CoolTip.active and not CoolTip.buttonClicked and self == CoolTip.Host) then - DF:Fade (self, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (self, 1) + DF:FadeFrame (frame2, 1) elseif (not CoolTip.active) then - DF:Fade (self, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (self, 1) + DF:FadeFrame (frame2, 1) end self:SetScript ("OnUpdate", nil) frame2:SetScript ("OnUpdate", nil) @@ -317,11 +317,11 @@ function DF:CreateCoolTip() elapsedTime = elapsedTime+elapsed if (elapsedTime > 0.7) then if (not CoolTip.active and not CoolTip.buttonClicked and self == CoolTip.Host) then - DF:Fade (self, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (self, 1) + DF:FadeFrame (frame2, 1) elseif (not CoolTip.active) then - DF:Fade (self, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (self, 1) + DF:FadeFrame (frame2, 1) end self:SetScript ("OnUpdate", nil) frame1:SetScript ("OnUpdate", nil) @@ -386,12 +386,12 @@ function DF:CreateCoolTip() elapsedTime = elapsedTime+elapsed if (elapsedTime > 0.7) then if (not CoolTip.active and not CoolTip.buttonClicked) then - DF:Fade (frame1, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) elseif (not CoolTip.active) then - DF:Fade (frame1, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) end frame1:SetScript ("OnUpdate", nil) end @@ -441,7 +441,7 @@ function DF:CreateCoolTip() else --hide second frame - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) CoolTip.last_button = nil end else @@ -491,11 +491,11 @@ function DF:CreateCoolTip() elapsedTime = elapsedTime+elapsed if (elapsedTime > 0.7) then if (not CoolTip.active and not CoolTip.buttonClicked) then - DF:Fade (frame1, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) elseif (not CoolTip.active) then - DF:Fade (frame1, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) end frame2:SetScript ("OnUpdate", nil) end @@ -524,8 +524,8 @@ function DF:CreateCoolTip() frame1:SetScript ("OnUpdate", nil) frame2:SetScript ("OnUpdate", nil) - DF:Fade (frame1, 0) - DF:Fade (frame2, 0) + DF:FadeFrame (frame1, 0) + DF:FadeFrame (frame2, 0) else CoolTip.mouseOver = true CoolTip.had_interaction = true @@ -999,7 +999,7 @@ function DF:CreateCoolTip() menuButton:SetPoint ("left", frame2, "left") menuButton:SetPoint ("right", frame2, "right") - DF:Fade (menuButton, 0) + DF:FadeFrame (menuButton, 0) --> string length local stringWidth = menuButton.leftText:GetStringWidth() + menuButton.rightText:GetStringWidth() + menuButton.leftIcon:GetWidth() + menuButton.rightIcon:GetWidth() @@ -1048,7 +1048,7 @@ function DF:CreateCoolTip() function CoolTip:ShowSub (index) if (CoolTip.OptionsTable.IgnoreSubMenu) then - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) return end @@ -1114,7 +1114,7 @@ function DF:CreateCoolTip() end for i = CoolTip.IndexesSub [index] + 1, #frame2.Lines do - DF:Fade (frame2.Lines[i], 1) + DF:FadeFrame (frame2.Lines[i], 1) end local spacing = 0 @@ -1217,7 +1217,7 @@ function DF:CreateCoolTip() frame2:SetWidth (frame2.w + 44) end - DF:Fade (frame2, 0) + DF:FadeFrame (frame2, 0) CoolTip:CheckOverlap() @@ -1246,7 +1246,7 @@ function DF:CreateCoolTip() end function CoolTip:HideSub() - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) end @@ -1259,7 +1259,7 @@ function DF:CreateCoolTip() function CoolTip:monta_tooltip() --> hide sub frame - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) --> hide select bar CoolTip:HideSelectedTexture (frame1) @@ -1393,7 +1393,7 @@ function DF:CreateCoolTip() end --> unhide frame - DF:Fade (frame1, 0) + DF:FadeFrame (frame1, 0) CoolTip:SetMyPoint (host) --> fix sparks @@ -1442,12 +1442,12 @@ function DF:CreateCoolTip() frame2.w = 0 frame2:SetHeight (6) if (CoolTip.SelectedIndexMain and CoolTip.IndexesSub [CoolTip.SelectedIndexMain] and CoolTip.IndexesSub [CoolTip.SelectedIndexMain] > 0) then - DF:Fade (frame2, 0) + DF:FadeFrame (frame2, 0) else - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) end else - DF:Fade (frame2, 1) + DF:FadeFrame (frame2, 1) end CoolTip.active = true @@ -1600,7 +1600,7 @@ function DF:CreateCoolTip() frame1.frameWallpaper:Hide() end - DF:Fade (frame1, 0) + DF:FadeFrame (frame1, 0) for i = 1, CoolTip.Indexes do if (CoolTip.SelectedIndexMain and CoolTip.SelectedIndexMain == i) then @@ -2858,8 +2858,8 @@ function DF:CreateCoolTip() function CoolTip:Close() CoolTip.active = false CoolTip.Host = nil - DF:Fade (frame1, 1) - DF:Fade (frame2, 1) + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) end diff --git a/Libs/DF/fw.lua b/Libs/DF/fw.lua index 3c4d6b7e..dfff6327 100644 --- a/Libs/DF/fw.lua +++ b/Libs/DF/fw.lua @@ -1,5 +1,5 @@ -local dversion = 11 +local dversion = 12 local major, minor = "DetailsFramework-1.0", dversion local DF, oldminor = LibStub:NewLibrary (major, minor) @@ -103,6 +103,25 @@ function DF:GetFrameworkFolder() return DF.folder end +function DF:FadeFrame (frame, t) + if (t == 0) then + frame.hidden = false + frame.faded = false + frame.fading_out = false + frame.fading_in = false + frame:Show() + frame:SetAlpha (1) + + elseif (t == 1) then + frame.hidden = true + frame.faded = true + frame.fading_out = false + frame.fading_in = false + frame:SetAlpha (0) + frame:Hide() + end +end + function DF.table.reverse (t) local new = {} local index = 1 @@ -317,162 +336,6 @@ function DF:CreateFlashAnimation (frame, onFinishFunc, onLoopFunc) frame.Stop = stop end ------------------------------------------ - -local fade_IN_finished_func = function (frame) - if (frame.fading_in) then - frame.hidden = true - frame.faded = true - frame.fading_in = false - frame:Hide() - end -end - -local fade_OUT_finished_func = function (frame) - if (frame:IsShown() and frame.fading_out) then - frame.hidden = false - frame.faded = false - frame.fading_out = false - else - frame:SetAlpha(0) - end -end - -local just_fade_func = function (frame) - frame.hidden = false - frame.faded = true - frame.fading_in = false -end - -local anim_OUT_alpha_func = function (frame) - frame.fading_out = false -end - -local anim_IN_alpha_func = function (frame) - frame.fading_in = false -end - -function DF:Fade (frame, tipo, velocidade, parametros) - - if (_type (frame) == "table") then - if (frame.dframework) then - frame = frame.widget - end - end - - velocidade = velocidade or 0.3 - - if (upper (tipo) == "IN") then - - if (frame:GetAlpha() == 0 and frame.hidden and not frame.fading_out) then --> ja esta escondida - return - elseif (frame.fading_in) then --> ja esta com uma animação, se for true - return - end - - if (frame.fading_out) then --> se tiver uma animação de aparecer em andamento se for true - frame.fading_out = false - end - - UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), 0) - frame.fading_in = true - - frame.fadeInfo.finishedFunc = fade_IN_finished_func - frame.fadeInfo.finishedArg1 = frame - - elseif (upper (tipo) == "OUT") then --> aparecer - if (frame:GetAlpha() == 1 and not frame.hidden and not frame.fading_in) then --> ja esta na tela - return - elseif (frame.fading_out) then --> já ta com fading out - return - end - - if (frame.fading_in) then --> se tiver uma animação de hidar em andamento se for true - frame.fading_in = false - end - - frame:Show() - UIFrameFadeOut (frame, velocidade, frame:GetAlpha(), 1.0) - frame.fading_out = true - - frame.fadeInfo.finishedFunc = fade_OUT_finished_func - frame.fadeInfo.finishedArg1 = frame - - elseif (tipo == 0) then --> força o frame a ser mostrado - frame.hidden = false - frame.faded = false - frame.fading_out = false - frame.fading_in = false - frame:Show() - frame:SetAlpha (1) - - elseif (tipo == 1) then --> força o frame a ser hidado - frame.hidden = true - frame.faded = true - frame.fading_out = false - frame.fading_in = false - frame:SetAlpha (0) - frame:Hide() - - elseif (tipo == -1) then --> apenas da fade sem hidar - if (frame:GetAlpha() == 0 and frame.hidden and not frame.fading_out) then --> ja esta escondida - return - elseif (frame.fading_in) then --> ja esta com uma animação, se for true - return - end - - if (frame.fading_out) then --> se tiver uma animação de aparecer em andamento se for true - frame.fading_out = false - end - - UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), 0) - frame.fading_in = true - frame.fadeInfo.finishedFunc = just_fade_func - frame.fadeInfo.finishedArg1 = frame - - elseif (upper (tipo) == "ALPHAANIM") then - - local value = velocidade - local currentApha = frame:GetAlpha() - frame:Show() - - if (currentApha < value) then - if (frame.fading_in) then --> se tiver uma animação de hidar em andamento se for true - frame.fading_in = false - frame.fadeInfo.finishedFunc = nil - end - UIFrameFadeOut (frame, 0.3, currentApha, value) - frame.fading_out = true - - frame.fadeInfo.finishedFunc = anim_OUT_alpha_func - frame.fadeInfo.finishedArg1 = frame - - else - if (frame.fading_out) then --> se tiver uma animação de hidar em andamento se for true - frame.fading_out = false - frame.fadeInfo.finishedFunc = nil - end - UIFrameFadeIn (frame, 0.3, currentApha, value) - frame.fading_in = true - - frame.fadeInfo.finishedFunc = anim_IN_alpha_func - frame.fadeInfo.finishedArg1 = frame - end - - elseif (upper (tipo) == "ALPHA") then --> setando um alpha determinado - if (frame.fading_in or frame.fading_out) then - frame.fadeInfo.finishedFunc = nil - UIFrameFadeIn (frame, velocidade, frame:GetAlpha(), frame:GetAlpha()) - end - frame.hidden = false - frame.faded = false - frame.fading_in = false - frame.fading_out = false - frame:Show() - frame:SetAlpha (velocidade) - end -end - ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --> points diff --git a/boot.lua b/boot.lua index 94e91079..20bfefb6 100644 --- a/boot.lua +++ b/boot.lua @@ -4,7 +4,7 @@ _ = nil _detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0") _detalhes.build_counter = 2059 --it's 2059 for release - _detalhes.userversion = "v4.0.5" + _detalhes.userversion = "v4.0.5a" _detalhes.realversion = 76 --core version _detalhes.version = _detalhes.userversion .. " (core " .. _detalhes.realversion .. ")" Details = _detalhes @@ -30,7 +30,7 @@ do -- - Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v4.0.5 (|cFFFFCC00Oct 15, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option to disable the all-displays window (right click on title bar).\n\n|cFFFFFF00-|r Added an option to suppress segment changes after killing a boss encounter (experimental).\n\n|cFFFFFF00-|r Fixed an issue with bar animations starting from the middle of the bar.\n\n|cFFFFFF00-|r Fixed buffs and spell cast start on weakauras creator tool.\n\n|cFFFFFF00v4.0.3a (|cFFFFCC00Set 29, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for an error on Damage Taken By Spell display.\n\n|cFFFFFF00v4.0.3 (|cFFFFCC00Set 27, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Some improvements on Plugin's icon at the title bar.\n\n|cFFFFFF00v4.0.2 (|cFFFFCC00Set 26, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added 'ShielTronic Shield' on HealthPotion & Stone display.\n\n|cFFFFFF00-|r Improvements done on Vanguard Plugin.\n\n|cFFFFFF00-|r Fixed an alignment issue which was happening with few tooltips.\n\n|cFFFFFF00-|r Fixed a problem where sometimes the addon crashes while doing a /reload during raid.\n\n|cFFFFFF00-|r Fixed the creation of auras for weakauras from the Forge (/details forge).\n\n|cFFFFFF00v4.0.1 (|cFFFFCC00Set 21, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an options to use a customized skin file.\n\n|cFFFFFF00-|r Added an options to use a customized bar texture file.\n\n|cFFFFFF00-|r A Package with photoshop files with examples and the skin file for Minimalistic skin are available at WoW Interface.\n\n|cFFFFFF00-|r Added 'API Custom Displays.txt' on Details! folder, this file explain how to create scripts for custom displays.\n\n|cFFFFFF00v4.0h (|cFFFFCC00Set 19, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Created new plugin 'Target Caller' for RBGs, it's available at Curse.com.\n\n|cFFFFFF00-|r Fixed death display color when not using colored by the player class.\n\n|cFFFFFF00-|r Fixed a rare bug where the window for Encounter Details Plugin won't open when clicking on its icon.\n\n|cFFFFFF00-|r Added officer channel to 'Announce Death' feature.\n\n|cFFFFFF00v4.0f (|cFFFFCC00Set 16, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for the title bar encounter timer.\n\n|cFFFFFF00v4.0e (|cFFFFCC00Set 14, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added a custom display for Crowd Control Received.\n\n|cFFFFFF00-|r Weak Aura Creator Tool, now has full support for BigWigs and Dbm time bars.\n\n|cFFFFFF00-|r Auras for interrupt and dispelling has been added on the Weak Aura Creator Tool.\n\n|cFFFFFF00-|r Details! Forge now has support for DBM and BigWigs time bars.\n\n|cFFFFFF00-|r Solo Plugins now has a close button on their panels.\n\n|cFFFFFF00-|r Fixed damage/healing score message after a boss kill.\n\n|cFFFFFF00-|r Now, an alert to open the history panel is shown after killing a boss.\n\n|cFFFFFF00-|r Added a 'all-displays' menu when right clicking title bar.\n\n|cFFFFFF00-|r Removed few texture from bookmarks panel, now it has a more clean appearance.\n\n|cFFFFFF00-|r Updated Details! Framework.\n\n|cFFFFFF00-|r Added option in order to change the bar orientation.\n\n|cFFFFFF00-|r Added an option to make the menus on title bar work with clicks instead of hovering over them.\n\n|cFFFFFF00-|r Healing for battleground enemies is now placed on healing done instead of enemy healing done.\n\n|cFFFFFF00-|r Improvements on our support for Arena battles.\n\n|cFFFFFF00-|r Fixed some issues on the Player Detail Window.\n\n|cFFFFFF00-|r Fixed encounter time on title bar text.\n\n|cFFFFFF00-|r Fixed death display tooltip, wasn't respecting the font and size set on options panel.\n\n|cFFFFFF00v3.18.5 (|cFFFFCC00Aug 19, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Improvements on Weakauras creation from Encounter Details plugin.\n\n|cFFFFFF00-|r Improvements on 'Auto Switch to Current' feature. Details! windows are now more responsible about auto changing a segment while the player, for instance, has the report window opened.\n\n|cFFFFFF00-|r Added slash command '/de wipe'. It ends the raid encounter segment and stop capturing data.\nIf you are the raid leader, all other users of Details! will also stop.\nWorks great for players not make damage padding after a wipe call.\n\n|cFFFFFF00-|r Added the overheal made by pets on tooltip and player details window.\n\n|cFFFFFF00-|r Added an option to disable stretch button and bar highlight.\n\n|cFFFFFF00-|r Disabling nicknames now also disable avatars.\n\n|cFFFFFF00-|r Added 'spinal healing injector' on custom display 'Health Potion & Stone' used.\n\n|cFFFFFF00-|r Fixed title text width when auto-hide menu buttons is enabled.\n\n|cFFFFFF00-|r Fixed item level of timewarped items.\n\n|cFFFFFF00-|r Fixed report for custom display Crowd Control.\n\n|cFFFFFF00-|r Fixed role icons on custom displays.\n\n|cFFFFFF00-|r Fixed an issue with dropdown boxes where wasn't showing all options.\n\n|cFFFFFF00-|r Fixed Ticket #53: background alpha after stretching which wasn't correctly coming back to original color.\n\n|cFFFFFF00-|r Fixed ticket #51: API Call 'GetCombat('overall')' wasn't returning the overall combat object.\n\n|cFFFFFF00-|r Fixed ticket #50: issue opening icon selection frame.\n\n|cFFFFFF00v3.17.12 (|cFFFFCC00Aug 05, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option for lock micro displays. When locked they don't interact with mouse or stay on top of menus.\n\n|cFFFFFF00-|r Fixed ticket #49: death display not working correctly with sort direction bottom-to-top.\n\n|cFFFFFF00-|r Fixed an issue with death display where the text wasn't updating their width correctly.\n\n|cFFFFFF00-|r Fixed an issue with energy and miscellaneous displays type not working correctly with bar animations.\n\n|cFFFFFF00-|r Fixed an issue while loading old profiles wans't updating their values for newer versions of the addon.\n\n|cFFFFFF00-|r Fixed an issue with bookmarks panel not opening correctly.\n\n|cFFFFFF00v3.17.10 (|cFFFFCC00Aug 02, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed ticket #47: Title bar font resets with UI reload / relog.\n\n|cFFFFFF00-|r Fixed ticket #46: Icon select panel wasn't opening.\n\n|cFFFFFF00-|r Fixed ticket #45: Windwalker icon for Mistweaver monks.\n\n|cFFFFFF00-|r Fixed issue with vehicles exchanging ownership, e.g. Soulbound Constructor on HFC raid.\n\n|cFFFFFF00v3.17.6 (|cFFFFCC00Jul 16, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Major improvements on the aura tool creation for WeakAuras.\n\n|cFFFFFF00-|r Fixed some issues with spec icons where sometimes it shows four small icons.\n\n|cFFFFFF00-|r Added an option to show a stopwatch on the title text showing the elapsed time of an encounter.\n\n|cFFFFFF00-|r Window title text now shrinks correctly when isn't enough space for it.\n\n|cFFFFFF00-|r For some special cases, left click now open the report window and shift+click shows the tooltip content in the window.\n\n|cFFFFFF00-|r Damage Taken by Spells now are a part of Damage bracket (no more on custom).\n\n|cFFFFFF00-|r Fixed custom functions for the customized bar left text.\n\n|cFFFFFF00-|r Improvements on report text format and also reverse option now works as intended.\n\n|cFFFFFF00-|r Removed the option for report only what is shown in the window.\n\n|cFFFFFF00-|r Added skins for report panel, the skin follow the skin selected for Player Detail Window." + Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v4.0.5a (|cFFFFCC00Oct 16, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option to disable the all-displays window (right click on title bar).\n\n|cFFFFFF00-|r Added an option to suppress segment changes after killing a boss encounter (experimental).\n\n|cFFFFFF00-|r Fixed an issue with bar animations starting from the middle of the bar.\n\n|cFFFFFF00-|r Fixed buffs and spell cast start on weakauras creator tool.\n\n|cFFFFFF00v4.0.3a (|cFFFFCC00Set 29, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for an error on Damage Taken By Spell display.\n\n|cFFFFFF00v4.0.3 (|cFFFFCC00Set 27, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Some improvements on Plugin's icon at the title bar.\n\n|cFFFFFF00v4.0.2 (|cFFFFCC00Set 26, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added 'ShielTronic Shield' on HealthPotion & Stone display.\n\n|cFFFFFF00-|r Improvements done on Vanguard Plugin.\n\n|cFFFFFF00-|r Fixed an alignment issue which was happening with few tooltips.\n\n|cFFFFFF00-|r Fixed a problem where sometimes the addon crashes while doing a /reload during raid.\n\n|cFFFFFF00-|r Fixed the creation of auras for weakauras from the Forge (/details forge).\n\n|cFFFFFF00v4.0.1 (|cFFFFCC00Set 21, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an options to use a customized skin file.\n\n|cFFFFFF00-|r Added an options to use a customized bar texture file.\n\n|cFFFFFF00-|r A Package with photoshop files with examples and the skin file for Minimalistic skin are available at WoW Interface.\n\n|cFFFFFF00-|r Added 'API Custom Displays.txt' on Details! folder, this file explain how to create scripts for custom displays.\n\n|cFFFFFF00v4.0h (|cFFFFCC00Set 19, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Created new plugin 'Target Caller' for RBGs, it's available at Curse.com.\n\n|cFFFFFF00-|r Fixed death display color when not using colored by the player class.\n\n|cFFFFFF00-|r Fixed a rare bug where the window for Encounter Details Plugin won't open when clicking on its icon.\n\n|cFFFFFF00-|r Added officer channel to 'Announce Death' feature.\n\n|cFFFFFF00v4.0f (|cFFFFCC00Set 16, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for the title bar encounter timer.\n\n|cFFFFFF00v4.0e (|cFFFFCC00Set 14, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added a custom display for Crowd Control Received.\n\n|cFFFFFF00-|r Weak Aura Creator Tool, now has full support for BigWigs and Dbm time bars.\n\n|cFFFFFF00-|r Auras for interrupt and dispelling has been added on the Weak Aura Creator Tool.\n\n|cFFFFFF00-|r Details! Forge now has support for DBM and BigWigs time bars.\n\n|cFFFFFF00-|r Solo Plugins now has a close button on their panels.\n\n|cFFFFFF00-|r Fixed damage/healing score message after a boss kill.\n\n|cFFFFFF00-|r Now, an alert to open the history panel is shown after killing a boss.\n\n|cFFFFFF00-|r Added a 'all-displays' menu when right clicking title bar.\n\n|cFFFFFF00-|r Removed few texture from bookmarks panel, now it has a more clean appearance.\n\n|cFFFFFF00-|r Updated Details! Framework.\n\n|cFFFFFF00-|r Added option in order to change the bar orientation.\n\n|cFFFFFF00-|r Added an option to make the menus on title bar work with clicks instead of hovering over them.\n\n|cFFFFFF00-|r Healing for battleground enemies is now placed on healing done instead of enemy healing done.\n\n|cFFFFFF00-|r Improvements on our support for Arena battles.\n\n|cFFFFFF00-|r Fixed some issues on the Player Detail Window.\n\n|cFFFFFF00-|r Fixed encounter time on title bar text.\n\n|cFFFFFF00-|r Fixed death display tooltip, wasn't respecting the font and size set on options panel.\n\n|cFFFFFF00v3.18.5 (|cFFFFCC00Aug 19, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Improvements on Weakauras creation from Encounter Details plugin.\n\n|cFFFFFF00-|r Improvements on 'Auto Switch to Current' feature. Details! windows are now more responsible about auto changing a segment while the player, for instance, has the report window opened.\n\n|cFFFFFF00-|r Added slash command '/de wipe'. It ends the raid encounter segment and stop capturing data.\nIf you are the raid leader, all other users of Details! will also stop.\nWorks great for players not make damage padding after a wipe call.\n\n|cFFFFFF00-|r Added the overheal made by pets on tooltip and player details window.\n\n|cFFFFFF00-|r Added an option to disable stretch button and bar highlight.\n\n|cFFFFFF00-|r Disabling nicknames now also disable avatars.\n\n|cFFFFFF00-|r Added 'spinal healing injector' on custom display 'Health Potion & Stone' used.\n\n|cFFFFFF00-|r Fixed title text width when auto-hide menu buttons is enabled.\n\n|cFFFFFF00-|r Fixed item level of timewarped items.\n\n|cFFFFFF00-|r Fixed report for custom display Crowd Control.\n\n|cFFFFFF00-|r Fixed role icons on custom displays.\n\n|cFFFFFF00-|r Fixed an issue with dropdown boxes where wasn't showing all options.\n\n|cFFFFFF00-|r Fixed Ticket #53: background alpha after stretching which wasn't correctly coming back to original color.\n\n|cFFFFFF00-|r Fixed ticket #51: API Call 'GetCombat('overall')' wasn't returning the overall combat object.\n\n|cFFFFFF00-|r Fixed ticket #50: issue opening icon selection frame.\n\n|cFFFFFF00v3.17.12 (|cFFFFCC00Aug 05, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option for lock micro displays. When locked they don't interact with mouse or stay on top of menus.\n\n|cFFFFFF00-|r Fixed ticket #49: death display not working correctly with sort direction bottom-to-top.\n\n|cFFFFFF00-|r Fixed an issue with death display where the text wasn't updating their width correctly.\n\n|cFFFFFF00-|r Fixed an issue with energy and miscellaneous displays type not working correctly with bar animations.\n\n|cFFFFFF00-|r Fixed an issue while loading old profiles wans't updating their values for newer versions of the addon.\n\n|cFFFFFF00-|r Fixed an issue with bookmarks panel not opening correctly.\n\n|cFFFFFF00v3.17.10 (|cFFFFCC00Aug 02, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed ticket #47: Title bar font resets with UI reload / relog.\n\n|cFFFFFF00-|r Fixed ticket #46: Icon select panel wasn't opening.\n\n|cFFFFFF00-|r Fixed ticket #45: Windwalker icon for Mistweaver monks.\n\n|cFFFFFF00-|r Fixed issue with vehicles exchanging ownership, e.g. Soulbound Constructor on HFC raid.\n\n|cFFFFFF00v3.17.6 (|cFFFFCC00Jul 16, 2015|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Major improvements on the aura tool creation for WeakAuras.\n\n|cFFFFFF00-|r Fixed some issues with spec icons where sometimes it shows four small icons.\n\n|cFFFFFF00-|r Added an option to show a stopwatch on the title text showing the elapsed time of an encounter.\n\n|cFFFFFF00-|r Window title text now shrinks correctly when isn't enough space for it.\n\n|cFFFFFF00-|r For some special cases, left click now open the report window and shift+click shows the tooltip content in the window.\n\n|cFFFFFF00-|r Damage Taken by Spells now are a part of Damage bracket (no more on custom).\n\n|cFFFFFF00-|r Fixed custom functions for the customized bar left text.\n\n|cFFFFFF00-|r Improvements on report text format and also reverse option now works as intended.\n\n|cFFFFFF00-|r Removed the option for report only what is shown in the window.\n\n|cFFFFFF00-|r Added skins for report panel, the skin follow the skin selected for Player Detail Window." Loc ["STRING_DETAILS1"] = "|cffffaeaeDetails!:|r " diff --git a/classes/classe_others.lua b/classes/classe_others.lua index 57b9b32f..7ee500cc 100644 --- a/classes/classe_others.lua +++ b/classes/classe_others.lua @@ -1172,6 +1172,7 @@ function atributo_misc:ToolTipDispell (instancia, numero, barra) end local UnitReaction = UnitReaction +local UnitDebuff = UnitDebuff function _detalhes:CloseEnemyDebuffsUptime() local combat = _detalhes.tabela_vigente @@ -1215,29 +1216,34 @@ function _detalhes:CatchRaidDebuffUptime (in_or_out) -- "DEBUFF_UPTIME_IN" return end + local cacheGetTime = GetTime() + if (_IsInRaid()) then local checked = {} for raidIndex = 1, _GetNumGroupMembers() do - local his_target = _UnitGUID ("raid"..raidIndex.."target") - local rect = UnitReaction ("raid"..raidIndex.."target", "player") - if (his_target and rect and not checked [his_target] and rect <= 4) then - - checked [his_target] = true - - for debuffIndex = 1, 41 do - local name, _, _, _, _, _, _, unitCaster, _, _, spellid = UnitDebuff ("raid"..raidIndex.."target", debuffIndex) - if (name and unitCaster) then - local playerName, realmName = _UnitName (unitCaster) - local playerGUID = _UnitGUID (unitCaster) - - if (playerGUID) then - if (realmName and realmName ~= "") then - playerName = playerName .. "-" .. realmName + + local target = "raid"..raidIndex.."target" + local his_target = _UnitGUID (target) + + if (his_target and not checked [his_target]) then + local rect = UnitReaction (target, "player") + if (rect and rect <= 4) then + + checked [his_target] = true + + for debuffIndex = 1, 41 do + local name, _, _, _, _, _, _, unitCaster, _, _, spellid = UnitDebuff (target, debuffIndex) + if (name and unitCaster) then + local playerGUID = _UnitGUID (unitCaster) + if (playerGUID) then + local playerName, realmName = _UnitName (unitCaster) + if (realmName and realmName ~= "") then + playerName = playerName .. "-" .. realmName + end + _detalhes.parser:add_debuff_uptime (nil, cacheGetTime, playerGUID, playerName, 0x00000417, his_target, _UnitName (target), 0x842, spellid, name, in_or_out) end - - _detalhes.parser:add_debuff_uptime (nil, GetTime(), playerGUID, playerName, 0x00000417, his_target, _UnitName ("raid"..raidIndex.."target"), 0x842, spellid, name, in_or_out) end end end @@ -1325,19 +1331,23 @@ function _detalhes:CatchRaidBuffUptime (in_or_out) local focus_augmentation = {} --> raid groups + local cacheGetTime = GetTime() + for raidIndex = 1, _GetNumGroupMembers() do - for buffIndex = 1, 41 do - local name, _, _, _, _, _, _, unitCaster, _, _, spellid = _UnitAura ("raid"..raidIndex, buffIndex, nil, "HELPFUL") - - if (name and unitCaster == "raid"..raidIndex) then - local playerName, realmName = _UnitName ("raid"..raidIndex) - local playerGUID = _UnitGUID ("raid"..raidIndex) - if (playerGUID) then - if (realmName and realmName ~= "") then - playerName = playerName .. "-" .. realmName - end - - _detalhes.parser:add_buff_uptime (nil, GetTime(), playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) + local RaidIndex = "raid" .. raidIndex + local playerGUID = _UnitGUID (RaidIndex) + + if (playerGUID) then + + local playerName, realmName = _UnitName (RaidIndex) + if (realmName and realmName ~= "") then + playerName = playerName .. "-" .. realmName + end + + for buffIndex = 1, 41 do + local name, _, _, _, _, _, _, unitCaster, _, _, spellid = _UnitAura (RaidIndex, buffIndex, nil, "HELPFUL") + if (name and unitCaster == RaidIndex) then + _detalhes.parser:add_buff_uptime (nil, cacheGetTime, playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) if (in_or_out == "BUFF_UPTIME_IN") then if (_detalhes.PotionList [spellid]) then @@ -1355,18 +1365,20 @@ function _detalhes:CatchRaidBuffUptime (in_or_out) --> player sub group for partyIndex = 1, _GetNumSubgroupMembers() do - for buffIndex = 1, 41 do - local name, _, _, _, _, _, _, unitCaster, _, _, spellid = _UnitAura ("party"..partyIndex, buffIndex, nil, "HELPFUL") - - if (name and unitCaster == "party"..partyIndex) then - local playerName, realmName = _UnitName ("party"..partyIndex) - local playerGUID = _UnitGUID ("party" .. partyIndex) - if (playerGUID) then - if (realmName and realmName ~= "") then - playerName = playerName .. "-" .. realmName - end - - _detalhes.parser:add_buff_uptime (nil, GetTime(), playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) + local PartyIndex = "party" .. partyIndex + local playerGUID = _UnitGUID (PartyIndex) + + if (playerGUID) then + + local playerName, realmName = _UnitName (PartyIndex) + if (realmName and realmName ~= "") then + playerName = playerName .. "-" .. realmName + end + + for buffIndex = 1, 41 do + local name, _, _, _, _, _, _, unitCaster, _, _, spellid = _UnitAura (PartyIndex, buffIndex, nil, "HELPFUL") + if (name and unitCaster == PartyIndex) then + _detalhes.parser:add_buff_uptime (nil, cacheGetTime, playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) if (in_or_out == "BUFF_UPTIME_IN") then if (_detalhes.PotionList [spellid]) then @@ -1396,7 +1408,7 @@ function _detalhes:CatchRaidBuffUptime (in_or_out) end end - _detalhes.parser:add_buff_uptime (nil, GetTime(), playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) + _detalhes.parser:add_buff_uptime (nil, cacheGetTime, playerGUID, playerName, 0x00000514, playerGUID, playerName, 0x00000514, spellid, name, in_or_out) end end end