Change all use of heroclass to use RAID_CLASS_COLORS instead. This can be changed to CUSTOM_CLASS_COLORS later with a color picker for each class, but to support CoA classes need to go back to being colored properly.
Fix remaining lua errors covered by ascension patches Add Addon Skins Add Enhanced Friends List
This commit is contained in:
@@ -0,0 +1,381 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local EFL = E:GetModule("EnhancedFriendsList")
|
||||
|
||||
local function ColorizeSettingName(settingName)
|
||||
return format("|cff1784d1%s|r", settingName)
|
||||
end
|
||||
|
||||
function EFL:InsertOptions()
|
||||
E.Options.args.enhanceFriendsList = {
|
||||
order = 54,
|
||||
type = "group",
|
||||
childGroups = "tab",
|
||||
name = ColorizeSettingName(L["Enhanced Friends List"]),
|
||||
args = {
|
||||
header = {
|
||||
order = 1,
|
||||
type = "header",
|
||||
name = L["Enhanced Friends List"]
|
||||
},
|
||||
general = {
|
||||
order = 2,
|
||||
type = "group",
|
||||
name = L["General"],
|
||||
get = function(info) return E.db.enhanceFriendsList[ info[#info] ] end,
|
||||
set = function(info, value) E.db.enhanceFriendsList[ info[#info] ] = value; EFL:Update(); FriendsList_Update(); FriendsFrameStatusDropDown_Update() end,
|
||||
args = {
|
||||
header = {
|
||||
order = 0,
|
||||
type = "header",
|
||||
name = L["General"],
|
||||
},
|
||||
showBackground = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Show Background"]
|
||||
},
|
||||
showStatusIcon = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Show Status Icon"]
|
||||
},
|
||||
statusIcons = {
|
||||
order = 3,
|
||||
type = "select",
|
||||
name = L["Status Icons Textures"],
|
||||
values = {
|
||||
["Default"] = L["Default"],
|
||||
["Square"] = "Square",
|
||||
["D3"] = "Diablo 3"
|
||||
}
|
||||
},
|
||||
nameFont = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
name = L["Name Font"],
|
||||
guiInline = true,
|
||||
get = function(info) return E.db.enhanceFriendsList[ info[#info] ] end,
|
||||
set = function(info, value) E.db.enhanceFriendsList[ info[#info] ] = value; EFL:Update(); FriendsList_Update() end,
|
||||
args = {
|
||||
nameFont = {
|
||||
order = 1,
|
||||
type = "select", dialogControl = "LSM30_Font",
|
||||
name = L["Font"],
|
||||
values = AceGUIWidgetLSMlists.font
|
||||
},
|
||||
nameFontSize = {
|
||||
order = 2,
|
||||
type = "range",
|
||||
name = FONT_SIZE,
|
||||
min = 6, max = 22, step = 1
|
||||
},
|
||||
nameFontOutline = {
|
||||
order = 3,
|
||||
type = "select",
|
||||
name = L["Font Outline"],
|
||||
desc = L["Set the font outline."],
|
||||
values = {
|
||||
["NONE"] = NONE,
|
||||
["OUTLINE"] = "OUTLINE",
|
||||
["MONOCHROMEOUTLINE"] = "MONOCROMEOUTLINE",
|
||||
["THICKOUTLINE"] = "THICKOUTLINE"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
zoneFont = {
|
||||
order = 5,
|
||||
type = "group",
|
||||
name = L["Zone Font"],
|
||||
guiInline = true,
|
||||
get = function(info) return E.db.enhanceFriendsList[ info[#info] ] end,
|
||||
set = function(info, value) E.db.enhanceFriendsList[ info[#info] ] = value; EFL:Update(); FriendsList_Update() end,
|
||||
args = {
|
||||
zoneFont = {
|
||||
order = 1,
|
||||
type = "select", dialogControl = "LSM30_Font",
|
||||
name = L["Font"],
|
||||
values = AceGUIWidgetLSMlists.font
|
||||
},
|
||||
zoneFontSize = {
|
||||
order = 2,
|
||||
type = "range",
|
||||
name = FONT_SIZE,
|
||||
min = 6, max = 22, step = 1
|
||||
},
|
||||
zoneFontOutline = {
|
||||
order = 3,
|
||||
type = "select",
|
||||
name = L["Font Outline"],
|
||||
desc = L["Set the font outline."],
|
||||
values = {
|
||||
["NONE"] = NONE,
|
||||
["OUTLINE"] = "OUTLINE",
|
||||
["MONOCHROMEOUTLINE"] = "MONOCROMEOUTLINE",
|
||||
["THICKOUTLINE"] = "THICKOUTLINE"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
Online = {
|
||||
order = 3,
|
||||
type = "group",
|
||||
name = L["Online Friends"],
|
||||
get = function(info) return E.db.enhanceFriendsList.Online[ info[#info] ] end,
|
||||
set = function(info, value) E.db.enhanceFriendsList.Online[ info[#info] ] = value; EFL:Update(); FriendsList_Update() end,
|
||||
args = {
|
||||
header = {
|
||||
order = 0,
|
||||
type = "header",
|
||||
name = L["Online Friends"]
|
||||
},
|
||||
name = {
|
||||
order = 1,
|
||||
type = "group",
|
||||
name = NAME,
|
||||
guiInline = true,
|
||||
args = {
|
||||
enhancedName = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Enhanced Name"]
|
||||
},
|
||||
colorizeNameOnly = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Colorize Name Only"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.enhancedName end
|
||||
}
|
||||
}
|
||||
},
|
||||
level = {
|
||||
order = 2,
|
||||
type = "group",
|
||||
name = LEVEL,
|
||||
guiInline = true,
|
||||
args = {
|
||||
level = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Show"]
|
||||
},
|
||||
levelColor = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Level Range Color"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.level end
|
||||
},
|
||||
levelText = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Level Text"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.level end
|
||||
},
|
||||
shortLevel = {
|
||||
order = 4,
|
||||
type = "toggle",
|
||||
name = L["Short Level"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.level or not E.db.enhanceFriendsList.Online.levelText end
|
||||
}
|
||||
}
|
||||
},
|
||||
class = {
|
||||
order = 3,
|
||||
type = "group",
|
||||
name = CLASS,
|
||||
guiInline = true,
|
||||
args = {
|
||||
classText = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Class Text"]
|
||||
},
|
||||
classIcon = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Class Icon"]
|
||||
},
|
||||
classIconStatusColor = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Class Icon Status Color"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.classIcon end
|
||||
}
|
||||
}
|
||||
},
|
||||
zone = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
name = ZONE,
|
||||
guiInline = true,
|
||||
args = {
|
||||
zoneText = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Zone Text"]
|
||||
},
|
||||
spacer = {
|
||||
order = 2,
|
||||
type = "description",
|
||||
name = ""
|
||||
},
|
||||
enhancedZone = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Enhanced Zone"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.zoneText end
|
||||
},
|
||||
enhancedZoneColor = {
|
||||
order = 4,
|
||||
type = "color",
|
||||
name = L["Enhanced Zone Color"],
|
||||
get = function(info)
|
||||
local t = E.db.enhanceFriendsList.Online.enhancedZoneColor
|
||||
local d = P.enhanceFriendsList.Online.enhancedZoneColor
|
||||
return t.r, t.g, t.b, t.a, d.r, d.g, d.b
|
||||
end,
|
||||
set = function(info, r, g, b)
|
||||
local t = E.db.enhanceFriendsList.Online.enhancedZoneColor
|
||||
t.r, t.g, t.b = r, g, b
|
||||
FriendsList_Update()
|
||||
end,
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.zoneText or not E.db.enhanceFriendsList.Online.enhancedZone end
|
||||
},
|
||||
spacer2 = {
|
||||
order = 5,
|
||||
type = "description",
|
||||
name = "",
|
||||
},
|
||||
sameZone = {
|
||||
order = 6,
|
||||
type = "toggle",
|
||||
name = L["Same Zone"],
|
||||
desc = L["Friends that are in the same area as you, have their zone info colorized green."],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.zoneText end
|
||||
},
|
||||
sameZoneColor = {
|
||||
order = 7,
|
||||
type = "color",
|
||||
name = L["Same Zone Color"],
|
||||
get = function(info)
|
||||
local t = E.db.enhanceFriendsList.Online.sameZoneColor
|
||||
local d = P.enhanceFriendsList.Online.sameZoneColor
|
||||
return t.r, t.g, t.b, t.a, d.r, d.g, d.b
|
||||
end,
|
||||
set = function(info, r, g, b)
|
||||
local t = E.db.enhanceFriendsList.Online.sameZoneColor
|
||||
t.r, t.g, t.b = r, g, b
|
||||
FriendsList_Update()
|
||||
end,
|
||||
disabled = function() return not E.db.enhanceFriendsList.Online.zoneText or not E.db.enhanceFriendsList.Online.sameZone end
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
Offline = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
name = L["Offline Friends"],
|
||||
get = function(info) return E.db.enhanceFriendsList.Offline[ info[#info] ] end,
|
||||
set = function(info, value) E.db.enhanceFriendsList.Offline[ info[#info] ] = value; EFL:Update(); FriendsList_Update() end,
|
||||
args = {
|
||||
header = {
|
||||
order = 0,
|
||||
type = "header",
|
||||
name = L["Offline Friends"]
|
||||
},
|
||||
name = {
|
||||
order = 1,
|
||||
type = "group",
|
||||
name = NAME,
|
||||
guiInline = true,
|
||||
args = {
|
||||
enhancedName = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Enhanced Name"]
|
||||
},
|
||||
colorizeNameOnly = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Colorize Name Only"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Offline.enhancedName end
|
||||
}
|
||||
}
|
||||
},
|
||||
level = {
|
||||
order = 2,
|
||||
type = "group",
|
||||
name = LEVEL,
|
||||
guiInline = true,
|
||||
args = {
|
||||
level = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Show"]
|
||||
},
|
||||
levelColor = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Level Range Color"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Offline.level end
|
||||
},
|
||||
levelText = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Level Text"],
|
||||
desc = L["Hides the 'Level' or 'L' text."],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Offline.level end
|
||||
},
|
||||
shortLevel = {
|
||||
order = 4,
|
||||
type = "toggle",
|
||||
name = L["Short Level"],
|
||||
disabled = function() return not E.db.enhanceFriendsList.Offline.level or not E.db.enhanceFriendsList.Offline.levelText end
|
||||
}
|
||||
}
|
||||
},
|
||||
class = {
|
||||
order = 3,
|
||||
type = "group",
|
||||
name = CLASS,
|
||||
guiInline = true,
|
||||
args = {
|
||||
classText = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Class Text"]
|
||||
},
|
||||
classIcon = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Class Icon"]
|
||||
}
|
||||
}
|
||||
},
|
||||
zone = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
name = ZONE,
|
||||
guiInline = true,
|
||||
args = {
|
||||
zoneText = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Zone Text"]
|
||||
},
|
||||
lastSeen = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Last Seen"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
end
|
||||
Reference in New Issue
Block a user