diff options
Diffstat (limited to 'src/server/game/Movement')
| -rwxr-xr-x | src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp | 5 | ||||
| -rw-r--r-- | src/server/game/Movement/MovementGenerators/PointMovementGenerator.h | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp index 494e1aaa8e5..3f93bf084fc 100755 --- a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp @@ -31,12 +31,15 @@ template<class T> PointMovementGenerator<T>::PointMovementGenerator(uint32 id, float x, float y, float z, bool generatePath, float speed /*= 0.0f*/, Optional<float> finalOrient /*= {}*/, Unit const* faceTarget /*= nullptr*/, Movement::SpellEffectExtraData const* spellEffectExtraData /*= nullptr*/) : _movementId(id), _destination(x, y, z), _speed(speed), _generatePath(generatePath), _finalOrient(finalOrient), - i_faceTarget(faceTarget), i_spellEffectExtra(spellEffectExtraData) + i_faceTarget(faceTarget) { this->Mode = MOTION_MODE_DEFAULT; this->Priority = MOTION_PRIORITY_NORMAL; this->Flags = MOVEMENTGENERATOR_FLAG_INITIALIZATION_PENDING; this->BaseUnitState = UNIT_STATE_ROAMING; + + if (spellEffectExtraData) + this->i_spellEffectExtra = std::make_unique<Movement::SpellEffectExtraData>(*spellEffectExtraData); } template<class T> diff --git a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h index 4a2f1a2631a..925e0ee5924 100644 --- a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h @@ -57,7 +57,7 @@ class PointMovementGenerator : public MovementGeneratorMedium<T, PointMovementGe //! if set then unit will turn to specified _orient in provided _pos Optional<float> _finalOrient; Unit const* i_faceTarget; - Movement::SpellEffectExtraData const* i_spellEffectExtra; + std::unique_ptr<Movement::SpellEffectExtraData> i_spellEffectExtra; }; class AssistanceMovementGenerator : public PointMovementGenerator<Creature> |
