diff options
| author | Shauren <shauren.trinity@gmail.com> | 2015-09-01 16:59:28 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2015-09-01 16:59:28 +0200 |
| commit | 191d2c7262d3680776579055a063a433add54277 (patch) | |
| tree | 62dbb0bfd1e68d4232d6c31f8c0729b64d4651d7 /src/server/game/Spells/SpellInfo.cpp | |
| parent | f5d707f1ae89b121b621cd82218cc96786e788be (diff) | |
Core/Spells: Extended spell required shapeshift masks to 64 bits and defined a new spell attribute
Diffstat (limited to 'src/server/game/Spells/SpellInfo.cpp')
| -rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index b83c841fbf6..50921c28a61 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -1126,9 +1126,8 @@ SpellInfo::SpellInfo(SpellEntry const* spellEntry, SpellEffectEntryMap const& ef // SpellShapeshiftEntry SpellShapeshiftEntry const* _shapeshift = GetSpellShapeshift(); - // TODO: 6.x these maks have 2 parts - Stances = _shapeshift ? _shapeshift->ShapeshiftMask[0] : 0; - StancesNot = _shapeshift ? _shapeshift->ShapeshiftExclude[0] : 0; + Stances = _shapeshift ? MAKE_PAIR64(_shapeshift->ShapeshiftMask[0], _shapeshift->ShapeshiftMask[1]) : 0; + StancesNot = _shapeshift ? MAKE_PAIR64(_shapeshift->ShapeshiftExclude[0], _shapeshift->ShapeshiftExclude[1]) : 0; // SpellTargetRestrictionsEntry SpellTargetRestrictionsEntry const* _target = GetSpellTargetRestrictions(); @@ -1668,7 +1667,10 @@ SpellCastResult SpellInfo::CheckShapeshift(uint32 form) const (Effects[0].Effect == SPELL_EFFECT_LEARN_SPELL || Effects[1].Effect == SPELL_EFFECT_LEARN_SPELL || Effects[2].Effect == SPELL_EFFECT_LEARN_SPELL)) return SPELL_CAST_OK;*/ - uint32 stanceMask = (form ? 1 << (form - 1) : 0); + //if (HasAttribute(SPELL_ATTR13_ACTIVATES_REQUIRED_SHAPESHIFT)) + // return SPELL_CAST_OK; + + uint64 stanceMask = (form ? UI64LIT(1) << (form - 1) : 0); if (stanceMask & StancesNot) // can explicitly not be cast in this stance return SPELL_FAILED_NOT_SHAPESHIFT; |
