aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes
diff options
context:
space:
mode:
authorMelanie Thielker2008-08-24 00:51:21 +0000
committerMelanie Thielker2008-08-24 00:51:21 +0000
commit63b6ab467a2d617b180284861baba544cac602d2 (patch)
tree87f6589c04dd0340abffe61c5483c899ecc3cf0f /OpenSim/Region/Environment/Scenes
parentMantis#2036. Thank you kindly, HomerHorwitz for a patch that: (diff)
downloadopensim-SC-63b6ab467a2d617b180284861baba544cac602d2.zip
opensim-SC-63b6ab467a2d617b180284861baba544cac602d2.tar.gz
opensim-SC-63b6ab467a2d617b180284861baba544cac602d2.tar.bz2
opensim-SC-63b6ab467a2d617b180284861baba544cac602d2.tar.xz
Implements 80% of object buy (prim vendor). You can't buy the object yet,
and the for sale setting doesn't survive a sim restart, but this is most of the plumbing.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs24
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs4
2 files changed, 27 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 3bae463..c44a714 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -2153,6 +2153,7 @@ namespace OpenSim.Region.Environment.Scenes
2153 client.OnUndo += m_innerScene.HandleUndo; 2153 client.OnUndo += m_innerScene.HandleUndo;
2154 client.OnObjectGroupRequest += m_innerScene.HandleObjectGroupUpdate; 2154 client.OnObjectGroupRequest += m_innerScene.HandleObjectGroupUpdate;
2155 client.OnParcelReturnObjectsRequest += LandChannel.ReturnObjectsInParcel; 2155 client.OnParcelReturnObjectsRequest += LandChannel.ReturnObjectsInParcel;
2156 client.OnObjectSaleInfo += ObjectSaleInfo;
2156 client.OnScriptReset += ProcessScriptReset; 2157 client.OnScriptReset += ProcessScriptReset;
2157 client.OnGetScriptRunning += GetScriptRunning; 2158 client.OnGetScriptRunning += GetScriptRunning;
2158 client.OnSetScriptRunning += SetScriptRunning; 2159 client.OnSetScriptRunning += SetScriptRunning;
@@ -3924,5 +3925,28 @@ namespace OpenSim.Region.Environment.Scenes
3924 3925
3925 return inv.NeedSceneCacheClear(agentID, this); 3926 return inv.NeedSceneCacheClear(agentID, this);
3926 } 3927 }
3928
3929 public void ObjectSaleInfo(IClientAPI client, LLUUID agentID, LLUUID sessionID, uint localID, byte saleType, int salePrice)
3930 {
3931 SceneObjectPart part = GetSceneObjectPart(localID);
3932 if(part == null || part.ParentGroup == null)
3933 return;
3934
3935 if(part.ParentGroup.RootPart == null)
3936 return;
3937
3938 part = part.ParentGroup.RootPart;
3939
3940 part.ObjectSaleType = saleType;
3941 part.SalePrice = salePrice;
3942
3943 m_log.DebugFormat("[SCENE] Set sale data of object {0} to {1} ${2}", part.UUID, saleType, salePrice);
3944 part.GetProperties(client);
3945 }
3946
3947 public void PerformObjectBuy(IClientAPI remoteClient, LLUUID categoryID,
3948 uint localID, byte saleType)
3949 {
3950 }
3927 } 3951 }
3928} 3952}
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index 517114f..927791f 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -1500,7 +1500,9 @@ namespace OpenSim.Region.Environment.Scenes
1500 _groupID, (short)InventorySerial, _lastOwnerID, UUID, _ownerID, 1500 _groupID, (short)InventorySerial, _lastOwnerID, UUID, _ownerID,
1501 ParentGroup.RootPart.TouchName, new byte[0], ParentGroup.RootPart.SitName, Name, Description, 1501 ParentGroup.RootPart.TouchName, new byte[0], ParentGroup.RootPart.SitName, Name, Description,
1502 ParentGroup.RootPart._ownerMask, ParentGroup.RootPart._nextOwnerMask, ParentGroup.RootPart._groupMask, ParentGroup.RootPart._everyoneMask, 1502 ParentGroup.RootPart._ownerMask, ParentGroup.RootPart._nextOwnerMask, ParentGroup.RootPart._groupMask, ParentGroup.RootPart._everyoneMask,
1503 ParentGroup.RootPart._baseMask); 1503 ParentGroup.RootPart._baseMask,
1504 ParentGroup.RootPart.ObjectSaleType,
1505 ParentGroup.RootPart.SalePrice);
1504 } 1506 }
1505 1507
1506 public LLUUID GetRootPartUUID() 1508 public LLUUID GetRootPartUUID()