SL compatibility - return only points on segemtn, not ray in llCastRay
parent
0ed4f24b34
commit
c2a73a26b5
|
@ -11574,6 +11574,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
Vector3 rayEnd = new Vector3((float)end.x, (float)end.y, (float)end.z);
|
Vector3 rayEnd = new Vector3((float)end.x, (float)end.y, (float)end.z);
|
||||||
Vector3 dir = rayEnd - rayStart;
|
Vector3 dir = rayEnd - rayStart;
|
||||||
|
|
||||||
|
float dist = Vector3.Mag(dir);
|
||||||
|
|
||||||
int count = 1;
|
int count = 1;
|
||||||
bool detectPhantom = false;
|
bool detectPhantom = false;
|
||||||
int dataFlags = 0;
|
int dataFlags = 0;
|
||||||
|
@ -11630,6 +11632,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
int values = 0;
|
int values = 0;
|
||||||
foreach (ContactResult result in results)
|
foreach (ContactResult result in results)
|
||||||
{
|
{
|
||||||
|
if (result.Depth > dist)
|
||||||
|
continue;
|
||||||
|
|
||||||
UUID itemID = UUID.Zero;
|
UUID itemID = UUID.Zero;
|
||||||
int linkNum = 0;
|
int linkNum = 0;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue