Browse Source

aiController.setMoveDestination test

AzaezelX 5 months ago
parent
commit
201b7bf695

+ 1 - 1
Engine/source/T3D/AI/AIController.h

@@ -126,7 +126,7 @@ class AIControllerData : public SimDataBlock {
 
 
 public:
 public:
 
 
-   AIControllerData() {};
+   AIControllerData() { mMoveTolerance = 0.25; mFollowTolerance = 1.0; mAttackRadius = 2.0; mMoveStuckTolerance = 0.01f; mMoveStuckTestDelay = 30;};
    ~AIControllerData() {};
    ~AIControllerData() {};
 
 
    static void initPersistFields();
    static void initPersistFields();

+ 16 - 0
Engine/source/T3D/AI/AINavigation.cpp

@@ -257,3 +257,19 @@ void AINavigation::clearPath()
    // Reset path data.
    // Reset path data.
    mPathData = PathData();
    mPathData = PathData();
 }
 }
+
+DefineEngineMethod(AIController, setMoveDestination, void, (Point3F goal, bool slowDown), (true),
+   "@brief Tells the AI to move to the location provided\n\n"
+
+   "@param goal Coordinates in world space representing location to move to.\n"
+   "@param slowDown A boolean value. If set to true, the bot will slow down "
+   "when it gets within 5-meters of its move destination. If false, the bot "
+   "will stop abruptly when it reaches the move destination. By default, this is true.\n\n"
+
+   "@note Upon reaching a move destination, the bot will clear its move destination and "
+   "calls to getMoveDestination will return \"0 0 0\"."
+
+   "@see getMoveDestination()\n")
+{
+   object->getNav()->setMoveDestination(goal, slowDown);
+}

+ 1 - 0
Engine/source/T3D/player.cpp

@@ -2287,6 +2287,7 @@ bool Player::getAIMove(Move* move)
    if (mAIController)
    if (mAIController)
    {
    {
       mAIController->getAIMove(move); //actual result
       mAIController->getAIMove(move); //actual result
+      return true;
    }
    }
 
 
    return false;
    return false;