Changes the AI's Wander Type. If the Dynamic Wander Type is used, the AI's current position will be updated as the AI's new starting position, which is used by the Dynamic Wander position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.ChangeWanderType(EmeraldComponent,EmeraldMovement.WanderTypes.Dynamic);
Update Dynamic Wander Position
Updates the AI's dynamic wandering position to the AI's current position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.UpdateDynamicWanderPosition(EmeraldComponent);
Set Dynamic Wander Position
Sets the AI's dynamic wandering position to the position of the Destination. This is useful for functionality such as custom AI schedules. Note: This will automatically change your AI's Wander Type to Dynamic.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.SetDynamicWanderPosition(EmeraldComponent, YourVector3Position);
Update Starting Position
Updates the AI's starting position to the AI's current position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.UpdateStartingPosition(EmeraldComponent);
Set Custom Destination
Overrides the AI's Wander Type to Custom and sets the AI's destination to the Vector3 position. This is useful for functionality like point and click movement, schedules, and more. Because this modifies the AI's Wander Type, the ChangeWanderType function will need to be called again to set the desired Wander Type, if something other than Custom is wanted.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.SetCustomDestination(EmeraldComponent, YourVector3Position);
Set Destination
Sets the AI's destination to the Vector3 position. Note: It is recommended that SetCustomDestination is used (when possible) as an AI will still attempt to use their Generated Wander Type position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.SetDestination(EmeraldComponent, YourVector3Position);
Generate Random Destination
Generates a new position to move to within the specified radius based on the AI's current position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.GenerateRandomDestination(EmeraldComponent,10);
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.AddWaypoint(EmeraldComponent, YourWaypointTransform);
Remove Waypoint
Removes a waypoint from the AI's Waypoint List according to the specified index.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.RemoveWaypoint(EmeraldComponent, YourWaypointIndexNumber);
Clear All Waypoints
Clears all of an AI's current waypoints. Note: When an AI's waypoints are cleared, it will be set to the Stationary wander type to avoid an error. If you want the AI to follow newly created waypoints, you will need to set it's Wander Type back to Waypoint with the ChangeWanderType function (located at EmeraldAPI.Movement.ChangeWanderType).
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.ClearAllWaypoints(EmeraldComponent);
Stop Movement
Stops an AI from moving when out of combat. This is useful for functionality like dialogue.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.StopMovement(EmeraldComponent);
Resume Movement
Resumes an AI's movement after using the StopMovement function.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.ResumeMovement(EmeraldComponent);
Stop Following
Stops an AI with a follow target from following. This will only work if an AI has a Current Follow Target.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.StopFollowing(EmeraldComponent);
Resume Following
Allows an AI with a follow target to resume following its follower. This will only work if an AI has a Current Follow Target.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.ResumeFollowing(EmeraldComponent);
Start Companion Guard Position
Allows a Companion AI (an AI with Follow Target) to guard the assigned position.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.StartCompanionGuardPosition(EmeraldComponent, YourPositionToGuard);
Stop Companion Guard Position
Stops a Companion AI (an AI with Follow Target) from guarding and returns it to their current follower.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.StopCompanionGuardPosition(EmeraldComponent);
Rotate Towards Position
Rotates the AI towards the specified target position using the AI's turning animations. The angle in which the AI will stop rotating is based off of an AI's Turning Angle set within the Movement Component editor. The AI will be unable to move during the duration of the turning process. If an AI is wandering, it is recommended that StopMovement is called first to stop an AI from wandering as an AI can still wander after the rotating has finished.
Note: The TargetPosition can be an object, a player, another AI, a custom position, etc.
//Example - It is recomended that EmeraldComponent is cached somewhereEmeraldSystem EmeraldComponent =GetComponent<EmeraldSystem>();EmeraldAPI.Movement.RotateTowardsPosition(EmeraldComponent, YourTargetPosition);