local mod = DBM : NewMod ( 2609 , " DBM-Raids-WarWithin " , 1 , 1273 )
local L = mod : GetLocalizedStrings ( )
mod : SetRevision ( " 20240720200947 " )
mod : SetCreatureID ( 214504 )
mod : SetEncounterID ( 2918 )
--mod:SetUsedIcons(1, 2, 3)
mod : SetHotfixNoticeRev ( 20240720000000 )
mod : SetMinSyncRevision ( 20240720000000 )
mod.respawnTime = 29
mod : RegisterCombat ( " combat " )
mod : RegisterEventsInCombat (
" SPELL_CAST_START 444687 439789 455373 439784 439795 439811 454989 452806 456853 456762 " ,
" SPELL_AURA_APPLIED 458067 " ,
" SPELL_AURA_APPLIED_DOSE 458067 " ,
" SPELL_INTERRUPT "
-- "SPELL_PERIODIC_DAMAGE",
-- "SPELL_PERIODIC_MISSED",
-- "UNIT_SPELLCAST_START boss1"
)
--TODO, maybe auto mark https://www.wowhead.com/beta/spell=434579/corrosion so still assign clears by icon
--TODO, maybe use https://www.wowhead.com/beta/spell=455287/infested-bite to announce or mark infested spawns after the fact for healing?
--TODO, emphasize Enveloping webs cast itself? will probably only have a soon warning for it that's emphasized with a precise timer
--TODO, change option keys to match BW for weak aura compatability before live
--[[
( ability.id = 444687 or ability.id = 439789 or ability.id = 455373 or ability.id = 439784 or ability.id = 439795 or ability.id = 439811 or ability.id = 454989 or ability.id = 452806 or ability.id = 456853 or ability.id = 456841 or ability.id = 456762 ) and type = " begincast "
or stoppedability.id = 452806
--]]
local warnSavageWound = mod : NewStackAnnounce ( 458067 , 2 , nil , " Tank|Healer " )
local warnRollingAcid = mod : NewIncomingCountAnnounce ( 439789 , 2 ) --General announce, private aura sound will be personal emphasis
local warnInfestedSpawn = mod : NewIncomingCountAnnounce ( 455373 , 2 )
local warnSpinneretsStrands = mod : NewIncomingCountAnnounce ( 439784 , 3 ) --General announce, private aura sound will be personal emphasis
local warnErosiveSpray = mod : NewCountAnnounce ( 439811 , 2 )
local warnEnvelopingWebs = mod : NewCountAnnounce ( 454989 , 4 , nil , nil , 157317 ) --Shortname "Webs"
local warnAcidEruption = mod : NewCastAnnounce ( 452806 , 4 )
local specWarnSavageAssault = mod : NewSpecialWarningDefensive ( 444687 , nil , nil , nil , 1 , 2 )
local specWarnSavageWoundSwap = mod : NewSpecialWarningTaunt ( 458067 , nil , nil , nil , 1 , 2 )
local specWarnWebReave = mod : NewSpecialWarningCount ( 439795 , nil , nil , nil , 2 , 2 )
--local yellWebReave = mod:NewShortYell(439795, DBM_COMMON_L.GROUPSOAK, nil, nil, "YELL")
--local yellSearingAftermathFades = mod:NewShortFadesYell(422577)
local specWarnAcidEruption = mod : NewSpecialWarningInterrupt ( 452806 , " HasInterrupt " , nil , nil , 1 , 2 )
--local specWarnGTFO = mod:NewSpecialWarningGTFO(421532, nil, nil, nil, 1, 8)
local timerSavageAssaultCD = mod : NewCDCountTimer ( 49 , 444687 , DBM_COMMON_L.TANKDEBUFF .. " (%s) " , " Tank|Healer " , nil , 5 , nil , DBM_COMMON_L.TANK_ICON )
local timerRollingAcidCD = mod : NewCDCountTimer ( 21.3 , 439789 , nil , nil , nil , 3 )
local timerInfestedSpawnCD = mod : NewCDCountTimer ( 21.3 , 455373 , nil , nil , nil , 1 )
local timerSpinneretsStrandsCD = mod : NewCDCountTimer ( 33.9 , 439784 , nil , nil , nil , 3 )
local timerWebReaveCD = mod : NewCDCountTimer ( 49 , 439795 , nil , nil , nil , 3 , nil , DBM_COMMON_L.DEADLY_ICON )
local timerErosiveSprayCD = mod : NewCDCountTimer ( 49 , 439811 , nil , nil , nil , 2 , nil , DBM_COMMON_L.HEALER_ICON )
local timerEnvelopingWebsCD = mod : NewCDCountTimer ( 49 , 454989 , 157317 , nil , nil , 3 , nil , DBM_COMMON_L.MYTHIC_ICON ) --Shortname "Webs"
local timerMovementCD = mod : NewStageContextCountTimer ( 49 , 334371 , nil , nil , nil , 6 , 178717 )
mod : AddPrivateAuraSoundOption ( 439790 , true , 439789 , 1 ) --Rolling Acid target
mod : AddPrivateAuraSoundOption ( 455284 , true , 455373 , 1 ) --Infested Spawn target
mod : AddPrivateAuraSoundOption ( 439783 , true , 439784 , 1 ) --Spineret's Strands target
mod.vb . movementFinished = false
--Totals used for fight overall
mod.vb . assaultCountTotal = 0
mod.vb . rollingCountTotal = 0
mod.vb . spawnCountTotal = 0
mod.vb . strandsCountTotal = 0
mod.vb . sprayCountTotal = 0
mod.vb . envelopingCountTotal = 0
--Non totals used for phase counts
mod.vb . assaultCount = 0
mod.vb . rollingCount = 0
mod.vb . spawnCount = 0
mod.vb . strandsCount = 0
mod.vb . sprayCount = 0
mod.vb . envelopingCount = 0
--Totals that don't need phase counts
mod.vb . reaveCount = 0
mod.vb . movementCount = 0
local savedDifficulty = " heroic "
local allTimers = {
[ " normal " ] = { --Complete up to 6:44
[ 1 ] = {
--Erosive Spray
[ 439811 ] = { 3.0 , 31.4 , 47.0 } ,
--Infested Spawn
[ 455373 ] = { 62.4 } ,
--Rolling Acid
[ 439789 ] = { 43.3 } ,
--Savage Assault
[ 444687 ] = { 10.9 , 15.6 , 23.5 , 7.8 , 15.7 } ,
--Spinneret's Strands
[ 439784 ] = { 14.9 , 52.9 } ,
} ,
[ 2 ] = {
--Erosive Spray
[ 439811 ] = { 35.0 , 47.0 } ,
--Infested Spawn
[ 455373 ] = { 41.4 } ,
--Rolling Acid
[ 439789 ] = { 18.3 , 52.9 } ,
--Savage Assault
[ 444687 ] = { 3.6 , 7.8 , 15.7 , 23.5 , 7.8 , 15.7 } ,
--Spinneret's Strands
[ 439784 ] = { 62.4 } ,
} ,
[ 3 ] = {
--Erosive Spray
[ 439811 ] = { 35.0 , 47.0 } ,
--Infested Spawn
[ 455373 ] = { 15.9 , 52.9 } ,
--Rolling Acid
[ 439789 ] = { 65.4 } ,
--Savage Assault
[ 444687 ] = { 3.6 , 7.9 , 15.7 , 23.5 , 7.8 , 15.7 } ,
--Spinneret's Strands
[ 439784 ] = { 40.9 } ,
} ,
[ 4 ] = {
--Erosive Spray
[ 439811 ] = { 35.0 } ,
--Infested Spawn
[ 455373 ] = { 41.4 } ,
--Rolling Acid
[ 439789 ] = { 65.4 } ,
--Savage Assault
[ 444687 ] = { 3.6 , 7.8 , 15.7 , 23.5 , 7.8 , 15.7 } ,
--Spinneret's Strands
[ 439784 ] = { 15.3 , 52.9 } ,
} ,
[ 5 ] = {
--Erosive Spray
[ 439811 ] = { 0 } ,
--Infested Spawn
[ 455373 ] = { 0 } ,
--Rolling Acid
[ 439789 ] = { 0 } ,
--Savage Assault
[ 444687 ] = { 0 } ,
--Spinneret's Strands
[ 439784 ] = { 0 } ,
} ,
[ 6 ] = {
--Erosive Spray
[ 439811 ] = { 0 } ,
--Infested Spawn
[ 455373 ] = { 0 } ,
--Rolling Acid
[ 439789 ] = { 0 } ,
--Savage Assault
[ 444687 ] = { 0 } ,
--Spinneret's Strands
[ 439784 ] = { 0 } ,
} ,
[ 7 ] = {
--Erosive Spray
[ 439811 ] = { 0 } ,
--Infested Spawn
[ 455373 ] = { 0 } ,
--Rolling Acid
[ 439789 ] = { 0 } ,
--Savage Assault
[ 444687 ] = { 0 } ,
--Spinneret's Strands
[ 439784 ] = { 0 } ,
} ,
} ,
[ " heroic " ] = { --Complete up to 10:07
[ 1 ] = {
--Erosive Spray
[ 439811 ] = { 3.0 , 29.6 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 59.0 } ,
--Rolling Acid
[ 439789 ] = { 41.4 } ,
--Savage Assault
[ 444687 ] = { 10.5 , 13.0 , 23.0 , 6.5 , 14.9 } ,
--Spinneret's Strands
[ 439784 ] = { 14.1 , 27.1 , 20.2 } ,
} ,
[ 2 ] = {
--Erosive Spray
[ 439811 ] = { 33.3 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 40.5 } ,
--Rolling Acid
[ 439789 ] = { 16.7 , 30.2 , 19.6 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.6 , 5.9 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 59.1 } ,
} ,
[ 3 ] = {
--Erosive Spray
[ 439811 ] = { 33.3 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 15.2 , 29.7 , 20.2 } ,
--Rolling Acid
[ 439789 ] = { 61.2 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.7 , 5.9 , 14.8 , 3.5 } ,
--Spinneret's Strands
[ 439784 ] = { 40.0 } ,
} ,
[ 4 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 40.5 } ,
--Rolling Acid
[ 439789 ] = { 61.2 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.7 , 5.9 , 14.9 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 14.7 , 30.3 , 19.7 } ,
} ,
[ 5 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 59.6 } ,
--Rolling Acid
[ 439789 ] = { 16.7 , 29.8 , 20.2 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.1 , 6.5 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 39.9 } ,
} ,
[ 6 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 15.2 , 29.8 , 20.2 } ,
--Rolling Acid
[ 439789 ] = { 42.0 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.8 , 5.9 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 59.1 } ,
} ,
[ 7 ] = {
--Erosive Spray
[ 439811 ] = { 0 } ,
--Infested Spawn
[ 455373 ] = { 0 } ,
--Rolling Acid
[ 439789 ] = { 0 } ,
--Savage Assault
[ 444687 ] = { 0 } ,
--Spinneret's Strands
[ 439784 ] = { 0 } ,
} ,
} ,
[ " mythic " ] = { --11:00
[ 1 ] = {
--Erosive Spray
[ 439811 ] = { 2.9 , 29.6 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 39.8 } ,
--Rolling Acid
[ 439789 ] = { 16.0 , 30.3 } ,
--Savage Assault
[ 444687 ] = { 10.3 , 14.8 , 23.8 , 9.0 , 11.7 } ,
--Spinneret's Strands
[ 439784 ] = { 19.6 , 45.0 } ,
--Enveloping Webs
[ 454989 ] = { 60.1 } ,
} ,
[ 2 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 20.8 , 24.2 } ,
--Rolling Acid
[ 439789 ] = { 61.2 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.7 , 5.9 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 40.0 } ,
--Enveloping Webs
[ 454989 ] = { 14.7 , 50.0 } ,
} ,
[ 3 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 20.8 } ,
--Rolling Acid
[ 439789 ] = { 16.7 , 29.7 , 14.7 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.1 , 6.4 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 40.0 } ,
--Enveloping Webs
[ 454989 ] = { 64.7 } ,
} ,
[ 4 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 15.2 , 25.2 } ,
--Rolling Acid
[ 439789 ] = { 0 } , --Not cast on 4th area, bug?
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.6 , 6.0 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 20.3 , 38.9 } ,
--Enveloping Webs
[ 454989 ] = { 45.0 , 19.7 } ,
} ,
[ 5 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 15.2 , 29.7 } ,
--Rolling Acid
[ 439789 ] = { 22.3 , 44.4 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.7 , 5.9 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 59.1 } ,
--Enveloping Webs
[ 454989 ] = { 40.0 } ,
} ,
[ 6 ] = {
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } ,
--Infested Spawn
[ 455373 ] = { 20.7 } ,
--Rolling Acid
[ 439789 ] = { 66.7 } ,
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.1 , 6.5 , 14.8 , 3.7 } ,
--Spinneret's Strands
[ 439784 ] = { 14.7 , 25.3 } ,
--Enveloping Webs
[ 454989 ] = { 44.5 , 14.6 } ,
} ,
[ 7 ] = { --Not complete
--Erosive Spray
[ 439811 ] = { 33.2 , 44.4 } , --44.4 is assumed
--Infested Spawn
[ 455373 ] = { 0 } , --Not enough data
--Rolling Acid
[ 439789 ] = { 22.3 } , --Not enough data
--Savage Assault
[ 444687 ] = { 11.0 , 14.8 , 23.1 , 5.9 , 14.8 , 3.7 } , --23 + is assumed
--Spinneret's Strands
[ 439784 ] = { 14.7 } , --Not enough data
--Enveloping Webs
[ 454989 ] = { 0 } , --Not enough data
} ,
} ,
}
function mod : OnCombatStart ( delay )
self : SetStage ( 1 )
self.vb . movementFinished = false
self.vb . assaultCountTotal = 0
self.vb . rollingCountTotal = 0
self.vb . spawnCountTotal = 0
self.vb . strandsCountTotal = 0
self.vb . sprayCountTotal = 0
self.vb . envelopingCountTotal = 0
self.vb . assaultCount = 0
self.vb . rollingCount = 0
self.vb . spawnCount = 0
self.vb . strandsCount = 0
self.vb . sprayCount = 0
self.vb . envelopingCount = 0
self.vb . reaveCount = 0
self.vb . movementCount = 0
if self : IsMythic ( ) then
savedDifficulty = " mythic "
timerWebReaveCD : Start ( 51.1 - delay , 1 ) --Only mythic gets one before first movement, but heroic might now too, need to recheck heroic
timerEnvelopingWebsCD : Start ( 60.1 - delay , 1 )
elseif self : IsHeroic ( ) then
savedDifficulty = " heroic "
else --Combine LFR and Normal
savedDifficulty = " normal "
end
timerSavageAssaultCD : Start ( allTimers [ savedDifficulty ] [ 1 ] [ 444687 ] [ 1 ] - delay , 1 )
timerRollingAcidCD : Start ( allTimers [ savedDifficulty ] [ 1 ] [ 439789 ] [ 1 ] - delay , 1 )
timerInfestedSpawnCD : Start ( allTimers [ savedDifficulty ] [ 1 ] [ 455373 ] [ 1 ] - delay , 1 )
timerSpinneretsStrandsCD : Start ( allTimers [ savedDifficulty ] [ 1 ] [ 439784 ] [ 1 ] - delay , 1 )
timerErosiveSprayCD : Start ( allTimers [ savedDifficulty ] [ 1 ] [ 439811 ] [ 1 ] - delay , 1 )
timerMovementCD : Start ( self : IsMythic ( ) and 86.3 or 90 , 1 )
self : EnablePrivateAuraSound ( 439790 , " targetyou " , 2 ) --Raid version, (434406 is in dungeon)
--self:EnablePrivateAuraSound(434406, "targetyou", 2, 439790)--Likely dungeon version of Rolling Acid
self : EnablePrivateAuraSound ( 455284 , " mobout " , 2 ) --Maybe better sound later, but this one does say "mob out" as in "mob on you, get out and spread" which is the mechanic
self : EnablePrivateAuraSound ( 439815 , " mobout " , 2 , 455284 ) --Secondary ID for Infested Spawn
self : EnablePrivateAuraSound ( 439783 , " pullin " , 12 ) --Raid version of Spinneret's Strands
-- self:EnablePrivateAuraSound(434090, "pullin", 12, 439783)--Likely the Dungeon version of Spinneret's Strands
end
function mod : OnTimerRecovery ( )
if self : IsMythic ( ) then
savedDifficulty = " mythic "
elseif self : IsHeroic ( ) then
savedDifficulty = " heroic "
else --Combine LFR and Normal
savedDifficulty = " normal "
end
end
function mod : SPELL_CAST_START ( args )
local spellId = args.spellId
if spellId == 444687 then
self.vb . assaultCountTotal = self.vb . assaultCountTotal + 1
self.vb . assaultCount = self.vb . assaultCount + 1
if self : IsTanking ( " player " , " boss1 " , nil , true ) then
specWarnSavageAssault : Show ( )
specWarnSavageAssault : Play ( " defensive " )
end
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . assaultCount + 1 )
if timer then
timerSavageAssaultCD : Start ( timer , self.vb . assaultCountTotal + 1 )
end
elseif spellId == 439789 then
self.vb . rollingCountTotal = self.vb . rollingCountTotal + 1
self.vb . rollingCount = self.vb . rollingCount + 1
warnRollingAcid : Show ( self.vb . rollingCountTotal )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . rollingCount + 1 )
if timer then
timerRollingAcidCD : Start ( timer , self.vb . rollingCountTotal + 1 )
end
elseif spellId == 455373 then
self.vb . spawnCountTotal = self.vb . spawnCountTotal + 1
self.vb . spawnCount = self.vb . spawnCount + 1
warnInfestedSpawn : Show ( self.vb . spawnCountTotal )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . spawnCount + 1 )
if timer then
timerInfestedSpawnCD : Start ( timer , self.vb . spawnCountTotal + 1 )
end
elseif spellId == 439784 then
self.vb . strandsCountTotal = self.vb . strandsCountTotal + 1
self.vb . strandsCount = self.vb . strandsCount + 1
warnSpinneretsStrands : Show ( self.vb . strandsCountTotal )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . strandsCount + 1 )
if timer then
timerSpinneretsStrandsCD : Start ( timer , self.vb . strandsCountTotal + 1 )
end
elseif spellId == 439795 then
self.vb . reaveCount = self.vb . reaveCount + 1
specWarnWebReave : Show ( self.vb . reaveCount )
specWarnWebReave : Play ( " gathershare " )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . reaveCount + 1 )
if timer then
timerWebReaveCD : Start ( timer , self.vb . reaveCount + 1 )
end
elseif spellId == 439811 then
self.vb . sprayCountTotal = self.vb . sprayCountTotal + 1
self.vb . sprayCount = self.vb . sprayCount + 1
warnErosiveSpray : Show ( self.vb . sprayCountTotal )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . sprayCount + 1 )
if timer then
timerErosiveSprayCD : Start ( timer , self.vb . sprayCountTotal + 1 )
end
elseif spellId == 454989 then --Mythic
self.vb . envelopingCountTotal = self.vb . envelopingCountTotal + 1
self.vb . envelopingCount = self.vb . envelopingCount + 1
warnEnvelopingWebs : Show ( self.vb . envelopingCountTotal )
local timer = self : GetFromTimersTable ( allTimers , savedDifficulty , self.vb . phase , spellId , self.vb . envelopingCount + 1 )
if timer then
timerEnvelopingWebsCD : Start ( timer , self.vb . envelopingCountTotal + 1 )
end
elseif spellId == 452806 then
if self.Options . SpecWarn452806Interrupt and self : CheckInterruptFilter ( args.sourceGUID , false , true ) then
specWarnAcidEruption : Show ( args.sourceName )
specWarnAcidEruption : Play ( " kickcast " )
else
warnAcidEruption : Show ( )
end
elseif spellId == 456853 then --Inital Rain
self.vb . movementFinished = false
self.vb . movementCount = self.vb . movementCount + 1
elseif spellId == 456762 then --Secondary Rain
self.vb . movementFinished = true
end
end
function mod : SPELL_AURA_APPLIED ( args )
local spellId = args.spellId
if spellId == 458067 then
local uId = DBM : GetRaidUnitId ( args.destName )
if self : IsTanking ( uId ) then
if not DBM : UnitDebuff ( " player " , spellId ) and not UnitIsDeadOrGhost ( " player " ) then
specWarnSavageWoundSwap : Show ( args.destName )
specWarnSavageWoundSwap : Play ( " tauntboss " )
else
warnSavageWound : Show ( args.destName , args.amount or 1 )
end
end
end
end
mod.SPELL_AURA_APPLIED_DOSE = mod.SPELL_AURA_APPLIED
function mod : SPELL_INTERRUPT ( args )
if args.extraSpellId == 452806 and self.vb . movementFinished then
self : SetStage ( 0 )
self.vb . assaultCount = 0
self.vb . rollingCount = 0
self.vb . spawnCount = 0
self.vb . strandsCount = 0
self.vb . sprayCount = 0
self.vb . envelopingCount = 0
if self : IsHard ( ) then
timerWebReaveCD : Start ( 3.6 , self.vb . reaveCount + 1 )
end
if self : IsMythic ( ) then
timerEnvelopingWebsCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 454989 ] [ 1 ] , self.vb . envelopingCountTotal + 1 )
end
timerSavageAssaultCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 444687 ] [ 1 ] , self.vb . assaultCountTotal + 1 )
timerRollingAcidCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 439789 ] [ 1 ] , self.vb . rollingCountTotal + 1 )
timerInfestedSpawnCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 455373 ] [ 1 ] , self.vb . spawnCountTotal + 1 )
timerSpinneretsStrandsCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 439784 ] [ 1 ] , self.vb . strandsCountTotal + 1 )
timerErosiveSprayCD : Start ( allTimers [ savedDifficulty ] [ self.vb . phase ] [ 439811 ] [ 1 ] , self.vb . sprayCountTotal + 1 )
timerMovementCD : Start ( self : IsHard ( ) and ( self.vb . movementCount == 5 and 115 or 86.3 ) or 90.5 , self.vb . movementCount + 1 ) --5th movement rule is confirmed on mythic but not on heroic
end
end
--[[
function mod : SPELL_PERIODIC_DAMAGE ( _ , _ , _ , _ , destGUID , _ , _ , _ , spellId , spellName )
if spellId == 421532 and destGUID == UnitGUID ( " player " ) and self : AntiSpam ( 2 , 2 ) then
specWarnGTFO : Show ( spellName )
specWarnGTFO : Play ( " watchfeet " )
end
end
mod.SPELL_PERIODIC_MISSED = mod.SPELL_PERIODIC_DAMAGE
--]]
--function mod:WebReaveTarget(targetname)
-- if not targetname then return end
-- if targetname == UnitName("player") then
-- yellWebReave:Yell()
-- end
--end
--function mod:UNIT_SPELLCAST_START(uId, _, spellId)
-- if spellId == 439795 then
-- self:BossUnitTargetScanner(uId, "WebReaveTarget")
-- end
--end