local mod = DBM:NewMod(1214, "DBM-Party-WoD", 5, 556) local L = mod:GetLocalizedStrings() local wowToc = DBM:GetTOC() mod.statTypes = "normal,heroic,mythic,challenge,timewalker" if (wowToc >= 100200) then mod.upgradedMPlus = true mod.sendMainBossGUID = true end mod:SetRevision("20231203060511") mod:SetCreatureID(81522) mod:SetEncounterID(1746) mod:SetHotfixNoticeRev(20231020000000) --mod:SetMinSyncRevision(20211203000000) mod:RegisterCombat("combat") mod:RegisterEventsInCombat( "SPELL_CAST_START 164357", -- "SPELL_CAST_SUCCESS 164302", "SPELL_SUMMON 164556", "SPELL_AURA_APPLIED 164275 164302", "SPELL_AURA_REMOVED 164275", "UNIT_SPELLCAST_SUCCEEDED boss1" -- "CHAT_MSG_MONSTER_EMOTE", -- "RAID_BOSS_WHISPER" ) --[[ ability.id = 164357 and type = "begincast" or ability.id = 164302 and type = "cast" or ability.id = 164275 and (type = "applybuff" or type = "removebuff") or type = "dungeonencounterstart" or type = "dungeonencounterend" or ability.id = 181113 and type = "cast" or (source.type = "NPC" and source.firstSeen = timestamp) or (target.type = "NPC" and target.firstSeen = timestamp) --]] --NOTE: Mod is just using 10.2 values, since fight wasn't reworked i'm not making a hybrid mod for timers that have slight differences local warnBrittleBark = mod:NewSpellAnnounce(164275, 1) local warnBrittleBarkOver = mod:NewEndAnnounce(164275, 2) local warnUncheckedGrowth = mod:NewTargetAnnounce(164294, 2) local warnUncheckedGrowthSpawn = mod:NewSpellAnnounce(164556, 3)--Add Spawn local specWarnLivingLeaves = mod:NewSpecialWarningMove(169495, nil, nil, nil, 1, 8) local specWarnUncheckedGrowthYou = mod:NewSpecialWarningYou(164294, nil, nil, nil, 1, 2)--The add fixate is on you local specWarnUncheckedGrowth = mod:NewSpecialWarningGTFO(164294, nil, nil, nil, 1, 8)--GTFO local specWarnUncheckedGrowthAdd = mod:NewSpecialWarningSwitch(164556, false, nil, nil, 1, 2)--Spawn local specWarnParchedGrasp = mod:NewSpecialWarningSpell(164357, "Tank", nil, nil, 1, 2) local timerParchedGrasp = mod:NewCDTimer(16, 164357, nil, "Tank", 2, 5, nil, DBM_COMMON_L.TANK_ICON) local timerBrittleBarkCD = mod:NewCDTimer(40, 164275, nil, nil, nil, 6)--30 seconds pre 10.2 https://www.warcraftlogs.com/reports/y2cYmZVWKqGkAHbn#fight=last&pins=2%24Off%24%23244F4B%24expression%24ability.id%20%3D%20164275%20or%20ability.id%20%3D%20164556&view=events&translate=true local timerUncheckedGrowthCD = mod:NewCDTimer(12, 164294, nil, nil, nil, 3)--LW uses spellid and not joural ID for timer, so we have to match it for WAs --mod:GroupSpells(164294, -10098)--No longer combined since each needs a diff WA key in UI now function mod:OnCombatStart(delay) timerUncheckedGrowthCD:Start(6-delay) timerParchedGrasp:Start(9.6-delay) timerBrittleBarkCD:Start(39.9-delay) if not self:IsTrivial() then self:RegisterShortTermEvents( "SPELL_PERIODIC_DAMAGE 169495 164294", "SPELL_PERIODIC_MISSED 169495 164294" ) end end function mod:OnCombatEnd() self:UnregisterShortTermEvents() end function mod:SPELL_CAST_START(args) local spellId = args.spellId if spellId == 164357 then specWarnParchedGrasp:Show() specWarnParchedGrasp:Play("breathsoon") timerParchedGrasp:Start() end end --[[ function mod:SPELL_CAST_SUCCESS(args) local spellId = args.spellId if spellId == 164302 then timerUncheckedGrowthCD:Start() end end --]] function mod:SPELL_SUMMON(args) local spellId = args.spellId if spellId == 164556 and self:AntiSpam(4, 1) then if self.Options.SpecWarn164556switch then specWarnUncheckedGrowthAdd:Show() specWarnUncheckedGrowthAdd:Play("killmob") else warnUncheckedGrowthSpawn:Show() end end end function mod:SPELL_AURA_APPLIED(args) local spellId = args.spellId if spellId == 164275 then warnBrittleBark:Show() timerParchedGrasp:Cancel() if self:IsNormal() then--Heroic and above CD continues without reset timerUncheckedGrowthCD:Stop() end elseif spellId == 164302 then if args:IsPlayer() then specWarnUncheckedGrowthYou:Show() specWarnUncheckedGrowthYou:Play("targetyou") else warnUncheckedGrowth:Show(args.destName) end end end function mod:SPELL_AURA_REMOVED(args) local spellId = args.spellId if spellId == 164275 then warnBrittleBarkOver:Show() timerParchedGrasp:Start(3.6) timerBrittleBarkCD:Start(39.9) timerUncheckedGrowthCD:Restart(3.6)--Needs more review to verify end end function mod:SPELL_PERIODIC_DAMAGE(_, _, _, _, destGUID, destName, _, _, spellId, spellName) if spellId == 169495 and destGUID == UnitGUID("player") and self:AntiSpam(2, 2) then--Deprecated? specWarnLivingLeaves:Show(spellName) specWarnLivingLeaves:Play("watchfeet") elseif spellId == 164294 and destGUID == UnitGUID("player") and self:AntiSpam(2, 2) then specWarnUncheckedGrowth:Show(spellName) specWarnUncheckedGrowth:Play("watchfeet") end end mod.SPELL_PERIODIC_MISSED = mod.SPELL_PERIODIC_DAMAGE function mod:UNIT_SPELLCAST_SUCCEEDED(uId, _, spellId) if spellId == 164306 then timerUncheckedGrowthCD:Start() end end --[[ function mod:CHAT_MSG_MONSTER_EMOTE(msg)--Message doesn't matter, it occurs only for one thing during this fight (assumption may be invalid in rework) if self.Options["SpecWarn-10098switch"] then specWarnUncheckedGrowthAdd:Show() specWarnUncheckedGrowthAdd:Play("killmob") else warnUncheckedGrowth:Show() end end function mod:RAID_BOSS_WHISPER() specWarnUncheckedGrowthYou:Show() specWarnUncheckedGrowthYou:Play("targetyou") end --]]