- Introduced a new module for Personal Auras that allows players to track selected debuffs on themselves in a movable frame. - Implemented functionality to manage tracked debuffs, including adding and removing spells. - Added options for configuring the appearance and behavior of the Personal Auras frame. - Updated the readme to include information about the new Personal Auras feature.
510 lines
26 KiB
Lua
510 lines
26 KiB
Lua
-- Locales/enUS.lua
|
||
-- English (base locale – all keys must be defined here)
|
||
|
||
local L = LibStub("AceLocale-3.0"):NewLocale("HailMaryGuildTools", "enUS", true)
|
||
-- true = this is the default locale; missing keys in other locales fall back here
|
||
|
||
-- ── Addon general ────────────────────────────────────────────
|
||
L["ADDON_TITLE"] = "Hail Mary Guild Tools"
|
||
L["ADDON_SUBTITLE"] = "Interrupt & Raid Cooldown Tracker v1.0"
|
||
L["ADDON_LOADED"] = "|cff00aaffHail Mary Guild Tools|r loaded. /hmgt for options."
|
||
L["FRAMES_LOCKED"] = "Frames locked."
|
||
L["FRAMES_UNLOCKED"] = "Frames unlocked."
|
||
L["DEMO_MODE_ACTIVE"] = "Demo mode active."
|
||
L["TEST_MODE_ACTIVE"] = "Test mode active."
|
||
|
||
-- ── Slash commands ───────────────────────────────────────────
|
||
L["SLASH_HINT"] = "/hmgt – options | /hmgt lock/unlock | /hmgt demo | /hmgt test | /hmgt version | /hmgt debugdump [lines]"
|
||
L["VERSION_MISMATCH_CHAT"] = "Version mismatch with %s: %s"
|
||
L["VERSION_MISMATCH_POPUP"] = "HailMaryGuildTools mismatch with %s.\n%s\nSource: %s"
|
||
L["VERSION_WINDOW_TITLE"] = "HMGT Version Check"
|
||
L["VERSION_WINDOW_MESSAGE"] = "A new version of Hail Mary Guild Tools is available."
|
||
L["VERSION_WINDOW_DETAIL"] = "Detected via %s from %s.\n%s"
|
||
L["VERSION_WINDOW_NO_MISMATCH"] = "No newer HMGT version has been detected in your current group."
|
||
L["VERSION_WINDOW_CURRENT"] = "Current version: %s | Protocol: %s"
|
||
L["VERSION_WINDOW_DEBUG_ONLY"] = "HMGT: /hmgt version is only available while debug mode is enabled."
|
||
L["VERSION_WINDOW_DEVTOOLS_ONLY"] = "HMGT: /hmgt version is only available while developer tools are enabled."
|
||
|
||
-- ── Options: general ─────────────────────────────────────────
|
||
L["OPT_GENERAL"] = "General"
|
||
L["OPT_DESC"] = "Interrupt & Raid Cooldown Tracker for groups and raids.\n\n" ..
|
||
"|cffffff00/hmgt|r – open options\n" ..
|
||
"|cffffff00/hmgt lock|r – lock all frames\n" ..
|
||
"|cffffff00/hmgt unlock|r – unlock all frames\n" ..
|
||
"|cffffff00/hmgt demo|r – demo mode (dummy data)\n" ..
|
||
"|cffffff00/hmgt test|r – test mode (your own spells)\n\n" ..
|
||
"Communication uses AceComm (addon messages). All group members need the addon."
|
||
L["OPT_LOCK_ALL"] = "Lock all frames"
|
||
L["OPT_UNLOCK_ALL"] = "Unlock all frames"
|
||
L["OPT_DEMO_MODE"] = "Demo mode"
|
||
L["OPT_DEMO_MODE_DESC"] = "Show demo data in the trackers"
|
||
L["OPT_TEST_MODE"] = "Test mode"
|
||
L["OPT_TEST_MODE_DESC"] = "Show your own spells in all trackers"
|
||
L["OPT_DEBUG_MODE"] = "Debug mode"
|
||
L["OPT_DEBUG_MODE_DESC"] = "Show debug information for important addon actions in a separate debug console"
|
||
L["OPT_DEBUG_LEVEL"] = "Debug level"
|
||
L["OPT_DEBUG_LEVEL_ERROR"]= "Errors only"
|
||
L["OPT_DEBUG_LEVEL_INFO"] = "Info (tracked CDs)"
|
||
L["OPT_DEBUG_LEVEL_VERBOSE"] = "Verbose (+ power spend)"
|
||
L["OPT_DEBUG_SCOPE"] = "Module filter"
|
||
L["OPT_DEBUG_SCOPE_ALL"] = "All modules"
|
||
L["OPT_DEBUG_OPEN"] = "Open debug console"
|
||
L["OPT_DEBUG_CLEAR"] = "Clear debug log"
|
||
L["OPT_DEBUG_SELECT_ALL"] = "Select all"
|
||
L["DEBUG_WINDOW_TITLE"] = "HMGT Debug Console"
|
||
L["DEBUG_WINDOW_HINT"] = "Mouse wheel scrolls, Ctrl+A selects all, Ctrl+C copies selected text"
|
||
L["OPT_DEVTOOLS_MODE"] = "Developer tools"
|
||
L["OPT_DEVTOOLS_MODE_DESC"] = "Enable the structured developer event console."
|
||
L["OPT_DEVTOOLS_LEVEL"] = "Capture level"
|
||
L["OPT_DEVTOOLS_LEVEL_ERROR"] = "Errors"
|
||
L["OPT_DEVTOOLS_LEVEL_TRACE"] = "Trace"
|
||
L["OPT_DEVTOOLS_SCOPE"] = "Scope filter"
|
||
L["OPT_DEVTOOLS_SCOPE_ALL"] = "All scopes"
|
||
L["OPT_DEVTOOLS_OPEN"] = "Open developer console"
|
||
L["OPT_DEVTOOLS_CLEAR"] = "Clear developer log"
|
||
L["OPT_DEVTOOLS_SELECT_ALL"] = "Select all"
|
||
L["OPT_DEVTOOLS_DISABLED"] = "HMGT: developer tools are not enabled."
|
||
L["DEVTOOLS_WINDOW_TITLE"] = "HMGT Developer Tools"
|
||
L["DEVTOOLS_WINDOW_HINT"] = "Structured developer events for the current session"
|
||
L["OPT_SYNC_REMOTE_CHARGES"] = "Sync remote charges"
|
||
L["OPT_SYNC_REMOTE_CHARGES_DESC"] = "Transmit charge information for cooldowns to group members"
|
||
L["OPT_CHANGELOG"] = "Changelog"
|
||
L["OPT_CHANGELOG_DESC"] = "Recent addon changes"
|
||
L["OPT_CHANGELOG_VERSION"]= "Version"
|
||
L["OPT_CHANGELOG_EMPTY"] = "No changelog entries available."
|
||
L["OPT_PROFILES"] = "Profiles"
|
||
L["OPT_TRACKER"] = "Tracker"
|
||
L["OPT_TRACKERS"] = "Tracker Bars"
|
||
L["OPT_TRACKERS_DESC"] = "Create tracker bars and bind them to one or more spell categories."
|
||
L["OPT_TRACKER_ACTIONS"] = "Tracker actions"
|
||
L["OPT_TRACKER_ACTIONS_DESC"] = "Global actions for all tracker frames."
|
||
L["OPT_TRACKER_NAME"] = "Tracker name"
|
||
L["OPT_TRACKER_CATEGORIES"] = "Categories"
|
||
L["OPT_TRACKER_CATEGORIES_DESC"] = "Select which spell categories this tracker should display."
|
||
L["OPT_TRACKER_TYPE"] = "Tracker type"
|
||
L["OPT_TRACKER_TYPE_DESC"] = "Choose whether this tracker uses one shared frame or separate frames per group member."
|
||
L["OPT_TRACKER_TYPE_NORMAL"] = "Normal tracker"
|
||
L["OPT_TRACKER_TYPE_GROUP"] = "Group-based tracker"
|
||
L["OPT_TRACKER_PER_MEMBER"] = "Create one frame per group member"
|
||
L["OPT_TRACKER_PER_MEMBER_DESC"] = "Use separate tracker frames for each party member instead of a single shared tracker frame."
|
||
L["OPT_INCLUDE_SELF_FRAME"] = "Create a frame for your own player too"
|
||
L["OPT_INCLUDE_SELF_FRAME_DESC"] = "Also provision a dedicated frame for your own player on group-based trackers."
|
||
L["OPT_ADD_TRACKER"] = "Add tracker"
|
||
L["OPT_REMOVE_TRACKER"] = "Remove tracker"
|
||
L["OPT_REMOVE_TRACKER_CONFIRM"] = 'Really remove tracker "%s"?'
|
||
L["OPT_TRACKERS_EMPTY"] = "No tracker bars configured yet."
|
||
L["OPT_TRACKED_SPELLS_DESC"] = "Changes here apply to all tracker bars that use the spell's categories."
|
||
L["OPT_TRACKED_SPELLS_EMPTY"] = "No spells are currently tracked by your tracker bars."
|
||
L["OPT_TRACKED_SPELLS_NO_MATCH"] = "No spells match the current filters."
|
||
L["OPT_MAP"] = "Map"
|
||
L["OPT_MAP_PLACEHOLDER"] = "Map module options will be available here."
|
||
L["OPT_MAP_ENABLED"] = "Enable map overlay"
|
||
L["OPT_MAP_ICON_SIZE"] = "Icon size"
|
||
L["OPT_MAP_ALPHA"] = "Icon alpha"
|
||
L["OPT_MAP_SHOW_LABELS"] = "Show labels"
|
||
L["OPT_MAP_POI_SECTION"] = "Custom POIs"
|
||
L["OPT_MAP_POI_MAPID"] = "Map ID"
|
||
L["OPT_MAP_POI_X"] = "X (0-100)"
|
||
L["OPT_MAP_POI_Y"] = "Y (0-100)"
|
||
L["OPT_MAP_POI_LABEL"] = "Label"
|
||
L["OPT_MAP_POI_CATEGORY"] = "Icon"
|
||
L["OPT_MAP_POI_USE_CURRENT"] = "Use current position"
|
||
L["OPT_MAP_POI_USE_CURRENT_DESC"] = "Fill map ID, X and Y from your current player position"
|
||
L["OPT_MAP_POI_ADD"] = "Add POI"
|
||
L["OPT_MAP_POI_UPDATE"] = "Update POI"
|
||
L["OPT_MAP_POI_REMOVE_INDEX"] = "Remove index"
|
||
L["OPT_MAP_POI_REMOVE"] = "Remove POI"
|
||
L["OPT_MAP_POI_LIST"] = "Current POIs"
|
||
L["OPT_MAP_POI_EMPTY"] = "No POIs configured."
|
||
L["OPT_MAP_POI_SELECT_HINT"] = "Select a POI in the tree on the left to edit it."
|
||
L["OPT_MAP_POI_CURRENT_SET"] = "HMGT: current position copied"
|
||
L["OPT_MAP_POI_CURRENT_FAILED"] = "HMGT: could not determine current position"
|
||
L["OPT_MAP_POI_ADDED"] = "HMGT: POI added"
|
||
L["OPT_MAP_POI_ADD_FAILED"] = "HMGT: could not add POI"
|
||
L["OPT_MAP_POI_UPDATED"] = "HMGT: POI updated"
|
||
L["OPT_MAP_POI_UPDATE_FAILED"] = "HMGT: could not update POI"
|
||
L["OPT_MAP_POI_REMOVED"] = "HMGT: POI removed"
|
||
L["OPT_MAP_POI_REMOVE_FAILED"] = "HMGT: could not remove POI"
|
||
L["OPT_GENERAL_SETTINGS"] = "General Settings"
|
||
L["OPT_SHOW_MINIMAP_ICON"] = "Show Minimap Icon"
|
||
L["OPT_COMMANDS"] = "Commands"
|
||
L["OPT_MODULES"] = "Modules"
|
||
L["OPT_MODULE_TRACKER"] = "Tracker"
|
||
L["OPT_MODULE_BUFF_ENDING"] = "Aura Expiry"
|
||
L["OPT_MODULE_AURA_EXPIRY"] = "Aura Expiry"
|
||
L["OPT_MODULE_PERSONAL_AURAS"] = "Personal Auras"
|
||
L["OPT_MODULE_MAP_OVERLAY"] = "Map Overlay"
|
||
|
||
-- ── Options: tracker shared ───────────────────────────────────
|
||
L["OPT_SECTION_GENERAL"] = "General Settings"
|
||
L["OPT_ENABLED"] = "Enabled"
|
||
L["OPT_ENABLED_DESC"] = "Enable or disable this tracker"
|
||
L["OPT_DISPLAY_MODE"] = "Display mode"
|
||
L["OPT_DISPLAY_MODE_DESC"]= "Show as progress bars or icons"
|
||
L["OPT_DISPLAY_BAR"] = "Progress bars"
|
||
L["OPT_DISPLAY_ICON"] = "Icons"
|
||
L["OPT_SHOW_SPELL_TOOLTIP"] = "Blizzard tooltip on bars"
|
||
L["OPT_SHOW_SPELL_TOOLTIP_DESC"] = "Show the Blizzard spell tooltip when mousing over a progress bar"
|
||
L["OPT_SHOW_READY_TEXT"] = "Show ready text"
|
||
L["OPT_SHOW_CHARGES_ON_ICON"] = "Show charges on icon"
|
||
L["OPT_SHOW_REMAINING_ON_ICON"] = "Show remaining time on icon"
|
||
L["OPT_LOCKED"] = "Lock frame"
|
||
L["OPT_LOCKED_DESC"] = "Prevent the frame from being moved"
|
||
L["OPT_SHOW_NAME"] = "Show player names"
|
||
L["OPT_CLASS_COLOR"] = "Use class colours"
|
||
L["OPT_GROW_DIR"] = "Grow direction"
|
||
L["OPT_GROW_DOWN"] = "Downward"
|
||
L["OPT_GROW_UP"] = "Upward"
|
||
L["OPT_SECTION_ANCHOR"] = "Anchor"
|
||
L["OPT_ANCHOR_TO"] = "Anchor to"
|
||
L["OPT_ANCHOR_TO_DESC"] = "Attach this frame to another frame or to the screen"
|
||
L["OPT_ANCHOR_TARGET_UI"] = "Screen (UIParent)"
|
||
L["OPT_ANCHOR_TARGET_CUSTOM"] = "Custom frame name"
|
||
L["OPT_ANCHOR_CUSTOM_NAME"] = "Custom frame"
|
||
L["OPT_ANCHOR_CUSTOM_NAME_DESC"] = "Global frame name, e.g. ElvUF_Player"
|
||
L["OPT_ATTACH_PARTY_FRAME"] = "Attach to Party Frame"
|
||
L["OPT_ATTACH_PARTY_FRAME_DESC"] = "Anchor each group cooldown frame to its corresponding party unit frame"
|
||
L["OPT_ATTACH_PARTY_SIDE"] = "Attach side"
|
||
L["OPT_ATTACH_PARTY_OFFSET_X"] = "Attach X offset"
|
||
L["OPT_ATTACH_PARTY_OFFSET_Y"] = "Attach Y offset"
|
||
L["OPT_ATTACH_LEFT"] = "Left"
|
||
L["OPT_ATTACH_RIGHT"] = "Right"
|
||
L["OPT_ANCHOR_POINT"] = "Anchor point"
|
||
L["OPT_ANCHOR_POINT_DESC"]= "Point on this frame to use for anchoring"
|
||
L["OPT_ANCHOR_REL_POINT"] = "Relative point"
|
||
L["OPT_ANCHOR_REL_POINT_DESC"] = "Point on the target frame to anchor to"
|
||
L["OPT_ANCHOR_X"] = "X offset"
|
||
L["OPT_ANCHOR_Y"] = "Y offset"
|
||
L["OPT_SHOW_ONLY_ACTIVE"] = "Show only active cooldowns"
|
||
L["OPT_SHOW_ONLY_ACTIVE_DESC"] = "Hide entries that are currently ready"
|
||
L["OPT_SHOW_ONLY_READY"] = "Show only ready cooldowns"
|
||
L["OPT_SHOW_ONLY_READY_DESC"] = "Only show entries that are currently ready"
|
||
L["OPT_READY_SOON_SEC"] = "Ready soon threshold (sec)"
|
||
L["OPT_READY_SOON_SEC_DESC"] = "Show only cooldowns that are ready or below this remaining time (0 = disabled)"
|
||
L["OPT_PREPROVISION_UNKNOWN"] = "Pre-provision unknown players"
|
||
L["OPT_PREPROVISION_UNKNOWN_DESC"] = "Show prefilled spells for group members even before addon hello/sync was received"
|
||
L["OPT_ROLE_FILTER"] = "Role filter"
|
||
L["OPT_ROLE_FILTER_ALL"] = "All"
|
||
L["OPT_ROLE_FILTER_TANK"] = "Tank"
|
||
L["OPT_ROLE_FILTER_HEALER"] = "Healer"
|
||
L["OPT_ROLE_FILTER_DAMAGER"] = "Damage"
|
||
L["OPT_RANGE_CHECK"] = "Range check"
|
||
L["OPT_HIDE_OOR"] = "Hide out of range"
|
||
L["OPT_OOR_ALPHA"] = "Out of range alpha"
|
||
|
||
L["OPT_SECTION_SIZE"] = "Size & Width"
|
||
L["OPT_WIDTH"] = "Width (bars)"
|
||
L["OPT_BAR_HEIGHT"] = "Bar height"
|
||
L["OPT_ICON_SIZE"] = "Icon size"
|
||
L["OPT_ICON_COLS"] = "Icons per row"
|
||
|
||
L["OPT_SECTION_FONT"] = "Font"
|
||
L["OPT_FONT"] = "Typeface"
|
||
L["OPT_FONT_SIZE"] = "Font size"
|
||
L["OPT_FONT_OUTLINE"] = "Font outline"
|
||
L["OPT_OUTLINE_NONE"] = "None"
|
||
L["OPT_OUTLINE_NORMAL"] = "Outline"
|
||
L["OPT_OUTLINE_THICK"] = "Thick Outline"
|
||
L["OPT_OUTLINE_MONO"] = "Monochrome"
|
||
|
||
L["OPT_SECTION_SPELLS"] = "Tracked Spells"
|
||
L["OPT_SECTION_CUSTOM_SPELLS"] = "Custom Spells"
|
||
L["OPT_CUSTOM_SPELLS_INFO"] = "Add/remove custom spells for this tracker."
|
||
L["OPT_CUSTOM_SPELLS_ID"] = "Spell ID"
|
||
L["OPT_CUSTOM_SPELLS_CD"] = "Cooldown (sec)"
|
||
L["OPT_CUSTOM_SPELLS_CLASS"] = "Class"
|
||
L["OPT_CUSTOM_SPELLS_SPECS"] = "Specs (optional, e.g. 1,3)"
|
||
L["OPT_CUSTOM_SPELLS_CATEGORY"] = "Category"
|
||
L["OPT_CUSTOM_SPELLS_ADD"] = "Add Spell"
|
||
L["OPT_CUSTOM_SPELLS_REMOVE"] = "Remove SpellID"
|
||
L["OPT_CUSTOM_SPELLS_CURRENT"] = "Current custom spells"
|
||
L["OPT_CUSTOM_SPELLS_EMPTY"] = "No custom spells for this tracker."
|
||
L["OPT_CUSTOM_SPELLS_MSG_ADDED"] = "HMGT: custom spell added"
|
||
L["OPT_CUSTOM_SPELLS_MSG_INVALID"] = "HMGT: invalid custom spell input"
|
||
L["OPT_CUSTOM_SPELLS_MSG_REMOVED"] = "HMGT: custom spell removed"
|
||
L["OPT_CUSTOM_SPELLS_MSG_NOT_FOUND"] = "HMGT: spell not found"
|
||
L["OPT_SPELLS_DESC"] = "Enable or disable individual spells:\n"
|
||
L["OPT_SPELL_SELECT"] = "Select spells"
|
||
L["OPT_DISABLED"] = "Disabled"
|
||
L["OPT_VISIBILITY_NONE"] = "Hidden everywhere"
|
||
L["OPT_STATUS_MODE"] = "Mode"
|
||
L["OPT_STATUS_DISPLAY"] = "Display"
|
||
L["OPT_STATUS_VISIBILITY"]= "Visibility"
|
||
L["OPT_STATUS_GROWTH"] = "Growth"
|
||
L["OPT_STATUS_ATTACH"] = "Attach"
|
||
L["OPT_UI_GROUP_MODE"] = "Mode"
|
||
L["OPT_UI_GROUP_PLACEMENT"] = "Placement"
|
||
L["OPT_UI_GROUP_VISIBILITY"] = "Visibility"
|
||
L["OPT_UI_GROUP_LAYOUT"] = "Layout"
|
||
L["OPT_UI_GROUP_APPEARANCE"] = "Appearance"
|
||
L["OPT_SPELL_BROWSER"] = "Spell Browser"
|
||
L["OPT_SPELL_BROWSER_DESC"] = "Filter tracked spells by name or Spell ID and apply quick actions to the visible results."
|
||
L["OPT_SELECTION"] = "Selection"
|
||
L["OPT_RT_NAME"] = "Raid Timeline"
|
||
L["OPT_RT_ENABLED"] = "Enable Raid Timeline"
|
||
L["OPT_RT_LEAD_TIME"] = "Warning lead time"
|
||
L["OPT_RT_ASSIGNMENT_LEAD_TIME"] = "Assignment lead time"
|
||
L["OPT_RT_ASSIGNMENT_LEAD_TIME_DESC"] = "How many seconds before the planned use the assigned player should be selected."
|
||
L["OPT_RT_ALERT_HEADER"] = "Alert frame"
|
||
L["OPT_RT_UNLOCK"] = "Unlock alert frame"
|
||
L["OPT_RT_PREVIEW"] = "Preview alert"
|
||
L["OPT_RT_ALERT_COLOR"] = "Text colour"
|
||
L["OPT_RT_ALERT_PREVIEW"] = "Tranquility in 5"
|
||
L["OPT_RT_DESC"] = "Create encounter timelines here and open the interactive Ace3 timeline editor for visual planning."
|
||
L["OPT_RT_ALERT_UNLOCKED_HINT"] = "Raid Timeline Alert\nDrag to move"
|
||
L["OPT_RT_ALERT_TEMPLATE"] = "%s in %d"
|
||
L["OPT_RT_ENCOUNTERS_HEADER"] = "Encounter timelines"
|
||
L["OPT_RT_SECTION_GENERAL"] = "General"
|
||
L["OPT_RT_SECTION_MANAGE"] = "Manage encounters"
|
||
L["OPT_RT_ADD_ENCOUNTER_ID"] = "Encounter ID"
|
||
L["OPT_RT_ADD_ENCOUNTER_NAME"] = "Encounter name"
|
||
L["OPT_RT_ADD_RAID"] = "Raid"
|
||
L["OPT_RT_ADD_ENCOUNTER"] = "Add encounter"
|
||
L["OPT_RT_INVALID_ENCOUNTER"] = "HMGT: invalid encounter ID"
|
||
L["OPT_RT_EMPTY"] = "No encounter timelines configured yet."
|
||
L["OPT_RT_ENCOUNTER"] = "Encounter"
|
||
L["OPT_RT_ENCOUNTER_NAME"] = "Name"
|
||
L["OPT_RT_RAID_NAME"] = "Raid"
|
||
L["OPT_RT_RAID_ID"] = "Raid ID"
|
||
L["OPT_RT_RAID_DEFAULT"] = "Encounter"
|
||
L["OPT_RT_DELETE_ENCOUNTER_CONFIRM"] = "Delete raid timeline for encounter %d?"
|
||
L["OPT_RT_DIFFICULTY_HEADER"] = "Difficulties"
|
||
L["OPT_RT_DIFF_LFR"] = "LFR"
|
||
L["OPT_RT_DIFF_NORMAL"] = "Normal"
|
||
L["OPT_RT_DIFF_HEROIC"] = "HC"
|
||
L["OPT_RT_DIFF_MYTHIC"] = "Mythic"
|
||
L["OPT_RT_ADD_TIME"] = "Time (MM:SS)"
|
||
L["OPT_RT_ADD_SPELL"] = "Spell"
|
||
L["OPT_RT_ADD_PLAYER"] = "Target"
|
||
L["OPT_RT_ADD_PLAYER_DESC"] = "Optional. Comma-separated player names or variables like Group1, Group8, GroupEven, GroupOdd. If empty, sends to everyone."
|
||
L["OPT_RT_ADD_ENTRY"] = "Add entry"
|
||
L["OPT_RT_ADD_ENTRY_INVALID"] = "HMGT: invalid raid timeline entry"
|
||
L["OPT_RT_ENTRY_TIME"] = "Time"
|
||
L["OPT_RT_ENTRY_SPELL"] = "Spell"
|
||
L["OPT_RT_ENTRY_PLAYER"] = "Target"
|
||
L["OPT_NOTES_NAME"] = "Notes"
|
||
L["OPT_NOTES_ENABLED"] = "Enable notes"
|
||
L["OPT_NOTES_DESC"] = "Provides an MRT-style notes window with a main note, a personal note and encounter drafts."
|
||
L["OPT_NOTES_OPEN_WINDOW"] = "Open notes window"
|
||
L["OPT_NOTES_OPEN_SETTINGS"] = "Open settings"
|
||
L["OPT_NOTES_WINDOW_TITLE"] = "HMGT Notes"
|
||
L["OPT_NOTES_LIST"] = "Notes"
|
||
L["OPT_NOTES_EDITOR"] = "Editor"
|
||
L["OPT_NOTES_MAIN"] = "Main note"
|
||
L["OPT_NOTES_PERSONAL"] = "Personal note"
|
||
L["OPT_NOTES_DRAFT"] = "Draft"
|
||
L["OPT_NOTES_NEW_DRAFT"] = "New draft"
|
||
L["OPT_NOTES_DUPLICATE"] = "Duplicate"
|
||
L["OPT_NOTES_TITLE"] = "Title"
|
||
L["OPT_NOTES_ENCOUNTER"] = "Encounter"
|
||
L["OPT_NOTES_TEXT"] = "Text"
|
||
L["OPT_NOTES_NO_ENCOUNTER"] = "No encounter"
|
||
L["OPT_NOTES_SEND_CHAT"] = "Send to chat"
|
||
L["OPT_NOTES_SUMMARY"] = "Main note, personal note and %d drafts available."
|
||
L["OPT_RT_TRIGGER"] = "Trigger"
|
||
L["OPT_RT_TRIGGER_TIME"] = "Time"
|
||
L["OPT_RT_TRIGGER_BOSS_ABILITY"] = "Boss ability"
|
||
L["OPT_RT_ACTION"] = "Action"
|
||
L["OPT_RT_ACTION_TEXT"] = "Text"
|
||
L["OPT_RT_ACTION_RAID_COOLDOWN"] = "Raid Cooldown"
|
||
L["OPT_RT_INVALID_TIME"] = "HMGT: invalid time"
|
||
L["OPT_RT_INVALID_SPELL"] = "HMGT: invalid spell ID"
|
||
L["OPT_RT_TIMELINE_VIEWPORT"] = "Timeline window"
|
||
L["OPT_RT_TIMELINE_EMPTY_WINDOW"] = "No cooldowns in the current window."
|
||
L["OPT_RT_TIMELINE_EDITOR"] = "Interactive Timeline"
|
||
L["OPT_RT_OPEN_EDITOR"] = "Open timeline"
|
||
L["OPT_RT_START_TEST"] = "Start timeline test"
|
||
L["OPT_RT_STOP_TEST"] = "Stop test"
|
||
L["OPT_RT_TEST_HINT"] = "Runs the encounter timeline outside of combat so you can verify assignments, whispers and debug output."
|
||
L["OPT_RT_TIMELINE_SCROLL"] = "Scroll timeline"
|
||
L["OPT_RT_TIMELINE_ZOOM"] = "Zoom"
|
||
L["OPT_RT_TIMELINE_HINT"] = "Click the bar to add a cooldown. Drag markers horizontally to change the time. Mousewheel scrolls, Ctrl+Mousewheel zooms."
|
||
L["OPT_RT_ASSIGNMENT_EDITOR"] = "Assignment"
|
||
L["OPT_RT_ASSIGNMENT_NONE"] = "No cooldown selected"
|
||
L["OPT_SPELLS_VISIBLE"] = "Visible spells"
|
||
L["OPT_SPELLS_ENABLED_COUNT"] = "Enabled"
|
||
L["OPT_FILTER_SEARCH"] = "Search"
|
||
L["OPT_FILTER_SEARCH_DESC"] = "Search by spell name or Spell ID"
|
||
L["OPT_FILTER_ENABLED_ONLY"] = "Enabled only"
|
||
L["OPT_FILTER_RESET"] = "Reset filters"
|
||
L["OPT_SELECT_VISIBLE"] = "Select visible"
|
||
L["OPT_DESELECT_VISIBLE"] = "Deselect visible"
|
||
L["OPT_ALL_SPECS"] = "All specs"
|
||
L["OPT_CUSTOM_SPELLS_EDITOR"] = "Spell Editor"
|
||
L["OPT_CUSTOM_SPELLS_PREVIEW"] = "Preview"
|
||
L["OPT_CUSTOM_SPELLS_PREVIEW_EMPTY"] = "Enter a spell ID to preview the custom spell."
|
||
L["OPT_CUSTOM_SPELLS_LOAD"] = "Load into editor"
|
||
|
||
-- ── Tracker titles ────────────────────────────────────────────
|
||
L["IT_TITLE"] = "|cff00aaffInterrupts|r"
|
||
L["RCD_TITLE"] = "|cffff8800Raid Cooldowns|r"
|
||
L["GCD_TITLE"] = "|cff77dd77Group Cooldowns|r"
|
||
|
||
-- ── Options: tracker names ────────────────────────────────────
|
||
L["IT_NAME"] = "Interrupt Tracker"
|
||
L["RCD_NAME"] = "Raid Cooldown Tracker"
|
||
L["GCD_NAME"] = "Group Cooldown Tracker"
|
||
L["BEA_NAME"] = "Aura Expiry"
|
||
L["AE_NAME"] = "Aura Expiry"
|
||
L["PA_NAME"] = "Personal Auras"
|
||
L["AEM_NAME"] = "Auto Enemy Marker"
|
||
|
||
L["OPT_BEA_ENABLED"] = "Enable aura expiry"
|
||
L["OPT_BEA_ENABLED_DESC"] = "Announce countdowns for tracked auras and channels in /say"
|
||
L["OPT_BEA_ANNOUNCE_AT"] = "Announce from (sec)"
|
||
L["OPT_BEA_ANNOUNCE_AT_DESC"] = "Start countdown announcements when remaining buff duration is at or below this value"
|
||
L["OPT_BEA_DEFAULT_THRESHOLD"] = "Default threshold (sec)"
|
||
L["OPT_BEA_DEFAULT_THRESHOLD_DESC"] = "Used when you add a new tracked buff"
|
||
L["OPT_BEA_SECTION_GENERAL"] = "General"
|
||
L["OPT_BEA_SECTION_BUFFS"] = "Tracked buffs"
|
||
L["OPT_BEA_ADD_ID"] = "Add Spell ID"
|
||
L["OPT_BEA_ADD_THRESHOLD"] = "Threshold"
|
||
L["OPT_BEA_ADD_THRESHOLD_DESC"] = "Countdown start in seconds for this buff"
|
||
L["OPT_BEA_ADD"] = "Add buff"
|
||
L["OPT_BEA_REMOVE_ID"] = "Remove Spell ID"
|
||
L["OPT_BEA_REMOVE"] = "Remove buff"
|
||
L["OPT_BEA_CURRENT"] = "Current tracked buffs"
|
||
L["OPT_BEA_COL_ICON"] = "Icon"
|
||
L["OPT_BEA_COL_SPELL"] = "Spellname"
|
||
L["OPT_BEA_COL_THRESHOLD"] = "Threshold"
|
||
L["OPT_BEA_COL_ACTION"] = "Action"
|
||
L["OPT_BEA_EMPTY"] = "No buffs configured."
|
||
L["OPT_BEA_MSG_ADDED"] = "HMGT: buff added: %s"
|
||
L["OPT_BEA_MSG_REMOVED"] = "HMGT: buff removed: %s"
|
||
L["OPT_BEA_MSG_INVALID"] = "HMGT: invalid buff spell ID"
|
||
L["OPT_BEA_MSG_NOT_FOUND"] = "HMGT: buff not found"
|
||
L["OPT_BEA_MSG_THRESHOLD_INVALID"] = "HMGT: invalid threshold"
|
||
L["OPT_PA_ENABLED"] = "Enable personal auras"
|
||
L["OPT_PA_ENABLED_DESC"] = "Show tracked debuffs on your current player in a movable frame"
|
||
L["OPT_PA_UNLOCK"] = "Unlock frame"
|
||
L["OPT_PA_UNLOCK_DESC"] = "Show the frame placeholder and allow it to be moved"
|
||
L["OPT_PA_WIDTH"] = "Frame width"
|
||
L["OPT_PA_ROW_HEIGHT"] = "Row height"
|
||
L["OPT_PA_ICON_SIZE"] = "Icon size"
|
||
L["OPT_PA_FONT_SIZE"] = "Font size"
|
||
L["OPT_PA_SECTION_GENERAL"] = "General"
|
||
L["OPT_PA_SECTION_DEBUFFS"] = "Tracked debuffs"
|
||
L["OPT_PA_ADD_ID"] = "Add Spell ID"
|
||
L["OPT_PA_ADD"] = "Add debuff"
|
||
L["OPT_PA_REMOVE"] = "Remove debuff"
|
||
L["OPT_PA_EMPTY"] = "No debuffs configured."
|
||
L["OPT_PA_UNLOCK_HINT"] = "Personal Auras\nDrag to move"
|
||
L["OPT_PA_MSG_ADDED"] = "HMGT: debuff added: %s"
|
||
L["OPT_PA_MSG_REMOVED"] = "HMGT: debuff removed: %s"
|
||
L["OPT_PA_MSG_INVALID"] = "HMGT: invalid debuff spell ID"
|
||
L["OPT_PA_MSG_NOT_FOUND"] = "HMGT: debuff not found"
|
||
L["OPT_PA_ACTIVE"] = "Active"
|
||
L["OPT_PA_INACTIVE"] = "Inactive"
|
||
L["BEA_MSG_TEMPLATE"] = "%s ending in %d"
|
||
|
||
L["OPT_AEM_ENABLED"] = "Enable auto enemy marking"
|
||
L["OPT_AEM_ENABLED_DESC"] = "Marks configured enemy unit IDs on mouseover with rotating raid markers (out of combat)"
|
||
L["OPT_AEM_RESET_SESSION"] = "Reset marker cycle"
|
||
L["OPT_AEM_SECTION_UNITS"] = "Tracked unit IDs"
|
||
L["OPT_AEM_ADD_ID"] = "Add Unit ID"
|
||
L["OPT_AEM_ADD"] = "Add unit"
|
||
L["OPT_AEM_REMOVE_ID"] = "Remove Unit ID"
|
||
L["OPT_AEM_REMOVE"] = "Remove unit"
|
||
L["OPT_AEM_CURRENT"] = "Current unit IDs"
|
||
L["OPT_AEM_EMPTY"] = "No unit IDs configured."
|
||
L["OPT_AEM_MSG_ADDED"] = "HMGT: unit ID added: %s"
|
||
L["OPT_AEM_MSG_REMOVED"] = "HMGT: unit ID removed: %s"
|
||
L["OPT_AEM_MSG_INVALID"] = "HMGT: invalid unit ID"
|
||
L["OPT_AEM_MSG_NOT_FOUND"] = "HMGT: unit ID not found"
|
||
L["AEM_MSG_COMBAT_BLOCKED"] = "HMGT Auto Enemy Marker: automatic marking is blocked in combat by Blizzard secure restrictions."
|
||
L["AEM_MSG_API_BLOCKED"] = "HMGT Auto Enemy Marker: raid marker API call is blocked in this environment."
|
||
|
||
-- ── Tooltip ───────────────────────────────────────────────────
|
||
L["TT_DRAG"] = "|cff00aaffHMGT|r\nDrag to move\n|cffffff00/hmgt lock|r to lock"
|
||
L["TT_REMAINING"] = "Remaining: "
|
||
L["TT_READY"] = "Ready!"
|
||
L["TT_UNKNOWN"] = "Unknown"
|
||
|
||
-- ── Spell spell-toggle label format ──────────────────────────
|
||
-- used as: string.format(L["SPELL_LABEL"], classStr, name)
|
||
L["SPELL_LABEL"] = "[%s] %s"
|
||
-- used as: string.format(L["SPELL_DESC"], spellId, cooldown)
|
||
L["SPELL_DESC"] = "SpellID: %d | Cooldown: %ds"
|
||
|
||
-- ── Spell categories ─────────────────────────────────────────
|
||
L["CAT_lust"] = "Bloodlust / Lust"
|
||
L["CAT_offensive"] = "Offensive Cooldowns"
|
||
L["CAT_defensive"] = "Defensive Cooldowns"
|
||
L["CAT_tank"] = "Tank Cooldowns"
|
||
L["CAT_healing"] = "Healing Cooldowns"
|
||
L["CAT_utility"] = "Utility"
|
||
L["CAT_cc"] = "Crowd Control"
|
||
L["CAT_interrupt"] = "Interrupts"
|
||
L["CAT_raid"] = "Raid Cooldowns"
|
||
|
||
-- ── Config spell list ─────────────────────────────────────────
|
||
L["OPT_CD_LABEL"] = "%s (%ds)" -- icon+name, cooldown
|
||
L["OPT_SELECT_ALL"] = "Select all"
|
||
L["OPT_DESELECT_ALL"] = "Deselect all"
|
||
|
||
-- ── Bar-Mode options ─────────────────────────────────────────
|
||
L["OPT_BAR_TEXTURE"] = "Texture"
|
||
L["OPT_BAR_TEXTURE_DESC"] = "Texture of the progress bar"
|
||
L["OPT_BAR_SPACING"] = "Bar spacing"
|
||
|
||
-- ── Icon-Mode options ─────────────────────────────────────────
|
||
L["OPT_GROW_LEFT"] = "Leftward"
|
||
L["OPT_GROW_RIGHT"] = "Rightward"
|
||
L["OPT_ICON_COLS_DESC"] = "Number of icons per row (DOWN/UP) or per column (LEFT/RIGHT)"
|
||
L["OPT_ICON_OVERLAY"] = "Cooldown display"
|
||
L["OPT_ICON_OVERLAY_DESC"] = "How to show remaining cooldown on icons"
|
||
L["OPT_ICON_OVERLAY_SWEEP"] = "Cooldown sweep"
|
||
L["OPT_ICON_OVERLAY_TIMER"] = "Text timer (MM:SS)"
|
||
L["OPT_ICON_SPACING"] = "Icon spacing"
|
||
|
||
-- ── Visibility options ────────────────────────────────────────
|
||
L["OPT_SECTION_VISIBILITY"] = "Visibility"
|
||
L["OPT_SHOW_SOLO"] = "Show when solo"
|
||
L["OPT_SHOW_SOLO_DESC"] = "Show this tracker when not in a group"
|
||
L["OPT_SHOW_GROUP"] = "Show in group"
|
||
L["OPT_SHOW_GROUP_DESC"] = "Show this tracker in a party"
|
||
L["OPT_SHOW_RAID"] = "Show in raid"
|
||
L["OPT_SHOW_RAID_DESC"] = "Show this tracker in a raid group"
|
||
|
||
-- ── Border options ──────────────────────────────────────────────
|
||
L["OPT_BORDER_ENABLED"] = "Show border"
|
||
L["OPT_BORDER_ENABLED_DESC"] = "Show a 1px border around progress bars and icons"
|
||
L["OPT_BORDER_COLOR"] = "Border color"
|
||
L["OPT_BORDER_COLOR_DESC"] = "Color of the 1px border"
|
||
|
||
-- ── Text anchor (icon mode) ───────────────────────────────────
|
||
L["OPT_TEXT_ANCHOR"] = "Text position"
|
||
L["OPT_TEXT_ANCHOR_DESC"] = "Where to show name and timer relative to the icon"
|
||
L["OPT_ANCHOR_ON_ICON"] = "On icon (overlay)"
|
||
L["OPT_ANCHOR_ABOVE"] = "Above icon"
|
||
L["OPT_ANCHOR_BELOW"] = "Below icon"
|
||
L["OPT_ANCHOR_LEFT"] = "Left of icon"
|
||
L["OPT_ANCHOR_RIGHT"] = "Right of icon"
|
||
|
||
-- ── Talent mod types (tooltip / desc) ─────────────────────────
|
||
L["TALENTMOD_SET"] = "Talent sets CD to %ds"
|
||
L["TALENTMOD_MULTIPLY"] = "Talent multiplies CD by %.2f"
|
||
L["TALENTMOD_REDUCE"] = "Talent reduces CD by %d%%"
|
||
|
||
L["OPT_RT_ADD_TEXT"] = "Custom text"
|
||
L["OPT_RT_ENTRY_TEXT"] = "Custom text"
|
||
L["OPT_RT_NO_SPELL"] = "No spell"
|
||
L["OPT_RT_ADD_TYPE"] = "Type"
|
||
L["OPT_RT_ENTRY_TYPE"] = "Type"
|
||
L["OPT_RT_TYPE_SPELL"] = "Spell"
|
||
L["OPT_RT_TYPE_TEXT"] = "Text"
|
||
L["OPT_RT_TYPE_BOSS_ABILITY"] = "Boss ability"
|
||
L["OPT_RT_BOSSMOD"] = "Boss mod"
|
||
L["OPT_RT_BOSS_ABILITY"] = "Boss ability"
|
||
L["OPT_RT_BOSS_BAR_NAME"] = "Bossmod bar name"
|
||
L["OPT_RT_NO_BOSS_ABILITY"] = "No boss ability"
|
||
L["OPT_RT_CAST_COUNT"] = "Cast count"
|
||
L["OPT_RT_CAST_COUNT_DESC"] = "Use a number, All, Odd, or Even."
|
||
L["OPT_RT_CAST"] = "Cast"
|
||
L["OPT_RT_CAST_ALL"] = "All"
|
||
L["OPT_RT_CAST_ODD"] = "Odd"
|
||
L["OPT_RT_CAST_EVEN"] = "Even"
|
||
L["OPT_RT_ADD_TARGETS"] = "Targets"
|
||
L["OPT_RT_ENTRY_TARGETS"] = "Targets"
|
||
L["OPT_RT_TARGETS_DESC"] = "Use All, Odd, Even, raid groups like 1,2, 1-3 or player names separated by commas."
|