Tank's Macros All class what do you think?

local _, Sequences = … – Don’t touch this


– Rename this file to Sequences.lua before you get started, it uses a different file name so as not to overwrite your existing file with a future update.
– Every entry in the Sequences table defines a single sequence of macros which behave similarly to /castsequence.
– Sequence names must be unique and contain no more than 16 characters.
– To use a macro sequence, create a blank macro in-game with the same name you picked for the sequence here and it will overwrite it.


– Here’s a large demonstration sequence documenting the format:
Sequences[“GnomeExample1”] = {
– StepFunction optionally defines how the step is incremented when pressing the button.
– This example increments the step in the following order: 1 12 123 1234 etc. until it reaches the end and starts over
– DO NOT DEFINE A STEP FUNCTION UNLESS YOU THINK YOU KNOW WHAT YOU’RE DOING
StepFunction = [[
limit = limit or 1
if step == limit then
limit = limit % #macros + 1
step = 1
else
step = step % #macros + 1
end
]],

-- PreMacro is optional macro text that you want executed before every single button press.
-- This is if you want to add something like /startattack or /stopcasting before all of the macros in the sequence.
PreMacro = [[

/run print("-- PreMacro Script --")
/startattack
]],

-- PostMacro is optional macro text that you want executed after every single button press.
-- I don't know what you would need this for, but it's here anyway.
PostMacro = [[

/run print("-- PostMacro Script --")
]],

-- Macro 1
[[

/run print(“Executing macro 1!”)
/cast SpellName1
]],

-- Macro 2
[[

/run print(“Executing macro 2!”)
/cast SpellName2
]],

-- Macro 3
[[

/run print(“Executing macro 3!”)
/cast SpellName3
]],
}


– Here is a short example which is what most sequences will look like
Sequences[“GnomeExample2”] = {
– Macro 1
[[
/run print(“Executing macro 1!”)
/cast SpellName1
]],

-- Macro 2
[[

/run print(“Executing macro 2!”)
/cast SpellName2
]],

-- Macro 3
[[

/run print(“Executing macro 3!”)
/cast SpellName3
]],
}

—Paladin—

—Protection—

Sequences[‘Prot’] = {
StepFunction = [[
limit = limit or 1
if step == limit then
limit = limit % #macros + 1
step = 1
else
step = step % #macros + 1
end
]],
PreMacro = [[
/console Sound_EnableSFX 0
/targetenemy [noharm][dead]
]],
‘/cast Holy Wrath’,
‘/cast [nomod] Crusader Strike’,
‘/cast [mod] Hammer of the Righteous’,
‘/castsequence Sacred Shield,Judgment,Judgment,Judgment’,
“/cast Avenger’s Shield”,
‘/cast execution sentence’,
‘/cast Hammer of Wrath’,
‘/cast Consecration’,
PostMacro = [[
/castsequence Seraphim, Shield of the Righteous, Shield of the Righteous, Shield of the Righteous
/cast divine protection
/startattack
/use [combat]13
/use [combat]14
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 1
]],
}

—Death Knight—

—Blood 2,3,2,1,3,2,1—

Sequences[‘BloodDK’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/cast !Death Coil’,
‘/cast Outbreak’,
‘/cast Icy Touch’,
‘/cast Plague Strike’,
‘/cast !Death Strike’,
‘/cast [combat]Blood Boil’,
‘/cast [combat]Remorseless Winter’,
‘/cast [combat]Vampiric Blood’,
‘/cast !Death Strike’,
‘/cast Dancing Rune Weapon’,
‘/cast Plague Leech’,
‘/cast !Death Strike’,
‘/cast Death Coil’,
‘/cast [combat]Blood Tap’,
‘/cast [combat]Blood Boil’,
‘/cast Soul Reaper’,
‘/cast !Bone Shield’,
‘/cast Rune Weapon’,
‘/cast Anti-Magic Shell’,
‘/cast !Death Strike’,
‘/cast Rune Tap’,
‘/cast !Death Coil’,
}

Sequences[‘BloodAoE’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/cast !Death Coil’,
‘/cast !Outbreak’,
‘/cast Icy Touch’,
‘/cast Plague Strike’,
‘/cast [combat]Blood Boil’,
‘/cast Death Strike’,
‘/cast [combat]Blood Boil’,
‘/cast Soul Reaper’,
‘/cast Death Coil’,
‘/cast [combat]Blood Boil’,
‘/cast [combat]Vampiric Blood’,
‘/cast Death Strike’,
‘/cast Plague Leech’,
‘/cast Death Strike’,
‘/cast Death Coil’,
‘/cast [combat]Blood Tap’,
‘/cast Soul Reaper’,
“/cast Bone Shield”,
‘/cast Death Strike’,
‘/cast [combat]Rune Tap’,

}

—Druid—

—Guardian 3,1,1,1,3,2,2—

Sequences[‘DbtsT’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/castsequence Mangle,Thrash,Lacerate’,
‘/castsequence reset=combat Savage Defense,Frenzied Regeneration’,
‘/cast Mangle’,
‘/cast Charge’,
‘/cast Lacerate’,
‘/cast Pulverize’,
‘/cast Thrash’,
‘/cast Lacerate’,
‘/cast Pulverize’,
‘/cast Maul’,
‘/cast Mangle’,
‘/cast Berserk’,
‘/cast Barkskin’,
‘/cast Savage Defense’,
‘/cast Lacerate’,
‘/cast Pulverize’,
[[/console autounshift 0
/cast [@player,combat]Healing Touch
/console autounshift 1]],
PostMacro = [[
/startattack
]],
}

Sequences[‘DbtAoE’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/castsequence reset=combat Thrash, Thrash, Lacerate, Thrash, Thrash, Lacerate, Thrash, Thrash, Lacerate, Thrash, Thrash, Pulverize’,
‘/cast !Mangle’,
‘/cast !Charge’,
‘/cast !Maul’,
‘/cast !Pulverize’,
‘/cast !Berserk’,
‘/cast !Barkskin’,
‘/cast !Savage Defense’,
[[/console autounshift 0
/console autounshift 1]],
PostMacro = [[
/startattack
/use [combat]13
/use [combat]14
]],
}

—Hunter—

—Mage—

—Monk—

—Brewmaster 1,1,1,3,1,2—

Sequences[‘BrewST’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/castsequence reset=8 !keg smash,expel harm,jab,jab’,
‘/castsequence Blackout Kick, purifying brew, blackout kick,Breath of Fire,blackout kick’,
‘/castsequence reset=22 !keg smash,Elusive Brew’,
‘/cast tiger palm’,
‘/cast !keg smash’,
‘/cast Guard’,
‘/cast Chi Wave’,
‘/cast Fortifying Brew’,
‘/cast Leg Sweep’,
‘/cast Touch of Death’,
[[/cast Invoke Xuen, the White Tiger
]],
PostMacro = [[
/startattack
/use [combat]13
/use [combat]14
]],
}

Sequences[‘BrewAoE’] = {
PreMacro = [[
/targetenemy [noharm][dead]
]],
‘/castsequence reset=22 !keg smash,Elusive Brew’,
‘/cast !keg smash’,
‘/cast !Breath of Fire’,
‘/cast [nochanneling] spinning crane kick’,
‘/cast Guard’,
‘/cast Chi Wave’,
‘/cast Fortifying Brew’,
‘/cast Leg Sweep’,
‘/cast Touch of Death’,
[[/cast Invoke Xuen, the White Tiger
]],
PostMacro = [[
/startattack
/use [combat]13
/use [combat]14
]],
}

—Priest—

—Rogue—

—Shaman—

—Warlock—

—Warrior—

—Prot 2,1,3,1,3,2—

Sequences[‘ProtWar’] = {
StepFunction = [[
limit = limit or 1
if step == limit then
limit = limit % #macros + 1
step = 1
else
step = step % #macros + 1
end
]],
PreMacro = [[
/console Sound_EnableSFX 0
/targetenemy [noharm][dead]
/cast charge
]],
‘/cast Victory Rush’,
‘/cast Shield Slam’,
‘/cast Revenge’,
‘/cast Devastate’,
‘/cast [combat] Storm Bolt’,
‘/cast Execute’,
‘/cast !Shield Block’,
‘/cast [combat] THunder Clap’,
PostMacro = [[
/cast [combat] Berserker Rage
/cast [combat] Bloodbath
/cast [combat] Demoralizing Shout
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 1
]],
}

I don’t take creidet for the macro i just tried to put all the tank one i use together