From b4a729f8320869d1a1b4b3059e6a6e25075f4fda Mon Sep 17 00:00:00 2001 From: Richard Kuhnt Date: Sun, 26 Apr 2026 23:48:26 +0200 Subject: [PATCH 1/2] Add layout auto switch for TBC raid10 and raid25 Also adds battleground15 and battleground40 --- Defaults/Layout_Defaults_TBC.lua | 495 ++++++++++++++++++ ...anilla.lua => Layout_Defaults_Vanilla.lua} | 0 Defaults/LoadDefaults_TBC.xml | 2 +- Defaults/LoadDefaults_Vanilla.xml | 2 +- Modules/Layouts/Layouts.lua | 24 +- 5 files changed, 509 insertions(+), 14 deletions(-) create mode 100644 Defaults/Layout_Defaults_TBC.lua rename Defaults/{Layout_Defaults_TBC_Vanilla.lua => Layout_Defaults_Vanilla.lua} (100%) diff --git a/Defaults/Layout_Defaults_TBC.lua b/Defaults/Layout_Defaults_TBC.lua new file mode 100644 index 00000000..65276e2d --- /dev/null +++ b/Defaults/Layout_Defaults_TBC.lua @@ -0,0 +1,495 @@ +local addonName, Cell = ... + +-- number of built-in indicators +Cell.defaults.builtIns = 27 + +Cell.defaults.indicatorIndices = { + ["nameText"] = 1, + ["statusText"] = 2, + ["healthText"] = 3, + ["powerText"] = 4, + ["healthThresholds"] = 5, + ["statusIcon"] = 6, + ["roleIcon"] = 7, + ["partyAssignmentIcon"] = 8, + ["leaderIcon"] = 9, + ["combatIcon"] = 10, + ["readyCheckIcon"] = 11, + ["playerRaidIcon"] = 12, + ["targetRaidIcon"] = 13, + ["aggroBlink"] = 14, + ["aggroBar"] = 15, + ["aggroBorder"] = 16, + ["aoeHealing"] = 17, + ["externalCooldowns"] = 18, + ["defensiveCooldowns"] = 19, + ["allCooldowns"] = 20, + ["dispels"] = 21, + ["debuffs"] = 22, + ["raidDebuffs"] = 23, + ["targetedSpells"] = 24, + ["targetCounter"] = 25, + ["actions"] = 26, + ["missingBuffs"] = 27, +} + +Cell.defaults.layout = { + -- ["syncWith"] = "layoutName", + ["main"] = { + ["combineGroups"] = false, + ["sortByRole"] = false, + ["roleOrder"] = {"TANK", "HEALER", "DAMAGER"}, + ["hideSelf"] = false, + ["size"] = {66, 46}, + ["position"] = {}, + ["powerSize"] = 2, + ["orientation"] = "vertical", + ["anchor"] = "TOPLEFT", + ["spacingX"] = 3, + ["spacingY"] = 3, + ["maxColumns"] = 8, + ["unitsPerColumn"] = 5, + ["groupSpacing"] = 0, + }, + ["pet"] = { + ["partyEnabled"] = true, + ["raidEnabled"] = false, + ["sameSizeAsMain"] = true, + ["sameArrangementAsMain"] = true, + ["size"] = {66, 46}, + ["position"] = {}, + ["powerSize"] = 2, + ["orientation"] = "vertical", + ["anchor"] = "TOPLEFT", + ["spacingX"] = 3, + ["spacingY"] = 3, + }, + ["npc"] = { + ["enabled"] = true, + ["separate"] = false, + ["sameSizeAsMain"] = true, + ["sameArrangementAsMain"] = true, + ["size"] = {66, 46}, + ["position"] = {}, + ["powerSize"] = 2, + ["orientation"] = "vertical", + ["anchor"] = "TOPLEFT", + ["spacingX"] = 3, + ["spacingY"] = 3, + }, + ["spotlight"] = { + ["enabled"] = false, + ["hidePlaceholder"] = false, + ["units"] = {}, + ["sameSizeAsMain"] = true, + ["sameArrangementAsMain"] = true, + ["size"] = {66, 46}, + ["position"] = {}, + ["powerSize"] = 2, + ["orientation"] = "vertical", + ["anchor"] = "TOPLEFT", + ["spacingX"] = 3, + ["spacingY"] = 3, + }, + ["barOrientation"] = {"horizontal", false}, + ["groupFilter"] = {true, true, true, true, true, true, true, true}, + ["powerFilters"] = { + ["DRUID"] = {["TANK"] = true, ["DAMAGER"] = true, ["HEALER"] = true}, + ["HUNTER"] = true, + ["MAGE"] = true, + ["PALADIN"] = {["TANK"] = true, ["DAMAGER"] = true, ["HEALER"] = true}, + ["PRIEST"] = {["DAMAGER"] = true, ["HEALER"] = true}, + ["ROGUE"] = true, + ["SHAMAN"] = {["DAMAGER"] = true, ["HEALER"] = true}, + ["WARLOCK"] = true, + ["WARRIOR"] = {["TANK"] = true, ["DAMAGER"] = true}, + ["PET"] = true, + ["VEHICLE"] = true, + ["NPC"] = true, + }, + ["indicators"] = { + { + ["name"] = "Name Text", + ["indicatorName"] = "nameText", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"CENTER", "healthBar", "CENTER", 0, 0}, + ["frameLevel"] = 1, + ["font"] = {"Cell ".._G.DEFAULT, 13, "None", true}, + ["color"] = {"custom_color", {1, 1, 1}}, + ["vehicleNamePosition"] = {"TOP", 0}, + ["textWidth"] = {"percentage", 0.75}, + ["showGroupNumber"] = false, + }, -- 1 + { + ["name"] = "Status Text", + ["indicatorName"] = "statusText", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"BOTTOM", 0, "justify"}, + ["frameLevel"] = 30, + ["font"] = {"Cell ".._G.DEFAULT, 11, "None", true}, + ["showTimer"] = true, + ["showBackground"] = true, + ["colors"] = { + ["AFK"] = {1, 0.19, 0.19, 1}, + ["OFFLINE"] = {1, 0.19, 0.19, 1}, + ["DEAD"] = {1, 0.19, 0.19, 1}, + ["GHOST"] = {1, 0.19, 0.19, 1}, + ["FEIGN"] = {1, 1, 0.12, 1}, + ["DRINKING"] = {0.12, 0.75, 1, 1}, + ["PENDING"] = {1, 1, 0.12, 1}, + ["ACCEPTED"] = {0.12, 1, 0.12, 1}, + ["DECLINED"] = {1, 0.19, 0.19, 1}, + }, + }, -- 2 + { + ["name"] = "Health Text", + ["indicatorName"] = "healthText", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"TOP", "button", "CENTER", 0, -6}, + ["frameLevel"] = 2, + ["font"] = {"Cell ".._G.DEFAULT, 10, "None", true}, + ["format"] = { + ["health1"] = { + ["format"] = "effective_percent", + ["color"] = {"custom_color", {1, 1, 1}}, + ["hideIfEmptyOrFull"] = false, + }, + ["health2"] = { + ["format"] = "none", + ["color"] = {"custom_color", {1, 1, 1}}, + ["hideIfEmptyOrFull"] = false, + ["delimiter"] = " ", + }, + ["shields"] = { + ["format"] = "none", + ["color"] = {"custom_color", {0, 1, 0}}, + ["delimiter"] = "+", + }, + ["healAbsorbs"] = { + ["format"] = "none", + ["color"] = {"custom_color", {1, 0, 0}}, + ["delimiter"] = "-", + }, + }, + }, -- 3 + { + ["name"] = "Power Text", + ["indicatorName"] = "powerText", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"BOTTOMRIGHT", "button", "BOTTOMRIGHT", 0, 3}, + ["frameLevel"] = 2, + ["font"] = {"Cell ".._G.DEFAULT, 10, "None", true}, + ["color"] = {"custom_color", {1, 1, 1}}, + ["format"] = "number", + ["hideIfEmptyOrFull"] = true, + ["filters"] = { + ["DRUID"] = {["TANK"] = true, ["DAMAGER"] = true, ["HEALER"] = true}, + ["HUNTER"] = true, + ["MAGE"] = true, + ["PALADIN"] = {["TANK"] = true, ["DAMAGER"] = true, ["HEALER"] = true}, + ["PRIEST"] = {["DAMAGER"] = true, ["HEALER"] = true}, + ["ROGUE"] = true, + ["SHAMAN"] = {["DAMAGER"] = true, ["HEALER"] = true}, + ["WARLOCK"] = true, + ["WARRIOR"] = {["TANK"] = true, ["DAMAGER"] = true}, + ["PET"] = true, + ["VEHICLE"] = true, + ["NPC"] = true, + }, + }, -- 4 + { + ["name"] = "Health Thresholds", + ["indicatorName"] = "healthThresholds", + ["type"] = "built-in", + ["enabled"] = false, + ["thickness"] = 1, + ["thresholds"] = { + {0.35, {1, 0, 0, 1}}, + }, + }, -- 5 + { + ["name"] = "Status Icon", + ["indicatorName"] = "statusIcon", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"TOP", "button", "TOP", 0, -3}, + ["frameLevel"] = 10, + ["size"] = {18, 18}, + }, -- 6 + { + ["name"] = "Role Icon", + ["indicatorName"] = "roleIcon", + ["type"] = "built-in", + ["enabled"] = true, + ["hideDamager"] = false, + ["position"] = {"TOPLEFT", "button", "TOPLEFT", 0, 0}, + ["size"] = {11, 11}, + ["roleTexture"] = {"default", "Interface\\AddOns\\ElvUI\\Core\\Media\\Textures\\Tank.tga", "Interface\\AddOns\\ElvUI\\Core\\Media\\Textures\\Healer.tga", "Interface\\AddOns\\ElvUI\\Core\\Media\\Textures\\DPS.tga"}, + ["frameLevel"] = 5, + }, -- 7 + { + ["name"] = "Party Assignment Icon", + ["indicatorName"] = "partyAssignmentIcon", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"TOPLEFT", "button", "TOPLEFT", 1, -18}, + ["size"] = {11, 11}, + }, -- 8 + { + ["name"] = "Leader Icon", + ["indicatorName"] = "leaderIcon", + ["type"] = "built-in", + ["enabled"] = true, + ["hideInCombat"] = true, + ["position"] = {"TOPLEFT", "button", "TOPLEFT", 1, -10}, + ["size"] = {11, 11}, + }, -- 9 + { + ["name"] = "Combat Icon", + ["indicatorName"] = "combatIcon", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"BOTTOMRIGHT", "button", "BOTTOMRIGHT", 4, -4}, + ["frameLevel"] = 5, + ["size"] = {16, 16}, + ["onlyEnableNotInCombat"] = true, + }, -- 10 + { + ["name"] = "Ready Check Icon", + ["indicatorName"] = "readyCheckIcon", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"CENTER", "button", "CENTER", 0, 0}, + ["frameLevel"] = 100, + ["size"] = {16, 16}, + }, -- 11 + { + ["name"] = "Raid Icon (player)", + ["indicatorName"] = "playerRaidIcon", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"TOP", "button", "TOP", 0, 3}, + ["frameLevel"] = 5, + ["size"] = {14, 14}, + ["alpha"] = 0.77, + }, -- 12 + { + ["name"] = "Raid Icon (target)", + ["indicatorName"] = "targetRaidIcon", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"TOP", "button", "TOP", -14, 3}, + ["frameLevel"] = 5, + ["size"] = {14, 14}, + ["alpha"] = 0.77, + }, -- 13 + { + ["name"] = "Aggro (blink)", + ["indicatorName"] = "aggroBlink", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"TOPLEFT", "button", "TOPLEFT", 0, 0}, + ["frameLevel"] = 7, + ["size"] = {11, 11}, + }, -- 14 + { + ["name"] = "Aggro (bar)", + ["indicatorName"] = "aggroBar", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"BOTTOMLEFT", "button", "TOPLEFT", 0, -1}, + ["frameLevel"] = 1, + ["size"] = {20, 4}, + }, -- 15 + { + ["name"] = "Aggro (border)", + ["indicatorName"] = "aggroBorder", + ["type"] = "built-in", + ["enabled"] = true, + ["frameLevel"] = 3, + ["thickness"] = 2, + }, -- 16 + { + ["name"] = "AoE Healing", + ["indicatorName"] = "aoeHealing", + ["type"] = "built-in", + ["enabled"] = true, + ["height"] = 10, + ["color"] = {1, 1, 0}, + }, -- 17 + { + ["name"] = "External Cooldowns", + ["indicatorName"] = "externalCooldowns", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"RIGHT", "button", "RIGHT", 2, 5}, + ["frameLevel"] = 10, + ["size"] = {12, 20}, + ["showDuration"] = false, + ["showAnimation"] = true, + ["num"] = 2, + ["orientation"] = "right-to-left", + ["font"] = { + {"Cell ".._G.DEFAULT, 11, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + {"Cell ".._G.DEFAULT, 11, "Outline", false, "BOTTOMRIGHT", 2, -1, {1, 1, 1}}, + }, + ["glowOptions"] = {"None", {0.95, 0.95, 0.32, 1}} + }, -- 18 + { + ["name"] = "Defensive Cooldowns", + ["indicatorName"] = "defensiveCooldowns", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"LEFT", "button", "LEFT", -2, 5}, + ["frameLevel"] = 10, + ["size"] = {12, 20}, + ["showDuration"] = false, + ["showAnimation"] = true, + ["num"] = 2, + ["orientation"] = "left-to-right", + ["font"] = { + {"Cell ".._G.DEFAULT, 11, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + {"Cell ".._G.DEFAULT, 11, "Outline", false, "BOTTOMRIGHT", 2, -1, {1, 1, 1}}, + }, + ["glowOptions"] = {"None", {0.95, 0.95, 0.32, 1}} + }, -- 19 + { + ["name"] = "Externals + Defensives", + ["indicatorName"] = "allCooldowns", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"LEFT", "button", "LEFT", -2, 5}, + ["frameLevel"] = 10, + ["size"] = {12, 20}, + ["showDuration"] = false, + ["showAnimation"] = true, + ["num"] = 2, + ["orientation"] = "left-to-right", + ["font"] = { + {"Cell ".._G.DEFAULT, 11, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + {"Cell ".._G.DEFAULT, 11, "Outline", false, "BOTTOMRIGHT", 2, -1, {1, 1, 1}}, + }, + ["glowOptions"] = {"None", {0.95, 0.95, 0.32, 1}} + }, -- 20 + { + ["name"] = "Dispels", + ["indicatorName"] = "dispels", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"BOTTOMRIGHT", "button", "BOTTOMRIGHT", 0, 4}, + ["frameLevel"] = 15, + ["size"] = {12, 12}, + ["filters"] = { + ["dispellableByMe"] = true, + ["Curse"] = true, + ["Disease"] = true, + ["Magic"] = true, + ["Poison"] = true, + ["Bleed"] = true, + }, + ["highlightType"] = "gradient-half", + ["iconStyle"] = "blizzard", + ["orientation"] = "right-to-left", + }, -- 21 + { + ["name"] = "Debuffs", + ["indicatorName"] = "debuffs", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"BOTTOMLEFT", "button", "BOTTOMLEFT", 1, 4}, + ["frameLevel"] = 5, + ["size"] = {{13, 13}, {17, 17}}, + ["showDuration"] = false, + ["showAnimation"] = true, + ["showTooltip"] = false, + ["enableBlacklistShortcut"] = false, + ["num"] = 3, + ["font"] = { + {"Cell ".._G.DEFAULT, 11, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + {"Cell ".._G.DEFAULT, 11, "Outline", false, "BOTTOMRIGHT", 2, -1, {1, 1, 1}}, + }, + ["dispellableByMe"] = false, + ["orientation"] = "left-to-right", + }, -- 22 + { + ["name"] = "Raid Debuffs", + ["indicatorName"] = "raidDebuffs", + ["type"] = "built-in", + ["enabled"] = true, + ["position"] = {"CENTER", "button", "CENTER", 0, 3}, + ["frameLevel"] = 20, + ["size"] = {22, 22}, + ["border"] = 2, + ["num"] = 1, + ["showDuration"] = true, + ["font"] = { + {"Cell ".._G.DEFAULT, 11, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + {"Cell ".._G.DEFAULT, 11, "Outline", false, "BOTTOMRIGHT", 2, -1, {1, 1, 1}}, + }, + ["onlyShowTopGlow"] = false, + ["orientation"] = "left-to-right", + ["showTooltip"] = false, + }, -- 23 + { + ["name"] = "Targeted Spells", + ["indicatorName"] = "targetedSpells", + ["type"] = "built-in", + ["enabled"] = true, + ["showAllSpells"] = false, + ["position"] = {"TOPLEFT", "button", "TOPLEFT", -4, 4}, + ["frameLevel"] = 50, + ["size"] = {20, 20}, + ["border"] = 2, + ["num"] = 1, + ["font"] = {"Cell ".._G.DEFAULT, 12, "Outline", false, "TOPRIGHT", 2, 1, {1, 1, 1}}, + ["orientation"] = "left-to-right", + }, -- 24 + { + ["name"] = "Target Counter", + ["indicatorName"] = "targetCounter", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"TOP", "button", "TOP", 0, 5}, + ["frameLevel"] = 15, + ["font"] = {"Cell ".._G.DEFAULT, 15, "Outline", false}, + ["color"] = {1, 0.1, 0.1}, + ["filters"] = { + ["outdoor"] = false, + ["pve"] = false, + ["pvp"] = true, + }, + }, -- 25 + { + ["name"] = "Actions", + ["indicatorName"] = "actions", + ["type"] = "built-in", + ["enabled"] = true, + ["speed"] = 1, + }, -- 26 + { + ["name"] = "Missing Buffs", + ["indicatorName"] = "missingBuffs", + ["type"] = "built-in", + ["enabled"] = false, + ["position"] = {"BOTTOMRIGHT", "button", "BOTTOMRIGHT", 0, 4}, + ["frameLevel"] = 10, + ["size"] = {13, 13}, + ["orientation"] = "right-to-left", + }, -- 27 + }, +} + +Cell.defaults.layoutAutoSwitch = { + ["solo"] = "default", + ["party"] = "default", + ["raid_outdoor"] = "default", + ["raid10"] = "default", + ["raid25"] = "default", + ["arena"] = "default", + ["battleground15"] = "default", + ["battleground40"] = "default", +} \ No newline at end of file diff --git a/Defaults/Layout_Defaults_TBC_Vanilla.lua b/Defaults/Layout_Defaults_Vanilla.lua similarity index 100% rename from Defaults/Layout_Defaults_TBC_Vanilla.lua rename to Defaults/Layout_Defaults_Vanilla.lua diff --git a/Defaults/LoadDefaults_TBC.xml b/Defaults/LoadDefaults_TBC.xml index 4d5582a5..5fdfc628 100644 --- a/Defaults/LoadDefaults_TBC.xml +++ b/Defaults/LoadDefaults_TBC.xml @@ -4,6 +4,6 @@