aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.h
diff options
context:
space:
mode:
authorp0wer <none@none>2009-12-24 12:37:26 -0600
committerp0wer <none@none>2009-12-24 12:37:26 -0600
commitec7cc6c3cc757aeadd3cb10a67b50cd0b6f998bb (patch)
treefee286721203cdcacab4d1dcc2969a3b3de8dfeb /src/game/SpellMgr.h
parent7b19bea10faa1722fb856eff05adb1363110a28d (diff)
* Begin removing hardcoded SpellFamilyFlags from the core.
* Now being placed in an enum. Starting with EffectDummy. --HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.h')
-rw-r--r--src/game/SpellMgr.h66
1 files changed, 56 insertions, 10 deletions
diff --git a/src/game/SpellMgr.h b/src/game/SpellMgr.h
index f95da00ccb2..a5fcd2d8900 100644
--- a/src/game/SpellMgr.h
+++ b/src/game/SpellMgr.h
@@ -83,16 +83,62 @@ enum SpellSelectTargetTypes
TARGET_TYPE_CHANNEL,
};
-//Some SpellFamilyFlags
-#define SPELLFAMILYFLAG_ROGUE_VANISH 0x00000800
-#define SPELLFAMILYFLAG_ROGUE_STEALTH 0x00400000
-#define SPELLFAMILYFLAG_ROGUE_BACKSTAB 0x00800004
-#define SPELLFAMILYFLAG_ROGUE_SAP 0x00000080
-#define SPELLFAMILYFLAG_ROGUE_FEINT 0x08000000
-#define SPELLFAMILYFLAG_ROGUE_KIDNEYSHOT 0x00200000
-//#define SPELLFAMILYFLAG_ROGUE__FINISHING_MOVE 0x9003E0000LL
-#define SPELLFAMILYFLAG_WARRIOR_SUNDERARMOR 0x00004000
-#define SPELLFAMILYFLAG_SHAMAN_FROST_SHOCK 0x80000000
+//SpellFamilyFlags
+enum SpellFamilyFlag
+{
+ // SPELLFAMILYFLAG = SpellFamilyFlags[0]
+ // SPELLFAMILYFLAG1 = SpellFamilyFlags[1]
+ // SPELLFAMILYFLAG2 = SpellFamilyFlags[2]
+
+ // Rogue
+ SPELLFAMILYFLAG_ROGUE_VANISH = 0x00000800,
+ SPELLFAMILYFLAG_ROGUE_STEALTH = 0x00400000,
+ SPELLFAMILYFLAG_ROGUE_BACKSTAB = 0x00800004,
+ SPELLFAMILYFLAG_ROGUE_SAP = 0x00000080,
+ SPELLFAMILYFLAG_ROGUE_FEINT = 0x08000000,
+ SPELLFAMILYFLAG_ROGUE_KIDNEYSHOT = 0x00200000,
+ SPELLFAMILYFLAG1_ROGUE_HUNGERFORBLOOD = 0x01000000,
+ SPELLFAMILYFLAG_ROGUE_VAN_EVAS_SPRINT = 0x00000860, // Vanish, Evasion, Sprint
+ SPELLFAMILYFLAG1_ROGUE_COLDB_SHADOWSTEP = 0x00000240, // Cold Blood, Shadowstep
+ //SPELLFAMILYFLAG_ROGUE__FINISHING_MOVE = 0x9003E0000LL,
+
+ // Warrior
+ SPELLFAMILYFLAG_WARRIOR_SUNDERARMOR = 0x00004000,
+ SPELLFAMILYFLAG_WARRIOR_CHARGE = 0x00000001,
+ SPELLFAMILYFLAG_WARRIOR_SLAM = 0x00200000,
+ SPELLFAMILYFLAG_WARRIOR_EXECUTE = 0x20000000,
+ SPELLFAMILYFLAG_WARRIOR_CONCUSSION_BLOW = 0x04000000,
+
+ // Warlock
+ SPELLFAMILYFLAG_WARLOCK_LIFETAP = 0x00040000,
+
+ // Priest
+ SPELLFAMILYFLAG1_PRIEST_PENANCE = 0x00800000,
+
+ // Druid
+ SPELLFAMILYFLAG2_DRUID_STARFALL = 0x00000100,
+
+ // Paladin
+ SPELLFAMILYFLAG1_PALADIN_DIVINESTORM = 0x00020000,
+
+ // Shaman
+ SPELLFAMILYFLAG_SHAMAN_FROST_SHOCK = 0x80000000,
+ SPELLFAMILYFLAG_SHAMAN_HEALING_STREAM = 0x00002000,
+ SPELLFAMILYFLAG_SHAMAN_MANA_SPRING = 0x00004000,
+ SPELLFAMILYFLAG2_SHAMAN_LAVA_LASH = 0x00000004,
+ SPELLFAMILYFLAG_SHAMAN_FLAMETONGUE = 0x00200000,
+
+ // Deathknight
+ SPELLFAMILYFLAG_DK_DEATH_STRIKE = 0x00000010,
+ SPELLFAMILYFLAG1_DK_SCOURGE_STRIKE = 0x08000000,
+ SPELLFAMILYFLAG_DK_DEATH_COIL = 0x00002000,
+ SPELLFAMILYFLAG1_DK_HUNGERING_COLD = 0x00001000,
+
+
+ // TODO: Figure out a more accurate name for the following familyflag(s)
+ SPELLFAMILYFLAG_SHAMAN_TOTEM_EFFECTS = 0x04000000, // Seems to be linked to most totems and some totem effects
+};
+
// Spell clasification
enum SpellSpecific