aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs21
1 files changed, 21 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 7792ab5..ba96ad8 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -2313,6 +2313,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2313 } 2313 }
2314 } 2314 }
2315 2315
2316 public LSL_Key osNpcGetOwner(LSL_Key npc)
2317 {
2318 CheckThreatLevel(ThreatLevel.None, "osNpcGetOwner");
2319
2320 INPCModule npcModule = World.RequestModuleInterface<INPCModule>();
2321 if (npcModule != null)
2322 {
2323 UUID npcId;
2324 if (UUID.TryParse(npc.m_string, out npcId))
2325 {
2326 UUID owner = npcModule.GetOwner(npcId);
2327 if (owner != UUID.Zero)
2328 return new LSL_Key(owner.ToString());
2329 else
2330 return npc;
2331 }
2332 }
2333
2334 return new LSL_Key(UUID.Zero.ToString());
2335 }
2336
2316 public LSL_Vector osNpcGetPos(LSL_Key npc) 2337 public LSL_Vector osNpcGetPos(LSL_Key npc)
2317 { 2338 {
2318 CheckThreatLevel(ThreatLevel.High, "osNpcGetPos"); 2339 CheckThreatLevel(ThreatLevel.High, "osNpcGetPos");