/branches
local SPELL_BLACKOUT = GetSpellInfo(15268); |
local SPELL_BLOODSURGE = GetSpellInfo(46916); |
local SPELL_BRAIN_FREEZE = GetSpellInfo(44546); |
local SPELL_BF_FIREBALL = GetSpellInfo(57761); |
local SPELL_CLEARCASTING = GetSpellInfo(12536); |
local SPELL_COUNTER_ATTACK = GetSpellInfo(SPELLID_COUNTER_ATTACK); |
local SPELL_DEATH_TRANCE = GetSpellInfo(50466); |
local SPELL_FINGERS_OF_FROST = GetSpellInfo(44544); |
local SPELL_FROSTBITE = GetSpellInfo(11071); |
local SPELL_HAMMER_OF_WRATH = GetSpellInfo(SPELLID_HAMMER_OF_WRATH); |
local SPELL_HOT_STREAK = GetSpellInfo(44445); |
local SPELL_IMPACT = GetSpellInfo(11103); |
local SPELL_KILL_COMMAND = GetSpellInfo(SPELLID_KILL_COMMAND); |
local SPELL_MAELSTROM_WEAPON = GetSpellInfo(53817); |
local SPELL_SHADOWMEND = GetSpellInfo(39373); |
local SPELL_SIPHON_LIFE = GetSpellInfo(18265); |
local SPELL_REFLECTIVE_SHIELD = GetSpellInfo(33201); |
local SPELL_UNDYING_RESOLVE = GetSpellInfo(51915); |
local SPELL_VAMPIRIC_EMBRACE = GetSpellInfo(15286); |
local SPELL_VAMPIRIC_TOUCH = GetSpellInfo(34914); |
local SPELL_VIPER_STING = GetSpellInfo(3034); |
alwaysSticky = true, |
fontSize = 26, |
classes = "MAGE", |
mainEvents = "SPELL_AURA_APPLIED{skillName;;eq;;" .. SPELL_BRAIN_FREEZE .. ";;recipientAffiliation;;eq;;" .. FLAG_YOU .. "}", |
mainEvents = "SPELL_AURA_APPLIED{skillName;;eq;;" .. SPELL_BF_FIREBALL .. ";;recipientAffiliation;;eq;;" .. FLAG_YOU .. "}", |
}, |
MSBT_TRIGGER_CLEARCASTING = { |
colorB = 0, |
exceptions = "unavailableSkill;;eq;;" .. SPELL_HAMMER_OF_WRATH, |
iconSkill = SPELLID_HAMMER_OF_WRATH, |
}, |
MSBT_TRIGGER_HOT_STREAK = { |
colorG = 0.627, |
colorB = 0.627, |
message = SPELL_HOT_STREAK .. "!", |
alwaysSticky = true, |
fontSize = 26, |
classes = "MAGE", |
mainEvents = "SPELL_AURA_APPLIED{skillName;;eq;;" .. SPELL_HOT_STREAK .. ";;recipientAffiliation;;eq;;" .. FLAG_YOU .. "}", |
}, |
MSBT_TRIGGER_IMPACT = { |
colorG = 0.25, |
colorB = 0.25, |
-- Damage color settings. |
physical = { colorR = 1, colorG = 1, colorB = 1 }, |
holy = { colorR = 1, colorG = 1, colorB = 0.627 }, |
fire = { colorR = 1, colorG = 0.5, colorB = 0.5 }, |
nature = { colorR = 0.5, colorG = 1, colorB = 0.5 }, |
frost = { colorR = 0.5, colorG = 0.5, colorB = 1 }, |
shadow = { colorR = 0.628, colorG = 0, colorB = 0.628 }, |
arcane = { colorR = 1, colorG = 0.725, colorB = 1 }, |
physical = { colorR = 1, colorG = 1, colorB = 1 }, |
holy = { colorR = 1, colorG = 1, colorB = 0.627 }, |
fire = { colorR = 1, colorG = 0.5, colorB = 0.5 }, |
nature = { colorR = 0.5, colorG = 1, colorB = 0.5 }, |
frost = { colorR = 0.5, colorG = 0.5, colorB = 1 }, |
shadow = { colorR = 0.628, colorG = 0, colorB = 0.628 }, |
arcane = { colorR = 1, colorG = 0.725, colorB = 1 }, |
frostfire = { colorR = 0.824, colorG = 0.314, colorB = 0.471 }, |
-- Throttle settings. |
-- Spam control settings. |
mergeExclusions = {}, |
abilitySubstitutions = {}, |
abilitySuppressions = {}, |
abilitySuppressions = { |
[SPELL_UNDYING_RESOLVE] = true |
}, |
damageThreshold = 0, |
healThreshold = 0, |
powerThreshold = 0, |
local DAMAGETYPE_SHADOW = 0x20; |
local DAMAGETYPE_ARCANE = 0x40; |
-- Physical + Magic Damage types. |
local DAMAGETYPE_HOLYSTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_HOLY; |
local DAMAGETYPE_FLAMESTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_FIRE; |
local DAMAGETYPE_STORMSTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_NATURE; |
local DAMAGETYPE_FROSTSTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_FROST; |
local DAMAGETYPE_SHADOWSTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_SHADOW; |
local DAMAGETYPE_SPELLSTRIKE = DAMAGETYPE_PHYSICAL + DAMAGETYPE_ARCANE; |
-- Two magic damage types. |
local DAMAGETYPE_HOLYFIRE = DAMAGETYPE_HOLY + DAMAGETYPE_FIRE; |
local DAMAGETYPE_HOLYSTORM = DAMAGETYPE_HOLY + DAMAGETYPE_NATURE; |
local DAMAGETYPE_HOLYFROST = DAMAGETYPE_HOLY + DAMAGETYPE_FROST; |
local DAMAGETYPE_SHADOWLIGHT = DAMAGETYPE_HOLY + DAMAGETYPE_SHADOW; |
local DAMAGETYPE_DIVINE = DAMAGETYPE_HOLY + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_FIRESTORM = DAMAGETYPE_FIRE + DAMAGETYPE_NATURE; |
local DAMAGETYPE_FROSTFIRE = DAMAGETYPE_FIRE + DAMAGETYPE_FROST; |
local DAMAGETYPE_SHADOWFLAME = DAMAGETYPE_FIRE + DAMAGETYPE_SHADOW; |
local DAMAGETYPE_SPELLFIRE = DAMAGETYPE_FIRE + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_FROSTSTORM = DAMAGETYPE_NATURE + DAMAGETYPE_FROST; |
local DAMAGETYPE_SHADOWSTORM = DAMAGETYPE_NATURE + DAMAGETYPE_SHADOW; |
local DAMAGETYPE_SPELLSTORM = DAMAGETYPE_NATURE + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_SHADOWFROST = DAMAGETYPE_FROST + DAMAGETYPE_SHADOW; |
local DAMAGETYPE_SPELLFROST = DAMAGETYPE_FROST + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_SPELLSHADOW = DAMAGETYPE_SHADOW + DAMAGETYPE_ARCANE; |
-- Three or more damage types. |
local DAMAGETYPE_ELEMENTAL = DAMAGETYPE_FIRE + DAMAGETYPE_NATURE + DAMAGETYPE_FROST; |
local DAMAGETYPE_CHROMATIC = DAMAGETYPE_FIRE + DAMAGETYPE_NATURE + DAMAGETYPE_FROST + DAMAGETYPE_SHADOW + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_MAGIC = DAMAGETYPE_HOLY + DAMAGETYPE_FIRE + DAMAGETYPE_NATURE + DAMAGETYPE_FROST + DAMAGETYPE_SHADOW + DAMAGETYPE_ARCANE; |
local DAMAGETYPE_CHAOS = DAMAGETYPE_PHYSICAL + DAMAGETYPE_HOLY + DAMAGETYPE_FIRE + DAMAGETYPE_NATURE + DAMAGETYPE_FROST + DAMAGETYPE_SHADOW + DAMAGETYPE_ARCANE; |
-- Spell IDs. |
local SPELLID_AUTOSHOT = 75; |
------------------------------------------------------------------------------- |
-- **************************************************************************** |
-- Creates te damage type and damage color profile maps. |
-- **************************************************************************** |
local function CreateDamageMaps() |
-- Create the damage type lookup map. |
damageTypeMap[DAMAGETYPE_PHYSICAL] = STRING_SCHOOL_PHYSICAL; |
damageTypeMap[DAMAGETYPE_HOLY] = STRING_SCHOOL_HOLY; |
damageTypeMap[DAMAGETYPE_FIRE] = STRING_SCHOOL_FIRE; |
damageTypeMap[DAMAGETYPE_NATURE] = STRING_SCHOOL_NATURE; |
damageTypeMap[DAMAGETYPE_FROST] = STRING_SCHOOL_FROST; |
damageTypeMap[DAMAGETYPE_SHADOW] = STRING_SCHOOL_SHADOW; |
damageTypeMap[DAMAGETYPE_ARCANE] = STRING_SCHOOL_ARCANE; |
damageTypeMap[DAMAGETYPE_HOLYSTRIKE] = STRING_SCHOOL_HOLYSTRIKE; |
damageTypeMap[DAMAGETYPE_FLAMESTRIKE] = STRING_SCHOOL_FLAMESTRIKE; |
damageTypeMap[DAMAGETYPE_STORMSTRIKE] = STRING_SCHOOL_STORMSTRIKE; |
damageTypeMap[DAMAGETYPE_FLAMESTRIKE] = STRING_SCHOOL_FLAMESTRIKE; |
damageTypeMap[DAMAGETYPE_SHADOWSTRIKE] = STRING_SCHOOL_SHADOWSTRIKE; |
damageTypeMap[DAMAGETYPE_SPELLSTRIKE] = STRING_SCHOOL_SPELLSTRIKE; |
damageTypeMap[DAMAGETYPE_HOLYFIRE] = STRING_SCHOOL_HOLYFIRE; |
damageTypeMap[DAMAGETYPE_HOLYSTORM] = STRING_SCHOOL_HOLYSTORM; |
damageTypeMap[DAMAGETYPE_HOLYFROST] = STRING_SCHOOL_HOLYFROST; |
damageTypeMap[DAMAGETYPE_SHADOWLIGHT] = STRING_SCHOOL_SHADOWLIGHT; |
damageTypeMap[DAMAGETYPE_DIVINE] = STRING_SCHOOL_DIVINE; |
damageTypeMap[DAMAGETYPE_FIRESTORM] = STRING_SCHOOL_FIRESTORM; |
damageTypeMap[DAMAGETYPE_FROSTFIRE] = STRING_SCHOOL_FROSTFIRE; |
damageTypeMap[DAMAGETYPE_SHADOWFLAME] = STRING_SCHOOL_SHADOWFLAME; |
damageTypeMap[DAMAGETYPE_SPELLFIRE] = STRING_SCHOOL_SPELLFIRE; |
damageTypeMap[DAMAGETYPE_FROSTSTORM] = STRING_SCHOOL_FROSTSTORM; |
damageTypeMap[DAMAGETYPE_SHADOWSTORM] = STRING_SCHOOL_SHADOWSTORM; |
damageTypeMap[DAMAGETYPE_SPELLSTORM] = STRING_SCHOOL_SPELLSTORM; |
damageTypeMap[DAMAGETYPE_SHADOWFROST] = STRING_SCHOOL_SHADOWFROST; |
damageTypeMap[DAMAGETYPE_SPELLFROST] = STRING_SCHOOL_SPELLFROST; |
damageTypeMap[DAMAGETYPE_SPELLSHADOW] = STRING_SCHOOL_SPELLSHADOW; |
damageTypeMap[DAMAGETYPE_ELEMENTAL] = STRING_SCHOOL_ELEMENTAL; |
damageTypeMap[DAMAGETYPE_CHROMATIC] = STRING_SCHOOL_CHROMATIC; |
damageTypeMap[DAMAGETYPE_MAGIC] = STRING_SCHOOL_MAGIC; |
damageTypeMap[DAMAGETYPE_CHAOS] = STRING_SCHOOL_CHAOS; |
-- Create the damage color profile entries lookup map. |
damageColorProfileEntries[DAMAGETYPE_PHYSICAL] = "physical"; |
damageColorProfileEntries[DAMAGETYPE_HOLY] = "holy"; |
damageColorProfileEntries[DAMAGETYPE_FIRE] = "fire"; |
damageColorProfileEntries[DAMAGETYPE_NATURE] = "nature"; |
damageColorProfileEntries[DAMAGETYPE_FROST] = "frost"; |
damageColorProfileEntries[DAMAGETYPE_SHADOW] = "shadow"; |
damageColorProfileEntries[DAMAGETYPE_ARCANE] = "arcane"; |
damageColorProfileEntries[DAMAGETYPE_FROSTFIRE] = "frostfire"; |
end |
-- **************************************************************************** |
-- Sets up a button to access MSBT's options from the Blizzard interface |
-- options AddOns tab. |
-- **************************************************************************** |
eventHandlers["extraattacks"] = ExtraAttacksHandler; |
eventHandlers["loot"] = LootHandler; |
-- Create the damage type lookup map. |
damageTypeMap[DAMAGETYPE_PHYSICAL] = STRING_SCHOOL_PHYSICAL; |
damageTypeMap[DAMAGETYPE_HOLY] = STRING_SCHOOL_HOLY; |
damageTypeMap[DAMAGETYPE_FIRE] = STRING_SCHOOL_FIRE; |
damageTypeMap[DAMAGETYPE_NATURE] = STRING_SCHOOL_NATURE; |
damageTypeMap[DAMAGETYPE_FROST] = STRING_SCHOOL_FROST; |
damageTypeMap[DAMAGETYPE_SHADOW] = STRING_SCHOOL_SHADOW; |
damageTypeMap[DAMAGETYPE_ARCANE] = STRING_SCHOOL_ARCANE; |
-- Create the damage color profile entries lookup map. |
damageColorProfileEntries[DAMAGETYPE_PHYSICAL] = "physical"; |
damageColorProfileEntries[DAMAGETYPE_HOLY] = "holy"; |
damageColorProfileEntries[DAMAGETYPE_FIRE] = "fire"; |
damageColorProfileEntries[DAMAGETYPE_NATURE] = "nature"; |
damageColorProfileEntries[DAMAGETYPE_FROST] = "frost"; |
damageColorProfileEntries[DAMAGETYPE_SHADOW] = "shadow"; |
damageColorProfileEntries[DAMAGETYPE_ARCANE] = "arcane"; |
-- Create the power types lookup map. |
powerTypes[SPELL_POWER_MANA] = MANA; |
powerTypes[SPELL_POWER_RAGE] = RAGE; |
powerTypeEvents["UNIT_ENERGY"] = true; |
powerTypeEvents["UNIT_RUNIC_POWER"] = true; |
-- Create damage type and damage color profile maps. |
CreateDamageMaps(); |
-- Set the isEnglish flag correctly. |
if (string_find(GetLocale(), "en..")) then isEnglish = true; end |
<li>Brain Freeze</li> |
<li>Clearcasting</li> |
<li>Counter Attack</li> |
<li>Eclipse</li> |
<li>Eradication</li> |
<li>Execute / Hammer of Wrath</li> |
<li>Fingers of Frost</li> |
<li>Frostbite</li> |
<li>Hot Streak</li> |
<li>Impact</li> |
<li>Kill Command</li> |
<li>Low Health</li> |
<ul> |
<li>Added several default triggers for new abliities of various classes.</li> |
<li>Updated supported power types to include runes and runic power.</li> |
<li>Added support for new damage types.</li> |
<li>Added coloring for frostfire damage.</li> |
<li>Death Knight is now an available class for triggers.</li> |
<li>Runic Power Change and Rune Cooldown are now available main events for triggers.</li> |
<li>Added throttling for heals from Blood Presence.</li> |