forked from Bastion/Bastion
parent
0aa4ec5af8
commit
ada2b52ca1
@ -0,0 +1,49 @@ |
|||||||
|
local Tinkr, _Bastion = ... |
||||||
|
|
||||||
|
---@type Bastion |
||||||
|
local Bastion = _Bastion |
||||||
|
|
||||||
|
local BrewModule = Bastion.Module:New('brewmaster') |
||||||
|
local Player = Bastion.UnitManager:Get('player') |
||||||
|
local Target = Bastion.UnitManager:Get('target') |
||||||
|
local None = Bastion.UnitManager:Get('none') |
||||||
|
|
||||||
|
local AutoAttack = Bastion.SpellBook:GetSpell(6603) |
||||||
|
|
||||||
|
---@return boolean |
||||||
|
local function CombatRotation() |
||||||
|
-- Attack the target is auto attack isnt active. |
||||||
|
if AutoAttack:IsKnownAndUsable() and not IsCurrentSpell(AutoAttack:GetID()) and Player:InMelee(Target) and not Target:IsDead() then |
||||||
|
AutoAttack:Cast(Target) |
||||||
|
end |
||||||
|
|
||||||
|
return false |
||||||
|
end |
||||||
|
|
||||||
|
---@return boolean |
||||||
|
local function OutOfCombatRotation() |
||||||
|
return false |
||||||
|
end |
||||||
|
|
||||||
|
local isRunning = false |
||||||
|
|
||||||
|
BrewModule:Sync(function() |
||||||
|
if not isRunning then |
||||||
|
Bastion:Print('Brewmaster Started') |
||||||
|
isRunning = true |
||||||
|
end |
||||||
|
|
||||||
|
if not Player:IsAlive() or Player:IsMounted() then |
||||||
|
return false |
||||||
|
end |
||||||
|
|
||||||
|
if Player:IsAffectingCombat() then |
||||||
|
-- Combat Rotation |
||||||
|
return CombatRotation() |
||||||
|
else |
||||||
|
-- Out Of Combat Rotation |
||||||
|
return OutOfCombatRotation() |
||||||
|
end |
||||||
|
end) |
||||||
|
|
||||||
|
Bastion:Register(BrewModule) |
@ -1,129 +1,417 @@ |
|||||||
|
|
||||||
---@alias TankBusterList table<number, table<number, { shouldDampen: boolean, shouldDiffuse: boolean, shouldFort: boolean }>> |
---@alias TankBusterList table<number, table<number, { shouldDampen: boolean, shouldDiffuse: boolean, shouldFort: boolean, shouldBubble: boolean }>> |
||||||
|
|
||||||
---@type TankBusterList |
---@type TankBusterList |
||||||
local _TankBusterList = { |
local _TankBusterList = { |
||||||
-- isPhysical, isMagical |
|
||||||
-- |
-- |
||||||
-- RLP |
-- RLP |
||||||
-- |
-- |
||||||
-- Primal Juggernaut |
-- Primal Juggernaut |
||||||
-- [188244] = { |
[188244] = { |
||||||
-- -- Crushing Smash |
-- Crushing Smash |
||||||
-- [372730] = { |
[372730] = { |
||||||
-- true, false |
shouldBubble = false, |
||||||
-- } |
shouldDampen = true, |
||||||
-- }, |
shouldDiffuse = false, |
||||||
-- -- Defier Draghar |
shouldFort = false |
||||||
-- [187897] = { |
} |
||||||
-- -- Steel Barrage |
}, |
||||||
-- [372047] = { |
-- Defier Draghar |
||||||
-- true, false |
[187897] = { |
||||||
-- } |
-- Steel Barrage |
||||||
-- }, |
[372047] = { |
||||||
-- -- Thunderhead |
shouldBubble = false, |
||||||
-- [197698] = { |
shouldDampen = true, |
||||||
-- -- Thunder Jaw |
shouldDiffuse = false, |
||||||
-- [392395] = { |
shouldFort = false |
||||||
-- true, true |
} |
||||||
-- } |
}, |
||||||
-- }, |
-- Thunderhead |
||||||
-- -- Flamegullet |
[197698] = { |
||||||
-- [197697] = { |
-- Thunder Jaw |
||||||
-- -- Fire Maw |
[392395] = { |
||||||
-- [392394] = { |
shouldBubble = true, |
||||||
-- true, true |
shouldDampen = true, |
||||||
-- } |
shouldDiffuse = true, |
||||||
-- }, |
shouldFort = false |
||||||
-- -- Kokia |
} |
||||||
-- [189232] = { |
}, |
||||||
-- -- Searing Blows |
-- Flamegullet |
||||||
-- [372858] = { |
[197697] = { |
||||||
-- true, false |
-- Fire Maw |
||||||
-- }, |
[392394] = { |
||||||
-- }, |
shouldBubble = true, |
||||||
-- -- Erkhart |
shouldDampen = true, |
||||||
-- [190485] = { |
shouldDiffuse = true, |
||||||
-- -- Stormslam |
shouldFort = false |
||||||
-- [381512] = { |
} |
||||||
-- true, true |
}, |
||||||
-- } |
-- Kokia |
||||||
-- }, |
[189232] = { |
||||||
-- -- |
-- Searing Blows |
||||||
-- -- NO |
[372858] = { |
||||||
-- -- |
shouldBubble = true, |
||||||
-- -- Raging Tempest |
shouldDampen = true, |
||||||
-- [186615] = { |
shouldDiffuse = false, |
||||||
-- -- Energy Surge |
shouldFort = true |
||||||
-- [384686] = { |
}, |
||||||
-- true, false |
}, |
||||||
-- } |
-- Erkhart |
||||||
-- }, |
[190485] = { |
||||||
-- -- Beastcaller |
-- Stormslam |
||||||
-- [195878] = { |
[381512] = { |
||||||
-- -- Heavy Slash |
shouldBubble = false, |
||||||
-- [387826] = { |
shouldDampen = true, |
||||||
-- true, false |
shouldDiffuse = true, |
||||||
-- } |
shouldFort = true |
||||||
-- }, |
} |
||||||
-- -- Maruuk |
}, |
||||||
-- [186338] = { |
-- |
||||||
-- -- Brutalize |
-- NO |
||||||
-- [382836] = { |
-- |
||||||
-- true, false |
-- Raging Tempest |
||||||
-- } |
[186615] = { |
||||||
-- }, |
-- Energy Surge |
||||||
-- [186151] = { |
[384686] = { |
||||||
-- [375937] = { |
shouldBubble = false, |
||||||
-- true, false |
shouldDampen = true, |
||||||
-- } |
shouldDiffuse = false, |
||||||
-- }, |
shouldFort = true |
||||||
-- -- |
} |
||||||
-- -- AV |
}, |
||||||
-- -- |
-- Beastcaller |
||||||
-- -- Leymore |
[195878] = { |
||||||
-- [186644] = { |
-- Heavy Slash |
||||||
-- -- Infused Strike |
[387826] = { |
||||||
-- [374789] = { |
shouldBubble = true, |
||||||
-- false, true |
shouldDampen = true, |
||||||
-- } |
shouldDiffuse = false, |
||||||
-- }, |
shouldFort = false |
||||||
-- -- Vault Guard |
} |
||||||
-- [190510] = { |
}, |
||||||
-- -- Ice Cutter |
-- Maruuk |
||||||
-- [377105] = { |
[186338] = { |
||||||
-- false, true |
-- Brutalize |
||||||
-- } |
[382836] = { |
||||||
-- }, |
shouldBubble = false, |
||||||
-- -- Scalebane |
shouldDampen = true, |
||||||
-- [191739] = { |
shouldDiffuse = false, |
||||||
-- -- Ice Cutter |
shouldFort = false |
||||||
-- [377105] = { |
} |
||||||
-- false, true |
}, |
||||||
-- }, |
-- Balakar |
||||||
-- -- Spellfrost Breath |
[186151] = { |
||||||
-- [391120] = { |
-- Rending Strike |
||||||
-- false, true |
[375937] = { |
||||||
-- } |
shouldBubble = true, |
||||||
-- }, |
shouldDampen = true, |
||||||
-- -- Azureblade |
shouldDiffuse = false, |
||||||
-- [186739] = { |
shouldFort = true |
||||||
-- -- Arcane Cleave |
} |
||||||
-- [372222] = { |
}, |
||||||
-- false, true |
-- |
||||||
-- } |
-- AV |
||||||
-- }, |
-- |
||||||
-- -- Umbreskul |
-- Leymore |
||||||
-- [186738] = { |
[186644] = { |
||||||
-- -- Dragon Strike |
-- Infused Strike |
||||||
-- [384978] = { |
[374789] = { |
||||||
-- false, true |
shouldBubble = true, |
||||||
-- } |
shouldDampen = true, |
||||||
-- }, |
shouldDiffuse = true, |
||||||
-- -- |
shouldFort = true |
||||||
-- -- AA |
} |
||||||
-- -- |
}, |
||||||
|
-- Vault Guard |
||||||
|
[190510] = { |
||||||
|
-- Ice Cutter |
||||||
|
[377105] = { |
||||||
|
shouldBubble = false, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Scalebane |
||||||
|
[191739] = { |
||||||
|
-- Ice Cutter |
||||||
|
[377105] = { |
||||||
|
shouldBubble = false, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
}, |
||||||
|
-- Spellfrost Breath |
||||||
|
[391120] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Azureblade |
||||||
|
[186739] = { |
||||||
|
-- Arcane Cleave |
||||||
|
[372222] = { |
||||||
|
shouldBubble = false, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Umbreskul |
||||||
|
[186738] = { |
||||||
|
-- Dragon Strike |
||||||
|
[384978] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- |
||||||
|
-- AA |
||||||
|
-- |
||||||
|
-- Battleaxe |
||||||
|
[196577] = { |
||||||
|
-- Severing Slash |
||||||
|
[388911] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Crawth |
||||||
|
[191736] = { |
||||||
|
-- Savage Peck |
||||||
|
[376997] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Overgrown Ancient |
||||||
|
[196482] = { |
||||||
|
-- Barkbreaker |
||||||
|
[388544] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- |
||||||
|
-- HOV |
||||||
|
-- |
||||||
|
-- Storm Drake |
||||||
|
[97068] = { |
||||||
|
-- Lightning Breath |
||||||
|
[198888] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Hymdall |
||||||
|
[94960] = { |
||||||
|
-- Bloodletting Sweep |
||||||
|
[193092] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Hyrja |
||||||
|
[95833] = { |
||||||
|
[192018] = { |
||||||
|
shouldBubble = false, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Storm Drake |
||||||
|
[99891] = { |
||||||
|
-- Lightning Breath |
||||||
|
[198888] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Angerhoof Bull |
||||||
|
[96611] = { |
||||||
|
-- Piercing Horns |
||||||
|
[199151] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Steeljaw Grizzly |
||||||
|
[96677] = { |
||||||
|
-- Rending Claws |
||||||
|
[185425] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- King Ranulf |
||||||
|
[97083] = { |
||||||
|
-- Sever |
||||||
|
[199652] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- King Haldor |
||||||
|
[95843] = { |
||||||
|
-- Sever |
||||||
|
[199652] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- King Bjorn |
||||||
|
[97081] = { |
||||||
|
-- Sever |
||||||
|
[199652] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- King Tor |
||||||
|
[97084] = { |
||||||
|
-- Sever |
||||||
|
[199652] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- God-King Skovald |
||||||
|
[95675] = { |
||||||
|
-- Savaga Slash |
||||||
|
[193668] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- |
||||||
|
-- CoS |
||||||
|
-- |
||||||
|
-- Sentry |
||||||
|
[104270] = { |
||||||
|
-- Charged Smash |
||||||
|
[209495] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Gereth the Vile |
||||||
|
[108151] = { |
||||||
|
-- Vampiric Claws |
||||||
|
[373364] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- |
||||||
|
-- SMBG |
||||||
|
-- |
||||||
|
-- Reanimated Ritual Bones |
||||||
|
[75715] = { |
||||||
|
-- Shadow Slash |
||||||
|
[75715] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- |
||||||
|
-- TJS |
||||||
|
-- |
||||||
|
-- Haunting Sha |
||||||
|
[59555] = { |
||||||
|
-- Haunting Gaze |
||||||
|
[114646] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Songbird |
||||||
|
[59553] = { |
||||||
|
-- Vicious Peck |
||||||
|
[396007] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- The Golden Beetle |
||||||
|
[59545] = { |
||||||
|
[396019] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Sha-Touched Guardian |
||||||
|
[200131] = { |
||||||
|
-- Setting Sun Kick |
||||||
|
[397094] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = false, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Minion of Doubt |
||||||
|
[57109] = { |
||||||
|
-- Dark Claw |
||||||
|
[397931] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = false |
||||||
|
} |
||||||
|
}, |
||||||
|
-- Liu Flameheart |
||||||
|
[56732] = { |
||||||
|
-- Jade Serpent Strike |
||||||
|
[106841] = { |
||||||
|
shouldBubble = true, |
||||||
|
shouldDampen = true, |
||||||
|
shouldDiffuse = true, |
||||||
|
shouldFort = true |
||||||
|
} |
||||||
|
} |
||||||
} |
} |
||||||
|
|
||||||
return _TankBusterList |
return _TankBusterList |
Loading…
Reference in new issue