Skip to content

Commit

Permalink
add Motherlode bosses
Browse files Browse the repository at this point in the history
  • Loading branch information
Jodsderechte committed Jan 3, 2025
1 parent 1c7be47 commit c6888a3
Show file tree
Hide file tree
Showing 4 changed files with 375 additions and 0 deletions.
1 change: 1 addition & 0 deletions DungeonAuraTools.toc
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ SpellData/BattleForAzeroth/Freehold.lua
SpellData/BattleForAzeroth/AtalDazar.lua
SpellData/BattleForAzeroth/WayCrestManor.lua
SpellData/BattleForAzeroth/SiegeOfBoralus.lua
SpellData/BattleForAzeroth/Motherlode.lua

#SpellData Legion
SpellData/Legion/ReturnToKarazhan.lua
Expand Down
291 changes: 291 additions & 0 deletions SpellData/BattleForAzeroth/Motherlode.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,291 @@
local _, JDT = ...

JDT.SpellList = JDT.SpellList or {}
JDT.SpellList.BattleForAzeroth = JDT.SpellList.BattleForAzeroth or {}
JDT.SpellList.BattleForAzeroth.Dungeons = JDT.SpellList.BattleForAzeroth.Dungeons or {}


JDT.SpellList.BattleForAzeroth.Dungeons.Motherlode= {
groupName = "[ML",
zoneId = "1010", -- https://warcraft.wiki.gg/wiki/UiMapID C_Map.GetMapGroupID(dungeonAreaMapID)
EncounterJournalID = 1012, -- https://wago.tools/db2/JournalEncounter
Bosses = {}
}
local bosses = JDT.SpellList.BattleForAzeroth.Dungeons.Motherlode.Bosses

bosses.boss1 = { -- Coin-Operated Crowd Pummeler
EncounterId = "2105", -- https://warcraft.wiki.gg/wiki/DungeonEncounterID
additionalName = "] 01 ",
Auras = {
[JDT.GroupTypes.DisposeSpellAura] ={
FootbombLauncher = {
enabled = true,
spellId = 269493, -- for spellname etc
showStacks = 2,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "269493",
},
{
stacks = 5,
summonID = 269493,
duration = 15,
removeID = 256493
},
}
}
},
[JDT.GroupTypes.Frontal] = {
ShockingClaw = {
enabled = true,
spellId = 257337,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "257337",
}
}
},
},
[JDT.GroupTypes.KnockCast] ={
StaticPulse = {
enabled = true,
spellId = 262347, -- for spellname etc
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "262347",
},
}
}
},
[JDT.GroupTypes.BuffCast] = {
PayToWin = {
enabled = true,
spellId = 271859,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "271859",
}
}
},
},
}
}
bosses.boss2 = { -- Azerokk
EncounterId = "2106", -- https://warcraft.wiki.gg/wiki/DungeonEncounterID
additionalName = "] 02 ",
Auras = {
[JDT.GroupTypes.AddSummonCast] = {
CallEarthrager = {
enabled = true,
spellId = 257593,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "257593",
}
}
},
},
[JDT.GroupTypes.CastIntoChase] = {
RagingGaze = {
enabled = true,
spellId = 257582,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "257582",
},
{
unit = JDT.Templates.Triggers.UnitTypes.player,
spellId = "257582",
},
{
unit = JDT.Templates.Triggers.UnitTypes.smartGroup,
spellId = "257582",
},
}
},
},
[JDT.GroupTypes.BuffCast] = {
AzeriteInfusion = {
enabled = true,
spellId = 257597,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "257597",
}
}
},
},
[JDT.GroupTypes.UnavoidableAoe] = {
ResonantPulse = {
enabled = true,
spellId = 258622,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "258622",
}
}
},
},
[JDT.GroupTypes.Frontal] = {
TectonicSmash = {
enabled = true,
spellId = 275907,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "275907",
}
}
},
},
}
}
bosses.boss3 = { -- Rixxa Fluxflame
EncounterId = "2107", -- https://warcraft.wiki.gg/wiki/DungeonEncounterID
additionalName = "] 03 ",
Auras = {
[JDT.GroupTypes.Frontal] = {
AzeriteCatalyst = {
enabled = true,
spellId = 259022,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "259022",
}
}
},
PropellantBlast= {
enabled = true,
spellId = 259940,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "259940",
}
}
},
},
[JDT.GroupTypes.Dot] ={
ChemicalBurn = {
enabled = true,
spellId = 259853, -- for spellname etc
type = JDT.AuraTypes.magic,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.player,
spellId = "259853",
},
}
}
},
}
}
bosses.boss4 = { -- Mogul Razdunk
EncounterId = "2108", -- https://warcraft.wiki.gg/wiki/DungeonEncounterID
additionalName = "] 04 ",
Auras = {
[JDT.GroupTypes.Dance] ={
GatlingGun = {
enabled = true,
spellId = 260279, -- for spellname etc
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "260279",
},
}
},
},
[JDT.GroupTypes.CastIntoChase] = {
HomingMissile = {
enabled = true,
spellId = 257582,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "260811",
},
{
unit = JDT.Templates.Triggers.UnitTypes.player,
spellId = "260811",
},
{
unit = JDT.Templates.Triggers.UnitTypes.smartGroup,
spellId = "260811",
},
}
},
},
[JDT.GroupTypes.VoidCast] = {
DrillSmash = {
enabled = true,
spellId = 260202,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "260202",
},

}
},
},
[JDT.GroupTypes.TargetedCast] = {
BusterShot = {
enabled = true,
spellId = 260372,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.boss,
spellId = "260372",
}
}
},
},
[JDT.GroupTypes.TargetedCastIntoHealingReducedDebuff] = {
AzeriteHeartseeker = {
enabled = true,
spellId = 262513,
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.nameplate,
spellId = "262513",
},
{
unit = JDT.Templates.Triggers.UnitTypes.player,
spellId = "262513",
},

}
},
},
[JDT.GroupTypes.Dot] ={
BigRedRocket = {
enabled = true,
spellId = 270277, -- for spellname etc
triggerData = {
{
unit = JDT.Templates.Triggers.UnitTypes.player,
spellId = "270277",
},
}
}
},
}
}
bosses.Trash = {
additionalName = "TRASH] ",
Auras = {



}
}
10 changes: 10 additions & 0 deletions Templates/CustomTriggers.lua
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,16 @@ JDT.Templates.CustomTriggers.Dispose = function(triggerData)
return trigger
end

JDT.Templates.CustomTriggers.DisposeSpellAura = function(triggerData)
local summonID,duration,removeID,stacks = triggerData.summonID,triggerData.duration,triggerData.removeID, triggerData.stacks
local trigger = {
customTrigger = "function(s,event,_,subevent,_,_,_,_,_,destGUID,_,_,_,spellID)\n \n if subevent == \"SPELL_CAST_SUCCESS\" and spellID == "..summonID.." then\n if not s[\"\"] then\n \n s[\"\"] = {\n duration = "..duration..",\n expirationTime = GetTime()+"..duration..",\n stacks = "..stacks..",\n progressType = \"timed\",\n autoHide = true,\n changed = true,\n show = true,\n }\n else\n s[\"\"].stacks = s[\"\"].stacks+"..stacks.."\n s[\"\"].changed = true\n s[\"\"].expirationTime = GetTime()+"..duration.."\n end\n \n return true\n \n \n elseif (subevent == \"SPELL_AURA_APPLIED\" or subevent == \"SPELL_AURA_APPLIED_DOSE\") and spellID == "..removeID.." then\n \n if s[\"\"] then\n \n s[\"\"].stacks = s[\"\"].stacks-1\n if s[\"\"].stacks == 0 then\n s[\"\"].show = false\n end\n s[\"\"].changed = true\n return true \n end\n \n end\nend",
customEvents = "COMBAT_LOG_EVENT_UNFILTERED:SPELL_CAST_SUCCESS,COMBAT_LOG_EVENT_UNFILTERED:SPELL_AURA_APPLIED, COMBAT_LOG_EVENT_UNFILTERED:SPELL_AURA_APPLIED_DOSE",
customVariables = "{\n expirationTime = true,\n duration = true,\n stacks = true,\n}",
}
return trigger
end

JDT.Templates.CustomTriggers.CollapsingStar = function()
local trigger = {
customTrigger = "function(allstates, event, ...)\n if event == \"COMBAT_LOG_EVENT_UNFILTERED\" then\n local timestamp, subEvent, hideCaster, sourceGUID, sourceName, sourceFlags, sourceRaidFlags, destGUID, destName, destFlags, destRaidFlags, spellID, _,_, auraType = ...\n if (subEvent == \"SPELL_AURA_APPLIED\" or subEvent == \"SPELL_AURA_APPLIED_DOSE\")\n and spellID == 350804\n and destGUID == WeakAuras.myGUID\n then\n local state = allstates[\"star\"]\n if state then\n state.count = state.count - 1 \n state.changed = true\n if state.count <= 0 then\n state.show = false\n end\n return true\n end\n elseif subEvent == \"SPELL_CAST_SUCCESS\" and spellID == 353635 then\n allstates[\"star\"] = {\n show = true,\n changed = true,\n progressType = \"timed\",\n duration = 25,\n expirationTime = 25 + GetTime(),\n autoHide = true,\n count = 4,\n }\n return true\n end\n end\nend",
Expand Down
Loading

0 comments on commit c6888a3

Please sign in to comment.