diff --git a/AddOnSkins.toc b/AddOnSkins.toc index 47eca22169ed9c11a09b738186af3f94226e7e92..025d483ba291c22fcc0342c050b8f63cca73d641 100644 --- a/AddOnSkins.toc +++ b/AddOnSkins.toc @@ -1,6 +1,6 @@ ## Interface: 80000 ## Title: |cff1784d1AddOnSkins|r -## Version: 4.01 +## Version: 4.02 ## Author: Azilroka, Whiro ## SavedVariables: AddOnSkinsDB, AddOnSkinsDS ## OptionalDeps: ProjectAzilroka, ElvUI, Tukui diff --git a/Core/Options.lua b/Core/Options.lua index 3b1b1e574d7d7d5f23c69d7fee426ebb60924f6e..e72482f4e91036fec079434360b6331c38471147 100644 --- a/Core/Options.lua +++ b/Core/Options.lua @@ -471,8 +471,8 @@ local Changelog = { }, ['4.02'] = { 'Core: Options', - 'Updated: Island Party Pose', - 'Added: WeakAura', + 'Updated: Island Party Pose, Ace3, Parchment Remover', + 'Added: WeakAuras, Immersion', }, } diff --git a/Skins/Immersion.lua b/Skins/Immersion.lua new file mode 100644 index 0000000000000000000000000000000000000000..22db05e9b271ec97dff767e5aff8fcc2b61db0df --- /dev/null +++ b/Skins/Immersion.lua @@ -0,0 +1,118 @@ +local AS = unpack(AddOnSkins) + +if not AS:CheckAddOn('Immersion') then return end + +function AS:Immersion(event, addon) + AS:SkinBackdropFrame(ImmersionFrame.TalkBox.BackgroundFrame) + AS:CreateShadow(ImmersionFrame.TalkBox.BackgroundFrame.Backdrop) + + ImmersionFrame.TalkBox.BackgroundFrame.Backdrop:SetPoint('TOPLEFT', ImmersionFrame.TalkBox.BackgroundFrame, 'TOPLEFT', 8, -8) + ImmersionFrame.TalkBox.BackgroundFrame.Backdrop:SetPoint('BOTTOMRIGHT', ImmersionFrame.TalkBox.BackgroundFrame, 'BOTTOMRIGHT', -8, 8) + + AS:StripTextures(ImmersionFrame.TalkBox.PortraitFrame) + AS:SkinCloseButton(ImmersionFrame.TalkBox.MainFrame.CloseButton) + + AS:SetTemplate(ImmersionFrame.TalkBox.Hilite) + ImmersionFrame.TalkBox.Hilite:SetBackdropBorderColor(0, 0.44, .87, 1) + ImmersionFrame.TalkBox.Hilite:SetBackdropColor(0, 0, 0, 0) + + ImmersionFrame.TalkBox.MainFrame.Model.ModelShadow:SetDrawLayer("OVERLAY", 7) + ImmersionFrame.TalkBox.MainFrame.Model.ModelShadow:SetPoint("BOTTOMRIGHT", 2, -2) + ImmersionFrame.TalkBox.MainFrame.Model.PortraitBG:Hide() + + AS:SkinBackdropFrame(ImmersionFrame.TalkBox.Elements) + ImmersionFrame.TalkBox.Elements.Backdrop:SetPoint('TOPLEFT', ImmersionFrame.TalkBox.Elements, 'TOPLEFT', 16, -16) + ImmersionFrame.TalkBox.Elements.Backdrop:SetPoint('BOTTOMRIGHT', ImmersionFrame.TalkBox.Elements, 'BOTTOMRIGHT', -16, 16) + AS:CreateShadow(ImmersionFrame.TalkBox.Elements.Backdrop) + + ImmersionFrame.TalkBox.MainFrame.Overlay:Kill() + + AS:SkinStatusBar(ImmersionFrame.TalkBox.ReputationBar) + ImmersionFrame.TalkBox.ReputationBar:ClearAllPoints() + ImmersionFrame.TalkBox.ReputationBar:SetPoint('TOPLEFT', ImmersionFrame.TalkBox, 'BOTTOMLEFT', -20, 10) + ImmersionFrame.TalkBox.ReputationBar.icon:SetAlpha(0) + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.Icon:Hide(); + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.Icon.Show = function() end; + + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.NameTag:Hide(); + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.NameTag.Show = function() end; + + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.TextSheen:Hide(); + ImmersionFrame.TalkBox.Elements.Content.RewardsFrame.ItemHighlight.TextSheen.Show = function() end; + + ImmersionFrame:HookScript('OnEvent', function(self) + for _, Button in ipairs(self.TitleButtons.Buttons) do + if Button and not Button.isSkinned then + Button.isSkinned = true + AS:CreateBackdrop(Button) + Button:SetBackdrop(nil) + Button.Overlay:Hide() + AS:CreateShadow(Button.Backdrop) + Button.Backdrop:SetInside(Button, 4, 4) + AS:SetTemplate(Button.Hilite) + Button.Hilite:SetBackdropBorderColor(0, 0.44, .87, 1) + Button.Hilite:SetBackdropColor(0, 0, 0, 0) + Button.Hilite:SetAllPoints(Button.Backdrop) + Button:SetHighlightTexture('') + end + end + for _, Button in ipairs(self.TalkBox.Elements.Content.RewardsFrame.Buttons) do + if Button and not Button.isSkinned then + Button.isSkinned = true + AS:CreateBackdrop(Button) + AS:SkinTexture(Button.Icon) + Button.NameFrame:Hide() + Button.Border:Hide() + Button.Mask:Hide() + + Button.Backdrop:SetPoint('TOPLEFT', Button.Icon, 'TOPRIGHT', 0, 0) + Button.Backdrop:SetPoint('BOTTOMLEFT', Button.Icon, 'BOTTOMRIGHT', 0, 0) + Button.Backdrop:SetPoint('RIGHT', Button, 'RIGHT', -5, 0) + + Button.Icon.Backdrop = CreateFrame('Frame', nil, Button) + AS:SetTemplate(Button.Icon.Backdrop) + Button.Icon.Backdrop:SetBackdropColor(0, 0, 0, 0) + Button.Icon.Backdrop:SetOutside(Button.Icon) + + Button.AutoCastShine = CreateFrame('Frame', '$parentShine', Button, 'AutoCastShineTemplate') + Button.AutoCastShine:SetParent(Button.Icon.Backdrop) + Button.AutoCastShine:SetAllPoints() + + for _, sparks in pairs(Button.AutoCastShine.sparkles) do + sparks:SetSize(sparks:GetWidth() * 2, sparks:GetHeight() * 2) + end + + Button:SetScript("OnUpdate", function(self) + if ImmersionFrame.TalkBox.Elements.chooseItems and ImmersionFrame.TalkBox.Elements.itemChoice == self:GetID() then + AutoCastShine_AutoCastStart(self.AutoCastShine, 0, .44, .87 ) + self.Backdrop:SetBackdropBorderColor(0, 0.44, .87, 1) + else + self.Backdrop:SetBackdropBorderColor(unpack(AS.BorderColor)) + AutoCastShine_AutoCastStop(self.AutoCastShine) + end + end) + end + end + for _, Button in ipairs(self.TalkBox.Elements.Progress.Buttons) do + if Button and not Button.isSkinned then + Button.isSkinned = true + AS:CreateBackdrop(Button) + AS:SkinTexture(Button.Icon) + Button.NameFrame:Hide() + Button.Border:Hide() + Button.Mask:Hide() + + Button.Backdrop:SetPoint('TOPLEFT', Button.Icon, 'TOPRIGHT', 0, 0) + Button.Backdrop:SetPoint('BOTTOMLEFT', Button.Icon, 'BOTTOMRIGHT', 0, 0) + Button.Backdrop:SetPoint('RIGHT', Button, 'RIGHT', -5, 0) + + Button.Icon.Backdrop = CreateFrame('Frame', nil, Button) + AS:SetTemplate(Button.Icon.Backdrop) + Button.Icon.Backdrop:SetBackdropColor(0, 0, 0, 0) + Button.Icon.Backdrop:SetOutside(Button.Icon) + end + end + end) +end + +AS:RegisterSkin('Immersion', AS.Immersion) diff --git a/Skins/Load_Skins.xml b/Skins/Load_Skins.xml index bb847d1e6582819aa2cf69652685453d6de2b4db..c4656e10d023a70a4d9a9b2c61739b6a059c07c8 100644 --- a/Skins/Load_Skins.xml +++ b/Skins/Load_Skins.xml @@ -60,6 +60,7 @@