From d1e0325101827a6c3a4da22065881cd27ac32504 Mon Sep 17 00:00:00 2001 From: Tercio Jose Date: Sat, 23 Apr 2022 14:02:54 -0300 Subject: [PATCH] open raid library update --- Libs/LibOpenRaid/Functions.lua | 4 +- Libs/LibOpenRaid/GetPlayerInformation.lua | 57 +++++--- Libs/LibOpenRaid/LibOpenRaid.lua | 43 +++++- Libs/LibOpenRaid/ThingsToMantain.lua | 163 +++++++++++++--------- Libs/LibOpenRaid/docs.txt | 2 +- frames/window_cdtracker.lua | 13 +- 6 files changed, 191 insertions(+), 91 deletions(-) diff --git a/Libs/LibOpenRaid/Functions.lua b/Libs/LibOpenRaid/Functions.lua index c5841924..3d58c7f0 100644 --- a/Libs/LibOpenRaid/Functions.lua +++ b/Libs/LibOpenRaid/Functions.lua @@ -17,6 +17,7 @@ local CONST_COOLDOWN_TYPE_DEFENSIVE_PERSONAL = 2 local CONST_COOLDOWN_TYPE_DEFENSIVE_TARGET = 3 local CONST_COOLDOWN_TYPE_DEFENSIVE_RAID = 4 local CONST_COOLDOWN_TYPE_UTILITY = 5 +local CONST_COOLDOWN_TYPE_INTERRUPT = 6 --simple non recursive table copy function openRaidLib.TCopy(tableToReceive, tableToCopy) @@ -142,7 +143,8 @@ local filterStringToCooldownType = { ["defensive-target"] = CONST_COOLDOWN_TYPE_DEFENSIVE_TARGET, ["defensive-personal"] = CONST_COOLDOWN_TYPE_DEFENSIVE_PERSONAL, ["ofensive"] = CONST_COOLDOWN_TYPE_OFFENSIVE, - ["utility"] = CONST_COOLDOWN_TYPE_UTILITY + ["utility"] = CONST_COOLDOWN_TYPE_UTILITY, + ["interrupt"] = CONST_COOLDOWN_TYPE_INTERRUPT, } function openRaidLib.CooldownManager.DoesSpellPassFilter(spellId, filters) diff --git a/Libs/LibOpenRaid/GetPlayerInformation.lua b/Libs/LibOpenRaid/GetPlayerInformation.lua index 4ee52872..f0d9df40 100644 --- a/Libs/LibOpenRaid/GetPlayerInformation.lua +++ b/Libs/LibOpenRaid/GetPlayerInformation.lua @@ -232,6 +232,41 @@ function openRaidLib.GearManager.GetPlayerGemsAndEnchantInfo() return slotsWithoutGems, slotsWithoutEnchant end +local playerHasPetOfNpcId = function(npcId) + if (UnitExists("pet") and UnitHealth("pet") >= 1) then + local guid = UnitGUID("pet") + if (guid) then + local split = {strsplit("-", guid)} + local playerPetNpcId = tonumber(split[6]) + if (playerPetNpcId) then + if (npcId == playerPetNpcId) then + return true + end + end + end + end +end + +local addCooldownToTable = function(cooldowns, cooldownsHash, cooldownSpellId, timeNow) + cooldowns[#cooldowns+1] = cooldownSpellId + local timeLeft, charges, startTimeOffset, duration = openRaidLib.CooldownManager.GetPlayerCooldownStatus(cooldownSpellId) + cooldowns[#cooldowns+1] = timeLeft + cooldowns[#cooldowns+1] = charges + cooldowns[#cooldowns+1] = startTimeOffset + cooldowns[#cooldowns+1] = duration + cooldownsHash[cooldownSpellId] = {timeLeft, charges, startTimeOffset, duration, timeNow} +end + +local canAddCooldown = function(cooldownInfo) + local needPetNpcId = cooldownInfo.pet + if (needPetNpcId) then + if (not playerHasPetOfNpcId(needPetNpcId)) then + return false + end + end + return true +end + --build a list with the local player cooldowns --called only from SendAllPlayerCooldowns() function openRaidLib.CooldownManager.GetPlayerCooldownList() @@ -259,24 +294,14 @@ function openRaidLib.CooldownManager.GetPlayerCooldownList() if (talentId) then --check if the player has the talent selected if (talentsHash[talentId]) then - cooldowns[#cooldowns+1] = cooldownSpellId - local timeLeft, charges, startTimeOffset, duration = openRaidLib.CooldownManager.GetPlayerCooldownStatus(cooldownSpellId) - cooldowns[#cooldowns+1] = timeLeft - cooldowns[#cooldowns+1] = charges - cooldowns[#cooldowns+1] = startTimeOffset - cooldowns[#cooldowns+1] = duration - - cooldownsHash[cooldownSpellId] = {timeLeft, charges, startTimeOffset, duration, timeNow} + if (canAddCooldown(cooldownInfo)) then + addCooldownToTable(cooldowns, cooldownsHash, cooldownSpellId, timeNow) + end end else - cooldowns[#cooldowns+1] = cooldownSpellId - local timeLeft, charges, startTimeOffset, duration = openRaidLib.CooldownManager.GetPlayerCooldownStatus(cooldownSpellId) - cooldowns[#cooldowns+1] = timeLeft - cooldowns[#cooldowns+1] = charges - cooldowns[#cooldowns+1] = startTimeOffset - cooldowns[#cooldowns+1] = duration - - cooldownsHash[cooldownSpellId] = {timeLeft, charges, startTimeOffset, duration, timeNow} + if (canAddCooldown(cooldownInfo)) then + addCooldownToTable(cooldowns, cooldownsHash, cooldownSpellId, timeNow) + end end end end diff --git a/Libs/LibOpenRaid/LibOpenRaid.lua b/Libs/LibOpenRaid/LibOpenRaid.lua index 86a58970..eb1791e0 100644 --- a/Libs/LibOpenRaid/LibOpenRaid.lua +++ b/Libs/LibOpenRaid/LibOpenRaid.lua @@ -14,6 +14,7 @@ Code Rules: - Public callbacks are callbacks registered by an external addon. Change Log: + - added interrupts to cooldown tracker, new filter: "interrupt" - after encounter_end cooldowns now check for cooldowns reset. - each module now controls what to do with regen_enabled. - filter cooldowns done. @@ -23,16 +24,17 @@ Change Log: - player information is always available even when not in a group. TODO: - - keystone info (portion of the logic is implemented, need to share the information) - track interrupts (interrupt list is done, need to tracker the use of the spell and share it) + - keystone info (portion of the logic is implemented, need to share the information) - raid lockouts normal-heroic-mythic - soulbind character (covenant choise) - probably not used in 10.0 + - (bug) after a /reload, it is not starting new tickers for spells under cooldown --]=] local major = "LibOpenRaid-1.0" -local CONST_LIB_VERSION = 28 +local CONST_LIB_VERSION = 30 LIB_OPEN_RAID_CAN_LOAD = false --declae the library within the LibStub @@ -69,8 +71,8 @@ LIB_OPEN_RAID_CAN_LOAD = false local CONST_TWO_SECONDS = 2.0 local CONST_THREE_SECONDS = 3.0 - local CONST_COOLDOWN_CHECK_INTERVAL = CONST_THREE_SECONDS - local CONST_COOLDOWN_TIMELEFT_HAS_CHANGED = CONST_THREE_SECONDS + local CONST_COOLDOWN_CHECK_INTERVAL = CONST_TWO_SECONDS + local CONST_COOLDOWN_TIMELEFT_HAS_CHANGED = CONST_TWO_SECONDS local CONST_COOLDOWN_INDEX_TIMELEFT = 1 local CONST_COOLDOWN_INDEX_CHARGES = 2 @@ -377,6 +379,7 @@ LIB_OPEN_RAID_CAN_LOAD = false ["onPlayerRess"] = {}, ["raidEncounterEnd"] = {}, ["mythicDungeonStart"] = {}, + ["playerPetChange"] = {}, } openRaidLib.internalCallback.RegisterCallback = function(event, func) @@ -438,7 +441,7 @@ LIB_OPEN_RAID_CAN_LOAD = false ["UNIT_SPELLCAST_SUCCEEDED"] = function(...) local unitId, castGUID, spellId = ... C_Timer.After(0.1, function() - openRaidLib.internalCallback.TriggerEvent("playerCast", spellId) + openRaidLib.internalCallback.TriggerEvent("playerCast", spellId, UnitIsUnit(unitId, "pet")) end) end, @@ -536,15 +539,36 @@ LIB_OPEN_RAID_CAN_LOAD = false ["CHALLENGE_MODE_START"] = function() openRaidLib.internalCallback.TriggerEvent("mythicDungeonStart") end, + + ["UNIT_PET"] = function(unitId) + if (UnitIsUnit(unitId, "player")) then + openRaidLib.Schedules.NewUniqueTimer(0.5, function() openRaidLib.internalCallback.TriggerEvent("playerPetChange") end, "mainControl", "petStatus_Schedule") + --if the pet is alive, register to know when it dies + if (UnitExists("pet") and UnitHealth("pet") >= 1) then + eventFrame:RegisterUnitEvent("UNIT_FLAGS", "pet") + end + end + end, + + ["UNIT_FLAGS"] = function(unitId) + local petHealth = UnitHealth(unitId) + if (petHealth < 1) then + eventFrame:UnregisterEvent("UNIT_FLAGS") + openRaidLib.eventFunctions["UNIT_PET"]("player") + end + end } + openRaidLib.eventFunctions = eventFunctions eventFrame:RegisterEvent("GROUP_ROSTER_UPDATE") eventFrame:RegisterUnitEvent("UNIT_SPELLCAST_SUCCEEDED", "player") + eventFrame:RegisterUnitEvent("UNIT_SPELLCAST_SUCCEEDED", "pet") eventFrame:RegisterEvent("PLAYER_ENTERING_WORLD") eventFrame:RegisterEvent("PLAYER_REGEN_DISABLED") eventFrame:RegisterEvent("PLAYER_REGEN_ENABLED") eventFrame:RegisterEvent("UPDATE_INVENTORY_DURABILITY") eventFrame:RegisterEvent("PLAYER_EQUIPMENT_CHANGED") + eventFrame:RegisterEvent("UNIT_PET") --eventFrame:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED") if (not isTimewalkWoW()) then @@ -1247,7 +1271,7 @@ local cooldownTimeLeftCheck_Ticker = function(tickerObject) tickerObject:Cancel() updateLocally = true else - --check if the time left has changed + --check if the time left has changed, this check if the cooldown got its time reduced and if the cooldown time has been slow down by modRate if (not openRaidLib.isNearlyEqual(tickerObject.cooldownTimeLeft, timeLeft, CONST_COOLDOWN_TIMELEFT_HAS_CHANGED)) then --there's a deviation, send a comm to communicate the change in the time left openRaidLib.CooldownManager.SendPlayerCooldownUpdate(spellId, timeLeft, charges, startTimeOffset, duration) @@ -1458,7 +1482,7 @@ end end --> internals - function openRaidLib.CooldownManager.OnPlayerCast(event, spellId) + function openRaidLib.CooldownManager.OnPlayerCast(event, spellId, isPlayerPet) --player casted a spell, check if the spell is registered as cooldown local playerSpec = openRaidLib.GetPlayerSpecId() if (playerSpec) then @@ -1528,6 +1552,10 @@ end openRaidLib.Schedules.NewUniqueTimer(0.5, openRaidLib.CooldownManager.SendAllPlayerCooldowns, "CooldownManager", "sendAllPlayerCooldowns_Schedule") end + function openRaidLib.CooldownManager.OnPlayerPetChanged() + openRaidLib.Schedules.NewUniqueTimer(0.5, openRaidLib.CooldownManager.SendAllPlayerCooldowns, "CooldownManager", "sendAllPlayerCooldowns_Schedule") + end + openRaidLib.internalCallback.RegisterCallback("onLeaveGroup", openRaidLib.CooldownManager.OnPlayerLeaveGroup) openRaidLib.internalCallback.RegisterCallback("playerCast", openRaidLib.CooldownManager.OnPlayerCast) openRaidLib.internalCallback.RegisterCallback("onPlayerRess", openRaidLib.CooldownManager.OnPlayerRess) @@ -1535,6 +1563,7 @@ end openRaidLib.internalCallback.RegisterCallback("raidEncounterEnd", openRaidLib.CooldownManager.OnEncounterEnd) openRaidLib.internalCallback.RegisterCallback("onLeaveCombat", openRaidLib.CooldownManager.OnEncounterEnd) openRaidLib.internalCallback.RegisterCallback("mythicDungeonStart", openRaidLib.CooldownManager.OnMythicPlusStart) + openRaidLib.internalCallback.RegisterCallback("playerPetChange", openRaidLib.CooldownManager.OnPlayerPetChanged) --update the list of cooldowns of the player it self locally --this is called right after changes in the player cooldowns diff --git a/Libs/LibOpenRaid/ThingsToMantain.lua b/Libs/LibOpenRaid/ThingsToMantain.lua index 18098073..1524bada 100644 --- a/Libs/LibOpenRaid/ThingsToMantain.lua +++ b/Libs/LibOpenRaid/ThingsToMantain.lua @@ -211,10 +211,11 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { -- 3 targetted defensive cooldown -- 4 raid defensive cooldown -- 5 personal utility cooldown + -- 6 interrupt --Shadowlands 9.0.2 revision by Juliana Maison - --MAGE + --> MAGE --arcane [62] = { [12042] = 1, --Arcane Power @@ -223,6 +224,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [12051] = 5, --Evocation [110960] = 5, --Greater Invisibility [235450] = 5, --Prismatic Barrier + [2139] = 6, --Counterspell (interrupt) }, --fire [63] = { @@ -231,6 +233,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [45438] = 2, --Ice Block [66] = 5, --Invisibility [235313] = 5, --Blazing Barrier + [2139] = 6, --Counterspell (interrupt) }, --frost [64] = { @@ -242,9 +245,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [235219] = 5, --Cold Snap [11426] = 5, --Ice Barrier [113724] = 5, --Ring of Frost (talent) + [2139] = 6, --Counterspell (interrupt) }, - --PRIEST + --> PRIEST --discipline [256] = { [10060] = 1, --Power Infusion @@ -284,9 +288,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [8122] = 5, --Psychic Scream [205369] = 5, --Mind Bomb [228260] = 1, --Void Erruption + [15487] = 6, --Silence (interrupt) }, - --ROGUE + --> ROGUE --assassination [259] = { [79140] = 1, --Vendetta @@ -296,6 +301,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [2094] = 5, --Blind [185311] = 5, --Crimson Vial [114018] = 5, --Shroud of Concealment + [1766] = 6, --Kick }, --outlaw [260] = { @@ -309,6 +315,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [185311] = 5, --Crimson Vial [114018] = 5, --Shroud of Concealment [343142] = 5, --Dreadblades + [1766] = 6, --Kick }, --subtlety [261] = { @@ -319,9 +326,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [2094] = 5, --Blind [185311] = 5, --Crimson Vial [114018] = 5, --Shroud of Concealment + [1766] = 6, --Kick }, - --WARLOCK + --> WARLOCK --affliction [265] = { [205180] = 1, --Summon Darkglare @@ -330,8 +338,8 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [104773] = 2, --Unending Resolve [108416] = 2, --Dark Pact (talent) [30283] = 5, --Shadowfury - --[6789] = 5, --Mortal Coil (talent) [333889] = 5, --Fel Domination + [19647] = 6, --Spell Lock (pet interrupt) }, --demonology [266] = { @@ -340,14 +348,13 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [267171] = 1, --Demonic Strength (talent) [111898] = 1, --Grimoire: Felguard (talent) [267217] = 1, --Nether Portal (talent) - [104773] = 2, --Unending Resolve [108416] = 2, --Dark Pact (talent) - [30283] = 5, --Shadowfury - --[6789] = 5, --Mortal Coil (talent) [5484] = 5, --Howl of Terror (talent) [333889] = 5, --Fel Domination + [19647] = 6, --Spell Lock (pet interrupt) + [89766] = 6, --Axe Toss (pet interrupt) }, --destruction [267] = { @@ -356,12 +363,12 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [113858] = 1, --Dark Soul: Instability (talent) [104773] = 2, --Unending Resolve [108416] = 2, --Dark Pact (talent) - --[6789] = 5, --Mortal Coil (talent) [30283] = 5, --Shadowfury [333889] = 5, --Fel Domination + [19647] = 6, --Spell Lock (pet interrupt) }, - --WARRIOR + --> WARRIOR --Arms [71] = { [107574] = 1, --Avatar (talent) @@ -370,8 +377,8 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [118038] = 2, --Die by the Sword [97462] = 4, --Rallying Cry [64382] = 5, --Shattering Throw - --[18499] = 5, --Berserker Rage [5246] = 5, --Intimidating Shout + [6552] = 6, --Pummel }, --Fury [72] = { @@ -380,8 +387,8 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [184364] = 2, --Enraged Regeneration [97462] = 4, --Rallying Cry [64382] = 5, --Shattering Throw - --[18499] = 5, --Berserker Rage [5246] = 5, --Intimidating Shout + [6552] = 6, --Pummel }, --Protection [73] = { @@ -391,11 +398,11 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [871] = 2, --Shield Wall [97462] = 4, --Rallying Cry [64382] = 5, --Shattering Throw - --[18499] = 5, --Berserker Rage [5246] = 5, --Intimidating Shout + [6552] = 6, --Pummel }, - --PALADIN + --> PALADIN --holy [65] = { [31884] = 1, --Avenging Wrath @@ -427,6 +434,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [1044] = 5, --Blessing of Freedom [853] = 5, --Hammer of Justice [115750] = 5, --Blinding Light (talent) + [96231] = 6, --Rebuke (interrupt) }, --retribution @@ -442,9 +450,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [1044] = 5, --Blessing of Freedom [853] = 5, --Hammer of Justice [115750] = 5, --Blinding Light (talent) + [96231] = 6, --Rebuke (interrupt) }, - --DEMON HUNTER + --> DEMON HUNTER --havoc [577] = { [200166] = 1, --Metamorphosis @@ -454,6 +463,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [188501] = 5, --Spectral Sight [179057] = 5, --Chaos Nova [211881] = 5, --Fel Eruption (talent) + [183752] = 6, --Disrupt (interrupt) }, --vengeance [581] = { @@ -465,9 +475,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [202137] = 5, --Sigil of Silence [202138] = 5, --Sigil of Chains (talent) [188501] = 5, --Spectral Sight + [183752] = 6, --Disrupt (interrupt) }, - --DEATH KNIGHT + --> DEATH KNIGHT --unholy [252] = { [275699] = 1, --Apocalypse @@ -481,7 +492,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [108194] = 5, --Asphyxiate (talent) [287081] = 5, --Lichborne [212552] = 5, --Wraith walk (talent) - + [47528] = 6, --Mind Freeze (interrupt) }, --frost [251] = { @@ -496,6 +507,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [108194] = 5, --Asphyxiate (talent) [287081] = 5, --Lichborne [212552] = 5, --Wraith walk (talent) + [47528] = 6, --Mind Freeze (interrupt) }, --blood [250] = { @@ -509,9 +521,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [108199] = 5, --Gorefiend's Grasp [221562] = 5, --Asphyxiate [212552] = 5, --Wraith walk (talent) + [47528] = 6, --Mind Freeze (interrupt) }, - --DRUID + --> DRUID --Balance [102] = { [194223] = 1, --Celestial Alignment @@ -520,10 +533,9 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [108238] = 2, --Renewal (talent) [29166] = 3, --Innervate [77761] = 4, --Stampeding Roar - --[99] = 5, --Incapacitating Roar [319454] = 5, --Heart of the Wild (talent) [132469] = 5, --Typhoon - [78675] = 5, --Solar Beam + [78675] = 6, --Solar Beam (interrupt) }, --Feral [103] = { @@ -535,6 +547,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [77764] = 4, --Stampeding Roar [132469] = 5, --Typhoon [319454] = 5, --Heart of the Wild (talent) + [106839] = 6, --Skull Bash (interrupt) }, --Guardian [104] = { @@ -546,8 +559,8 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [108238] = 2, --Renewal (talent) [77761] = 4, --Stampeding Roar [132469] = 5, --Typhoon - --[99] = 5, --Incapacitating Roar [319454] = 5, --Heart of the Wild (talent) + [106839] = 6, --Skull Bash (interrupt) }, --Restoration [105] = { @@ -564,8 +577,8 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [319454] = 5, --Heart of the Wild (talent) [102793] = 5, --Ursol's Vortex }, - - --HUNTER + + --> HUNTER --beast mastery [253] = { [193530] = 1, --Aspect of the Wild @@ -578,6 +591,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [19577] = 5, --Intimidation [109248] = 5, --Binding Shot (talent) [187650] = 5, --Freezing Trap + [147362] = 6, --Counter Shot (interrupt) }, --marksmanship [254] = { @@ -588,6 +602,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [281195] = 2, --Survival of the Fittest [186257] = 5, --Aspect of the cheetah [187650] = 5, --Freezing Trap + [147362] = 6, --Counter Shot (interrupt) }, --survival [255] = { @@ -598,9 +613,10 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [186289] = 5, --Aspect of the eagle [19577] = 5, --Intimidation [187650] = 5, --Freezing Trap + [187707] = 6, --Muzzle (interrupt) }, - --MONK + --> MONK --brewmaster [268] = { [132578] = 1, --Invoke Niuzao, the Black Ox @@ -611,6 +627,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [122278] = 2, --Dampen Harm (talent) [116844] = 5, --Ring of peace (talent) [119381] = 5, --Leg Sweep + [116705] = 6, --Spear Hand Strike (interrupt) }, --windwalker [269] = { @@ -624,6 +641,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [122783] = 2, --Diffuse Magic (talent) [116844] = 5, --Ring of peace (talent) [119381] = 5, --Leg Sweep + [116705] = 6, --Spear Hand Strike (interrupt) }, --mistweaver [270] = { @@ -633,14 +651,13 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [122783] = 2, --Diffuse Magic (talent) [116849] = 3, --Life Cocoon [322118] = 4, --Invoke Yulon, the Jade serpent --- [198664] = 4, --Invoke Chi-Ji, the Red Crane (talent) [115310] = 4, --Revival [116844] = 5, --Ring of peace (talent) [197908] = 5, --Mana tea (talent) [119381] = 5, --Leg Sweep }, - --SHAMAN + --> SHAMAN --elemental [262] = { [198067] = 1, --Fire Elemental @@ -653,6 +670,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [8143] = 5, --Tremor Totem [192058] = 5, --Capacitor Totem [192077] = 5, --Wind Rush Totem (talent) + [57994] = 6, --Wind Shear (interrupt) }, --enhancement [263] = { @@ -662,7 +680,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [198103] = 2, --Earth Elemental [8143] = 5, --Tremor Totem [192058] = 5, --Capacitor Totem - + [57994] = 6, --Wind Shear (interrupt) }, --restoration [264] = { @@ -674,6 +692,7 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { [207399] = 4, --Ancestral Protection Totem (talent) [198103] = 2, --Earth Elemental [8143] = 5, --Tremor Totem + [57994] = 6, --Wind Shear (interrupt) }, } @@ -683,7 +702,24 @@ LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = { --/dump GetTalentInfo (talentTier, talentColumn, 1) --example: to get the second talent of the last talent line, use: /dump GetTalentInfo (7, 2, 1) LIB_OPEN_RAID_COOLDOWNS_INFO = { - --> paladin + --interrupts + [6552] = {class = "WARRIOR", specs = {71, 72, 73}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Pummel + [2139] = {class = "MAGE", specs = {62, 63, 64}, cooldown = 24, silence = 6, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Counterspell + [15487] = {class = "PRIEST", specs = {258}, cooldown = 45, silence = 4, talent = false, cooldownWithTalent = 30, cooldownTalentId = 23137, type = 6, charges = 1}, --Silence (shadow) Last Word Talent to reduce cooldown in 15 seconds + [1766] = {class = "ROGUE", specs = {259, 260, 261}, cooldown = 15, silence = 5, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Kick + [96231] = {class = "PALADIN", specs = {66, 70}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Rebuke (protection and retribution) + [116705] = {class = "MONK", specs = {268, 269}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Spear Hand Strike (brewmaster and windwalker) + [57994] = {class = "SHAMAN", specs = {262, 263, 264}, cooldown = 12, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Wind Shear + [47528] = {class = "DEATHKNIGHT", specs = {250, 251, 252}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Mind Freeze + [106839] = {class = "DRUID", specs = {103, 104}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Skull Bash (feral, guardian) + [78675] = {class = "DRUID", specs = {102}, cooldown = 60, silence = 8, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Solar Beam (balance) + [147362] = {class = "HUNTER", specs = {253, 254}, cooldown = 24, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Counter Shot (beast mastery, marksmanship) + [187707] = {class = "HUNTER", specs = {255}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Muzzle (survival) + [183752] = {class = "DEMONHUNTER", specs = {577, 581}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false, type = 6, charges = 1}, --Disrupt + [19647] = {class = "WARLOCK", specs = {265, 266, 267}, cooldown = 24, silence = 6, talent = false, cooldownWithTalent = false, cooldownTalentId = false, pet = 417, type = 6, charges = 1}, --Spell Lock (pet felhunter ability) + [89766] = {class = "WARLOCK", specs = {266}, cooldown = 30, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, pet = 17252, type = 6, charges = 1}, --Axe Toss (pet felguard ability) + + --paladin [31884] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "PALADIN", type = 1}, --Avenging Wrath [216331] = {cooldown = 120, duration = 20, talent = 22190, charges = 1, class = "PALADIN", type = 1}, --Avenging Crusader (talent) [498] = {cooldown = 60, duration = 8, talent = false, charges = 1, class = "PALADIN", type = 2}, --Divine Protection @@ -705,7 +741,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [205191] = {cooldown = 60, duration = 10, talent = 22183, charges = 1, class = "PALADIN", type = 2}, --Eye for an Eye (talent) [184662] = {cooldown = 120, duration = 15, talent = false, charges = 1, class = "PALADIN", type = 2}, --Shield of Vengeance - --> warrior + --warrior [107574] = {cooldown = 90, duration = 20, talent = 22397, charges = 1, class = "WARRIOR", type = 1}, --Avatar [227847] = {cooldown = 90, duration = 5, talent = false, charges = 1, class = "WARRIOR", type = 1}, --Bladestorm [152277] = {cooldown = 60, duration = 6, talent = 21667, charges = 1, class = "WARRIOR", type = 1}, --Ravager (talent) @@ -720,8 +756,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [64382] = {cooldown = 180, duration = false, talent = false, charges = 1, class = "WARRIOR", type = 5}, --Shattering Throw [5246] = {cooldown = 90, duration = 8, talent = false, charges = 1, class = "WARRIOR", type = 5}, --Intimidating Shout - - --> warlock + --warlock [205180] = {cooldown = 180, duration = 20, talent = false, charges = 1, class = "WARLOCK", type = 1}, --Summon Darkglare [342601] = {cooldown = 3600, duration = false, talent = false, charges = 1, class = "WARLOCK", type = 1}, --Ritual of Doom [113860] = {cooldown = 120, duration = 20, talent = 19293, charges = 1, class = "WARLOCK", type = 1}, --Dark Soul: Misery (talent) @@ -735,10 +770,9 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [113858] = {cooldown = 120, duration = 20, talent = 23092, charges = 1, class = "WARLOCK", type = 1}, --Dark Soul: Instability (talent) [30283] = {cooldown = 60, duration = 3, talent = false, charges = 1, class = "WARLOCK", type = 5}, --Shadowfury [333889] = {cooldown = 180, duration = 15, talent = false, charges = 1, class = "WARLOCK", type = 5}, --Fel Domination - --[6789] = {cooldown = 45, duration = 3, talent = 19291, charges = 1, class = "WARLOCK", type = 5}, --Mortal Coil (talent) [5484] = {cooldown = 40, duration = 20, talent = 23465, charges = 1, class = "WARLOCK", type = 5}, --Howl of Terror (talent) - --> shaman + --shaman [198067] = {cooldown = 150, duration = 30, talent = false, charges = 1, class = "SHAMAN", type = 1}, --Fire Elemental [192249] = {cooldown = 150, duration = 30, talent = 19272, charges = 1, class = "SHAMAN", type = 1}, --Storm Elemental (talent) [108271] = {cooldown = 90, duration = 8, talent = false, charges = 1, class = "SHAMAN", type = 2}, --Astral Shift @@ -756,7 +790,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [8143] = {cooldown = 60, duration = 10, talent = false, charges = 1, class = "SHAMAN", type = 5}, --Tremor Totem [192077] = {cooldown = 120, duration = 15, talent = 21966, charges = 1, class = "SHAMAN", type = 5}, --Wind Rush Totem (talent) - --> monk + --monk [132578] = {cooldown = 180, duration = 25, talent = false, charges = 1, class = "MONK", type = 1}, --Invoke Niuzao, the Black Ox [115080] = {cooldown = 180, duration = false, talent = false, charges = 1, class = "MONK", type = 1}, --Touch of Death [115203] = {cooldown = 420, duration = 15, talent = false, charges = 1, class = "MONK", type = 2}, --Fortifying Brew @@ -768,7 +802,6 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [152173] = {cooldown = 90, duration = 12, talent = 21191, charges = 1, class = "MONK", type = 1}, --Serenity (talent) [122470] = {cooldown = 90, duration = 6, talent = false, charges = 1, class = "MONK", type = 2}, --Touch of Karma [322118] = {cooldown = 180, duration = 25, talent = false, charges = 1, class = "MONK", type = 4}, --Invoke Yulon, the Jade serpent --- [198664] = {cooldown = 180, duration = 25, talent = 22214, charges = 1, class = "MONK", type = 4}, --Invoke Chi-Ji, the Red Crane (talent) [243435] = {cooldown = 90, duration = 15, talent = false, charges = 1, class = "MONK", type = 2}, --Fortifying Brew [122783] = {cooldown = 90, duration = 6, talent = 20173, charges = 1, class = "MONK", type = 2}, --Diffuse Magic (talent) [116849] = {cooldown = 120, duration = 12, talent = false, charges = 1, class = "MONK", type = 3}, --Life Cocoon @@ -777,7 +810,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [116844] = {cooldown = 45, duration = 5, talent = 19995, charges = 1, class = "MONK", type = 5}, --Ring of peace (talent) [119381] = {cooldown = 50, duration = 3, talent = false, charges = 1, class = "MONK", type = 5}, --Leg Sweep - --> hunter + --hunter [193530] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "HUNTER", type = 1}, --Aspect of the Wild [19574] = {cooldown = 90, duration = 12, talent = false, charges = 1, class = "HUNTER", type = 1}, --Bestial Wrath [201430] = {cooldown = 180, duration = 12, talent = 23044, charges = 1, class = "HUNTER", type = 1}, --Stampede (talent) @@ -793,14 +826,13 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [187650] = {cooldown = 25, duration = 60, talent = false, charges = 1, class = "HUNTER", type = 5}, --Freezing Trap [186289] = {cooldown = 72, duration = 15, talent = false, charges = 1, class = "HUNTER", type = 5}, --Aspect of the eagle - --> druid + --druid [77761] = {cooldown = 120, duration = 8, talent = false, charges = 1, class = "DRUID", type = 4}, --Stampeding Roar [194223] = {cooldown = 180, duration = 20, talent = false, charges = 1, class = "DRUID", type = 1}, --Celestial Alignment [102560] = {cooldown = 180, duration = 30, talent = 21702, charges = 1, class = "DRUID", type = 1}, --Incarnation: Chosen of Elune (talent) [22812] = {cooldown = 60, duration = 12, talent = false, charges = 1, class = "DRUID", type = 2}, --Barkskin [108238] = {cooldown = 90, duration = false, talent = 18570, charges = 1, class = "DRUID", type = 2}, --Renewal (talent) [29166] = {cooldown = 180, duration = 12, talent = false, charges = 1, class = "DRUID", type = 3}, --Innervate - [78675] = {cooldown = 60, duration = 8, talent = false, charges = 1, class = "DRUID", type = 5}, --Solar Beam [106951] = {cooldown = 180, duration = 15, talent = false, charges = 1, class = "DRUID", type = 1}, --Berserk [102543] = {cooldown = 30, duration = 180, talent = 21704, charges = 1, class = "DRUID", type = 1}, --Incarnation: King of the Jungle (talent) [61336] = {cooldown = 120, duration = 6, talent = false, charges = 2, class = "DRUID", type = 2}, --Survival Instincts (2min feral 4min guardian, same spellid) @@ -815,7 +847,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [319454] = {cooldown = 300, duration = 45, talent = 18577, charges = 1, class = "DRUID", type = 5}, --Heart of the Wild (talent) [102793] = {cooldown = 60, duration = 10, talent = false, charges = 1, class = "DRUID", type = 5}, --Ursol's Vortex - --> death knight + --death knight [275699] = {cooldown = 90, duration = 15, talent = false, charges = 1, class = "DEATHKNIGHT", type = 1}, --Apocalypse [42650] = {cooldown = 480, duration = 30, talent = false, charges = 1, class = "DEATHKNIGHT", type = 1}, --Army of the Dead [49206] = {cooldown = 180, duration = 30, talent = 22110, charges = 1, class = "DEATHKNIGHT", type = 1}, --Summon Gargoyle (talent) @@ -836,7 +868,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [221562] = {cooldown = 45, duration = 5, talent = false, charges = 1, class = "DEATHKNIGHT", type = 5}, --Asphyxiate [212552] = {cooldown = 60, duration = 4, talent = 19228, charges = 1, class = "DEATHKNIGHT", type = 5}, --Wraith walk (talent) - --> demon hunter + --demon hunter [200166] = {cooldown = 240, duration = 30, talent = false, charges = 1, class = "DEMONHUNTER", type = 1}, --Metamorphosis [198589] = {cooldown = 60, duration = 10, talent = false, charges = 1, class = "DEMONHUNTER", type = 2}, --Blur [196555] = {cooldown = 120, duration = 5, talent = 21865, charges = 1, class = "DEMONHUNTER", type = 2}, --Netherwalk (talent) @@ -852,7 +884,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [202137] = {cooldown = 60, duration = 8, talent = false, charges = 1, class = "DEMONHUNTER", type = 5}, --Sigil of Silence [202138] = {cooldown = 90, duration = 6, talent = 22511, charges = 1, class = "DEMONHUNTER", type = 5}, --Sigil of Chains (talent) - --> mage + --mage [12042] = {cooldown = 90, duration = 10, talent = false, charges = 1, class = "MAGE", type = 1}, --Arcane Power [12051] = {cooldown = 90, duration = 6, talent = false, charges = 1, class = "MAGE", type = 1}, --Evocation [110960] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "MAGE", type = 2}, --Greater Invisibility @@ -868,7 +900,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [235219] = {cooldown = 300, duration = false, talent = false, charges = 1, class = "MAGE", type = 5}, --Cold Snap [113724] = {cooldown = 45, duration = 10, talent = 22471, charges = 1, class = "MAGE", type = 5}, --Ring of Frost (talent) - --> priest + --priest [10060] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "PRIEST", type = 1}, --Power Infusion [34433] = {cooldown = 180, duration = 15, talent = false, charges = 1, class = "PRIEST", type = 1}, --Shadowfiend [123040] = {cooldown = 60, duration = 12, talent = 22094, charges = 1, class = "PRIEST", type = 1}, --Mindbender (talent) @@ -892,7 +924,7 @@ LIB_OPEN_RAID_COOLDOWNS_INFO = { [205369] = {cooldown = 30, duration = 6, talent = 23375, charges = 1, class = "PRIEST", type = 5}, --Mind Bomb [228260] = {cooldown = 90, duration = 15, talent = false, charges = 1, class = "PRIEST", type = 1}, --Void Erruption - --> rogue + --rogue [79140] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "ROGUE", type = 1}, --Vendetta [1856] = {cooldown = 120, duration = 3, talent = false, charges = 1, class = "ROGUE", type = 2}, --Vanish [5277] = {cooldown = 120, duration = 10, talent = false, charges = 1, class = "ROGUE", type = 2}, --Evasion @@ -934,13 +966,13 @@ elseif (GetBuildInfo():match ("%d") == "2") then else LIB_OPEN_RAID_SPELL_CUSTOM_NAMES = { - [44461] = {name = GetSpellInfo(44461) .. " (" .. L["STRING_EXPLOSION"] .. ")"}, --> Living Bomb (explosion) - [59638] = {name = GetSpellInfo(59638) .. " (" .. L["STRING_MIRROR_IMAGE"] .. ")"}, --> Mirror Image's Frost Bolt (mage) - [88082] = {name = GetSpellInfo(88082) .. " (" .. L["STRING_MIRROR_IMAGE"] .. ")"}, --> Mirror Image's Fireball (mage) - [94472] = {name = GetSpellInfo(94472) .. " (" .. L["STRING_CRITICAL_ONLY"] .. ")"}, --> Atonement critical hit (priest) + [44461] = {name = GetSpellInfo(44461) .. " (" .. L["STRING_EXPLOSION"] .. ")"}, --Living Bomb (explosion) + [59638] = {name = GetSpellInfo(59638) .. " (" .. L["STRING_MIRROR_IMAGE"] .. ")"}, --Mirror Image's Frost Bolt (mage) + [88082] = {name = GetSpellInfo(88082) .. " (" .. L["STRING_MIRROR_IMAGE"] .. ")"}, --Mirror Image's Fireball (mage) + [94472] = {name = GetSpellInfo(94472) .. " (" .. L["STRING_CRITICAL_ONLY"] .. ")"}, --Atonement critical hit (priest) [33778] = {name = GetSpellInfo(33778) .. " (" .. L["STRING_BLOOM"] .. ")"}, --lifebloom (bloom) - [121414] = {name = GetSpellInfo(121414) .. " (" .. L["STRING_GLAIVE"] .. " #1)"}, --> glaive toss (hunter) - [120761] = {name = GetSpellInfo(120761) .. " (" .. L["STRING_GLAIVE"] .. " #2)"}, --> glaive toss (hunter) + [121414] = {name = GetSpellInfo(121414) .. " (" .. L["STRING_GLAIVE"] .. " #1)"}, --glaive toss (hunter) + [120761] = {name = GetSpellInfo(120761) .. " (" .. L["STRING_GLAIVE"] .. " #2)"}, --glaive toss (hunter) [212739] = {name = GetSpellInfo(212739) .. " (" .. L["STRING_MAINTARGET"] .. ")"}, --DK Epidemic [215969] = {name = GetSpellInfo(215969) .. " (" .. L["STRING_AOE"] .. ")"}, --DK Epidemic [70890] = {name = GetSpellInfo(70890) .. " (" .. L["STRING_SHADOW"] .. ")"}, --DK Scourge Strike @@ -951,36 +983,37 @@ else [339538] = {name = GetSpellInfo(224266) .. " (" .. L["STRING_TEMPLAR_VINDCATION"] .. ")"}, -- [343355] = {name = GetSpellInfo(343355) .. " (" .. L["STRING_PROC"] .. ")"}, --shadow priest's void bold proc - --> shadowlands trinkets + --shadowlands trinkets [345020] = {name = GetSpellInfo(345020) .. " (" .. L["STRING_TRINKET"] .. ")"}, } end +--interrupt list using proxy from cooldown list LIB_OPEN_RAID_SPELL_INTERRUPT = { - [6552] = {class = "WARRIOR", specs = {71, 72, 73}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Pummel + [6552] = LIB_OPEN_RAID_COOLDOWNS_INFO[6552], --Pummel - [2139] = {class = "MAGE", specs = {62, 63, 64}, cooldown = 24, silence = 6, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Counterspell + [2139] = LIB_OPEN_RAID_COOLDOWNS_INFO[2139], --Counterspell - [15487] = {class = "PRIEST", specs = {258}, cooldown = 45, silence = 4, talent = false, cooldownWithTalent = 30, cooldownTalentId = 23137}, --Silence (shadow) Last Word Talent to reduce cooldown in 15 seconds + [15487] = LIB_OPEN_RAID_COOLDOWNS_INFO[15487], --Silence (shadow) Last Word Talent to reduce cooldown in 15 seconds - [1766] = {class = "ROGUE", specs = {259, 260, 261}, cooldown = 15, silence = 5, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Kick + [1766] = LIB_OPEN_RAID_COOLDOWNS_INFO[1766], --Kick - [96231] = {class = "PALADIN", specs = {66, 70}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Rebuke (protection and retribution) + [96231] = LIB_OPEN_RAID_COOLDOWNS_INFO[96231], --Rebuke (protection and retribution) - [116705] = {class = "MONK", specs = {268, 269}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Spear Hand Strike (brewmaster and windwalker) + [116705] = LIB_OPEN_RAID_COOLDOWNS_INFO[116705], --Spear Hand Strike (brewmaster and windwalker) - [57994] = {class = "SHAMAN", specs = {262, 263, 264}, cooldown = 12, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Wind Shear + [57994] = LIB_OPEN_RAID_COOLDOWNS_INFO[57994], --Wind Shear - [47528] = {class = "DEATHKNIGHT", specs = {250, 251, 252}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Mind Freeze + [47528] = LIB_OPEN_RAID_COOLDOWNS_INFO[47528], --Mind Freeze - [106839] = {class = "DRUID", specs = {103, 104}, cooldown = 15, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Skull Bash (feral, guardian) - [78675] = {class = "DRUID", specs = {102}, cooldown = 60, silence = 8, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Solar Beam (balance) + [106839] = LIB_OPEN_RAID_COOLDOWNS_INFO[106839], --Skull Bash (feral, guardian) + [78675] = LIB_OPEN_RAID_COOLDOWNS_INFO[78675], --Solar Beam (balance) - [147362] = {class = "HUNTER", specs = {253, 254}, cooldown = 24, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Counter Shot (beast mastery, marksmanship) - [187707] = {class = "HUNTER", specs = {255}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Muzzle (survival) + [147362] = LIB_OPEN_RAID_COOLDOWNS_INFO[147362], --Counter Shot (beast mastery, marksmanship) + [187707] = LIB_OPEN_RAID_COOLDOWNS_INFO[187707], --Muzzle (survival) - [183752] = {class = "DEMONHUNTER", specs = {577, 581}, cooldown = 15, silence = 3, talent = false, cooldownWithTalent = false, cooldownTalentId = false}, --Disrupt + [183752] = LIB_OPEN_RAID_COOLDOWNS_INFO[183752], --Disrupt - [19647] = {class = "WARLOCK", specs = {265, 266, 267}, cooldown = 24, silence = 6, talent = false, cooldownWithTalent = false, cooldownTalentId = false, pet = 417}, --Spell Lock (pet felhunter ability) - [89766] = {class = "WARLOCK", specs = {266}, cooldown = 30, silence = 4, talent = false, cooldownWithTalent = false, cooldownTalentId = false, pet = 17252}, --Axe Toss (pet felguard ability) + [19647] = LIB_OPEN_RAID_COOLDOWNS_INFO[19647], --Spell Lock (pet felhunter ability) + [89766] = LIB_OPEN_RAID_COOLDOWNS_INFO[89766], --Axe Toss (pet felguard ability) } \ No newline at end of file diff --git a/Libs/LibOpenRaid/docs.txt b/Libs/LibOpenRaid/docs.txt index 44c7d583..781472d6 100644 --- a/Libs/LibOpenRaid/docs.txt +++ b/Libs/LibOpenRaid/docs.txt @@ -30,7 +30,7 @@ allUnitsCooldowns = { --get all cooldowns from a single unit local unitCooldows = openRaidLib.GetUnitCooldowns(unitId [,filter]) @unittId: "player", "target", "party2", "raid12", ... -@filter: "defensive-raid", "defensive-target", "defensive-personal", "ofensive", "utility" +@filter: "defensive-raid", "defensive-target", "defensive-personal", "ofensive", "utility", "interrupt" can pass more than one filter separating by comma, example: "defensive-raid, defensive-target" unitCooldows = { [cooldownSpellId] = cooldownInfo, diff --git a/frames/window_cdtracker.lua b/frames/window_cdtracker.lua index ae716cc9..fb05fafb 100644 --- a/frames/window_cdtracker.lua +++ b/frames/window_cdtracker.lua @@ -466,6 +466,17 @@ end desc = "Exanple: druid roar.", }, + {--filter: show interrupt cooldowns + type = "toggle", + get = function() return Details.ocd_tracker.filters["interrupt"] end, + set = function (self, fixedparam, value) + Details.ocd_tracker.filters["interrupt"] = value + Details.CooldownTracking.RefreshCooldownFrames() + end, + name = "Interrupt Cooldowns", + desc = "Exanple: rogue kick.", + }, + {type = "breakline"}, {--bar width @@ -512,7 +523,7 @@ end } - DF:BuildMenu(f, generalOptions, 5, -35, 150, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template) + DF:BuildMenu(f, generalOptions, 5, -30, 150, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template) --cooldown selection local cooldownProfile = Details.ocd_tracker.cooldowns