diff options
Diffstat (limited to '')
10 files changed, 39 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs index 2481d11..032104d 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs | |||
@@ -1046,6 +1046,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
1046 | prim.OwnerID = owner_id; | 1046 | prim.OwnerID = owner_id; |
1047 | prim.GroupID = UUID.Zero; | 1047 | prim.GroupID = UUID.Zero; |
1048 | prim.LastOwnerID = creatorID; | 1048 | prim.LastOwnerID = creatorID; |
1049 | prim.RezzerID = creatorID; | ||
1049 | prim.CreationDate = Util.UnixTimeSinceEpoch(); | 1050 | prim.CreationDate = Util.UnixTimeSinceEpoch(); |
1050 | 1051 | ||
1051 | if (grp == null) | 1052 | if (grp == null) |
@@ -1093,6 +1094,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
1093 | { | 1094 | { |
1094 | grp = new SceneObjectGroup(prim); | 1095 | grp = new SceneObjectGroup(prim); |
1095 | grp.LastOwnerID = creatorID; | 1096 | grp.LastOwnerID = creatorID; |
1097 | grp.RezzerID = creatorID; | ||
1096 | } | 1098 | } |
1097 | else | 1099 | else |
1098 | grp.AddPart(prim); | 1100 | grp.AddPart(prim); |
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs index 769fe28..713125c 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs | |||
@@ -284,6 +284,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
284 | prim.OwnerID = AgentId; | 284 | prim.OwnerID = AgentId; |
285 | prim.GroupID = obj.GroupID; | 285 | prim.GroupID = obj.GroupID; |
286 | prim.LastOwnerID = prim.OwnerID; | 286 | prim.LastOwnerID = prim.OwnerID; |
287 | prim.RezzerID = AgentId; | ||
287 | prim.CreationDate = Util.UnixTimeSinceEpoch(); | 288 | prim.CreationDate = Util.UnixTimeSinceEpoch(); |
288 | prim.Name = obj.Name; | 289 | prim.Name = obj.Name; |
289 | prim.Description = ""; | 290 | prim.Description = ""; |
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs index fa7803f..771e5fe 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | |||
@@ -981,6 +981,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
981 | // Make the rezzer the owner, as this is not necessarily set correctly in the serialized asset. | 981 | // Make the rezzer the owner, as this is not necessarily set correctly in the serialized asset. |
982 | part.LastOwnerID = part.OwnerID; | 982 | part.LastOwnerID = part.OwnerID; |
983 | part.OwnerID = remoteClient.AgentId; | 983 | part.OwnerID = remoteClient.AgentId; |
984 | part.RezzerID = remoteClient.AgentId; | ||
984 | } | 985 | } |
985 | } | 986 | } |
986 | 987 | ||
@@ -1150,6 +1151,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
1150 | 1151 | ||
1151 | part.LastOwnerID = part.OwnerID; | 1152 | part.LastOwnerID = part.OwnerID; |
1152 | part.OwnerID = item.Owner; | 1153 | part.OwnerID = item.Owner; |
1154 | part.RezzerID = item.Owner; | ||
1153 | part.Inventory.ChangeInventoryOwner(item.Owner); | 1155 | part.Inventory.ChangeInventoryOwner(item.Owner); |
1154 | } | 1156 | } |
1155 | 1157 | ||
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index 339fc15..daf7741 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | |||
@@ -2625,6 +2625,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
2625 | } | 2625 | } |
2626 | 2626 | ||
2627 | group.FromPartID = sourcePart.UUID; | 2627 | group.FromPartID = sourcePart.UUID; |
2628 | group.RezzerID = group.FromPartID; | ||
2629 | |||
2628 | if( i == 0) | 2630 | if( i == 0) |
2629 | AddNewSceneObject(group, true, curpos, rot, vel); | 2631 | AddNewSceneObject(group, true, curpos, rot, vel); |
2630 | else | 2632 | else |
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index f5f83ca..579874a 100755 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs | |||
@@ -1942,6 +1942,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1942 | else | 1942 | else |
1943 | { | 1943 | { |
1944 | part.LastOwnerID = part.ParentGroup.RootPart.LastOwnerID; | 1944 | part.LastOwnerID = part.ParentGroup.RootPart.LastOwnerID; |
1945 | part.RezzerID = part.ParentGroup.RootPart.RezzerID; | ||
1945 | childParts.Add(part); | 1946 | childParts.Add(part); |
1946 | } | 1947 | } |
1947 | } | 1948 | } |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 6cdbac5..fcbcc3f 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -886,6 +886,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
886 | set { m_rootPart.LastOwnerID = value; } | 886 | set { m_rootPart.LastOwnerID = value; } |
887 | } | 887 | } |
888 | 888 | ||
889 | public UUID RezzerID | ||
890 | { | ||
891 | get { return m_rootPart.RezzerID; } | ||
892 | set { m_rootPart.RezzerID = value; } | ||
893 | } | ||
894 | |||
889 | public UUID OwnerID | 895 | public UUID OwnerID |
890 | { | 896 | { |
891 | get { return m_rootPart.OwnerID; } | 897 | get { return m_rootPart.OwnerID; } |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 3a06e7d..b95b5be 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -460,7 +460,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
460 | m_name = "Object"; | 460 | m_name = "Object"; |
461 | 461 | ||
462 | CreationDate = (int)Utils.DateTimeToUnixTime(Rezzed); | 462 | CreationDate = (int)Utils.DateTimeToUnixTime(Rezzed); |
463 | LastOwnerID = CreatorID = OwnerID = ownerID; | 463 | RezzerID = LastOwnerID = CreatorID = OwnerID = ownerID; |
464 | UUID = UUID.Random(); | 464 | UUID = UUID.Random(); |
465 | Shape = shape; | 465 | Shape = shape; |
466 | OwnershipCost = 0; | 466 | OwnershipCost = 0; |
@@ -484,6 +484,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
484 | 484 | ||
485 | #region XML Schema | 485 | #region XML Schema |
486 | 486 | ||
487 | private UUID _rezzerID; | ||
487 | private UUID _lastOwnerID; | 488 | private UUID _lastOwnerID; |
488 | private UUID _ownerID; | 489 | private UUID _ownerID; |
489 | private UUID _groupID; | 490 | private UUID _groupID; |
@@ -1385,6 +1386,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
1385 | set { _lastOwnerID = value; } | 1386 | set { _lastOwnerID = value; } |
1386 | } | 1387 | } |
1387 | 1388 | ||
1389 | public UUID RezzerID | ||
1390 | { | ||
1391 | get { return _rezzerID; } | ||
1392 | set { _rezzerID = value; } | ||
1393 | } | ||
1394 | |||
1388 | public uint BaseMask | 1395 | public uint BaseMask |
1389 | { | 1396 | { |
1390 | get { return _baseMask; } | 1397 | get { return _baseMask; } |
@@ -2222,6 +2229,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2222 | 2229 | ||
2223 | // This may be wrong... it might have to be applied in SceneObjectGroup to the object that's being duplicated. | 2230 | // This may be wrong... it might have to be applied in SceneObjectGroup to the object that's being duplicated. |
2224 | dupe.LastOwnerID = OwnerID; | 2231 | dupe.LastOwnerID = OwnerID; |
2232 | dupe.RezzerID = RezzerID; | ||
2225 | 2233 | ||
2226 | byte[] extraP = new byte[Shape.ExtraParams.Length]; | 2234 | byte[] extraP = new byte[Shape.ExtraParams.Length]; |
2227 | Array.Copy(Shape.ExtraParams, extraP, extraP.Length); | 2235 | Array.Copy(Shape.ExtraParams, extraP, extraP.Length); |
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs index 7d3a168..0b7379b 100644 --- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs +++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs | |||
@@ -428,6 +428,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization | |||
428 | m_SOPXmlProcessors.Add("GroupID", ProcessGroupID); | 428 | m_SOPXmlProcessors.Add("GroupID", ProcessGroupID); |
429 | m_SOPXmlProcessors.Add("OwnerID", ProcessOwnerID); | 429 | m_SOPXmlProcessors.Add("OwnerID", ProcessOwnerID); |
430 | m_SOPXmlProcessors.Add("LastOwnerID", ProcessLastOwnerID); | 430 | m_SOPXmlProcessors.Add("LastOwnerID", ProcessLastOwnerID); |
431 | m_SOPXmlProcessors.Add("RezzerID", ProcessRezzerID); | ||
431 | m_SOPXmlProcessors.Add("BaseMask", ProcessBaseMask); | 432 | m_SOPXmlProcessors.Add("BaseMask", ProcessBaseMask); |
432 | m_SOPXmlProcessors.Add("OwnerMask", ProcessOwnerMask); | 433 | m_SOPXmlProcessors.Add("OwnerMask", ProcessOwnerMask); |
433 | m_SOPXmlProcessors.Add("GroupMask", ProcessGroupMask); | 434 | m_SOPXmlProcessors.Add("GroupMask", ProcessGroupMask); |
@@ -864,6 +865,11 @@ namespace OpenSim.Region.Framework.Scenes.Serialization | |||
864 | obj.LastOwnerID = Util.ReadUUID(reader, "LastOwnerID"); | 865 | obj.LastOwnerID = Util.ReadUUID(reader, "LastOwnerID"); |
865 | } | 866 | } |
866 | 867 | ||
868 | private static void ProcessRezzerID(SceneObjectPart obj, XmlReader reader) | ||
869 | { | ||
870 | obj.RezzerID = Util.ReadUUID(reader, "RezzerID"); | ||
871 | } | ||
872 | |||
867 | private static void ProcessBaseMask(SceneObjectPart obj, XmlReader reader) | 873 | private static void ProcessBaseMask(SceneObjectPart obj, XmlReader reader) |
868 | { | 874 | { |
869 | obj.BaseMask = (uint)reader.ReadElementContentAsInt("BaseMask", String.Empty); | 875 | obj.BaseMask = (uint)reader.ReadElementContentAsInt("BaseMask", String.Empty); |
@@ -1452,6 +1458,9 @@ namespace OpenSim.Region.Framework.Scenes.Serialization | |||
1452 | UUID lastOwnerID = options.ContainsKey("wipe-owners") ? UUID.Zero : sop.LastOwnerID; | 1458 | UUID lastOwnerID = options.ContainsKey("wipe-owners") ? UUID.Zero : sop.LastOwnerID; |
1453 | WriteUUID(writer, "LastOwnerID", lastOwnerID, options); | 1459 | WriteUUID(writer, "LastOwnerID", lastOwnerID, options); |
1454 | 1460 | ||
1461 | UUID rezzerID = options.ContainsKey("wipe-owners") ? UUID.Zero : sop.RezzerID; | ||
1462 | WriteUUID(writer, "RezzerID", rezzerID, options); | ||
1463 | |||
1455 | writer.WriteElementString("BaseMask", sop.BaseMask.ToString()); | 1464 | writer.WriteElementString("BaseMask", sop.BaseMask.ToString()); |
1456 | writer.WriteElementString("OwnerMask", sop.OwnerMask.ToString()); | 1465 | writer.WriteElementString("OwnerMask", sop.OwnerMask.ToString()); |
1457 | writer.WriteElementString("GroupMask", sop.GroupMask.ToString()); | 1466 | writer.WriteElementString("GroupMask", sop.GroupMask.ToString()); |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 763106f..71e8ca9 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -13793,6 +13793,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
13793 | } catch { }; | 13793 | } catch { }; |
13794 | ret.Add(new LSL_Integer(invcount)); | 13794 | ret.Add(new LSL_Integer(invcount)); |
13795 | break; | 13795 | break; |
13796 | case ScriptBaseClass.OBJECT_REZZER_KEY: | ||
13797 | ret.Add(new LSL_Key(id)); | ||
13798 | break; | ||
13796 | case ScriptBaseClass.OBJECT_GROUP_TAG: | 13799 | case ScriptBaseClass.OBJECT_GROUP_TAG: |
13797 | ret.Add(new LSL_String(av.Grouptitle)); | 13800 | ret.Add(new LSL_String(av.Grouptitle)); |
13798 | break; | 13801 | break; |
@@ -13988,6 +13991,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
13988 | count += parts[i].Inventory.Count; | 13991 | count += parts[i].Inventory.Count; |
13989 | ret.Add(new LSL_Integer(count)); | 13992 | ret.Add(new LSL_Integer(count)); |
13990 | break; | 13993 | break; |
13994 | case ScriptBaseClass.OBJECT_REZZER_KEY: | ||
13995 | ret.Add(new LSL_Key(obj.ParentGroup.RezzerID.ToString())); | ||
13996 | break; | ||
13991 | case ScriptBaseClass.OBJECT_GROUP_TAG: | 13997 | case ScriptBaseClass.OBJECT_GROUP_TAG: |
13992 | ret.Add(new LSL_String(String.Empty)); | 13998 | ret.Add(new LSL_String(String.Empty)); |
13993 | break; | 13999 | break; |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs index 48afcc0..734d878 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs | |||
@@ -640,6 +640,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
640 | public const int OBJECT_OMEGA = 29; | 640 | public const int OBJECT_OMEGA = 29; |
641 | public const int OBJECT_PRIM_COUNT = 30; | 641 | public const int OBJECT_PRIM_COUNT = 30; |
642 | public const int OBJECT_TOTAL_INVENTORY_COUNT = 31; | 642 | public const int OBJECT_TOTAL_INVENTORY_COUNT = 31; |
643 | public const int OBJECT_REZZER_KEY = 32; | ||
643 | public const int OBJECT_GROUP_TAG = 33; | 644 | public const int OBJECT_GROUP_TAG = 33; |
644 | public const int OBJECT_TEMP_ATTACHED = 34; | 645 | public const int OBJECT_TEMP_ATTACHED = 34; |
645 | 646 | ||