aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorSignpostMarv2012-08-02 11:19:33 +0100
committerMelanie2012-08-02 22:12:36 +0100
commitcd2c5843a86af5b6b49b6675e90b702b479fd258 (patch)
tree6e4983737c77e2de1d1da2005776ef0974f4dbc6 /OpenSim
parentMerge branch 'master' of melanie@opensimulator.org:/var/git/opensim (diff)
downloadopensim-SC-cd2c5843a86af5b6b49b6675e90b702b479fd258.zip
opensim-SC-cd2c5843a86af5b6b49b6675e90b702b479fd258.tar.gz
opensim-SC-cd2c5843a86af5b6b49b6675e90b702b479fd258.tar.bz2
opensim-SC-cd2c5843a86af5b6b49b6675e90b702b479fd258.tar.xz
reduced-complexity implementation of function to get rezzing object key
Signed-off-by: Melanie <melanie@t-data.com>
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs3
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs5
5 files changed, 29 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index d18fffd..a2016da 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -2131,7 +2131,8 @@ namespace OpenSim.Region.Framework.Scenes
2131 if ((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0) 2131 if ((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0)
2132 sourcePart.Inventory.RemoveInventoryItem(item.ItemID); 2132 sourcePart.Inventory.RemoveInventoryItem(item.ItemID);
2133 } 2133 }
2134 2134
2135 group.RezzingObjectID = sourcePart.UUID;
2135 AddNewSceneObject(group, true, pos, rot, vel); 2136 AddNewSceneObject(group, true, pos, rot, vel);
2136 2137
2137 // We can only call this after adding the scene object, since the scene object references the scene 2138 // We can only call this after adding the scene object, since the scene object references the scene
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 52469a2..c9345e5 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -611,6 +611,14 @@ namespace OpenSim.Region.Framework.Scenes
611 public UUID FromItemID { get; set; } 611 public UUID FromItemID { get; set; }
612 612
613 /// <summary> 613 /// <summary>
614 /// Refers to the SceneObjectPart.UUID property of the object that this object was rezzed from, if applicable.
615 /// </summary>
616 /// <remarks>
617 /// If not applicable will be UUID.Zero
618 /// </remarks>
619 public UUID RezzingObjectID { get; set; }
620
621 /// <summary>
614 /// The folder ID that this object was rezzed from, if applicable. 622 /// The folder ID that this object was rezzed from, if applicable.
615 /// </summary> 623 /// </summary>
616 /// <remarks> 624 /// <remarks>
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 44de176..e5a4fe8 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -3314,5 +3314,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
3314 3314
3315 return Math.Max(a, b); 3315 return Math.Max(a, b);
3316 } 3316 }
3317
3318 public LSL_Key osGetRezzingObject()
3319 {
3320 CheckThreatLevel(ThreatLevel.None, "osGetRezzingObject");
3321 m_host.AddScriptLPS(1);
3322
3323 return new LSL_Key(m_host.ParentGroup.RezzingObjectID.ToString());
3324 }
3317 } 3325 }
3318} \ No newline at end of file 3326} \ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
index f73a85e..1f000a3 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
@@ -299,5 +299,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
299 /// <param name="b"></param> 299 /// <param name="b"></param>
300 /// <returns></returns> 300 /// <returns></returns>
301 LSL_Float osMax(double a, double b); 301 LSL_Float osMax(double a, double b);
302
303 /// <summary>
304 /// Get the key of the object that rezzed this object.
305 /// </summary>
306 /// <returns>Rezzing object key or NULL_KEY if rezzed by agent or otherwise unknown.</returns>
307 LSL_Key osGetRezzingObject();
302 } 308 }
303} 309}
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
index 53daa13..94405d2 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
@@ -945,5 +945,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
945 { 945 {
946 return m_OSSL_Functions.osMax(a, b); 946 return m_OSSL_Functions.osMax(a, b);
947 } 947 }
948
949 public LSL_Key osGetRezzingObject()
950 {
951 return m_OSSL_Functions.osGetRezzingObject();
952 }
948 } 953 }
949} 954}