Beispiel #1
0
 public bool MoveByDirection(Vector3FP direction)
 {
     if (!IsEnable())
     {
         return(false);
     }
     if (m_movement_provider as MovementByDirection == null)
     {
         ClearMovementProvider();
         m_movement_provider = RecyclableObject.Create <MovementByDirection>();
         m_movement_provider.SetCallback(this);
         m_movement_provider.SetMaxSpeed(m_current_max_speed);
     }
     m_movement_provider.MoveByDirection(direction);
     StartMoving();
     return(true);
 }
Beispiel #2
0
 public bool MoveAlongPath(List <Vector3FP> path, bool from_command)
 {
     //不可以保存path
     if (!IsEnable())
     {
         return(false);
     }
     if (m_movement_provider as MovementAlongPath == null)
     {
         ClearMovementProvider();
         m_movement_provider = RecyclableObject.Create <MovementAlongPath>();
         m_movement_provider.SetCallback(this);
         m_movement_provider.SetMaxSpeed(m_current_max_speed);
     }
     m_movement_provider.MoveAlongPath(path);
     StartMoving(from_command);
     return(true);
 }