diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 065d3df..22d62f7 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -12139,9 +12139,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
12139 | results.Add(r); | 12139 | results.Add(r); |
12140 | } | 12140 | } |
12141 | 12141 | ||
12142 | // bug: will not detect phantom unless they are physical | 12142 | // TODO: Replace this with a better solution. ObjectIntersection can only |
12143 | // don't use ObjectIntersection because its also bad | 12143 | // detect nonphysical phantoms. They are detected by virtue of being |
12144 | 12144 | // nonphysical (e.g. no PhysActor) so will not conflict with detecting | |
12145 | // physicsl phantoms as done by the physics scene | ||
12146 | // We don't want anything else but phantoms here. | ||
12147 | if (detectPhantom) | ||
12148 | { | ||
12149 | ContactResult[] objectHits = ObjectIntersection(rayStart, rayEnd, false, false, true); | ||
12150 | foreach (ContactResult r in objectHits) | ||
12151 | results.Add(r); | ||
12152 | } | ||
12145 | } | 12153 | } |
12146 | else | 12154 | else |
12147 | { | 12155 | { |