fix(Core/Pathfinding): pets chase & transport (#4451)

This commit is contained in:
Footman
2021-02-07 04:22:15 +03:00
committed by GitHub
parent c3a83c3618
commit e7bfbe7651
2 changed files with 15 additions and 10 deletions

View File

@@ -269,6 +269,10 @@ void MotionTransport::AddPassenger(WorldObject* passenger, bool withAll)
passenger->m_movementInfo.flags |= MOVEMENTFLAG_ONTRANSPORT;
passenger->m_movementInfo.transport.guid = GetGUID();
passenger->m_movementInfo.transport.pos.Relocate(x, y, z, o);
if (passenger->ToUnit())
{
passenger->ToUnit()->AddUnitState(UNIT_STATE_IGNORE_PATHFINDING);
}
}
}
}
@@ -290,6 +294,10 @@ void MotionTransport::RemovePassenger(WorldObject* passenger, bool withAll)
passenger->m_movementInfo.flags &= ~MOVEMENTFLAG_ONTRANSPORT;
passenger->m_movementInfo.transport.guid = 0;
passenger->m_movementInfo.transport.pos.Relocate(0.0f, 0.0f, 0.0f, 0.0f);
if (passenger->ToUnit())
{
passenger->ToUnit()->ClearUnitState(UNIT_STATE_IGNORE_PATHFINDING);
}
}
}
}