diff options
author | Justin Clark-Casey (justincc) | 2011-08-10 23:56:19 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-08-10 23:56:19 +0100 |
commit | 7f499ff3f386d57bcd81ebb3f58f110011100604 (patch) | |
tree | bab34762e4a9cb9e739df591360cec3405bb4e57 /OpenSim/Region/Framework | |
parent | fly and no fly constants for osNpcMoveToTarget() (diff) | |
download | opensim-SC_OLD-7f499ff3f386d57bcd81ebb3f58f110011100604.zip opensim-SC_OLD-7f499ff3f386d57bcd81ebb3f58f110011100604.tar.gz opensim-SC_OLD-7f499ff3f386d57bcd81ebb3f58f110011100604.tar.bz2 opensim-SC_OLD-7f499ff3f386d57bcd81ebb3f58f110011100604.tar.xz |
Add a OS_NPC_LAND_AT_TARGET option to osMoveToTarget()
Default for this function is now not to automatically land.
This allows better control by scripts when an avatar is going to be landing on a prim rather than the ground.
Stopping the avatar involves faking a collision, to avoid the pid controller making it overshoot.
A better approach would be to gradually slow the avatar as we near the target
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/INPCModule.cs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/INPCModule.cs b/OpenSim/Region/Framework/Interfaces/INPCModule.cs index 06296c9..08b973d 100644 --- a/OpenSim/Region/Framework/Interfaces/INPCModule.cs +++ b/OpenSim/Region/Framework/Interfaces/INPCModule.cs | |||
@@ -71,8 +71,11 @@ namespace OpenSim.Region.Framework.Interfaces | |||
71 | /// If true, then the avatar will attempt to walk to the location even if it's up in the air. | 71 | /// If true, then the avatar will attempt to walk to the location even if it's up in the air. |
72 | /// This is to allow walking on prims. | 72 | /// This is to allow walking on prims. |
73 | /// </param> | 73 | /// </param> |
74 | /// <param name="landAtTarget"> | ||
75 | /// If true and the avatar is flying when it reaches the target, land. | ||
76 | /// </param> | ||
74 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> | 77 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> |
75 | bool MoveToTarget(UUID agentID, Scene scene, Vector3 pos, bool noFly); | 78 | bool MoveToTarget(UUID agentID, Scene scene, Vector3 pos, bool noFly, bool landAtTarget); |
76 | 79 | ||
77 | /// <summary> | 80 | /// <summary> |
78 | /// Stop the NPC's current movement. | 81 | /// Stop the NPC's current movement. |