From ba033e79b34bd72f48984ba68c48d0f3b0661624 Mon Sep 17 00:00:00 2001 From: Tercio Date: Mon, 8 Aug 2016 20:13:27 -0300 Subject: [PATCH] - priest spec detection. - framework update. --- Libs/DF/cooltip.lua | 20 +++++-- Libs/DF/fw.lua | 127 ++++++++++++++++++++++++++++++++++++++++--- boot.lua | 20 +++---- functions/spells.lua | 28 +++++++--- 4 files changed, 162 insertions(+), 33 deletions(-) diff --git a/Libs/DF/cooltip.lua b/Libs/DF/cooltip.lua index 004a6960..4c209a97 100644 --- a/Libs/DF/cooltip.lua +++ b/Libs/DF/cooltip.lua @@ -156,6 +156,9 @@ function DF:CreateCoolTip() frame1 = CreateFrame ("Frame", "GameCooltipFrame1", UIParent, "DFCooltipMainFrameTemplate") tinsert (UISpecialFrames, "GameCooltipFrame1") DF:CreateFlashAnimation (frame1) + + DF:CreateBorder (frame1) + else frame1 = GameCooltipFrame1 end @@ -174,6 +177,8 @@ function DF:CreateCoolTip() tinsert (UISpecialFrames, "GameCooltipFrame2") DF:CreateFlashAnimation (frame2) frame2:SetClampedToScreen (true) + + DF:CreateBorder (frame2) else frame2 = GameCooltipFrame2 end @@ -602,7 +607,7 @@ function DF:CreateCoolTip() CoolTip:ShowSelectedTexture (frame) end - local OnClickFunctionButtonPrincipal = function (self) + local OnClickFunctionButtonPrincipal = function (self, button) if (CoolTip.IndexesSub [self.index] and CoolTip.IndexesSub [self.index] > 0) then CoolTip:ShowSub (self.index) CoolTip.last_button = self.index @@ -619,18 +624,18 @@ function DF:CreateCoolTip() if (CoolTip.FunctionsTableMain [self.index]) then local parameterTable = CoolTip.ParametersTableMain [self.index] - CoolTip.FunctionsTableMain [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3]) + CoolTip.FunctionsTableMain [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) end end - local OnClickFunctionButtonSecundario = function (self) + local OnClickFunctionButtonSecundario = function (self, button) CoolTip.buttonClicked = true CoolTip:SetSelectedAnchor (frame2, self) if (CoolTip.FunctionsTableSub [self.mainIndex] and CoolTip.FunctionsTableSub [self.mainIndex] [self.index]) then local parameterTable = CoolTip.ParametersTableSub [self.mainIndex] [self.index] - CoolTip.FunctionsTableSub [self.mainIndex] [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3]) + CoolTip.FunctionsTableSub [self.mainIndex] [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) end local botao_p = frame1.Lines [self.mainIndex] @@ -2846,6 +2851,11 @@ function DF:CreateCoolTip() function CoolTip:ShowCooltip (frame, menuType, color) + frame1:SetFrameStrata ("TOOLTIP") + frame2:SetFrameStrata ("TOOLTIP") + frame1:SetParent (UIParent) + frame2:SetParent (UIParent) + CoolTip.had_interaction = false if (frame) then @@ -3066,10 +3076,10 @@ function DF:CreateCoolTip() self:SetOption ("YSpacingMod", -4) self:SetOption ("IgnoreButtonAutoHeight", true) - --self:SetColor (1, 0.5, 0.5, 0.5, 0.5) self:SetColor (1, 0.5, 0.5, 0.5, 0) self:SetBackdrop (1, preset2_backdrop, gray_table, black_table) + self:SetBackdrop (2, preset2_backdrop, gray_table, black_table) end end diff --git a/Libs/DF/fw.lua b/Libs/DF/fw.lua index 280fab98..13e9271d 100644 --- a/Libs/DF/fw.lua +++ b/Libs/DF/fw.lua @@ -1,5 +1,5 @@ -local dversion = 30 +local dversion = 34 local major, minor = "DetailsFramework-1.0", dversion local DF, oldminor = LibStub:NewLibrary (major, minor) @@ -1164,6 +1164,7 @@ function DF:Mixin (object, ...) end ----------------------------- +--> animations function DF:CreateAnimationHub (parent, onPlay, onFinished) local newAnimation = parent:CreateAnimationGroup() @@ -1173,22 +1174,24 @@ function DF:CreateAnimationHub (parent, onPlay, onFinished) return newAnimation end -function DF:CreateAnimation (animation, type, duration, arg1, arg2, arg3, arg4, arg5, arg6, arg7) +function DF:CreateAnimation (animation, type, order, duration, arg1, arg2, arg3, arg4, arg5, arg6, arg7) local anim = animation:CreateAnimation (type) - - anim:SetOrder (animation.NextAnimation) + + anim:SetOrder (order or animation.NextAnimation) anim:SetDuration (duration) - if (type == "Alpha") then + type = string.upper (type) + + if (type == "ALPHA") then anim:SetFromAlpha (arg1) anim:SetToAlpha (arg2) - - elseif (type == "Scale") then + + elseif (type == "SCALE") then anim:SetFromScale (arg1, arg2) anim:SetToScale (arg3, arg4) anim:SetOrigin (arg5 or "center", arg6 or 0, arg7 or 0) --point, x, y - elseif (type == "Rotation") then + elseif (type == "ROTATION") then anim:SetDegrees (arg1) --degree anim:SetOrigin (arg2 or "center", arg3 or 0, arg4 or 0) --point, x, y end @@ -1198,3 +1201,111 @@ function DF:CreateAnimation (animation, type, duration, arg1, arg2, arg3, arg4, end +----------------------------- +--> borders + +local default_border_color1 = .5 +local default_border_color2 = .3 +local default_border_color3 = .1 + +local SetBorderAlpha = function (self, alpha1, alpha2, alpha3) + self.Borders.Alpha1 = alpha1 or self.Borders.Alpha1 + self.Borders.Alpha2 = alpha2 or self.Borders.Alpha2 + self.Borders.Alpha3 = alpha3 or self.Borders.Alpha3 + + for _, texture in ipairs (self.Borders.Layer1) do + texture:SetAlpha (self.Borders.Alpha1) + end + for _, texture in ipairs (self.Borders.Layer2) do + texture:SetAlpha (self.Borders.Alpha2) + end + for _, texture in ipairs (self.Borders.Layer3) do + texture:SetAlpha (self.Borders.Alpha3) + end +end + +function DF:CreateBorder (parent, alpha1, alpha2, alpha3) + + parent.Borders = { + Layer1 = {}, + Layer2 = {}, + Layer3 = {}, + Alpha1 = default_border_color1, + Alpha2 = default_border_color2, + Alpha3 = default_border_color3, + } + + parent.SetBorderAlpha = SetBorderAlpha + + local border1 = parent:CreateTexture (nil, "background") + border1:SetPoint ("topleft", parent, "topleft", -1, 1) + border1:SetPoint ("bottomleft", parent, "bottomleft", -1, -1) + border1:SetColorTexture (0, 0, 0, default_border_color1) + local border2 = parent:CreateTexture (nil, "background") + border2:SetPoint ("topleft", parent, "topleft", -2, 2) + border2:SetPoint ("bottomleft", parent, "bottomleft", -2, -2) + border2:SetColorTexture (0, 0, 0, default_border_color2) + local border3 = parent:CreateTexture (nil, "background") + border3:SetPoint ("topleft", parent, "topleft", -3, 3) + border3:SetPoint ("bottomleft", parent, "bottomleft", -3, -3) + border3:SetColorTexture (0, 0, 0, default_border_color3) + + tinsert (parent.Borders.Layer1, border1) + tinsert (parent.Borders.Layer2, border2) + tinsert (parent.Borders.Layer3, border3) + + local border1 = parent:CreateTexture (nil, "background") + border1:SetPoint ("topleft", parent, "topleft", 0, 1) + border1:SetPoint ("topright", parent, "topright", 1, 1) + border1:SetColorTexture (0, 0, 0, default_border_color1) + local border2 = parent:CreateTexture (nil, "background") + border2:SetPoint ("topleft", parent, "topleft", -1, 2) + border2:SetPoint ("topright", parent, "topright", 2, 2) + border2:SetColorTexture (0, 0, 0, default_border_color2) + local border3 = parent:CreateTexture (nil, "background") + border3:SetPoint ("topleft", parent, "topleft", -2, 3) + border3:SetPoint ("topright", parent, "topright", 3, 3) + border3:SetColorTexture (0, 0, 0, default_border_color3) + + tinsert (parent.Borders.Layer1, border1) + tinsert (parent.Borders.Layer2, border2) + tinsert (parent.Borders.Layer3, border3) + + local border1 = parent:CreateTexture (nil, "background") + border1:SetPoint ("topright", parent, "topright", 1, 0) + border1:SetPoint ("bottomright", parent, "bottomright", 1, -1) + border1:SetColorTexture (0, 0, 0, default_border_color1) + local border2 = parent:CreateTexture (nil, "background") + border2:SetPoint ("topright", parent, "topright", 2, 1) + border2:SetPoint ("bottomright", parent, "bottomright", 2, -2) + border2:SetColorTexture (0, 0, 0, default_border_color2) + local border3 = parent:CreateTexture (nil, "background") + border3:SetPoint ("topright", parent, "topright", 3, 2) + border3:SetPoint ("bottomright", parent, "bottomright", 3, -3) + border3:SetColorTexture (0, 0, 0, default_border_color3) + + tinsert (parent.Borders.Layer1, border1) + tinsert (parent.Borders.Layer2, border2) + tinsert (parent.Borders.Layer3, border3) + + local border1 = parent:CreateTexture (nil, "background") + border1:SetPoint ("bottomleft", parent, "bottomleft", 0, -1) + border1:SetPoint ("bottomright", parent, "bottomright", 0, -1) + border1:SetColorTexture (0, 0, 0, default_border_color1) + local border2 = parent:CreateTexture (nil, "background") + border2:SetPoint ("bottomleft", parent, "bottomleft", -1, -2) + border2:SetPoint ("bottomright", parent, "bottomright", 1, -2) + border2:SetColorTexture (0, 0, 0, default_border_color2) + local border3 = parent:CreateTexture (nil, "background") + border3:SetPoint ("bottomleft", parent, "bottomleft", -2, -3) + border3:SetPoint ("bottomright", parent, "bottomright", 2, -3) + border3:SetColorTexture (0, 0, 0, default_border_color3) + + tinsert (parent.Borders.Layer1, border1) + tinsert (parent.Borders.Layer2, border2) + tinsert (parent.Borders.Layer3, border3) + +end + + +--doo elsee \ No newline at end of file diff --git a/boot.lua b/boot.lua index d4c282f3..e60faa33 100644 --- a/boot.lua +++ b/boot.lua @@ -3,8 +3,8 @@ _ = nil _detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0") - _detalhes.build_counter = 2758 --it's 2755 for release - _detalhes.userversion = "v5.15" + _detalhes.build_counter = 2761 --it's 2755 for release + _detalhes.userversion = "v5.16" _detalhes.realversion = 110 --core version _detalhes.version = _detalhes.userversion .. " (core " .. _detalhes.realversion .. ")" Details = _detalhes @@ -21,21 +21,15 @@ do local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" ) --[[ -|cFFFFFF00v5.14 (|cFFFFCC00August 2, 2016|r|cFFFFFF00)|r:\n\n -|cFFFFFF00-|r Added outline option for bar's Left Text (experimental).\n\n -|cFFFFFF00-|r 'Minimalistic' is once again the default skin for new windows, changed from the 'Safe Beta Skin'.\n\n -|cFFFFFF00-|r Fixed some issues with spec detection and LibGroupInSpecT-1.1 has need enabled back again.\n\n -|cFFFFFF00-|r Fixed an issue with micro displays not loading settings after a logon.\n\n -|cFFFFFF00-|r Another wave of workarounds to prevent the client image cache bug.\n\n -|cFFFFFF00-|r fixed the spam of 'segment not added to overall'.\n\n -|cFFFFFF00-|r stormlash and blessing of might workarouds.\n\n -|cFFFFFF00-|r warrior rampage fix.\n\n -|cFFFFFF00-|r hunter throw axe fix.\n\n +|cFFFFFF00v5.16 (|cFFFFCC00August 8, 2016|r|cFFFFFF00)|r:\n\n +|cFFFFFF00-|r priest spec detection review (thanks Yakumile-Azralon).\n\n --]] -- + + --Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v5.10c (|cFFFFCC00July 22, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Trying a workaround for the wow client's texture cache bug which causes FPS drops, please delete the file 'spec_icons_normal.TGA' from details/image folder.\n\n|cFFFFFF00v5.10b (|cFFFFCC00July 21, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed warlock's Soul Effigy.\n\n|cFFFFFF00v5.10a (|cFFFFCC00July 20, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with Calc Leech plugin.\n\n|cFFFFFF00v5.10 (|cFFFFCC00July 19, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Using .BLP format for images. If you have FPS drops caused by Details!, delete ALL .TGA files inside the folder Details/Images/\n\n|cFFFFFF00v5.8 (|cFFFFCC00July 11, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Big framework update. May have some bugs, please report to us if you find any.\n\n|cFFFFFF00v5.8 (|cFFFFCC00June 27, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Energy and Resources are working properly now.\n\n|cFFFFFF00-|r Added raid information for The Emerald Nightmare.\n\n|cFFFFFF00v5.7 (|cFFFFCC00June 16, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Most of the raid plugins got added on this version.\n\n|cFFFFFF00-|r Plugin 'Damage, The Game!' also got damage goals updated.\n\n|cFFFFFF00v5.5 (|cFFFFCC00June 03, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Default skin is now 'Safe Skin Legion Beta' which helps a little with the disabled texture issue.\n|cFFFFFF00-|r If you're using another skin, you may change at the options panel /details options > Skin Selection.\n|cFFFFFF00-|r You also can disable the class icons at Bars: General > Icon File." - Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v5.15 (|cFFFFCC00August 5, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r fix for an error which happen sometimes during encounter start.\n\n|cFFFFFF00v5.14 (|cFFFFCC00August 2, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added outline option for bar's Left Text (experimental).\n\n|cFFFFFF00-|r 'Minimalistic' is once again the default skin for new windows, changed from the 'Safe Beta Skin'.\n\n|cFFFFFF00-|r Fixed some issues with spec detection and LibGroupInSpecT-1.1 has need enabled back again.\n\n|cFFFFFF00-|r Fixed an issue with micro displays not loading settings after a logon.\n\n|cFFFFFF00-|r Another wave of workarounds to prevent the client image cache bug.\n\n|cFFFFFF00-|r fixed the spam of 'segment not added to overall'.\n\n|cFFFFFF00-|r stormlash and blessing of might workarouds.\n\n|cFFFFFF00-|r warrior rampage fix.\n\n|cFFFFFF00-|r hunter throw axe fix.\n\n|cFFFFFF00v5.10c (|cFFFFCC00July 22, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Trying a workaround for the wow client's texture cache bug which causes FPS drops, please delete the file 'spec_icons_normal.TGA' from details/image folder.\n\n|cFFFFFF00v5.10b (|cFFFFCC00July 21, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed warlock's Soul Effigy.\n\n|cFFFFFF00v5.10a (|cFFFFCC00July 20, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with Calc Leech plugin.\n\n|cFFFFFF00v5.10 (|cFFFFCC00July 19, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Using .BLP format for images. If you have FPS drops caused by Details!, delete ALL .TGA files inside the folder Details/Images/\n\n|cFFFFFF00v5.8 (|cFFFFCC00July 11, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Big framework update. May have some bugs, please report to us if you find any.\n\n|cFFFFFF00v5.8 (|cFFFFCC00June 27, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Energy and Resources are working properly now.\n\n|cFFFFFF00-|r Added raid information for The Emerald Nightmare.\n\n|cFFFFFF00v5.7 (|cFFFFCC00June 16, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Most of the raid plugins got added on this version.\n\n|cFFFFFF00-|r Plugin 'Damage, The Game!' also got damage goals updated.\n\n|cFFFFFF00v5.5 (|cFFFFCC00June 03, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Default skin is now 'Safe Skin Legion Beta' which helps a little with the disabled texture issue.\n|cFFFFFF00-|r If you're using another skin, you may change at the options panel /details options > Skin Selection.\n|cFFFFFF00-|r You also can disable the class icons at Bars: General > Icon File." + Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v5.16 (|cFFFFCC00August 8, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r priest spec detection review (thanks Yakumile-Azralon).\n\n|cFFFFFF00v5.15 (|cFFFFCC00August 5, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r fix for an error which happen sometimes during encounter start.\n\n|cFFFFFF00v5.14 (|cFFFFCC00August 2, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added outline option for bar's Left Text (experimental).\n\n|cFFFFFF00-|r 'Minimalistic' is once again the default skin for new windows, changed from the 'Safe Beta Skin'.\n\n|cFFFFFF00-|r Fixed some issues with spec detection and LibGroupInSpecT-1.1 has need enabled back again.\n\n|cFFFFFF00-|r Fixed an issue with micro displays not loading settings after a logon.\n\n|cFFFFFF00-|r Another wave of workarounds to prevent the client image cache bug.\n\n|cFFFFFF00-|r fixed the spam of 'segment not added to overall'.\n\n|cFFFFFF00-|r stormlash and blessing of might workarouds.\n\n|cFFFFFF00-|r warrior rampage fix.\n\n|cFFFFFF00-|r hunter throw axe fix.\n\n|cFFFFFF00v5.10c (|cFFFFCC00July 22, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Trying a workaround for the wow client's texture cache bug which causes FPS drops, please delete the file 'spec_icons_normal.TGA' from details/image folder.\n\n|cFFFFFF00v5.10b (|cFFFFCC00July 21, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed warlock's Soul Effigy.\n\n|cFFFFFF00v5.10a (|cFFFFCC00July 20, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with Calc Leech plugin.\n\n|cFFFFFF00v5.10 (|cFFFFCC00July 19, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Using .BLP format for images. If you have FPS drops caused by Details!, delete ALL .TGA files inside the folder Details/Images/\n\n|cFFFFFF00v5.8 (|cFFFFCC00July 11, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Big framework update. May have some bugs, please report to us if you find any.\n\n|cFFFFFF00v5.8 (|cFFFFCC00June 27, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Energy and Resources are working properly now.\n\n|cFFFFFF00-|r Added raid information for The Emerald Nightmare.\n\n|cFFFFFF00v5.7 (|cFFFFCC00June 16, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Most of the raid plugins got added on this version.\n\n|cFFFFFF00-|r Plugin 'Damage, The Game!' also got damage goals updated.\n\n|cFFFFFF00v5.5 (|cFFFFCC00June 03, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Default skin is now 'Safe Skin Legion Beta' which helps a little with the disabled texture issue.\n|cFFFFFF00-|r If you're using another skin, you may change at the options panel /details options > Skin Selection.\n|cFFFFFF00-|r You also can disable the class icons at Bars: General > Icon File." Loc ["STRING_DETAILS1"] = "|cffffaeaeDetails!:|r " diff --git a/functions/spells.lua b/functions/spells.lua index 7fdd7b1e..b83075c1 100644 --- a/functions/spells.lua +++ b/functions/spells.lua @@ -235,25 +235,37 @@ do [184575] = 70, --Blade of Justice -- Discipline Priest: + --[109964] = 256, -- Spirit Shell + --[47753] = 256, -- Divine Aegis + --[132157] = 256, -- Holy Nova [152118] = 256, -- Clarity of Will - [109964] = 256, -- Spirit Shell [62618] = 256, -- Power Word: Barrier + [194509] = 256, -- Power Word: Radiance + [129250] = 256, -- Power Word: Solace [33206] = 256, -- Pain Suppression [81751] = 256, -- Atonement [94472] = 256, -- Atonement (crit) - [47753] = 256, -- Divine Aegis - [132157] = 256, -- Holy Nova [47750] = 256, -- Penance + [214621] = 256, -- Schism + [200829] = 256, -- Plea + [47536] = 256, -- Rapture + [204197] = 256, -- Purge the Wicked + -- Holy Priest: [155245] = 257, -- Clarity of Purpose [64843] = 257, -- Divine Hymn [34861] = 257, -- Circle of Healing [32546] = 257, -- Binding Heal - --[596] = 257, -- Prayer of Healing - [126135] = 257, -- Lightwell + [596] = 257, -- Prayer of Healing + [88625] = 257, -- Holy Word: Chastise + [2050] = 257, -- Holy Word: Serenity + [34861] = 257, -- Holy Word: Sanctify + [47788] = 257, -- Guardian Spirit + [132157] = 257, -- Holy Nova + --[126135] = 257, -- Lightwell [139] = 257, -- Renew - --[88625] = 257, -- Holy Word: Chastise + -- Shadow Priest: --[127632] = 258, -- Cascade @@ -264,9 +276,11 @@ do [73510] = 258, -- Mind Spike [78203] = 258, -- Shadowy Apparitions [34914] = 258, -- Vampiric Touch - [2944] = 258, -- Devouring Plague + --[2944] = 258, -- Devouring Plague [8092] = 258, -- Mind Blast [15407] = 258, -- Mind Flay + [228266] = 258, -- Void Bolt + [228260] = 258, --Void Eruption -- Assassination Rogue: [32645] = 259, -- Envenom