aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs4
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsScene.cs2
-rw-r--r--OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs32
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs4
7 files changed, 36 insertions, 16 deletions
diff --git a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs
index 708b99d..0276267 100644
--- a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs
+++ b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs
@@ -533,6 +533,9 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
533 ResponseBody = e.Message; 533 ResponseBody = e.Message;
534 } 534 }
535 535
536 if (ResponseBody == null)
537 ResponseBody = String.Empty;
538
536 _finished = true; 539 _finished = true;
537 return; 540 return;
538 } 541 }
@@ -546,6 +549,9 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
546 response.Close(); 549 response.Close();
547 } 550 }
548 551
552 if (ResponseBody == null)
553 ResponseBody = String.Empty;
554
549 _finished = true; 555 _finished = true;
550 } 556 }
551 557
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index f229e33..9cdcd96 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -2052,11 +2052,11 @@ namespace OpenSim.Region.Framework.Scenes
2052 EventManager.TriggerPrimsLoaded(this); 2052 EventManager.TriggerPrimsLoaded(this);
2053 } 2053 }
2054 2054
2055 public bool SuportsRayCastFiltered() 2055 public bool SupportsRayCastFiltered()
2056 { 2056 {
2057 if (PhysicsScene == null) 2057 if (PhysicsScene == null)
2058 return false; 2058 return false;
2059 return PhysicsScene.SuportsRaycastWorldFiltered(); 2059 return PhysicsScene.SupportsRaycastWorldFiltered();
2060 } 2060 }
2061 2061
2062 public object RayCastFiltered(Vector3 position, Vector3 direction, float length, int Count, RayFilterFlags filter) 2062 public object RayCastFiltered(Vector3 position, Vector3 direction, float length, int Count, RayFilterFlags filter)
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
index f82b597..fe418d3 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
@@ -357,7 +357,7 @@ namespace OpenSim.Region.Physics.Manager
357 return null; 357 return null;
358 } 358 }
359 359
360 public virtual bool SuportsRaycastWorldFiltered() 360 public virtual bool SupportsRaycastWorldFiltered()
361 { 361 {
362 return false; 362 return false;
363 } 363 }
diff --git a/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs b/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs
index 5113210..510cbe9 100644
--- a/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs
+++ b/OpenSim/Region/Physics/UbitOdePlugin/OdeScene.cs
@@ -2643,7 +2643,7 @@ namespace OpenSim.Region.Physics.OdePlugin
2643 } 2643 }
2644 } 2644 }
2645 2645
2646 public override bool SuportsRaycastWorldFiltered() 2646 public override bool SupportsRaycastWorldFiltered()
2647 { 2647 {
2648 return true; 2648 return true;
2649 } 2649 }
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 70dea08..667cc09 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -3049,7 +3049,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
3049 return src.ToLower(); 3049 return src.ToLower();
3050 } 3050 }
3051 3051
3052 public void llGiveMoney(string destination, int amount) 3052 public LSL_Integer llGiveMoney(string destination, int amount)
3053 { 3053 {
3054 Util.FireAndForget(x => 3054 Util.FireAndForget(x =>
3055 { 3055 {
@@ -3083,6 +3083,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
3083 money.ObjectGiveMoney( 3083 money.ObjectGiveMoney(
3084 m_host.ParentGroup.RootPart.UUID, m_host.ParentGroup.RootPart.OwnerID, toID, amount,UUID.Zero); 3084 m_host.ParentGroup.RootPart.UUID, m_host.ParentGroup.RootPart.OwnerID, toID, amount,UUID.Zero);
3085 }); 3085 });
3086
3087 return 0;
3086 } 3088 }
3087 3089
3088 public void llMakeExplosion(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset) 3090 public void llMakeExplosion(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset)
@@ -12309,7 +12311,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
12309 bool checkPhysical = !((rejectTypes & ScriptBaseClass.RC_REJECT_PHYSICAL) == ScriptBaseClass.RC_REJECT_PHYSICAL); 12311 bool checkPhysical = !((rejectTypes & ScriptBaseClass.RC_REJECT_PHYSICAL) == ScriptBaseClass.RC_REJECT_PHYSICAL);
12310 12312
12311 12313
12312 if (World.SuportsRayCastFiltered()) 12314 if (World.SupportsRayCastFiltered())
12313 { 12315 {
12314 if (dist == 0) 12316 if (dist == 0)
12315 return list; 12317 return list;
@@ -12372,13 +12374,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
12372 } 12374 }
12373 else 12375 else
12374 { 12376 {
12375 if (checkTerrain)
12376 {
12377 ContactResult? groundContact = GroundIntersection(rayStart, rayEnd);
12378 if (groundContact != null)
12379 results.Add((ContactResult)groundContact);
12380 }
12381
12382 if (checkAgents) 12377 if (checkAgents)
12383 { 12378 {
12384 ContactResult[] agentHits = AvatarIntersection(rayStart, rayEnd); 12379 ContactResult[] agentHits = AvatarIntersection(rayStart, rayEnd);
@@ -12394,6 +12389,25 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
12394 } 12389 }
12395 } 12390 }
12396 12391
12392 // Double check this
12393 if (checkTerrain)
12394 {
12395 bool skipGroundCheck = false;
12396
12397 foreach (ContactResult c in results)
12398 {
12399 if (c.ConsumerID == 0) // Physics gave us a ground collision
12400 skipGroundCheck = true;
12401 }
12402
12403 if (!skipGroundCheck)
12404 {
12405 ContactResult? groundContact = GroundIntersection(rayStart, rayEnd);
12406 if (groundContact != null)
12407 results.Add((ContactResult)groundContact);
12408 }
12409 }
12410
12397 results.Sort(delegate(ContactResult a, ContactResult b) 12411 results.Sort(delegate(ContactResult a, ContactResult b)
12398 { 12412 {
12399 return a.Depth.CompareTo(b.Depth); 12413 return a.Depth.CompareTo(b.Depth);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
index 8eeb4d2..9bf6f9b 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILSL_Api.cs
@@ -208,7 +208,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
208 LSL_Float llGetWallclock(); 208 LSL_Float llGetWallclock();
209 void llGiveInventory(string destination, string inventory); 209 void llGiveInventory(string destination, string inventory);
210 void llGiveInventoryList(string destination, string category, LSL_List inventory); 210 void llGiveInventoryList(string destination, string category, LSL_List inventory);
211 void llGiveMoney(string destination, int amount); 211 LSL_Integer llGiveMoney(string destination, int amount);
212 LSL_String llTransferLindenDollars(string destination, int amount); 212 LSL_String llTransferLindenDollars(string destination, int amount);
213 void llGodLikeRezObject(string inventory, LSL_Vector pos); 213 void llGodLikeRezObject(string inventory, LSL_Vector pos);
214 LSL_Float llGround(LSL_Vector offset); 214 LSL_Float llGround(LSL_Vector offset);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
index ef71d7b..8ecc4f8 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
@@ -876,9 +876,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
876 m_LSL_Functions.llGiveInventoryList(destination, category, inventory); 876 m_LSL_Functions.llGiveInventoryList(destination, category, inventory);
877 } 877 }
878 878
879 public void llGiveMoney(string destination, int amount) 879 public LSL_Integer llGiveMoney(string destination, int amount)
880 { 880 {
881 m_LSL_Functions.llGiveMoney(destination, amount); 881 return m_LSL_Functions.llGiveMoney(destination, amount);
882 } 882 }
883 883
884 public LSL_String llTransferLindenDollars(string destination, int amount) 884 public LSL_String llTransferLindenDollars(string destination, int amount)