From 39645248031dda7a2ea9e6e261a0acb4ca0e56ff Mon Sep 17 00:00:00 2001 From: MysticalOS Date: Fri, 20 Dec 2024 06:54:45 -0500 Subject: [PATCH] add templating for the other two new delves --- .../DBM-Delves-WarWithin_Mainline.toc | 3 + DBM-Delves-WarWithin/ExcavationSite9.lua | 115 ++++++++++++++++++ DBM-Delves-WarWithin/SidestreetSluice.lua | 99 +++++++++++++++ DBM-Delves-WarWithin/UnderpinsLair.lua | 2 +- 4 files changed, 218 insertions(+), 1 deletion(-) create mode 100644 DBM-Delves-WarWithin/ExcavationSite9.lua create mode 100644 DBM-Delves-WarWithin/SidestreetSluice.lua diff --git a/DBM-Delves-WarWithin/DBM-Delves-WarWithin_Mainline.toc b/DBM-Delves-WarWithin/DBM-Delves-WarWithin_Mainline.toc index a66898d4..8630c8d8 100644 --- a/DBM-Delves-WarWithin/DBM-Delves-WarWithin_Mainline.toc +++ b/DBM-Delves-WarWithin/DBM-Delves-WarWithin_Mainline.toc @@ -44,4 +44,7 @@ TheSpiralWeave.lua TakRethanAbyss.lua TheUnderkeep.lua ZekvirsLair.lua + +ExcavationSite9.lua +SidestreetSluice.lua UnderpinsLair.lua diff --git a/DBM-Delves-WarWithin/ExcavationSite9.lua b/DBM-Delves-WarWithin/ExcavationSite9.lua new file mode 100644 index 00000000..79ab19ed --- /dev/null +++ b/DBM-Delves-WarWithin/ExcavationSite9.lua @@ -0,0 +1,115 @@ +if DBM:GetTOC() < 110100 then return end +local mod = DBM:NewMod("z2815", "DBM-Delves-WarWithin") +local L = mod:GetLocalizedStrings() + +mod:SetRevision("@file-date-integer@") +mod:SetHotfixNoticeRev(20240422000000) +mod:SetMinSyncRevision(20240422000000) +mod:SetZone(2815) + +mod:RegisterCombat("scenario", 2815) + +mod:RegisterEventsInCombat( +-- "SPELL_CAST_START 454213 449965 453897", +-- "SPELL_CAST_SUCCESS", +-- "SPELL_AURA_APPLIED", +-- "SPELL_AURA_REMOVED", +-- "SPELL_PERIODIC_DAMAGE", +-- "UNIT_DIED", + "ENCOUNTER_START", + "ENCOUNTER_END" +) + +--local warnSporesong = mod:NewCastAnnounce(453897, 2) +--local warnSwampBolt = mod:NewSpellAnnounce(449965, 2) + +--local specWarnMuckCharge = mod:NewSpecialWarningDodge(454213, nil, nil, nil, 2, 2) + +--local timerMuckChargeCD = mod:NewCDTimer(25.5, 454213, nil, nil, nil, 3) + +--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt + +--[[ +function mod:SPELL_CAST_START(args) + if args.spellId == 454213 then + + end +end +--]] + +--[[ +function mod:SPELL_CAST_SUCCESS(args) + if args.spellId == 453897 then + --"Sporesong-453897-npc:220314-0000497D69 = pull:15.5, 29.1, 29.1, 29.1, 29.1, 29.1", + warnSporesong:Show() + timerSporesongCD:Start() + end +end +--]] + +--[[ +function mod:SPELL_AURA_APPLIED(args) + if args.spellId == 1098 then + + end +end +--]] + +--[[ +function mod:SPELL_AURA_REMOVED(args) + if args.spellId == 1098 then + + end +end +--]] + +--[[ +function mod:SPELL_PERIODIC_DAMAGE(_, _, _, _, destGUID, _, _, _, spellId) + if spellId == 138561 and destGUID == UnitGUID("player") and self:AntiSpam() then + + end +end +--]] + +--[[ +function mod:UNIT_DIED(args) + --if args.destGUID == UnitGUID("player") then--Solo scenario, a player death is a wipe + + --end + local cid = self:GetCIDFromGUID(args.destGUID) + if cid == 208242 then + end +end +--]] + +function mod:ENCOUNTER_START(eID) + if eID == 3095 then--Craggle Fritzbrains + DBM:AddMsg("Boss alerts/timers not yet implemented for Craggle Fritzbrains") + elseif eID == 3096 then--Harbinger Ul'thul + DBM:AddMsg("Boss alerts/timers not yet implemented for Harbinger Ul'thul") + elseif eID == 3099 then--Xel'anegh the Many + DBM:AddMsg("Boss alerts/timers not yet implemented for Xel'anegh the Many") + end +end + +function mod:ENCOUNTER_END(eID, _, _, _, success) + if eID == 3095 then--Craggle Fritzbrains + if success == 1 then + DBM:EndCombat(self) + else + --Stop Timers manually + end + elseif eID == 3096 then--Harbinger Ul'thul + if success == 1 then + DBM:EndCombat(self) + else + --Stop Timers manually + end + elseif eID == 3099 then--Xel'anegh the Many + if success == 1 then + DBM:EndCombat(self) + else + --Stop Timers manually + end + end +end diff --git a/DBM-Delves-WarWithin/SidestreetSluice.lua b/DBM-Delves-WarWithin/SidestreetSluice.lua new file mode 100644 index 00000000..cfc6222e --- /dev/null +++ b/DBM-Delves-WarWithin/SidestreetSluice.lua @@ -0,0 +1,99 @@ +if DBM:GetTOC() < 110100 then return end +local mod = DBM:NewMod("z2826", "DBM-Delves-WarWithin") +local L = mod:GetLocalizedStrings() + +mod:SetRevision("@file-date-integer@") +mod:SetHotfixNoticeRev(20240422000000) +mod:SetMinSyncRevision(20240422000000) +mod:SetZone(2826) + +mod:RegisterCombat("scenario", 2826) + +mod:RegisterEventsInCombat( +-- "SPELL_CAST_START 454213 449965 453897", +-- "SPELL_CAST_SUCCESS", +-- "SPELL_AURA_APPLIED", +-- "SPELL_AURA_REMOVED", +-- "SPELL_PERIODIC_DAMAGE", +-- "UNIT_DIED", + "ENCOUNTER_START", + "ENCOUNTER_END" +) + +--local warnSporesong = mod:NewCastAnnounce(453897, 2) +--local warnSwampBolt = mod:NewSpellAnnounce(449965, 2) + +--local specWarnMuckCharge = mod:NewSpecialWarningDodge(454213, nil, nil, nil, 2, 2) + +--local timerMuckChargeCD = mod:NewCDTimer(25.5, 454213, nil, nil, nil, 3) + +--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc, 7 off interrupt + +--[[ +function mod:SPELL_CAST_START(args) + if args.spellId == 454213 then + + end +end +--]] + +--[[ +function mod:SPELL_CAST_SUCCESS(args) + if args.spellId == 453897 then + --"Sporesong-453897-npc:220314-0000497D69 = pull:15.5, 29.1, 29.1, 29.1, 29.1, 29.1", + warnSporesong:Show() + timerSporesongCD:Start() + end +end +--]] + +--[[ +function mod:SPELL_AURA_APPLIED(args) + if args.spellId == 1098 then + + end +end +--]] + +--[[ +function mod:SPELL_AURA_REMOVED(args) + if args.spellId == 1098 then + + end +end +--]] + +--[[ +function mod:SPELL_PERIODIC_DAMAGE(_, _, _, _, destGUID, _, _, _, spellId) + if spellId == 138561 and destGUID == UnitGUID("player") and self:AntiSpam() then + + end +end +--]] + +--[[ +function mod:UNIT_DIED(args) + --if args.destGUID == UnitGUID("player") then--Solo scenario, a player death is a wipe + + --end + local cid = self:GetCIDFromGUID(args.destGUID) + if cid == 208242 then + end +end +--]] + +function mod:ENCOUNTER_START(eID) + if eID == 3104 then--Golden Elemental + DBM:AddMsg("Boss alerts/timers not yet implemented for Golden Elemental") + end +end + +function mod:ENCOUNTER_END(eID, _, _, _, success) + if eID == 3104 then--Golden Elemental + if success == 1 then + DBM:EndCombat(self) + else + --Stop Timers manually + end + end +end diff --git a/DBM-Delves-WarWithin/UnderpinsLair.lua b/DBM-Delves-WarWithin/UnderpinsLair.lua index cf5a8f41..238bb7b1 100644 --- a/DBM-Delves-WarWithin/UnderpinsLair.lua +++ b/DBM-Delves-WarWithin/UnderpinsLair.lua @@ -8,7 +8,7 @@ mod:SetRevision("@file-date-integer@") mod:SetEncounterID(3126, 3138) --mod:SetHotfixNoticeRev(20240914000000) --mod:SetMinSyncRevision(20240914000000) -mod:SetZone(2831) +mod:SetZone(2831)--Demolition Dome --mod:RegisterCombat("scenario", 2682) mod:RegisterCombat("combat")