8edf2d7f8a
* ElvUI/NamePlates: initial nameplate conversions * More nameplate work * Modules/Cooldowns: various CD fixes, nameplates cant show 'swipe' texture * ElvUI/NamePlates: final nameplate polish * Modules/Misc: add space before interrupted announcement
624 lines
19 KiB
Lua
624 lines
19 KiB
Lua
local E, _, V, P, G = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
|
local C, L = unpack(select(2, ...))
|
|
local WM = E:GetModule("WorldMap")
|
|
local MM = E:GetModule("Minimap")
|
|
local AB = E:GetModule("ActionBars")
|
|
local MMk = E:GetModule("MapMarkers")
|
|
|
|
E.Options.args.maps = {
|
|
type = "group",
|
|
name = L["Maps"],
|
|
childGroups = "tab",
|
|
args = {
|
|
worldMap = {
|
|
order = 1,
|
|
type = "group",
|
|
name = L["WORLD_MAP"],
|
|
args = {
|
|
header = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["WORLD_MAP"]
|
|
},
|
|
enable = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["Enable"],
|
|
get = function(info) return E.private.worldmap[info[#info]] end,
|
|
set = function(info, value) E.private.worldmap[info[#info]] = value; E:StaticPopup_Show("PRIVATE_RL") end
|
|
},
|
|
generalGroup = {
|
|
order = 3,
|
|
type = "group",
|
|
name = L["General"],
|
|
guiInline = true,
|
|
args = {
|
|
smallerWorldMap = {
|
|
order = 1,
|
|
type = "toggle",
|
|
name = L["Smaller World Map"],
|
|
desc = L["Make the world map smaller."],
|
|
get = function(info) return E.global.general.smallerWorldMap end,
|
|
set = function(info, value) E.global.general.smallerWorldMap = value E:StaticPopup_Show("GLOBAL_RL") end,
|
|
disabled = function() return not WM.Initialized end
|
|
},
|
|
fadeMapWhenMoving = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["MAP_FADE_TEXT"],
|
|
get = function(info) return E.global.general.fadeMapWhenMoving end,
|
|
set = function(info, value) E.global.general.fadeMapWhenMoving = value WM:UpdateMapAlpha() end
|
|
},
|
|
mapAlphaWhenMoving = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Map Opacity When Moving"],
|
|
isPercent = true,
|
|
min = 0, max = 1, step = 0.01,
|
|
get = function(info) return E.global.general.mapAlphaWhenMoving end,
|
|
set = function(info, value) E.global.general.mapAlphaWhenMoving = value WM:UpdateMapAlpha() end,
|
|
disabled = function() return not E.global.general.fadeMapWhenMoving end
|
|
}
|
|
}
|
|
},
|
|
spacer = {
|
|
order = 4,
|
|
type = "description",
|
|
name = "\n"
|
|
},
|
|
coordinatesGroup = {
|
|
order = 5,
|
|
type = "group",
|
|
name = L["World Map Coordinates"],
|
|
guiInline = true,
|
|
disabled = function() return not WM.Initialized end,
|
|
args = {
|
|
enable = {
|
|
order = 1,
|
|
type = "toggle",
|
|
name = L["Enable"],
|
|
desc = L["Puts coordinates on the world map."],
|
|
get = function(info) return E.global.general.WorldMapCoordinates.enable end,
|
|
set = function(info, value) E.global.general.WorldMapCoordinates.enable = value E:StaticPopup_Show("GLOBAL_RL") end
|
|
},
|
|
spacer = {
|
|
order = 2,
|
|
type = "description",
|
|
name = " "
|
|
},
|
|
position = {
|
|
order = 3,
|
|
type = "select",
|
|
name = L["Position"],
|
|
get = function(info) return E.global.general.WorldMapCoordinates.position end,
|
|
set = function(info, value) E.global.general.WorldMapCoordinates.position = value WM:PositionCoords() end,
|
|
disabled = function() return not E.global.general.WorldMapCoordinates.enable end,
|
|
values = {
|
|
["TOP"] = "TOP",
|
|
["TOPLEFT"] = "TOPLEFT",
|
|
["TOPRIGHT"] = "TOPRIGHT",
|
|
["BOTTOM"] = "BOTTOM",
|
|
["BOTTOMLEFT"] = "BOTTOMLEFT",
|
|
["BOTTOMRIGHT"] = "BOTTOMRIGHT"
|
|
}
|
|
},
|
|
xOffset = {
|
|
order = 4,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
get = function(info) return E.global.general.WorldMapCoordinates.xOffset end,
|
|
set = function(info, value) E.global.general.WorldMapCoordinates.xOffset = value WM:PositionCoords() end,
|
|
disabled = function() return not E.global.general.WorldMapCoordinates.enable end,
|
|
min = -200, max = 200, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
get = function(info) return E.global.general.WorldMapCoordinates.yOffset end,
|
|
set = function(info, value) E.global.general.WorldMapCoordinates.yOffset = value WM:PositionCoords() end,
|
|
disabled = function() return not E.global.general.WorldMapCoordinates.enable end,
|
|
min = -200, max = 200, step = 1
|
|
}
|
|
}
|
|
},
|
|
spacer2 = {
|
|
order = 6,
|
|
type = "description",
|
|
name = "\n"
|
|
},
|
|
mapMarkersGroup = {
|
|
order = 7,
|
|
type = "group",
|
|
name = L["Map Markers"],
|
|
guiInline = true,
|
|
disabled = function() return not WM.Initialized end,
|
|
args = {
|
|
enable = {
|
|
order = 1,
|
|
type = "toggle",
|
|
name = L["Enable"],
|
|
desc = L["Allows Map Markers to be created by middle clicking (Mouse3) on the world map.\nMarkers are automatically shared with raid members."],
|
|
get = function(info) return E.db.general.mapMarkers[info[#info]] end,
|
|
set = function(info, value) E.db.general.mapMarkers[info[#info]] = value E:StaticPopup_Show("PRIVATE_RL") end
|
|
},
|
|
showRaidMarkers = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["Receive from Raid Members"],
|
|
desc = L["Allows Raid Members to send you Map Markers"],
|
|
get = function(info) return E.db.general.mapMarkers[info[#info]] end,
|
|
set = function(info, value) E.db.general.mapMarkers[info[#info]] = value E:StaticPopup_Show("PRIVATE_RL") end,
|
|
disabled = function() return not E.db.general.mapMarkers.enable end,
|
|
},
|
|
iconSize = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Icon Size"],
|
|
desc = L["Set the size of the map markers"],
|
|
min = 15, max = 50, step = 1,
|
|
get = function(info) return E.db.general.mapMarkers[info[#info]] end,
|
|
set = function(info, value) E.db.general.mapMarkers[info[#info]] = value MMk:ResizeAll() end,
|
|
disabled = function() return not E.db.general.mapMarkers.enable end,
|
|
},
|
|
}
|
|
}
|
|
}
|
|
},
|
|
minimap = {
|
|
order = 2,
|
|
type = "group",
|
|
name = L["MINIMAP_LABEL"],
|
|
get = function(info) return E.db.general.minimap[info[#info]] end,
|
|
childGroups = "tab",
|
|
args = {
|
|
minimapHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["MINIMAP_LABEL"]
|
|
},
|
|
generalGroup = {
|
|
order = 2,
|
|
type = "group",
|
|
name = L["General"],
|
|
guiInline = true,
|
|
args = {
|
|
enable = {
|
|
order = 1,
|
|
type = "toggle",
|
|
name = L["Enable"],
|
|
desc = L["Enable/Disable the minimap. |cffFF0000Warning: This will prevent you from seeing the consolidated buffs bar, and prevent you from seeing the minimap datatexts.|r"],
|
|
get = function(info) return E.private.general.minimap[info[#info]] end,
|
|
set = function(info, value) E.private.general.minimap[info[#info]] = value E:StaticPopup_Show("PRIVATE_RL") end
|
|
},
|
|
size = {
|
|
order = 2,
|
|
type = "range",
|
|
name = L["Size"],
|
|
desc = L["Adjust the size of the minimap."],
|
|
min = 120, max = 250, step = 1,
|
|
get = function(info) return E.db.general.minimap[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end
|
|
}
|
|
}
|
|
},
|
|
locationTextGroup = {
|
|
order = 3,
|
|
type = "group",
|
|
name = L["Location Text"],
|
|
args = {
|
|
locationHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["Location Text"]
|
|
},
|
|
locationText = {
|
|
order = 2,
|
|
type = "select",
|
|
name = L["Location Text"],
|
|
desc = L["Change settings for the display of the location text that is on the minimap."],
|
|
get = function(info) return E.db.general.minimap.locationText end,
|
|
set = function(info, value) E.db.general.minimap.locationText = value MM:UpdateSettings() MM:Update_ZoneText() end,
|
|
values = {
|
|
["MOUSEOVER"] = L["Minimap Mouseover"],
|
|
["SHOW"] = L["Always Display"],
|
|
["HIDE"] = L["HIDE"]
|
|
},
|
|
disabled = function() return not E.private.general.minimap.enable end
|
|
},
|
|
spacer = {
|
|
order = 3,
|
|
type = "description",
|
|
name = "\n"
|
|
},
|
|
locationFont = {
|
|
order = 4,
|
|
type = "select",
|
|
dialogControl = "LSM30_Font",
|
|
name = L["Font"],
|
|
values = AceGUIWidgetLSMlists.font,
|
|
set = function(info, value) E.db.general.minimap.locationFont = value MM:Update_ZoneText() end,
|
|
disabled = function() return not E.private.general.minimap.enable end
|
|
},
|
|
locationFontSize = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["FONT_SIZE"],
|
|
min = 6, max = 36, step = 1,
|
|
set = function(info, value) E.db.general.minimap.locationFontSize = value MM:Update_ZoneText() end,
|
|
disabled = function() return not E.private.general.minimap.enable end
|
|
},
|
|
locationFontOutline = {
|
|
order = 6,
|
|
type = "select",
|
|
name = L["Font Outline"],
|
|
set = function(info, value) E.db.general.minimap.locationFontOutline = value MM:Update_ZoneText() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
values = C.Values.FontFlags
|
|
}
|
|
}
|
|
},
|
|
zoomResetGroup = {
|
|
order = 4,
|
|
type = "group",
|
|
name = L["Reset Zoom"],
|
|
args = {
|
|
zoomResetHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["Reset Zoom"]
|
|
},
|
|
enableZoomReset = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["Reset Zoom"],
|
|
get = function(info) return E.db.general.minimap.resetZoom.enable end,
|
|
set = function(info, value) E.db.general.minimap.resetZoom.enable = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end
|
|
},
|
|
zoomResetTime = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Seconds"],
|
|
min = 1, max = 15, step = 1,
|
|
get = function(info) return E.db.general.minimap.resetZoom.time end,
|
|
set = function(info, value) E.db.general.minimap.resetZoom.time = value MM:UpdateSettings() end,
|
|
disabled = function() return (not E.db.general.minimap.resetZoom.enable or not E.private.general.minimap.enable) end
|
|
}
|
|
}
|
|
},
|
|
icons = {
|
|
order = 5,
|
|
type = "group",
|
|
name = L["Buttons"],
|
|
args = {
|
|
header = {
|
|
order = 0,
|
|
type = "header",
|
|
name = L["Buttons"]
|
|
},
|
|
calendar = {
|
|
order = 1,
|
|
type = "group",
|
|
name = L["Calendar"],
|
|
get = function(info) return E.db.general.minimap.icons.calendar[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.calendar[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
calendarHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["Calendar"]
|
|
},
|
|
hideCalendar = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["HIDE"],
|
|
get = function(info) return E.private.general.minimap.hideCalendar end,
|
|
set = function(info, value) E.private.general.minimap.hideCalendar = value MM:UpdateSettings() end,
|
|
width = "full"
|
|
},
|
|
spacer = {
|
|
order = 3,
|
|
type = "description",
|
|
name = "",
|
|
width = "full"
|
|
},
|
|
position = {
|
|
order = 4,
|
|
type = "select",
|
|
name = L["Position"],
|
|
disabled = function() return E.private.general.minimap.hideCalendar end,
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05,
|
|
disabled = function() return E.private.general.minimap.hideCalendar end
|
|
},
|
|
xOffset = {
|
|
order = 6,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1,
|
|
disabled = function() return E.private.general.minimap.hideCalendar end
|
|
},
|
|
yOffset = {
|
|
order = 7,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1,
|
|
disabled = function() return E.private.general.minimap.hideCalendar end
|
|
}
|
|
}
|
|
},
|
|
mail = {
|
|
order = 3,
|
|
type = "group",
|
|
name = L["MAIL_LABEL"],
|
|
get = function(info) return E.db.general.minimap.icons.mail[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.mail[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
mailHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["MAIL_LABEL"]
|
|
},
|
|
position = {
|
|
order = 2,
|
|
type = "select",
|
|
name = L["Position"],
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05
|
|
},
|
|
xOffset = {
|
|
order = 4,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
}
|
|
}
|
|
},
|
|
lfgEye = {
|
|
order = 4,
|
|
type = "group",
|
|
name = L["LFG Queue"],
|
|
get = function(info) return E.db.general.minimap.icons.lfgEye[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.lfgEye[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
lfgEyeHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["LFG Queue"]
|
|
},
|
|
position = {
|
|
order = 2,
|
|
type = "select",
|
|
name = L["Position"],
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05
|
|
},
|
|
xOffset = {
|
|
order = 4,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
}
|
|
}
|
|
},
|
|
battlefield = {
|
|
order = 5,
|
|
type = "group",
|
|
name = L["PvP Queue"],
|
|
get = function(info) return E.db.general.minimap.icons.battlefield[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.battlefield[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
battlefieldHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["PvP Queue"]
|
|
},
|
|
position = {
|
|
order = 2,
|
|
type = "select",
|
|
name = L["Position"],
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05
|
|
},
|
|
xOffset = {
|
|
order = 4,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
}
|
|
}
|
|
},
|
|
difficulty = {
|
|
order = 6,
|
|
type = "group",
|
|
name = L["Instance Difficulty"],
|
|
get = function(info) return E.db.general.minimap.icons.difficulty[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.difficulty[info[#info]] = value MM:UpdateSettings() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
difficultyHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["Instance Difficulty"]
|
|
},
|
|
position = {
|
|
order = 2,
|
|
type = "select",
|
|
name = L["Position"],
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 3,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05
|
|
},
|
|
xOffset = {
|
|
order = 4,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
}
|
|
}
|
|
},
|
|
vehicleLeave = {
|
|
order = 7,
|
|
type = "group",
|
|
name = L["LEAVE_VEHICLE"],
|
|
get = function(info) return E.db.general.minimap.icons.vehicleLeave[info[#info]] end,
|
|
set = function(info, value) E.db.general.minimap.icons.vehicleLeave[info[#info]] = value AB:UpdateVehicleLeave() end,
|
|
disabled = function() return not E.private.general.minimap.enable end,
|
|
args = {
|
|
vehicleLeaveHeader = {
|
|
order = 1,
|
|
type = "header",
|
|
name = L["LEAVE_VEHICLE"]
|
|
},
|
|
hide = {
|
|
order = 2,
|
|
type = "toggle",
|
|
name = L["HIDE"]
|
|
},
|
|
spacer = {
|
|
order = 3,
|
|
type = "description",
|
|
name = "",
|
|
width = "full"
|
|
},
|
|
position = {
|
|
order = 4,
|
|
type = "select",
|
|
name = L["Position"],
|
|
values = {
|
|
["LEFT"] = L["Left"],
|
|
["RIGHT"] = L["Right"],
|
|
["TOP"] = L["Top"],
|
|
["BOTTOM"] = L["Bottom"],
|
|
["TOPLEFT"] = L["Top Left"],
|
|
["TOPRIGHT"] = L["Top Right"],
|
|
["BOTTOMLEFT"] = L["Bottom Left"],
|
|
["BOTTOMRIGHT"] = L["Bottom Right"]
|
|
}
|
|
},
|
|
scale = {
|
|
order = 5,
|
|
type = "range",
|
|
name = L["Scale"],
|
|
min = 0.5, max = 2, step = 0.05,
|
|
},
|
|
xOffset = {
|
|
order = 6,
|
|
type = "range",
|
|
name = L["X-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
},
|
|
yOffset = {
|
|
order = 7,
|
|
type = "range",
|
|
name = L["Y-Offset"],
|
|
min = -50, max = 50, step = 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|