You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
634 lines
19 KiB
634 lines
19 KiB
local _, private = ...
|
|
|
|
local isRetail = WOW_PROJECT_ID == (WOW_PROJECT_MAINLINE or 1)
|
|
|
|
--[[local specFlags ={
|
|
["Tank"] = true,
|
|
["Dps"] = true,
|
|
["Healer"] = true,
|
|
["Melee"] = true,--ANY melee, including tanks or healers that are 100% excempt from healer/ranged mechanics (like mistweaver monks)
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["Ranged"] = true,--ANY ranged, healer and dps included
|
|
["RangedDps"] = true,--Only ranged dps
|
|
["ManaUser"] = true,--Affected by things like mana drains, or mana detonation, etc
|
|
["SpellCaster"] = true,--Has channeled casts, can be interrupted/spell locked by roars, etc, include healers. Use CasterDps if dealing with reflect
|
|
["CasterDps"] = true,--Ranged dps that uses spells, relevant for spell reflect type abilities that only reflect spells but not ranged physical such as hunters
|
|
["RaidCooldown"] = true,
|
|
["RemovePoison"] = true,--from ally
|
|
["RemoveDisease"] = true,--from ally
|
|
["RemoveCurse"] = true,--from ally
|
|
["RemoveMagic"] = true,--from ally
|
|
["RemoveEnrage"] = true,--Can remove enemy enrage. returned in 8.x+!
|
|
["MagicDispeller"] = true,--from ENEMY, not debuffs on players. use "Healer" or "RemoveMagic" for ally magic dispels. ALL healers can do that on retail, and warlock Imps
|
|
["ImmunityDispeller"] = true,--Priest mass dispel or Warrior Shattering Throw (shadowlands)
|
|
["HasInterrupt"] = true,--Has an interrupt that is 24 seconds or less CD that is BASELINE (not a talent)
|
|
["HasImmunity"] = true,--Has an immunity that can prevent or remove a spell effect (not just one that reduces damage like turtle or dispursion)
|
|
}]]
|
|
|
|
local specRoleTable
|
|
|
|
-- Retail
|
|
if isRetail then
|
|
specRoleTable = {
|
|
[62] = { --Arcane Mage
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["MagicDispeller"] = true,
|
|
["HasInterrupt"] = true,
|
|
["HasImmunity"] = true,
|
|
["RemoveCurse"] = true,
|
|
},
|
|
[1449] = { --Initial Mage (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
},
|
|
[65] = { --Holy Paladin
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Devotion Aura
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
[66] = { --Protection Paladin
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["ManaUser"] = true,
|
|
["Physical"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["HasInterrupt"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
[70] = { --Retribution Paladin
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["ManaUser"] = true,
|
|
["Physical"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["HasInterrupt"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
[1451] = { --Initial Paladin (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Healer"] = true,
|
|
["Tank"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["ManaUser"] = true,
|
|
["Physical"] = true,
|
|
["SpellCaster"] = true,
|
|
},
|
|
[71] = { --Arms Warrior
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["RaidCooldown"] = true,--Rallying Cry
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["ImmunityDispeller"] = true,
|
|
},
|
|
[73] = { --Protection Warrior
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["RaidCooldown"] = true,--Rallying Cry
|
|
["ImmunityDispeller"] = true,
|
|
},
|
|
[1446] = { --Initial Warrior (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Tank"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[102] = { --Balance Druid
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["RemoveCurse"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[103] = { --Feral Druid
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["RemoveCurse"] = true,
|
|
["RemovePoison"] = true,
|
|
["HasInterrupt"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[104] = { --Guardian Druid
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["RemoveCurse"] = true,
|
|
["RemovePoison"] = true,
|
|
["HasInterrupt"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[105] = { -- Restoration Druid
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Tranquility
|
|
["RemoveCurse"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveEnrage"] = true,
|
|
["RemoveMagic"] = true,
|
|
},
|
|
[1447] = { -- Initial Druid (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
},
|
|
[250] = { --Blood DK
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[251] = { --Frost DK
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[1455] = { --Initial DK (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Tank"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[253] = { --Beastmaster Hunter
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[254] = { --Markmanship Hunter Hunter
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[255] = { --Survival Hunter (Legion+)
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = true,
|
|
["RemoveEnrage"] = true,
|
|
},
|
|
[1448] = { --Initial Hunter (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[256] = { --Discipline Priest
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,--Iffy. Technically yes, but this can't be used to determine eligable target for dps only debuffs
|
|
["RaidCooldown"] = true,--Power Word: Barrier(Discipline) / Divine Hymn (Holy)
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
["MagicDispeller"] = true,
|
|
["ImmunityDispeller"] = true,
|
|
},
|
|
[258] = { --Shadow Priest
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["MagicDispeller"] = true,
|
|
["ImmunityDispeller"] = true,
|
|
["HasInterrupt"] = true,
|
|
["RemoveDisease"] = true,
|
|
},
|
|
[1452] = { --Initial Priest (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Dps"] = true,
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
},
|
|
[259] = { --Assassination Rogue
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
[1453] = { --Initial Rogue (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[262] = { --Elemental Shaman
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["RemoveCurse"] = true,
|
|
["MagicDispeller"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[263] = { --Enhancement Shaman
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["Physical"] = true,
|
|
["RemoveCurse"] = true,
|
|
["MagicDispeller"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[264] = { --Restoration Shaman
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Spirit Link Totem
|
|
["RemoveCurse"] = true,
|
|
["RemoveMagic"] = true,
|
|
["MagicDispeller"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[1444] = { --Initial Shaman (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Healer"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[265] = { --Affliction Warlock
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
-- ["RemoveMagic"] = true,--Singe Magic (Imp)
|
|
["CasterDps"] = true,
|
|
},
|
|
[1454] = { --Initial Warlock (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
},
|
|
[268] = { --Brewmaster Monk
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[269] = { --Windwalker Monk
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
[270] = { --Mistweaver Monk
|
|
["Healer"] = true,
|
|
["Melee"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Revival
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
},
|
|
[1450] = { --Initial Monk (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Tank"] = true,
|
|
["Healer"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
},
|
|
[577] = { --Havok Demon Hunter
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = true,
|
|
},
|
|
[581] = { --Vengeance Demon Hunter
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = true,
|
|
},
|
|
[1456] = { --Initial Demon Hunter (used in exiles reach tutorial mode). Treated as hybrid. Utility disabled because that'd require checking tutorial progress
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
[1467] = { --Evoker Devastation
|
|
["Dps"] = true,
|
|
["CasterDps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RemovePoison"] = IsSpellKnown(365585),--Expunge. Must be specced
|
|
["RemoveCurse"] = IsSpellKnown(374251),--Cauterizing Flame
|
|
["RemoveDisease"] = IsSpellKnown(374251),--Cauterizing Flame
|
|
["RemoveEnrage"] = IsSpellKnown(374346),--Overawe
|
|
},
|
|
[1468] = { --Evoker Preservation
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RemoveMagic"] = true,
|
|
["RemovePoison"] = true,--Auto known
|
|
["RemoveCurse"] = IsSpellKnown(374251),--Cauterizing Flame
|
|
["RemoveDisease"] = IsSpellKnown(374251),--Cauterizing Flame
|
|
["RemoveEnrage"] = IsSpellKnown(374346),--Overawe
|
|
["RaidCooldown"] = IsSpellKnown(363534),--Rewind
|
|
},
|
|
[1465] = { --Evoker Initial (treated as both healer and dps for basic leveling purposes)
|
|
["Dps"] = true,
|
|
["CasterDps"] = true,
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
},
|
|
}
|
|
specRoleTable[63] = specRoleTable[62]--Frost Mage same as arcane
|
|
specRoleTable[64] = specRoleTable[62]--Fire Mage same as arcane
|
|
specRoleTable[72] = specRoleTable[71]--Fury Warrior same as Arms
|
|
specRoleTable[252] = specRoleTable[251]--Unholy DK same as frost
|
|
specRoleTable[257] = specRoleTable[256]--Holy Priest same as disc
|
|
specRoleTable[260] = specRoleTable[259]--Combat Rogue same as Assassination
|
|
specRoleTable[261] = specRoleTable[259]--Subtlety Rogue same as Assassination
|
|
specRoleTable[266] = specRoleTable[265]--Demonology Warlock same as Affliction
|
|
specRoleTable[267] = specRoleTable[265]--Destruction Warlock same as Affliction
|
|
else
|
|
local IsSpellKnown = IsSpellKnown
|
|
|
|
specRoleTable = {
|
|
["MAGE1"] = { --Arcane Mage
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["HasInterrupt"] = true,
|
|
["HasImmunity"] = true,
|
|
["RemoveCurse"] = true,
|
|
["MagicDispeller"] = IsSpellKnown(30449),--Spellsteal in TBC
|
|
},
|
|
["PALADIN1"] = { --Holy Paladin
|
|
["Healer"] = true,
|
|
["Melee"] = true,--They melee when oom?
|
|
["Ranged"] = true,
|
|
["CasterDps"] = true,--Judgements, exorcism, etc
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Devotion Aura
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
["PALADIN2"] = { --Protection Paladin
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["ManaUser"] = true,
|
|
["Physical"] = true,
|
|
["CasterDps"] = true,--Judgements, exorcism, etc
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
["PALADIN3"] = { --Retribution Paladin
|
|
["Tank"] = true,
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["CasterDps"] = true,--Judgements, exorcism, etc
|
|
["ManaUser"] = true,
|
|
["Physical"] = true,
|
|
["RemovePoison"] = true,
|
|
["RemoveDisease"] = true,
|
|
["RemoveMagic"] = true,
|
|
["HasImmunity"] = true,
|
|
},
|
|
["WARRIOR1"] = { --Arms Warrior
|
|
["Dps"] = true,
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
["WARRIOR3"] = { --Protection Warrior
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
["MagicDispeller"] = (IsSpellKnown(23922) or IsSpellKnown(23923) or IsSpellKnown(23924) or IsSpellKnown(23925) or IsSpellKnown(25258) or IsSpellKnown(30356)),--Shield Slam
|
|
},
|
|
["DRUID1"] = { --Balance Druid
|
|
["Healer"] = true,
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["RemoveCurse"] = true,
|
|
},
|
|
["DRUID2"] = { --Feral Druid
|
|
["Healer"] = true,
|
|
["Dps"] = true,
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["RemoveCurse"] = true,
|
|
},
|
|
["DRUID3"] = { -- Restoration Druid
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["RaidCooldown"] = true,--Tranquility
|
|
["RemoveCurse"] = true,
|
|
},
|
|
["HUNTER1"] = { --Beastmaster Hunter
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
["RemoveEnrage"] = true,
|
|
["ManaUser"] = true,
|
|
},
|
|
["HUNTER2"] = { --Markmanship Hunter Hunter
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
["RemoveEnrage"] = true,
|
|
["ManaUser"] = true,
|
|
},
|
|
["HUNTER3"] = { --Survival Hunter
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["Physical"] = true,
|
|
["RemoveEnrage"] = true,
|
|
["ManaUser"] = true,
|
|
},
|
|
["PRIEST1"] = { --Discipline Priest
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,--Iffy. Technically yes, but this can't be used to determine eligable target for dps only debuffs
|
|
["RaidCooldown"] = true,--Power Word: Barrier(Discipline) / Divine Hymn (Holy)
|
|
["MagicDispeller"] = true,
|
|
["RemoveMagic"] = true,
|
|
},
|
|
["PRIEST3"] = { --Shadow Priest
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
["MagicDispeller"] = true,
|
|
["RemoveMagic"] = true,
|
|
["HasInterrupt"] = IsSpellKnown(15487),--Silence is a talent tree talent
|
|
},
|
|
["ROGUE1"] = { --Assassination Rogue
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
["SHAMAN1"] = { --Elemental Shaman
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
},
|
|
["SHAMAN2"] = { --Enhancement Shaman
|
|
["Dps"] = true,
|
|
["Melee"] = true,
|
|
["MeleeDps"] = true,
|
|
--["CasterDps"] = true,??
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["Physical"] = true,
|
|
},
|
|
["SHAMAN3"] = { --Restoration Shaman
|
|
["Healer"] = true,
|
|
["Ranged"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
},
|
|
["WARLOCK1"] = { --Affliction Warlock
|
|
["Dps"] = true,
|
|
["Ranged"] = true,
|
|
["RangedDps"] = true,
|
|
["ManaUser"] = true,
|
|
["SpellCaster"] = true,
|
|
["CasterDps"] = true,
|
|
},
|
|
["DEATHKNIGHT1"] = {--Just treat all DKs as all roles, they are hybrid as hell in wrath and any spec can be any role
|
|
["Tank"] = true,
|
|
["Melee"] = true,
|
|
["Dps"] = true,
|
|
["MeleeDps"] = true,
|
|
["Physical"] = true,
|
|
["HasInterrupt"] = true,
|
|
},
|
|
}
|
|
specRoleTable["MAGE3"] = specRoleTable["MAGE1"]--Frost Mage same as arcane
|
|
specRoleTable["MAGE2"] = specRoleTable["MAGE1"]--Fire Mage same as arcane
|
|
specRoleTable["WARRIOR2"] = specRoleTable["WARRIOR1"]--Fury Warrior same as Arms
|
|
specRoleTable["PRIEST2"] = specRoleTable["PRIEST1"]--Holy Priest same as disc
|
|
specRoleTable["ROGUE2"] = specRoleTable["ROGUE1"]--Combat Rogue same as Assassination
|
|
specRoleTable["ROGUE3"] = specRoleTable["ROGUE1"]--Subtlety Rogue same as Assassination
|
|
specRoleTable["WARLOCK2"] = specRoleTable["WARLOCK1"]--Demonology Warlock same as Affliction
|
|
specRoleTable["WARLOCK3"] = specRoleTable["WARLOCK1"]--Destruction Warlock same as Affliction
|
|
specRoleTable["DEATHKNIGHT2"] = specRoleTable["DEATHKNIGHT1"]
|
|
specRoleTable["DEATHKNIGHT3"] = specRoleTable["DEATHKNIGHT1"]
|
|
end
|
|
|
|
private.specRoleTable = specRoleTable
|
|
|