Fixes Enhanced character frame
Update nameplate coloring. Fix world map blips
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local WMB = E:NewModule("Enhanced_WorldMapBlips")
|
||||
|
||||
local _G = _G
|
||||
|
||||
local UnitClass = UnitClass
|
||||
local UnitInParty = UnitInParty
|
||||
|
||||
local BLIP_TEX_COORDS = { 0.5, 0.625, 0, 0.25 }
|
||||
|
||||
local BLIP_RAID_Y_OFFSET = 0.5
|
||||
|
||||
local function OnShowParty(self)
|
||||
local _, class = UnitClass(self.unit)
|
||||
if not class then return end
|
||||
|
||||
if self.class ~= class then
|
||||
self.class = class
|
||||
self.icon:SetTexCoord(unpack(BLIP_TEX_COORDS))
|
||||
end
|
||||
end
|
||||
|
||||
local function OnShowRaid(self)
|
||||
if not self.unit then return end -- players in the battleground not in your raid
|
||||
|
||||
local _, class = UnitClass(self.unit)
|
||||
if not class then return end
|
||||
|
||||
local inParty = UnitInParty(self.unit)
|
||||
|
||||
if self.class ~= class or self.inParty ~= inParty then
|
||||
self.class = class
|
||||
self.inParty = inParty
|
||||
|
||||
if inParty then
|
||||
self.icon:SetTexCoord(unpack(BLIP_TEX_COORDS))
|
||||
else
|
||||
self.icon:SetTexCoord(BLIP_TEX_COORDS[1], BLIP_TEX_COORDS[2], BLIP_TEX_COORDS[3] + BLIP_RAID_Y_OFFSET, BLIP_TEX_COORDS[4] + BLIP_RAID_Y_OFFSET)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function WMB:Initialize()
|
||||
local _, _, _, enabled, _, reason = GetAddOnInfo("Mapster")
|
||||
if reason ~= "MISSED" and enabled then return end
|
||||
|
||||
local frame
|
||||
|
||||
for i = 1, MAX_PARTY_MEMBERS do
|
||||
frame = _G["WorldMapParty"..i]
|
||||
frame.icon:SetTexture("Interface\\Addons\\ElvUI_Enhanced\\Media\\Textures\\PartyRaidBlips")
|
||||
frame:Size(24)
|
||||
frame:HookScript("OnShow", OnShowParty)
|
||||
end
|
||||
|
||||
for i = 1, MAX_RAID_MEMBERS do
|
||||
frame = _G["WorldMapRaid"..i]
|
||||
frame.icon:SetTexture("Interface\\Addons\\ElvUI_Enhanced\\Media\\Textures\\PartyRaidBlips")
|
||||
frame:Size(24)
|
||||
frame:HookScript("OnShow", OnShowRaid)
|
||||
end
|
||||
|
||||
Minimap:SetClassBlipTexture("Interface\\Addons\\ElvUI_Enhanced\\Media\\Textures\\PartyRaidBlips")
|
||||
end
|
||||
|
||||
local function InitializeCallback()
|
||||
WMB:Initialize()
|
||||
end
|
||||
|
||||
E:RegisterModule(WMB:GetName(), InitializeCallback)
|
||||
Reference in New Issue
Block a user