aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Interfaces/INPCModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces/INPCModule.cs')
-rw-r--r--OpenSim/Region/Framework/Interfaces/INPCModule.cs21
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
32namespace OpenSim.Region.Framework.Interfaces 32namespace 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}