Core/Movement: adjust deactivation/reset logic inside GenericMovementGenerator
Port From (https://github.com/TrinityCore/TrinityCore/commit/4487933bd078c2d0087610de967f69f46cf4da60)
This commit is contained in:
@@ -48,14 +48,14 @@ namespace Game.Movement
|
|||||||
|
|
||||||
public override void Initialize(Unit owner)
|
public override void Initialize(Unit owner)
|
||||||
{
|
{
|
||||||
if (HasFlag(MovementGeneratorFlags.Deactivated)) // Resume spline is not supported
|
if (HasFlag(MovementGeneratorFlags.Deactivated) && !HasFlag(MovementGeneratorFlags.InitializationPending)) // Resume spline is not supported
|
||||||
{
|
{
|
||||||
RemoveFlag(MovementGeneratorFlags.Deactivated);
|
RemoveFlag(MovementGeneratorFlags.Deactivated);
|
||||||
AddFlag(MovementGeneratorFlags.Finalized);
|
AddFlag(MovementGeneratorFlags.Finalized);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
RemoveFlag(MovementGeneratorFlags.InitializationPending);
|
RemoveFlag(MovementGeneratorFlags.InitializationPending | MovementGeneratorFlags.Deactivated);
|
||||||
AddFlag(MovementGeneratorFlags.Initialized);
|
AddFlag(MovementGeneratorFlags.Initialized);
|
||||||
|
|
||||||
_duration.Reset(_splineInit.Launch());
|
_duration.Reset(_splineInit.Launch());
|
||||||
|
|||||||
Reference in New Issue
Block a user