Skip to content

Commit 977fc33

Browse files
committed
13.56
2 parents 15976bf + 95deddb commit 977fc33

32 files changed

+166
-141
lines changed

CHANGELOG.md

+19
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,22 @@
1+
### Version 13.56 [ February 6th 2024 ]
2+
* Style Filter error resolved
3+
* Group Loot frame backdrop fixed
4+
* Wrath: Warrior Charge to CCDebuffs
5+
* Classic SoD: Auras added to Aurawatch and Penance to Castbar Ticks
6+
* Chat Loot tab not being created during Install
7+
* Color Picker Alpha input box behaves better
8+
* Tooltip not showing player names sometimes
9+
* Updated plugin for Show Healers & Tanks on Nameplates
10+
* Timewalking instance type added to Unitframe Fader
11+
* Difficulty IDs updated to include Follower Dungeons
12+
13+
### Version 13.55 [ January 16th 2024 ]
14+
* Darth finally got enough XP for lvl 36 (happy birthday)
15+
* Datatext tooltip for Crest Fragments displays correctly
16+
* Fists of Fury added to Castbar Ticks
17+
* Minimap Menu updated with Icons
18+
* Tank Icon setting works again
19+
120
### Version 13.54 [ December 19th 2023 ]
221
* Raid Utility Countdown button works with other addons
322
* Dropdown for WIM skinned

ElvUI/Classic/Filters/Filters.lua

+47
Original file line numberDiff line numberDiff line change
@@ -593,6 +593,26 @@ G.unitframe.aurafilters.RaidDebuffs = {
593593
},
594594
}
595595

596+
if E.ClassicSOD then
597+
----------------------------------------------------------
598+
-------------------- Blackfathom Deeps -------------------
599+
----------------------------------------------------------
600+
-- Baron Aquanis
601+
G.unitframe.aurafilters.RaidDebuffs.spells[404806] = List(2) -- Depth Charge
602+
-- Ghamoo-ra
603+
G.unitframe.aurafilters.RaidDebuffs.spells[407095] = List(2) -- Crunch Armor
604+
-- Lady Saravess
605+
G.unitframe.aurafilters.RaidDebuffs.spells[407644] = List(2) -- Forked Lightning
606+
G.unitframe.aurafilters.RaidDebuffs.spells[407546] = List(2) -- Freezing Arrow
607+
-- Gelihast
608+
G.unitframe.aurafilters.RaidDebuffs.spells[411959] = List(2) -- Fear
609+
-- Twilight Lord Kelris
610+
G.unitframe.aurafilters.RaidDebuffs.spells[426495] = List(2) -- Shadowy Chains
611+
-- Aku'mai
612+
G.unitframe.aurafilters.RaidDebuffs.spells[427625] = List(2) -- Corrosion
613+
G.unitframe.aurafilters.RaidDebuffs.spells[428482] = List(2) -- Shadow Seep
614+
end
615+
596616
--[[
597617
RAID BUFFS:
598618
Buffs that are provided by NPCs in raid or other PvE content.
@@ -620,6 +640,19 @@ G.unitframe.aurafilters.RaidBuffsElvUI = {
620640
},
621641
}
622642

643+
if E.ClassicSOD then
644+
----------------------------------------------------------
645+
-------------------- Blackfathom Deeps -------------------
646+
----------------------------------------------------------
647+
-- Baron Aquanis
648+
G.unitframe.aurafilters.RaidBuffsElvUI.spells[404373] = List(2) -- Bubble Beam I
649+
G.unitframe.aurafilters.RaidBuffsElvUI.spells[413664] = List(2) -- Bubble Beam II
650+
-- Ghamoo-ra
651+
G.unitframe.aurafilters.RaidBuffsElvUI.spells[406970] = List(2) -- Aqua Shell
652+
-- Twilight Lord Kelris
653+
G.unitframe.aurafilters.RaidBuffsElvUI.spells[426489] = List(2) -- Manifesting Dreams
654+
end
655+
623656
G.unitframe.aurawatch = {
624657
GLOBAL = {},
625658
DRUID = {
@@ -661,6 +694,7 @@ G.unitframe.aurawatch = {
661694
[27681] = Aura(27681, nil, 'TOPRIGHT', {0.2, 0.7, 0.2}, true), -- Prayer of Spirit
662695
[976] = Aura(976, {10957,10958}, 'BOTTOMLEFT', {0.7, 0.7, 0.7}, true), -- Shadow Protection
663696
[27683] = Aura(27683, nil, 'BOTTOMLEFT', {0.7, 0.7, 0.7}, true), -- Prayer of Shadow Protection
697+
[6346] = Aura(6346, nil, 'LEFT', {0.89, 0.45, 0}), -- Fear Ward
664698
[17] = Aura(17, {592,600,3747,6065,6066,10898,10899,10900,10901}, 'BOTTOM', {0.00, 0.00, 1.00}), -- Power Word: Shield
665699
[139] = Aura(139, {6074,6075,6076,6077,6078,10927,10928,10929,25315}, 'BOTTOMRIGHT', {0.33, 0.73, 0.75}), -- Renew
666700
},
@@ -696,6 +730,14 @@ G.unitframe.aurawatch = {
696730
},
697731
}
698732

733+
-- Season of Discovery Runes AuraWatch
734+
if E.ClassicSOD then
735+
G.unitframe.aurawatch.DRUID[408120] = Aura(408120, nil, 'RIGHT', {0.38, 0.19, 0.43}) -- Wild Growth
736+
G.unitframe.aurawatch.MAGE[401417] = Aura(401417, nil, 'RIGHT', {0.38, 0.19, 0.43}) -- Regeneration
737+
G.unitframe.aurawatch.MAGE[412510] = Aura(412510, nil, 'BOTTOMRIGHT', {0.38, 0.19, 0.17}) -- Mass Regeneration
738+
G.unitframe.aurawatch.PRIEST[401877] = Aura(401877, nil, 'RIGHT', {0.00, 0.00, 0.90}) -- Prayer of Mending
739+
end
740+
699741
-- List of spells to display ticks
700742
G.unitframe.ChannelTicks = {
701743
--Druid
@@ -784,6 +826,11 @@ G.unitframe.ChannelTicks = {
784826
[746] = 6, -- Linen Bandage
785827
}
786828

829+
if E.ClassicSOD then
830+
G.unitframe.ChannelTicks[402261] = 3 -- Penance (DPS)
831+
G.unitframe.ChannelTicks[402277] = 3 -- Penance (Healing)
832+
end
833+
787834
-- Spells that chain, second step
788835
G.unitframe.ChainChannelTicks = {}
789836

ElvUI/Classic/Modules/Blizzard/ColorPicker.lua

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ local function UpdateColorTexts(r, g, b, box)
8686
end
8787

8888
-- we want those /255 values
89-
r, g, b = r*255, g*255, b*255
89+
r, g, b = E:Round(r*255), E:Round(g*255), E:Round(b*255)
9090

9191
_G.ColorPPBoxH:SetText(format('%.2x%.2x%.2x', r, g, b))
9292
_G.ColorPPBoxR:SetText(r)

ElvUI/Classic/Modules/Skins/Misc.lua

+2-12
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ local S = E:GetModule('Skins')
33

44
local _G = _G
55
local next, unpack = next, unpack
6-
local pairs, ipairs = pairs, ipairs
6+
local pairs = pairs
77

88
local hooksecurefunc = hooksecurefunc
99
local UnitIsUnit = UnitIsUnit
@@ -104,24 +104,14 @@ function S:BlizzardMiscFrames()
104104
end
105105
end)
106106

107-
local ChatMenus = {
108-
_G.ChatMenu,
109-
_G.EmoteMenu,
110-
_G.LanguageMenu,
111-
_G.VoiceMacroMenu,
112-
}
113-
114-
for _, frame in ipairs(ChatMenus) do
107+
for _, frame in next, { _G.ChatMenu.NineSlice, _G.EmoteMenu.NineSlice, _G.LanguageMenu.NineSlice, _G.VoiceMacroMenu.NineSlice } do
115108
if frame == _G.ChatMenu then
116109
frame:HookScript('OnShow', function(menu) menu:SetTemplate('Transparent', true) menu:SetBackdropColor(unpack(E.media.backdropfadecolor)) menu:ClearAllPoints() menu:Point('BOTTOMLEFT', _G.ChatFrame1, 'TOPLEFT', 0, 30) end)
117110
else
118111
frame:HookScript('OnShow', function(menu) menu:SetTemplate('Transparent', true) menu:SetBackdropColor(unpack(E.media.backdropfadecolor)) end)
119112
end
120113
end
121114

122-
-- Emotes NineSlice
123-
_G.ChatMenu.NineSlice:SetTemplate()
124-
125115
-- reskin popup buttons
126116
for i = 1, 4 do
127117
local StaticPopup = _G['StaticPopup'..i]

ElvUI/Core/Defaults/Profile.lua

+1
Original file line numberDiff line numberDiff line change
@@ -1477,6 +1477,7 @@ local UF_Fader = {
14771477
dynamicflight = false,
14781478
instanceDifficulties = {
14791479
none = false,
1480+
timewalking = false,
14801481
dungeonNormal = false,
14811482
dungeonHeroic = false,
14821483
dungeonMythic = false,

ElvUI/Core/General/API.lua

+3-1
Original file line numberDiff line numberDiff line change
@@ -965,7 +965,9 @@ function E:LoadAPI()
965965
local localized = (x == 3 and female) or male
966966
copy.className = localized
967967

968-
E.SpecInfoBySpecClass[name..' '..localized] = copy
968+
if localized then
969+
E.SpecInfoBySpecClass[name..' '..localized] = copy
970+
end
969971
end
970972
end
971973
end

ElvUI/Core/General/Install.lua

+16-9
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ local PlaySound = PlaySound
1616
local CreateFrame = CreateFrame
1717
local UIFrameFadeOut = UIFrameFadeOut
1818
local ChangeChatColor = ChangeChatColor
19+
local FCF_DockFrame = FCF_DockFrame
1920
local FCF_SetWindowName = FCF_SetWindowName
2021
local FCF_StopDragging = FCF_StopDragging
2122
local FCF_UnDockFrame = FCF_UnDockFrame
2223
local FCF_OpenNewWindow = FCF_OpenNewWindow
24+
local FCF_ResetChatWindow = FCF_ResetChatWindow
2325
local FCF_ResetChatWindows = FCF_ResetChatWindows
2426
local FCF_SetChatWindowFontSize = FCF_SetChatWindowFontSize
2527
local FCF_SavePositionAndDimensions = FCF_SavePositionAndDimensions
@@ -33,7 +35,7 @@ local VoiceTranscriptionFrame_UpdateVisibility = VoiceTranscriptionFrame_UpdateV
3335
local VoiceTranscriptionFrame_UpdateVoiceTab = VoiceTranscriptionFrame_UpdateVoiceTab
3436

3537
local CLASS, CONTINUE, PREVIOUS = CLASS, CONTINUE, PREVIOUS
36-
local LOOT, GENERAL, TRADE = LOOT, GENERAL, TRADE
38+
local VOICE, LOOT, GENERAL, TRADE = VOICE, LOOT, GENERAL, TRADE
3739
local GUILD_EVENT_LOG = GUILD_EVENT_LOG
3840

3941
-- GLOBALS: ElvUIInstallFrame
@@ -67,17 +69,22 @@ local function ToggleChatColorNamesByClassGroup(checked, group)
6769
end
6870

6971
function E:SetupChat(noDisplayMsg)
72+
local chats = _G.CHAT_FRAMES
7073
FCF_ResetChatWindows()
7174

72-
local rightChatFrame = FCF_OpenNewWindow(LOOT)
73-
FCF_UnDockFrame(rightChatFrame)
75+
-- force initialize the tts chat (it doesn't get shown unless you use it)
76+
local voiceChat = _G[chats[3]]
77+
FCF_ResetChatWindow(voiceChat, VOICE)
78+
FCF_DockFrame(voiceChat, 3)
7479

75-
for _, name in next, _G.CHAT_FRAMES do
80+
local rightChat = FCF_OpenNewWindow(LOOT)
81+
FCF_UnDockFrame(rightChat)
82+
83+
for id, name in next, chats do
7684
local frame = _G[name]
77-
local id = frame:GetID()
7885

7986
if E.private.chat.enable then
80-
CH:FCFTab_UpdateColors(CH:GetTab(_G[name]))
87+
CH:FCFTab_UpdateColors(CH:GetTab(frame))
8188
end
8289

8390
if id == 1 then
@@ -109,14 +116,14 @@ function E:SetupChat(noDisplayMsg)
109116

110117
-- keys taken from `ChatTypeGroup` which weren't added above to ChatFrame1
111118
chatGroup = { E.Retail and 'PING' or nil, 'COMBAT_XP_GAIN', 'COMBAT_HONOR_GAIN', 'COMBAT_FACTION_CHANGE', 'SKILL', 'LOOT', 'CURRENCY', 'MONEY' }
112-
ChatFrame_RemoveAllMessageGroups(rightChatFrame)
119+
ChatFrame_RemoveAllMessageGroups(rightChat)
113120
for _, v in next, chatGroup do
114-
ChatFrame_AddMessageGroup(rightChatFrame, v)
121+
ChatFrame_AddMessageGroup(rightChat, v)
115122
end
116123

117124
ChatFrame_AddChannel(_G.ChatFrame1, GENERAL)
118125
ChatFrame_RemoveChannel(_G.ChatFrame1, TRADE)
119-
ChatFrame_AddChannel(rightChatFrame, TRADE)
126+
ChatFrame_AddChannel(rightChat, TRADE)
120127

121128
-- set the chat groups names in class color to enabled for all chat groups which players names appear
122129
chatGroup = { 'SAY', 'EMOTE', 'YELL', 'WHISPER', 'PARTY', 'PARTY_LEADER', 'RAID', 'RAID_LEADER', 'RAID_WARNING', 'INSTANCE_CHAT', 'INSTANCE_CHAT_LEADER', 'GUILD', 'OFFICER', 'ACHIEVEMENT', 'GUILD_ACHIEVEMENT', 'COMMUNITIES_CHANNEL' }

ElvUI/Core/General/Toolkit.lua

+1-65
Original file line numberDiff line numberDiff line change
@@ -50,60 +50,6 @@ local function DisablePixelSnap(frame)
5050
end
5151
end
5252

53-
local function FixStatusBarMinCurPlease(frame, value)
54-
local MIN = frame:GetMinMaxValues()
55-
if MIN and (value <= MIN) then -- gg blizz, idk how you manage this one lol
56-
local style = frame:GetFillStyle()
57-
if style ~= 'STANDARD' and style ~= 'REVERSE' then return end
58-
59-
local width, height = frame:GetSize()
60-
if not width or not height then return end
61-
62-
local texture = frame:GetStatusBarTexture()
63-
if not texture then return end
64-
65-
texture:ClearAllPoints()
66-
67-
local reverse = frame:GetReverseFill()
68-
local orientation = frame:GetOrientation()
69-
if orientation == 'VERTICAL' then
70-
if reverse then
71-
texture:SetPoint('TOPLEFT', 0, 0)
72-
texture:SetPoint('TOPRIGHT', 0, 0)
73-
texture:SetPoint('BOTTOMLEFT', 0, height)
74-
texture:SetPoint('BOTTOMRIGHT', 0, height)
75-
else
76-
texture:SetPoint('TOPLEFT', 0, -height)
77-
texture:SetPoint('TOPRIGHT', 0, -height)
78-
texture:SetPoint('BOTTOMLEFT', 0, 0)
79-
texture:SetPoint('BOTTOMRIGHT', 0, 0)
80-
end
81-
else -- horizontal
82-
if reverse then
83-
texture:SetPoint('TOPLEFT', width, 0)
84-
texture:SetPoint('TOPRIGHT', 0, 0)
85-
texture:SetPoint('BOTTOMLEFT', width, 0)
86-
texture:SetPoint('BOTTOMRIGHT', 0, 0)
87-
else
88-
texture:SetPoint('TOPLEFT', 0, 0)
89-
texture:SetPoint('TOPRIGHT', -width, 0)
90-
texture:SetPoint('BOTTOMLEFT', 0, 0)
91-
texture:SetPoint('BOTTOMRIGHT', -width, 0)
92-
end
93-
end
94-
end
95-
end
96-
97-
local function FixMinCurDuringValue(frame, value)
98-
FixStatusBarMinCurPlease(frame, value)
99-
end
100-
101-
local function FixMinCurDuringTexture(frame)
102-
DisablePixelSnap(frame)
103-
104-
FixStatusBarMinCurPlease(frame, frame:GetValue())
105-
end
106-
10753
local function BackdropFrameLevel(frame, level)
10854
frame:SetFrameLevel(level)
10955

@@ -529,25 +475,15 @@ local function addapi(object)
529475

530476
if not object.DisabledPixelSnap and (mk.SetSnapToPixelGrid or mk.SetStatusBarTexture or mk.SetColorTexture or mk.SetVertexColor or mk.CreateTexture or mk.SetTexCoord or mk.SetTexture) then
531477
if mk.SetSnapToPixelGrid then hooksecurefunc(mk, 'SetSnapToPixelGrid', WatchPixelSnap) end
478+
if mk.SetStatusBarTexture then hooksecurefunc(mk, 'SetStatusBarTexture', DisablePixelSnap) end
532479
if mk.SetColorTexture then hooksecurefunc(mk, 'SetColorTexture', DisablePixelSnap) end
533480
if mk.SetVertexColor then hooksecurefunc(mk, 'SetVertexColor', DisablePixelSnap) end
534481
if mk.CreateTexture then hooksecurefunc(mk, 'CreateTexture', DisablePixelSnap) end
535482
if mk.SetTexCoord then hooksecurefunc(mk, 'SetTexCoord', DisablePixelSnap) end
536483
if mk.SetTexture then hooksecurefunc(mk, 'SetTexture', DisablePixelSnap) end
537484

538-
if not E.Classic and mk.SetStatusBarTexture then
539-
hooksecurefunc(mk, 'SetStatusBarTexture', DisablePixelSnap)
540-
end
541-
542485
mk.DisabledPixelSnap = true
543486
end
544-
545-
if E.Classic and not object.fixTheStatusBarsPlease and mk.SetStatusBarTexture then
546-
hooksecurefunc(mk, 'SetValue', FixMinCurDuringValue)
547-
hooksecurefunc(mk, 'SetStatusBarTexture', FixMinCurDuringTexture)
548-
549-
object.fixTheStatusBarsPlease = true
550-
end
551487
end
552488

553489
local handled = {Frame = true}

ElvUI/Core/Modules/Auras/Auras.lua

+2
Original file line numberDiff line numberDiff line change
@@ -548,6 +548,8 @@ function A:CreateAuraHeader(filter)
548548
end
549549

550550
function A:Initialize()
551+
if E.Classic then return end -- secure headers broken
552+
551553
if E.private.auras.disableBlizzard then
552554
_G.BuffFrame:Kill()
553555

ElvUI/Core/Modules/DataTexts/Difficulty.lua

+1
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ local DiffIDLabel = { -- also has IDs maintained in Nameplate StyleFilters
6464
['PvP'] = { 25, 29, 32, 34, 45 },
6565
['WF'] = { 147 },
6666
['WFH'] = { 149 },
67+
['FD'] = { 205 },
6768
}
6869

6970
local IDTexture = {

ElvUI/Core/Modules/Nameplates/StyleFilter.lua

+5-4
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ local IsPlayerSpell = IsPlayerSpell
2121
local IsResting = IsResting
2222
local IsSpellKnownOrOverridesKnown = IsSpellKnownOrOverridesKnown
2323
local UnitAffectingCombat = UnitAffectingCombat
24-
local UnitAura = UnitAura
2524
local UnitCanAttack = UnitCanAttack
2625
local UnitExists = UnitExists
2726
local UnitGroupRolesAssigned = UnitGroupRolesAssigned
@@ -147,7 +146,9 @@ NP.TriggerConditions = {
147146
[175] = 'legacy10normal',
148147
[176] = 'legacy25normal',
149148
[193] = 'legacy10heroic',
150-
[194] = 'legacy25heroic'
149+
[194] = 'legacy25heroic',
150+
-- follower dungeon
151+
[205] = 'follower'
151152
}
152153
}
153154

@@ -1201,7 +1202,7 @@ function NP:StyleFilterConditionCheck(frame, filter, trigger)
12011202
if frame.Buffs_ and trigger.buffs then
12021203
-- Has Stealable
12031204
if trigger.buffs.hasStealable or trigger.buffs.hasNoStealable then
1204-
local isStealable = NP:StyleFilterDispelCheck(frame, filter)
1205+
local isStealable = NP:StyleFilterDispelCheck(frame, 'HELPFUL')
12051206
if (trigger.buffs.hasStealable and isStealable) or (trigger.buffs.hasNoStealable and not isStealable) then passed = true else return end
12061207
end
12071208

@@ -1218,7 +1219,7 @@ function NP:StyleFilterConditionCheck(frame, filter, trigger)
12181219
if frame.Debuffs_ and trigger.debuffs and trigger.debuffs.names and next(trigger.debuffs.names) then
12191220
-- Has Dispellable
12201221
if trigger.debuffs.hasDispellable or trigger.debuffs.hasNoDispellable then
1221-
local canDispel = NP:StyleFilterDispelCheck(frame, filter)
1222+
local canDispel = NP:StyleFilterDispelCheck(frame, 'HARMFUL')
12221223
if (trigger.debuffs.hasDispellable and canDispel) or (trigger.debuffs.hasNoDispellable and not canDispel) then passed = true else return end
12231224
end
12241225

ElvUI/Core/Modules/Tooltip/Tooltip.lua

+1-5
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ function TT:SetUnitText(tt, unit, isPlayerUnit)
230230

231231
local nameColor = E:ClassColor(class) or PRIEST_COLOR
232232

233-
if TT.db.playerTitles and pvpName then
233+
if TT.db.playerTitles and pvpName and pvpName ~= '' then
234234
name = pvpName
235235
end
236236

@@ -1019,10 +1019,6 @@ function TT:Initialize()
10191019
statusBar:Height(TT.db.healthBar.height)
10201020
statusBar:SetScript('OnValueChanged', nil) -- Do we need to unset this?
10211021

1022-
if E.Classic then
1023-
statusBar:SetMinMaxValues(-0.00001, 1)
1024-
end
1025-
10261022
GameTooltip.StatusBar = statusBar
10271023

10281024
local statusText = statusBar:CreateFontString(nil, 'OVERLAY')

0 commit comments

Comments
 (0)