diff options
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces/INPCModule.cs')
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/INPCModule.cs | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/INPCModule.cs b/OpenSim/Region/Framework/Interfaces/INPCModule.cs index 478833e..df872f4 100644 --- a/OpenSim/Region/Framework/Interfaces/INPCModule.cs +++ b/OpenSim/Region/Framework/Interfaces/INPCModule.cs | |||
@@ -31,6 +31,17 @@ using OpenSim.Region.Framework.Scenes; | |||
31 | 31 | ||
32 | namespace OpenSim.Region.Framework.Interfaces | 32 | namespace OpenSim.Region.Framework.Interfaces |
33 | { | 33 | { |
34 | // option flags for NPCs | ||
35 | public enum NPCOptionsFlags : int | ||
36 | { | ||
37 | None = 0x00, // no flags (max restriction) | ||
38 | AllowNotOwned = 0x01, // allow NPCs to be created not Owned | ||
39 | AllowSenseAsAvatar = 0x02, // allow NPCs to set to be sensed as Avatars | ||
40 | AllowCloneOtherAvatars = 0x04, // allow NPCs to created cloning a avatar in region | ||
41 | NoNPCGroup = 0x08, // NPCs will have no group title, otherwise will have "- NPC -" | ||
42 | objectGroup = 0x10 // NPC will have host sog groupID | ||
43 | } | ||
44 | |||
34 | /// <summary> | 45 | /// <summary> |
35 | /// Temporary interface. More methods to come at some point to make NPCs | 46 | /// Temporary interface. More methods to come at some point to make NPCs |
36 | /// more object oriented rather than controlling purely through module | 47 | /// more object oriented rather than controlling purely through module |
@@ -38,12 +49,18 @@ namespace OpenSim.Region.Framework.Interfaces | |||
38 | /// </summary> | 49 | /// </summary> |
39 | public interface INPC | 50 | public interface INPC |
40 | { | 51 | { |
52 | |||
41 | /// <summary> | 53 | /// <summary> |
42 | /// Should this NPC be sensed by LSL sensors as an 'agent' | 54 | /// Should this NPC be sensed by LSL sensors as an 'agent' |
43 | /// (interpreted here to mean a normal user) rather than an OpenSim | 55 | /// (interpreted here to mean a normal user) rather than an OpenSim |
44 | /// specific NPC extension? | 56 | /// specific NPC extension? |
45 | /// </summary> | 57 | /// </summary> |
46 | bool SenseAsAgent { get; } | 58 | bool SenseAsAgent { get; } |
59 | UUID ActiveGroupId { get; set; } | ||
60 | UUID Owner { get; } | ||
61 | string profileAbout { get; set; } | ||
62 | UUID profileImage { get; set; } | ||
63 | string Born { get; set; } | ||
47 | } | 64 | } |
48 | 65 | ||
49 | public interface INPCModule | 66 | public interface INPCModule |
@@ -94,7 +111,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
94 | /// failure. | 111 | /// failure. |
95 | /// </returns> | 112 | /// </returns> |
96 | UUID CreateNPC(string firstname, string lastname, | 113 | UUID CreateNPC(string firstname, string lastname, |
97 | Vector3 position, UUID agentID, UUID owner, bool senseAsAgent, Scene scene, | 114 | Vector3 position, UUID agentID, UUID owner, string groupTitle, UUID groupID, bool senseAsAgent, Scene scene, |
98 | AvatarAppearance appearance); | 115 | AvatarAppearance appearance); |
99 | 116 | ||
100 | /// <summary> | 117 | /// <summary> |
@@ -284,5 +301,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
284 | /// agent, the agent is unowned or the agent was not an NPC. | 301 | /// agent, the agent is unowned or the agent was not an NPC. |
285 | /// </returns> | 302 | /// </returns> |
286 | UUID GetOwner(UUID agentID); | 303 | UUID GetOwner(UUID agentID); |
304 | |||
305 | NPCOptionsFlags NPCOptionFlags {get;} | ||
287 | } | 306 | } |
288 | } | 307 | } |