From 9c6a591ad0080e3664f04161906fa376df7b996d Mon Sep 17 00:00:00 2001 From: Master ScienceSim Date: Wed, 29 Sep 2010 17:18:39 -0700 Subject: [PATCH 1/5] couple fixes to enable profiles in simian connector --- .../Connectors/SimianGrid/SimianProfiles.cs | 38 ++++++++++++++++--- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs b/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs index 0ef4974f79..6aefc38ed3 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs @@ -77,8 +77,23 @@ namespace OpenSim.Services.Connectors.SimianGrid public SimianProfiles() { } public string Name { get { return "SimianProfiles"; } } - public void AddRegion(Scene scene) { if (m_Enabled) { CheckEstateManager(scene); scene.EventManager.OnClientConnect += ClientConnectHandler; } } - public void RemoveRegion(Scene scene) { if (m_Enabled) { scene.EventManager.OnClientConnect -= ClientConnectHandler; } } + + public void AddRegion(Scene scene) + { + if (m_Enabled) + { + CheckEstateManager(scene); + scene.EventManager.OnClientConnect += ClientConnectHandler; + } + } + + public void RemoveRegion(Scene scene) + { + if (m_Enabled) + { + scene.EventManager.OnClientConnect -= ClientConnectHandler; + } + } #endregion INonSharedRegionModule @@ -89,13 +104,16 @@ namespace OpenSim.Services.Connectors.SimianGrid public void Initialise(IConfigSource source) { - IConfig profileConfig = source.Configs["Profile"]; + IConfig profileConfig = source.Configs["Profiles"]; if (profileConfig == null) return; if (profileConfig.GetString("Module", String.Empty) != Name) return; + m_log.DebugFormat("[SIMIAN PROFILES] module enabled"); + m_Enabled = true; + IConfig gridConfig = source.Configs["UserAccountService"]; if (gridConfig != null) { @@ -265,6 +283,8 @@ namespace OpenSim.Services.Connectors.SimianGrid private void RequestAvatarPropertiesHandler(IClientAPI client, UUID avatarID) { + m_log.DebugFormat("[SIMIAN PROFILES]: Request avatar properties for {0}",avatarID); + OSDMap user = FetchUserData(avatarID); ProfileFlags flags = ProfileFlags.AllowPublish | ProfileFlags.MaturePublish; @@ -274,8 +294,14 @@ namespace OpenSim.Services.Connectors.SimianGrid OSDMap about = null; if (user.ContainsKey("LLAbout")) { - try { about = OSDParser.DeserializeJson(user["LLAbout"].AsString()) as OSDMap; } - catch { } + try + { + about = OSDParser.DeserializeJson(user["LLAbout"].AsString()) as OSDMap; + } + catch + { + m_log.WarnFormat("[SIMIAN PROFILES]: Unable to decode LLAbout"); + } } if (about == null) @@ -428,6 +454,8 @@ namespace OpenSim.Services.Connectors.SimianGrid private OSDMap FetchUserData(UUID userID) { + m_log.DebugFormat("[SIMIAN PROFILES]: Fetch information about {0}",userID); + NameValueCollection requestArgs = new NameValueCollection { { "RequestMethod", "GetUser" }, From ffc1123ca5225e9aa74b9863fedc3291a58d3923 Mon Sep 17 00:00:00 2001 From: BlueWall Date: Thu, 30 Sep 2010 23:08:36 -0400 Subject: [PATCH 2/5] adding -logconfig to Robust.exe Adding -logconfig to Robust.exe. will still process the -logfile option, as before. No options given, the value "Robust.log" will be written in the ./bin directory --- OpenSim/Server/Base/ServicesServerBase.cs | 26 +++++++++++++++++------ bin/Robust.exe.config | 2 +- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/OpenSim/Server/Base/ServicesServerBase.cs b/OpenSim/Server/Base/ServicesServerBase.cs index dee31bdf58..18f0f24a47 100644 --- a/OpenSim/Server/Base/ServicesServerBase.cs +++ b/OpenSim/Server/Base/ServicesServerBase.cs @@ -85,11 +85,13 @@ namespace OpenSim.Server.Base argvConfig.AddSwitch("Startup", "logfile", "l"); argvConfig.AddSwitch("Startup", "inifile", "i"); argvConfig.AddSwitch("Startup", "prompt", "p"); + argvConfig.AddSwitch("Startup", "logconfig", "g"); // Automagically create the ini file name // string fileName = Path.GetFileNameWithoutExtension(Assembly.GetEntryAssembly().Location); string iniFile = fileName + ".ini"; + string logConfig = null; IConfig startupConfig = argvConfig.Configs["Startup"]; if (startupConfig != null) @@ -100,6 +102,9 @@ namespace OpenSim.Server.Base // // Check if a prompt was given on the command line prompt = startupConfig.GetString("prompt", prompt); + // + // Check for a Log4Net config file on the command line + logConfig =startupConfig.GetString("logconfig",logConfig); } // Find out of the file name is a URI and remote load it @@ -171,7 +176,15 @@ namespace OpenSim.Server.Base OpenSimAppender consoleAppender = null; FileAppender fileAppender = null; - XmlConfigurator.Configure(); + if ( logConfig != null ) + { + FileInfo cfg = new FileInfo(logConfig); + XmlConfigurator.Configure(cfg); + } + else + { + XmlConfigurator.Configure(); + } ILoggerRepository repository = LogManager.GetRepository(); IAppender[] appenders = repository.GetAppenders(); @@ -207,11 +220,12 @@ namespace OpenSim.Server.Base { if (startupConfig != null) { - - fileName = startupConfig.GetString("logfile", fileName+".log"); - fileName = Path.GetFullPath(Path.Combine(".", fileName)); - fileAppender.File = fileName; - fileAppender.ActivateOptions(); + string cfgFileName = startupConfig.GetString("logfile", null); + if (cfgFileName != null) + { + fileAppender.File = cfgFileName; + fileAppender.ActivateOptions(); + } } } diff --git a/bin/Robust.exe.config b/bin/Robust.exe.config index c2d93c0449..4914f55cb2 100644 --- a/bin/Robust.exe.config +++ b/bin/Robust.exe.config @@ -17,7 +17,7 @@ - + From f220a2c5eb9bbd15602adb146624b959be3c0314 Mon Sep 17 00:00:00 2001 From: Melanie Date: Sat, 2 Oct 2010 00:19:30 +0200 Subject: [PATCH 3/5] Replace CalculateMass with a more accurate version, contributed by Ubit. Thank you. --- OpenSim/Region/Physics/OdePlugin/ODEPrim.cs | 479 ++++++++++---------- 1 file changed, 232 insertions(+), 247 deletions(-) diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs index 87cccadf73..c37c9bd131 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs @@ -403,300 +403,285 @@ namespace OpenSim.Region.Physics.OdePlugin private float CalculateMass() { - float volume = 0; - - // No material is passed to the physics engines yet.. soo.. - // we're using the m_density constant in the class definition + float volume = _size.X * _size.Y * _size.Z; // default + float tmp; float returnMass = 0; - + float hollowAmount = (float)_pbs.ProfileHollow * 2.0e-5f; + float hollowVolume = hollowAmount * hollowAmount; + switch (_pbs.ProfileShape) { case ProfileShape.Square: - // Profile Volume + // default box - volume = _size.X*_size.Y*_size.Z; - - // If the user has 'hollowed out' - // ProfileHollow is one of those 0 to 50000 values :P - // we like percentages better.. so turning into a percentage - - if (((float) _pbs.ProfileHollow/50000f) > 0.0) - { - float hollowAmount = (float) _pbs.ProfileHollow/50000f; - - // calculate the hollow volume by it's shape compared to the prim shape - float hollowVolume = 0; - switch (_pbs.HollowShape) + if (_pbs.PathCurve == (byte)Extrusion.Straight) { - case HollowShape.Square: - case HollowShape.Same: - // Cube Hollow volume calculation - float hollowsizex = _size.X*hollowAmount; - float hollowsizey = _size.Y*hollowAmount; - float hollowsizez = _size.Z*hollowAmount; - hollowVolume = hollowsizex*hollowsizey*hollowsizez; - break; + if (hollowAmount > 0.0) + { + switch (_pbs.HollowShape) + { + case HollowShape.Square: + case HollowShape.Same: + break; - case HollowShape.Circle: - // Hollow shape is a perfect cyllinder in respect to the cube's scale - // Cyllinder hollow volume calculation - float hRadius = _size.X/2; - float hLength = _size.Z; + case HollowShape.Circle: - // pi * r2 * h - hollowVolume = ((float) (Math.PI*Math.Pow(hRadius, 2)*hLength)*hollowAmount); - break; + hollowVolume *= 0.78539816339f; + break; - case HollowShape.Triangle: - // Equilateral Triangular Prism volume hollow calculation - // Triangle is an Equilateral Triangular Prism with aLength = to _size.Y + case HollowShape.Triangle: - float aLength = _size.Y; - // 1/2 abh - hollowVolume = (float) ((0.5*aLength*_size.X*_size.Z)*hollowAmount); - break; + hollowVolume *= (0.5f * .5f); + break; - default: - hollowVolume = 0; - break; + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } + } + + else if (_pbs.PathCurve == (byte)Extrusion.Curve1) + { + //a tube + + volume *= 0.78539816339e-2f * (float)(200 - _pbs.PathScaleX); + tmp= 1.0f -2.0e-2f * (float)(200 - _pbs.PathScaleY); + volume -= volume*tmp*tmp; + + if (hollowAmount > 0.0) + { + hollowVolume *= hollowAmount; + + switch (_pbs.HollowShape) + { + case HollowShape.Square: + case HollowShape.Same: + break; + + case HollowShape.Circle: + hollowVolume *= 0.78539816339f;; + break; + + case HollowShape.Triangle: + hollowVolume *= 0.5f * 0.5f; + break; + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } } - volume = volume - hollowVolume; - } break; + case ProfileShape.Circle: + if (_pbs.PathCurve == (byte)Extrusion.Straight) - { - // Cylinder - float volume1 = (float)(Math.PI * Math.Pow(_size.X/2, 2) * _size.Z); - float volume2 = (float)(Math.PI * Math.Pow(_size.Y/2, 2) * _size.Z); - - // Approximating the cylinder's irregularity. - if (volume1 > volume2) { - volume = (float)volume1 - (volume1 - volume2); + volume *= 0.78539816339f; // elipse base + + if (hollowAmount > 0.0) + { + switch (_pbs.HollowShape) + { + case HollowShape.Same: + case HollowShape.Circle: + break; + + case HollowShape.Square: + hollowVolume *= 0.5f * 2.5984480504799f; + break; + + case HollowShape.Triangle: + hollowVolume *= .5f * 1.27323954473516f; + break; + + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } } - else if (volume2 > volume1) + + else if (_pbs.PathCurve == (byte)Extrusion.Curve1) { - volume = (float)volume2 - (volume2 - volume1); + volume *= 0.61685027506808491367715568749226e-2f * (float)(200 - _pbs.PathScaleX); + tmp = 1.0f - .02f * (float)(200 - _pbs.PathScaleY); + volume *= (1.0f - tmp * tmp); + + if (hollowAmount > 0.0) + { + + // calculate the hollow volume by it's shape compared to the prim shape + hollowVolume *= hollowAmount; + + switch (_pbs.HollowShape) + { + case HollowShape.Same: + case HollowShape.Circle: + break; + + case HollowShape.Square: + hollowVolume *= 0.5f * 2.5984480504799f; + break; + + case HollowShape.Triangle: + hollowVolume *= .5f * 1.27323954473516f; + break; + + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } } - else - { - // Regular cylinder - volume = volume1; - } - } - else - { - // We don't know what the shape is yet, so use default - volume = _size.X * _size.Y * _size.Z; - } - // If the user has 'hollowed out' - // ProfileHollow is one of those 0 to 50000 values :P - // we like percentages better.. so turning into a percentage - - if (((float)_pbs.ProfileHollow / 50000f) > 0.0) - { - float hollowAmount = (float)_pbs.ProfileHollow / 50000f; - - // calculate the hollow volume by it's shape compared to the prim shape - float hollowVolume = 0; - switch (_pbs.HollowShape) - { - case HollowShape.Same: - case HollowShape.Circle: - // Hollow shape is a perfect cyllinder in respect to the cube's scale - // Cyllinder hollow volume calculation - float hRadius = _size.X / 2; - float hLength = _size.Z; - - // pi * r2 * h - hollowVolume = ((float)(Math.PI * Math.Pow(hRadius, 2) * hLength) * hollowAmount); - break; - - case HollowShape.Square: - // Cube Hollow volume calculation - float hollowsizex = _size.X * hollowAmount; - float hollowsizey = _size.Y * hollowAmount; - float hollowsizez = _size.Z * hollowAmount; - hollowVolume = hollowsizex * hollowsizey * hollowsizez; - break; - - case HollowShape.Triangle: - // Equilateral Triangular Prism volume hollow calculation - // Triangle is an Equilateral Triangular Prism with aLength = to _size.Y - - float aLength = _size.Y; - // 1/2 abh - hollowVolume = (float)((0.5 * aLength * _size.X * _size.Z) * hollowAmount); - break; - - default: - hollowVolume = 0; - break; - } - volume = volume - hollowVolume; - } break; case ProfileShape.HalfCircle: if (_pbs.PathCurve == (byte)Extrusion.Curve1) { - if (_size.X == _size.Y && _size.Y == _size.Z) - { - // regular sphere - // v = 4/3 * pi * r^3 - float sradius3 = (float)Math.Pow((_size.X / 2), 3); - volume = (float)((4f / 3f) * Math.PI * sradius3); - } - else - { - // we treat this as a box currently - volume = _size.X * _size.Y * _size.Z; - } - } - else - { - // We don't know what the shape is yet, so use default - volume = _size.X * _size.Y * _size.Z; + volume *= 0.52359877559829887307710723054658f; } break; case ProfileShape.EquilateralTriangle: - /* - v = (abs((xB*yA-xA*yB)+(xC*yB-xB*yC)+(xA*yC-xC*yA))/2) * h - // seed mesh - Vertex MM = new Vertex(-0.25f, -0.45f, 0.0f); - Vertex PM = new Vertex(+0.5f, 0f, 0.0f); - Vertex PP = new Vertex(-0.25f, +0.45f, 0.0f); - */ - float xA = -0.25f * _size.X; - float yA = -0.45f * _size.Y; - - float xB = 0.5f * _size.X; - float yB = 0; - - float xC = -0.25f * _size.X; - float yC = 0.45f * _size.Y; - - volume = (float)((Math.Abs((xB * yA - xA * yB) + (xC * yB - xB * yC) + (xA * yC - xC * yA)) / 2) * _size.Z); - - // If the user has 'hollowed out' - // ProfileHollow is one of those 0 to 50000 values :P - // we like percentages better.. so turning into a percentage - float fhollowFactor = ((float)_pbs.ProfileHollow / 1.9f); - if (((float)fhollowFactor / 50000f) > 0.0) - { - float hollowAmount = (float)fhollowFactor / 50000f; - - // calculate the hollow volume by it's shape compared to the prim shape - float hollowVolume = 0; - switch (_pbs.HollowShape) + if (_pbs.PathCurve == (byte)Extrusion.Straight) { - case HollowShape.Same: - case HollowShape.Triangle: - // Equilateral Triangular Prism volume hollow calculation - // Triangle is an Equilateral Triangular Prism with aLength = to _size.Y + volume *= 0.32475953f; - float aLength = _size.Y; - // 1/2 abh - hollowVolume = (float)((0.5 * aLength * _size.X * _size.Z) * hollowAmount); - break; + if (hollowAmount > 0.0) + { - case HollowShape.Square: - // Cube Hollow volume calculation - float hollowsizex = _size.X * hollowAmount; - float hollowsizey = _size.Y * hollowAmount; - float hollowsizez = _size.Z * hollowAmount; - hollowVolume = hollowsizex * hollowsizey * hollowsizez; - break; + // calculate the hollow volume by it's shape compared to the prim shape + switch (_pbs.HollowShape) + { + case HollowShape.Same: + case HollowShape.Triangle: + hollowVolume *= .25f; + break; - case HollowShape.Circle: - // Hollow shape is a perfect cyllinder in respect to the cube's scale - // Cyllinder hollow volume calculation - float hRadius = _size.X / 2; - float hLength = _size.Z; + case HollowShape.Square: + hollowVolume *= 0.499849f * 3.07920140172638f; + break; - // pi * r2 * h - hollowVolume = ((float)((Math.PI * Math.Pow(hRadius, 2) * hLength)/2) * hollowAmount); - break; + case HollowShape.Circle: + // Hollow shape is a perfect cyllinder in respect to the cube's scale + // Cyllinder hollow volume calculation - default: - hollowVolume = 0; - break; + hollowVolume *= 0.1963495f * 3.07920140172638f; + break; + + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } } - volume = volume - hollowVolume; - } - break; + else if (_pbs.PathCurve == (byte)Extrusion.Curve1) + { + volume *= 0.32475953f; + volume *= 0.01f * (float)(200 - _pbs.PathScaleX); + tmp = 1.0f - .02f * (float)(200 - _pbs.PathScaleY); + volume *= (1.0f - tmp * tmp); + + if (hollowAmount > 0.0) + { + + hollowVolume *= hollowAmount; + + switch (_pbs.HollowShape) + { + case HollowShape.Same: + case HollowShape.Triangle: + hollowVolume *= .25f; + break; + + case HollowShape.Square: + hollowVolume *= 0.499849f * 3.07920140172638f; + break; + + case HollowShape.Circle: + + hollowVolume *= 0.1963495f * 3.07920140172638f; + break; + + default: + hollowVolume = 0; + break; + } + volume *= (1.0f - hollowVolume); + } + } + break; default: - // we don't have all of the volume formulas yet so - // use the common volume formula for all - volume = _size.X*_size.Y*_size.Z; break; - } - - // Calculate Path cut effect on volume - // Not exact, in the triangle hollow example - // They should never be zero or less then zero.. - // we'll ignore it if it's less then zero - - // ProfileEnd and ProfileBegin are values - // from 0 to 50000 - - // Turning them back into percentages so that I can cut that percentage off the volume - - float PathCutEndAmount = _pbs.ProfileEnd; - float PathCutStartAmount = _pbs.ProfileBegin; - if (((PathCutStartAmount + PathCutEndAmount)/50000f) > 0.0f) - { - float pathCutAmount = ((PathCutStartAmount + PathCutEndAmount)/50000f); - - // Check the return amount for sanity - if (pathCutAmount >= 0.99f) - pathCutAmount = 0.99f; - - volume = volume - (volume*pathCutAmount); - } - UInt16 taperX = _pbs.PathScaleX; - UInt16 taperY = _pbs.PathScaleY; - float taperFactorX = 0; - float taperFactorY = 0; - - // Mass = density * volume - if (taperX != 100) - { - if (taperX > 100) - { - taperFactorX = 1.0f - ((float)taperX / 200); - //m_log.Warn("taperTopFactorX: " + extr.taperTopFactorX.ToString()); } - else - { - taperFactorX = 1.0f - ((100 - (float)taperX) / 100); - //m_log.Warn("taperBotFactorX: " + extr.taperBotFactorX.ToString()); - } - volume = (float)volume * ((taperFactorX / 3f) + 0.001f); - } - if (taperY != 100) - { - if (taperY > 100) + + + float taperX1; + float taperY1; + float taperX; + float taperY; + float pathBegin; + float pathEnd; + float profileBegin; + float profileEnd; + + if (_pbs.PathCurve == (byte)Extrusion.Straight || _pbs.PathCurve == (byte)Extrusion.Flexible) { - taperFactorY = 1.0f - ((float)taperY / 200); - //m_log.Warn("taperTopFactorY: " + extr.taperTopFactorY.ToString()); + taperX1 = _pbs.PathScaleX * 0.01f; + if (taperX1 > 1.0f) + taperX1 = 2.0f - taperX1; + taperX = 1.0f - taperX1; + + taperY1 = _pbs.PathScaleY * 0.01f; + if (taperY1 > 1.0f) + taperY1 = 2.0f - taperY1; + taperY = 1.0f - taperY1; } - else + else { - taperFactorY = 1.0f - ((100 - (float)taperY) / 100); - //m_log.Warn("taperBotFactorY: " + extr.taperBotFactorY.ToString()); + taperX = _pbs.PathTaperX * 0.01f; + if (taperX < 0.0f) + taperX = -taperX; + taperX1 = 1.0f - taperX; + + taperY = _pbs.PathTaperY * 0.01f; + if (taperY < 0.0f) + taperY = -taperY; + taperY1 = 1.0f - taperY; + } - volume = (float)volume * ((taperFactorY / 3f) + 0.001f); - } - returnMass = m_density*volume; - if (returnMass <= 0) returnMass = 0.0001f;//ckrinke: Mass must be greater then zero. + + + volume *= (taperX1 * taperY1 + 0.5f * (taperX1 * taperY + taperX * taperY1) + 0.3333333333f * taperX * taperY); + + pathBegin = (float)_pbs.PathBegin * 2.0e-5f; + pathEnd = 1.0f - (float)_pbs.PathEnd * 2.0e-5f; + volume *= (pathEnd - pathBegin); + +// this is crude aproximation + profileBegin = (float)_pbs.ProfileBegin * 2.0e-5f; + profileEnd = 1.0f - (float)_pbs.ProfileEnd * 2.0e-5f; + volume *= (profileEnd - profileBegin); + + returnMass = m_density * volume; + + if (returnMass <= 0) + returnMass = 0.0001f;//ckrinke: Mass must be greater then zero. +// else if (returnMass > _parent_scene.maximumMassObject) +// returnMass = _parent_scene.maximumMassObject; + From b01020b84a1ec6aea29732fd2d930522d1348213 Mon Sep 17 00:00:00 2001 From: Melanie Date: Sat, 2 Oct 2010 18:45:48 +0100 Subject: [PATCH 4/5] Revert "Forward-port 0.6 fix" This reverts commit 90b51dc7d67507e27c4baa529e979de19dce8de1. --- .../World/Objects/BuySell/BuySellModule.cs | 14 +------------- .../Region/Framework/Interfaces/IBuySellModule.cs | 4 ++-- .../World/MoneyModule/SampleMoneyModule.cs | 4 ++-- 3 files changed, 5 insertions(+), 17 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs index a674d60057..c8fb9da08a 100644 --- a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs +++ b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs @@ -104,7 +104,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell part.GetProperties(client); } - public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType, int salePrice) + public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType) { SceneObjectPart part = m_scene.GetSceneObjectPart(localID); @@ -114,18 +114,6 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell if (part.ParentGroup == null) return false; - if (part.ObjectSaleType != saleType) - { - m_dialogModule.SendAlertToUser(remoteClient, "This item is not available for the type of sale specified"); - return false; - } - - if (part.SalePrice != salePrice) - { - m_dialogModule.SendAlertToUser(remoteClient, "This item is not available for the price specified"); - return false; - } - SceneObjectGroup group = part.ParentGroup; switch (saleType) diff --git a/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs b/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs index d1ce4c0167..0132bae284 100644 --- a/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs @@ -42,6 +42,6 @@ namespace OpenSim.Region.Framework.Interfaces /// /// True on a successful purchase, false on failure /// - bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType, int salePrice); + bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType); } -} +} \ No newline at end of file diff --git a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs index d364df60da..cc51c3b020 100644 --- a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs +++ b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs @@ -814,7 +814,7 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule IBuySellModule module = s.RequestModuleInterface(); if (module != null) - module.BuyObject(remoteClient, categoryID, localID, saleType, salePrice); + module.BuyObject(remoteClient, categoryID, localID, saleType); } } @@ -825,4 +825,4 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule Gift = 2, Purchase = 3 } -} +} \ No newline at end of file From 87c63868840705e479c9c11123e27ce191c38619 Mon Sep 17 00:00:00 2001 From: Melanie Date: Sat, 2 Oct 2010 18:47:26 +0100 Subject: [PATCH 5/5] Reapplying the parts of the prior revert that were not derived from the original patch --- .../Region/CoreModules/World/Objects/BuySell/BuySellModule.cs | 2 +- OpenSim/Region/Framework/Interfaces/IBuySellModule.cs | 4 ++-- .../OptionalModules/World/MoneyModule/SampleMoneyModule.cs | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs index c8fb9da08a..c06ccb2511 100644 --- a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs +++ b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs @@ -104,7 +104,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell part.GetProperties(client); } - public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType) + public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType, int salePrice) { SceneObjectPart part = m_scene.GetSceneObjectPart(localID); diff --git a/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs b/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs index 0132bae284..d1ce4c0167 100644 --- a/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IBuySellModule.cs @@ -42,6 +42,6 @@ namespace OpenSim.Region.Framework.Interfaces /// /// True on a successful purchase, false on failure /// - bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType); + bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType, int salePrice); } -} \ No newline at end of file +} diff --git a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs index cc51c3b020..d364df60da 100644 --- a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs +++ b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs @@ -814,7 +814,7 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule IBuySellModule module = s.RequestModuleInterface(); if (module != null) - module.BuyObject(remoteClient, categoryID, localID, saleType); + module.BuyObject(remoteClient, categoryID, localID, saleType, salePrice); } } @@ -825,4 +825,4 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule Gift = 2, Purchase = 3 } -} \ No newline at end of file +}