init
This commit is contained in:
@@ -0,0 +1,413 @@
|
||||
local E, _, V, P, G = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local C, L = unpack(select(2, ...))
|
||||
local A = E:GetModule("Auras")
|
||||
local RB = E:GetModule("ReminderBuffs")
|
||||
local M = E:GetModule("Minimap")
|
||||
|
||||
local format = string.format
|
||||
|
||||
local function GetAuraOptions(headerName)
|
||||
local auraOptions = {
|
||||
header = {
|
||||
order = 1,
|
||||
type = "header",
|
||||
name = headerName
|
||||
},
|
||||
size = {
|
||||
order = 2,
|
||||
type = "range",
|
||||
name = L["Size"],
|
||||
desc = L["Set the size of the individual auras."],
|
||||
min = 16, max = 60, step = 2
|
||||
},
|
||||
durationFontSize = {
|
||||
order = 3,
|
||||
type = "range",
|
||||
name = L["Duration Font Size"],
|
||||
min = 4, max = 32, step = 1,
|
||||
},
|
||||
countFontSize = {
|
||||
order = 4,
|
||||
type = "range",
|
||||
name = L["Count Font Size"],
|
||||
min = 4, max = 32, step = 1,
|
||||
},
|
||||
growthDirection = {
|
||||
order = 5,
|
||||
type = "select",
|
||||
name = L["Growth Direction"],
|
||||
desc = L["The direction the auras will grow and then the direction they will grow after they reach the wrap after limit."],
|
||||
values = {
|
||||
DOWN_RIGHT = format(L["%s and then %s"], L["Down"], L["Right"]),
|
||||
DOWN_LEFT = format(L["%s and then %s"], L["Down"], L["Left"]),
|
||||
UP_RIGHT = format(L["%s and then %s"], L["Up"], L["Right"]),
|
||||
UP_LEFT = format(L["%s and then %s"], L["Up"], L["Left"]),
|
||||
RIGHT_DOWN = format(L["%s and then %s"], L["Right"], L["Down"]),
|
||||
RIGHT_UP = format(L["%s and then %s"], L["Right"], L["Up"]),
|
||||
LEFT_DOWN = format(L["%s and then %s"], L["Left"], L["Down"]),
|
||||
LEFT_UP = format(L["%s and then %s"], L["Left"], L["Up"])
|
||||
}
|
||||
},
|
||||
wrapAfter = {
|
||||
order = 6,
|
||||
type = "range",
|
||||
name = L["Wrap After"],
|
||||
desc = L["Begin a new row or column after this many auras."],
|
||||
min = 1, max = 32, step = 1
|
||||
},
|
||||
maxWraps = {
|
||||
order = 7,
|
||||
type = "range",
|
||||
name = L["Max Wraps"],
|
||||
desc = L["Limit the number of rows or columns."],
|
||||
min = 1, max = 32, step = 1
|
||||
},
|
||||
horizontalSpacing = {
|
||||
order = 8,
|
||||
type = "range",
|
||||
name = L["Horizontal Spacing"],
|
||||
min = 0, max = 50, step = 1
|
||||
},
|
||||
verticalSpacing = {
|
||||
order = 9,
|
||||
type = "range",
|
||||
name = L["Vertical Spacing"],
|
||||
min = 0, max = 50, step = 1
|
||||
},
|
||||
sortMethod = {
|
||||
order = 10,
|
||||
type = "select",
|
||||
name = L["Sort Method"],
|
||||
desc = L["Defines how the group is sorted."],
|
||||
values = {
|
||||
["INDEX"] = L["Index"],
|
||||
["TIME"] = L["Time"],
|
||||
["NAME"] = L["NAME"]
|
||||
}
|
||||
},
|
||||
sortDir = {
|
||||
order = 11,
|
||||
type = "select",
|
||||
name = L["Sort Direction"],
|
||||
desc = L["Defines the sort order of the selected sort method."],
|
||||
values = {
|
||||
["+"] = L["Ascending"],
|
||||
["-"] = L["Descending"]
|
||||
}
|
||||
},
|
||||
seperateOwn = {
|
||||
order = 12,
|
||||
type = "select",
|
||||
name = L["Seperate"],
|
||||
desc = L["Indicate whether buffs you cast yourself should be separated before or after."],
|
||||
values = {
|
||||
[-1] = L["Other's First"],
|
||||
[0] = L["No Sorting"],
|
||||
[1] = L["Your Auras First"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return auraOptions
|
||||
end
|
||||
|
||||
E.Options.args.auras = {
|
||||
type = "group",
|
||||
name = L["BUFFOPTIONS_LABEL"],
|
||||
childGroups = "tab",
|
||||
get = function(info) return E.db.auras[info[#info]] end,
|
||||
set = function(info, value) E.db.auras[info[#info]] = value A:UpdateHeader(ElvUIPlayerBuffs) A:UpdateHeader(ElvUIPlayerDebuffs) end,
|
||||
args = {
|
||||
intro = {
|
||||
order = 1,
|
||||
type = "description",
|
||||
name = L["AURAS_DESC"]
|
||||
},
|
||||
enable = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Enable"],
|
||||
get = function(info) return E.private.auras[info[#info]] end,
|
||||
set = function(info, value)
|
||||
E.private.auras[info[#info]] = value
|
||||
E:StaticPopup_Show("PRIVATE_RL")
|
||||
end
|
||||
},
|
||||
disableBlizzard = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Disabled Blizzard"],
|
||||
get = function(info) return E.private.auras[info[#info]] end,
|
||||
set = function(info, value)
|
||||
E.private.auras[info[#info]] = value
|
||||
E:StaticPopup_Show("PRIVATE_RL")
|
||||
end
|
||||
},
|
||||
general = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
name = L["General"],
|
||||
args = {
|
||||
header = {
|
||||
order = 1,
|
||||
type = "header",
|
||||
name = L["General"]
|
||||
},
|
||||
fadeThreshold = {
|
||||
order = 2,
|
||||
type = "range",
|
||||
name = L["Fade Threshold"],
|
||||
desc = L["Threshold before the icon will fade out and back in. Set to -1 to disable."],
|
||||
min = -1, max = 30, step = 1
|
||||
},
|
||||
showDuration = {
|
||||
order = 3,
|
||||
type = "toggle",
|
||||
name = L["Duration Enable"]
|
||||
},
|
||||
font = {
|
||||
order = 4,
|
||||
type = "select", dialogControl = "LSM30_Font",
|
||||
name = L["Font"],
|
||||
values = AceGUIWidgetLSMlists.font
|
||||
},
|
||||
fontOutline = {
|
||||
order = 5,
|
||||
type = "select",
|
||||
name = L["Font Outline"],
|
||||
desc = L["Set the font outline."],
|
||||
values = C.Values.FontFlags
|
||||
},
|
||||
timeXOffset = {
|
||||
order = 6,
|
||||
type = "range",
|
||||
name = L["Time xOffset"],
|
||||
min = -60, max = 60, step = 1
|
||||
},
|
||||
timeYOffset = {
|
||||
order = 7,
|
||||
type = "range",
|
||||
name = L["Time yOffset"],
|
||||
min = -60, max = 60, step = 1
|
||||
},
|
||||
countXOffset = {
|
||||
order = 8,
|
||||
type = "range",
|
||||
name = L["Count xOffset"],
|
||||
min = -60, max = 60, step = 1
|
||||
},
|
||||
countYOffset = {
|
||||
order = 9,
|
||||
type = "range",
|
||||
name = L["Count yOffset"],
|
||||
min = -60, max = 60, step = 1
|
||||
},
|
||||
statusBar = {
|
||||
order = 10,
|
||||
type = "group",
|
||||
name = L["Statusbar"],
|
||||
guiInline = true,
|
||||
get = function(info) return E.db.auras[info[#info]] end,
|
||||
set = function(info, value) E.db.auras[info[#info]] = value; A:UpdateHeader(ElvUIPlayerBuffs); A:UpdateHeader(ElvUIPlayerDebuffs) end,
|
||||
args = {
|
||||
barShow = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Enable"],
|
||||
},
|
||||
barNoDuration = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["No Duration"],
|
||||
},
|
||||
barTexture = {
|
||||
order = 3,
|
||||
type = "select", dialogControl = "LSM30_Statusbar",
|
||||
name = L["Texture"],
|
||||
values = _G.AceGUIWidgetLSMlists.statusbar,
|
||||
},
|
||||
barColor = {
|
||||
type = "color",
|
||||
order = 4,
|
||||
name = L.COLOR,
|
||||
hasAlpha = false,
|
||||
disabled = function() return not E.db.auras.barShow or (E.db.auras.barColorGradient or not E.db.auras.barShow) end,
|
||||
get = function(info)
|
||||
local t = E.db.auras.barColor
|
||||
local d = P.auras.barColor
|
||||
return t.r, t.g, t.b, t.a, d.r, d.g, d.b, d.a
|
||||
end,
|
||||
set = function(info, r, g, b)
|
||||
local t = E.db.auras.barColor
|
||||
t.r, t.g, t.b = r, g, b
|
||||
end,
|
||||
},
|
||||
barColorGradient = {
|
||||
order = 5,
|
||||
type = "toggle",
|
||||
name = L["Color by Value"],
|
||||
disabled = function() return not E.db.auras.barShow end,
|
||||
},
|
||||
barWidth = {
|
||||
order = 6,
|
||||
type = "range",
|
||||
name = L["Width"],
|
||||
min = 1, max = 10, step = 1,
|
||||
disabled = function() return not E.db.auras.barShow end,
|
||||
},
|
||||
barHeight = {
|
||||
order = 7,
|
||||
type = "range",
|
||||
name = L["Height"],
|
||||
min = 1, max = 10, step = 1,
|
||||
disabled = function() return not E.db.auras.barShow end,
|
||||
},
|
||||
barSpacing = {
|
||||
order = 8,
|
||||
type = "range",
|
||||
name = L["Spacing"],
|
||||
min = -10, max = 10, step = 1,
|
||||
disabled = function() return not E.db.auras.barShow end,
|
||||
},
|
||||
barPosition = {
|
||||
order = 9,
|
||||
type = "select",
|
||||
name = L["Position"],
|
||||
disabled = function() return not E.db.auras.barShow end,
|
||||
values = {
|
||||
["TOP"] = L["Top"],
|
||||
["BOTTOM"] = L["Bottom"],
|
||||
["LEFT"] = L["Left"],
|
||||
["RIGHT"] = L["Right"],
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
lbf = {
|
||||
order = 11,
|
||||
type = "group",
|
||||
guiInline = true,
|
||||
name = L["LBF Support"],
|
||||
get = function(info) return E.private.auras.lbf[info[#info]] end,
|
||||
set = function(info, value) E.private.auras.lbf[info[#info]] = value E:StaticPopup_Show("PRIVATE_RL") end,
|
||||
disabled = function() return not E.private.auras.enable end,
|
||||
args = {
|
||||
enable = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Enable"],
|
||||
desc = L["Allow LBF to handle the skinning of this element."]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
buffs = {
|
||||
order = 5,
|
||||
type = "group",
|
||||
name = L["Buffs"],
|
||||
get = function(info) return E.db.auras.buffs[info[#info]] end,
|
||||
set = function(info, value) E.db.auras.buffs[info[#info]] = value A:UpdateHeader(ElvUIPlayerBuffs) end,
|
||||
args = GetAuraOptions(L["Buffs"])
|
||||
},
|
||||
debuffs = {
|
||||
order = 6,
|
||||
type = "group",
|
||||
name = L["Debuffs"],
|
||||
get = function(info) return E.db.auras.debuffs[info[#info]] end,
|
||||
set = function(info, value) E.db.auras.debuffs[info[#info]] = value A:UpdateHeader(ElvUIPlayerDebuffs) end,
|
||||
args = GetAuraOptions(L["Debuffs"])
|
||||
},
|
||||
reminder = {
|
||||
order = 7,
|
||||
type = "group",
|
||||
name = L["Reminder"],
|
||||
get = function(info) return E.db.general.reminder[info[#info]] end,
|
||||
set = function(info, value) E.db.general.reminder[info[#info]] = value RB:UpdateSettings() end,
|
||||
disabled = function() return not E.private.general.minimap.enable end,
|
||||
args = {
|
||||
header = {
|
||||
order = 1,
|
||||
type = "header",
|
||||
name = L["Reminder"]
|
||||
},
|
||||
enable = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Enable"],
|
||||
desc = L["Display reminder bar on the minimap."],
|
||||
set = function(info, value) E.db.general.reminder[info[#info]] = value M:UpdateSettings() end
|
||||
},
|
||||
generalGroup = {
|
||||
order = 3,
|
||||
type = "group",
|
||||
guiInline = true,
|
||||
name = L["General"],
|
||||
disabled = function() return not E.db.general.reminder.enable end,
|
||||
args = {
|
||||
durations = {
|
||||
order = 1,
|
||||
type = "toggle",
|
||||
name = L["Remaining Time"]
|
||||
},
|
||||
reverse = {
|
||||
order = 2,
|
||||
type = "toggle",
|
||||
name = L["Reverse Style"],
|
||||
desc = L["When enabled active buff icons will light up instead of becoming darker, while inactive buff icons will become darker instead of being lit up."]
|
||||
},
|
||||
position = {
|
||||
order = 3,
|
||||
type = "select",
|
||||
name = L["Position"],
|
||||
set = function(info, value) E.db.general.reminder[info[#info]] = value RB:UpdatePosition() end,
|
||||
values = {
|
||||
["LEFT"] = L["Left"],
|
||||
["RIGHT"] = L["Right"]
|
||||
}
|
||||
},
|
||||
classtype = {
|
||||
order = 4,
|
||||
type = "select",
|
||||
name = L["Class Type"],
|
||||
get = function(info) return E.private.general.reminder[info[#info]] end,
|
||||
set = function(info, value) E.private.general.reminder[info[#info]] = value RB:UpdateSettings() end,
|
||||
values = {
|
||||
["Caster"] = L["Caster"],
|
||||
["Attack"] = L["Attack"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
fontGroup = {
|
||||
order = 4,
|
||||
type = "group",
|
||||
guiInline = true,
|
||||
name = L["Font"],
|
||||
disabled = function() return not E.db.general.reminder.enable or not E.db.general.reminder.durations end,
|
||||
args = {
|
||||
font = {
|
||||
order = 1,
|
||||
type = "select", dialogControl = "LSM30_Font",
|
||||
name = L["Font"],
|
||||
values = AceGUIWidgetLSMlists.font
|
||||
},
|
||||
fontSize = {
|
||||
order = 2,
|
||||
type = "range",
|
||||
name = L["FONT_SIZE"],
|
||||
min = 6, max = 22, step = 1
|
||||
},
|
||||
fontOutline = {
|
||||
order = 3,
|
||||
type = "select",
|
||||
name = L["Font Outline"],
|
||||
desc = L["Set the font outline."],
|
||||
values = C.Values.FontFlags
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user