diff options
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces/INPCModule.cs')
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/INPCModule.cs | 47 |
1 files changed, 41 insertions, 6 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/INPCModule.cs b/OpenSim/Region/Framework/Interfaces/INPCModule.cs index fa8d6b6..5e5c4a1 100644 --- a/OpenSim/Region/Framework/Interfaces/INPCModule.cs +++ b/OpenSim/Region/Framework/Interfaces/INPCModule.cs | |||
@@ -26,6 +26,7 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using OpenMetaverse; | 28 | using OpenMetaverse; |
29 | using OpenSim.Framework; | ||
29 | using OpenSim.Region.Framework.Scenes; | 30 | using OpenSim.Region.Framework.Scenes; |
30 | 31 | ||
31 | namespace OpenSim.Region.Framework.Interfaces | 32 | namespace OpenSim.Region.Framework.Interfaces |
@@ -39,9 +40,26 @@ namespace OpenSim.Region.Framework.Interfaces | |||
39 | /// <param name="lastname"></param> | 40 | /// <param name="lastname"></param> |
40 | /// <param name="position"></param> | 41 | /// <param name="position"></param> |
41 | /// <param name="scene"></param> | 42 | /// <param name="scene"></param> |
42 | /// <param name="cloneAppearanceFrom">The UUID of the avatar from which to clone the NPC's appearance from.</param> | 43 | /// <param name="appearance">The avatar appearance to use for the new NPC.</param> |
43 | /// <returns>The UUID of the ScenePresence created.</returns> | 44 | /// <returns>The UUID of the ScenePresence created.</returns> |
44 | UUID CreateNPC(string firstname, string lastname, Vector3 position, Scene scene, UUID cloneAppearanceFrom); | 45 | UUID CreateNPC(string firstname, string lastname, Vector3 position, Scene scene, AvatarAppearance appearance); |
46 | |||
47 | /// <summary> | ||
48 | /// Check if the agent is an NPC. | ||
49 | /// </summary> | ||
50 | /// <param name="agentID"></param> | ||
51 | /// <param name="scene"></param> | ||
52 | /// <returns>True if the agent is an NPC in the given scene. False otherwise.</returns> | ||
53 | bool IsNPC(UUID agentID, Scene scene); | ||
54 | |||
55 | /// <summary> | ||
56 | /// Set the appearance for an NPC. | ||
57 | /// </summary> | ||
58 | /// <param name="agentID"></param> | ||
59 | /// <param name="appearance"></param> | ||
60 | /// <param name="scene"></param> | ||
61 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> | ||
62 | bool SetNPCAppearance(UUID agentID, AvatarAppearance appearance, Scene scene); | ||
45 | 63 | ||
46 | /// <summary> | 64 | /// <summary> |
47 | /// Move an NPC to a target over time. | 65 | /// Move an NPC to a target over time. |
@@ -49,7 +67,23 @@ namespace OpenSim.Region.Framework.Interfaces | |||
49 | /// <param name="agentID">The UUID of the NPC</param> | 67 | /// <param name="agentID">The UUID of the NPC</param> |
50 | /// <param name="scene"></param> | 68 | /// <param name="scene"></param> |
51 | /// <param name="pos"></param> | 69 | /// <param name="pos"></param> |
52 | void MoveToTarget(UUID agentID, Scene scene, Vector3 pos); | 70 | /// <param name="noFly"> |
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. | ||
73 | /// </param> | ||
74 | /// <param name="landAtTarget"> | ||
75 | /// If true and the avatar is flying when it reaches the target, land. | ||
76 | /// </param> | ||
77 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> | ||
78 | bool MoveToTarget(UUID agentID, Scene scene, Vector3 pos, bool noFly, bool landAtTarget); | ||
79 | |||
80 | /// <summary> | ||
81 | /// Stop the NPC's current movement. | ||
82 | /// </summary> | ||
83 | /// <param name="agentID">The UUID of the NPC</param> | ||
84 | /// <param name="scene"></param> | ||
85 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> | ||
86 | bool StopMoveToTarget(UUID agentID, Scene scene); | ||
53 | 87 | ||
54 | /// <summary> | 88 | /// <summary> |
55 | /// Get the NPC to say something. | 89 | /// Get the NPC to say something. |
@@ -57,14 +91,15 @@ namespace OpenSim.Region.Framework.Interfaces | |||
57 | /// <param name="agentID">The UUID of the NPC</param> | 91 | /// <param name="agentID">The UUID of the NPC</param> |
58 | /// <param name="scene"></param> | 92 | /// <param name="scene"></param> |
59 | /// <param name="text"></param> | 93 | /// <param name="text"></param> |
60 | void Say(UUID agentID, Scene scene, string text); | 94 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> |
61 | 95 | bool Say(UUID agentID, Scene scene, string text); | |
62 | 96 | ||
63 | /// <summary> | 97 | /// <summary> |
64 | /// Delete an NPC. | 98 | /// Delete an NPC. |
65 | /// </summary> | 99 | /// </summary> |
66 | /// <param name="agentID">The UUID of the NPC</param> | 100 | /// <param name="agentID">The UUID of the NPC</param> |
67 | /// <param name="scene"></param> | 101 | /// <param name="scene"></param> |
68 | void DeleteNPC(UUID agentID, Scene scene); | 102 | /// <returns>True if the operation succeeded, false if there was no such agent or the agent was not an NPC</returns> |
103 | bool DeleteNPC(UUID agentID, Scene scene); | ||
69 | } | 104 | } |
70 | } \ No newline at end of file | 105 | } \ No newline at end of file |