aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMakopoppo2011-07-04 22:45:21 +0900
committerJustin Clark-Casey (justincc)2011-07-09 00:49:53 +0100
commite7abf834d1b51353ec90f424b87487bbeb391582 (patch)
treee00686890eda9681c796386aa887ddaae82c8bd8
parentRename SetSculptData() to SetSculptProperties(), since this is what it does (... (diff)
downloadopensim-SC-e7abf834d1b51353ec90f424b87487bbeb391582.zip
opensim-SC-e7abf834d1b51353ec90f424b87487bbeb391582.tar.gz
opensim-SC-e7abf834d1b51353ec90f424b87487bbeb391582.tar.bz2
opensim-SC-e7abf834d1b51353ec90f424b87487bbeb391582.tar.xz
Instance-types-in-list fix for LSL/OSSL functions. This will fix llListFindList() which always returns -1 when you compare with the list from those functions.
*llCSV2List *llGetAnimationList *llGetLinkPrimitiveParams *llGetObjectDetails *llGetParcelDetails *llGetParcelPrimOwners *llGetPrimitiveParams *GetLinkPrimitiveParamsEx *osGetAgents *osMatchString *osGetLinkPrimitiveParams *osGetPrimitiveParams *osGetAvatarList
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs48
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs13
2 files changed, 31 insertions, 30 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 22f8ddb..fd6d64c 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -5050,7 +5050,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
5050 } 5050 }
5051 } 5051 }
5052 5052
5053 result.Add(src.Substring(start,length).Trim()); 5053 result.Add(new LSL_String(src.Substring(start,length).Trim()));
5054 5054
5055 return result; 5055 return result;
5056 } 5056 }
@@ -7391,7 +7391,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7391 UUID[] anims; 7391 UUID[] anims;
7392 anims = av.Animator.GetAnimationArray(); 7392 anims = av.Animator.GetAnimationArray();
7393 foreach (UUID foo in anims) 7393 foreach (UUID foo in anims)
7394 l.Add(foo.ToString()); 7394 l.Add(new LSL_Key(foo.ToString()));
7395 return l; 7395 return l;
7396 } 7396 }
7397 7397
@@ -7926,17 +7926,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7926 7926
7927 case (int)ScriptBaseClass.PRIM_TEXT: 7927 case (int)ScriptBaseClass.PRIM_TEXT:
7928 Color4 textColor = part.GetTextColor(); 7928 Color4 textColor = part.GetTextColor();
7929 res.Add(part.Text); 7929 res.Add(new LSL_String(part.Text));
7930 res.Add(new LSL_Vector(textColor.R, 7930 res.Add(new LSL_Vector(textColor.R,
7931 textColor.G, 7931 textColor.G,
7932 textColor.B)); 7932 textColor.B));
7933 res.Add(new LSL_Float(textColor.A)); 7933 res.Add(new LSL_Float(textColor.A));
7934 break; 7934 break;
7935 case (int)ScriptBaseClass.PRIM_NAME: 7935 case (int)ScriptBaseClass.PRIM_NAME:
7936 res.Add(part.Name); 7936 res.Add(new LSL_String(part.Name));
7937 break; 7937 break;
7938 case (int)ScriptBaseClass.PRIM_DESC: 7938 case (int)ScriptBaseClass.PRIM_DESC:
7939 res.Add(part.Description); 7939 res.Add(new LSL_String(part.Description));
7940 break; 7940 break;
7941 case (int)ScriptBaseClass.PRIM_ROT_LOCAL: 7941 case (int)ScriptBaseClass.PRIM_ROT_LOCAL:
7942 res.Add(new LSL_Rotation(part.RotationOffset.X, part.RotationOffset.Y, part.RotationOffset.Z, part.RotationOffset.W)); 7942 res.Add(new LSL_Rotation(part.RotationOffset.X, part.RotationOffset.Y, part.RotationOffset.Z, part.RotationOffset.W));
@@ -9895,8 +9895,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
9895 { 9895 {
9896 foreach (KeyValuePair<UUID, int> detectedParams in land.GetLandObjectOwners()) 9896 foreach (KeyValuePair<UUID, int> detectedParams in land.GetLandObjectOwners())
9897 { 9897 {
9898 ret.Add(detectedParams.Key.ToString()); 9898 ret.Add(new LSL_String(detectedParams.Key.ToString()));
9899 ret.Add(detectedParams.Value); 9899 ret.Add(new LSL_Integer(detectedParams.Value));
9900 } 9900 }
9901 } 9901 }
9902 ScriptSleep(2000); 9902 ScriptSleep(2000);
@@ -9946,25 +9946,25 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
9946 switch (o.ToString()) 9946 switch (o.ToString())
9947 { 9947 {
9948 case "0": 9948 case "0":
9949 ret = ret + new LSL_List(land.Name); 9949 ret.Add(new LSL_String(land.Name));
9950 break; 9950 break;
9951 case "1": 9951 case "1":
9952 ret = ret + new LSL_List(land.Description); 9952 ret.Add(new LSL_String(land.Description));
9953 break; 9953 break;
9954 case "2": 9954 case "2":
9955 ret = ret + new LSL_List(land.OwnerID.ToString()); 9955 ret.Add(new LSL_Key(land.OwnerID.ToString()));
9956 break; 9956 break;
9957 case "3": 9957 case "3":
9958 ret = ret + new LSL_List(land.GroupID.ToString()); 9958 ret.Add(new LSL_Key(land.GroupID.ToString()));
9959 break; 9959 break;
9960 case "4": 9960 case "4":
9961 ret = ret + new LSL_List(land.Area); 9961 ret.Add(new LSL_Integer(land.Area));
9962 break; 9962 break;
9963 case "5": 9963 case "5":
9964 ret = ret + new LSL_List(land.GlobalID); 9964 ret.Add(new LSL_Key(land.GlobalID.ToString()));
9965 break; 9965 break;
9966 default: 9966 default:
9967 ret = ret + new LSL_List(0); 9967 ret.Add(new LSL_Integer(0));
9968 break; 9968 break;
9969 } 9969 }
9970 } 9970 }
@@ -9996,10 +9996,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
9996 switch (o.ToString()) 9996 switch (o.ToString())
9997 { 9997 {
9998 case "1": 9998 case "1":
9999 ret.Add(av.Firstname + " " + av.Lastname); 9999 ret.Add(new LSL_String(av.Firstname + " " + av.Lastname));
10000 break; 10000 break;
10001 case "2": 10001 case "2":
10002 ret.Add(""); 10002 ret.Add(new LSL_String(""));
10003 break; 10003 break;
10004 case "3": 10004 case "3":
10005 ret.Add(new LSL_Vector((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z)); 10005 ret.Add(new LSL_Vector((double)av.AbsolutePosition.X, (double)av.AbsolutePosition.Y, (double)av.AbsolutePosition.Z));
@@ -10011,13 +10011,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10011 ret.Add(new LSL_Vector(av.Velocity.X, av.Velocity.Y, av.Velocity.Z)); 10011 ret.Add(new LSL_Vector(av.Velocity.X, av.Velocity.Y, av.Velocity.Z));
10012 break; 10012 break;
10013 case "6": 10013 case "6":
10014 ret.Add(id); 10014 ret.Add(new LSL_String(id));
10015 break; 10015 break;
10016 case "7": 10016 case "7":
10017 ret.Add(UUID.Zero.ToString()); 10017 ret.Add(new LSL_String(UUID.Zero.ToString()));
10018 break; 10018 break;
10019 case "8": 10019 case "8":
10020 ret.Add(UUID.Zero.ToString()); 10020 ret.Add(new LSL_String(UUID.Zero.ToString()));
10021 break; 10021 break;
10022 } 10022 }
10023 } 10023 }
@@ -10031,10 +10031,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10031 switch (o.ToString()) 10031 switch (o.ToString())
10032 { 10032 {
10033 case "1": 10033 case "1":
10034 ret.Add(obj.Name); 10034 ret.Add(new LSL_String(obj.Name));
10035 break; 10035 break;
10036 case "2": 10036 case "2":
10037 ret.Add(obj.Description); 10037 ret.Add(new LSL_String(obj.Description));
10038 break; 10038 break;
10039 case "3": 10039 case "3":
10040 ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); 10040 ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z));
@@ -10046,13 +10046,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10046 ret.Add(new LSL_Vector(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z)); 10046 ret.Add(new LSL_Vector(obj.Velocity.X, obj.Velocity.Y, obj.Velocity.Z));
10047 break; 10047 break;
10048 case "6": 10048 case "6":
10049 ret.Add(obj.OwnerID.ToString()); 10049 ret.Add(new LSL_String(obj.OwnerID.ToString()));
10050 break; 10050 break;
10051 case "7": 10051 case "7":
10052 ret.Add(obj.GroupID.ToString()); 10052 ret.Add(new LSL_String(obj.GroupID.ToString()));
10053 break; 10053 break;
10054 case "8": 10054 case "8":
10055 ret.Add(obj.CreatorID.ToString()); 10055 ret.Add(new LSL_String(obj.CreatorID.ToString()));
10056 break; 10056 break;
10057 } 10057 }
10058 } 10058 }
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 1bc4534..b3f90e2 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -811,7 +811,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
811 World.ForEachScenePresence(delegate(ScenePresence sp) 811 World.ForEachScenePresence(delegate(ScenePresence sp)
812 { 812 {
813 if (!sp.IsChildAgent) 813 if (!sp.IsChildAgent)
814 result.Add(sp.Name); 814 result.Add(new LSL_String(sp.Name));
815 }); 815 });
816 return result; 816 return result;
817 } 817 }
@@ -2030,8 +2030,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2030 { 2030 {
2031 if (g.Success) 2031 if (g.Success)
2032 { 2032 {
2033 result.Add(g.Value); 2033 result.Add(new LSL_String(g.Value));
2034 result.Add(g.Index); 2034 result.Add(new LSL_Integer(g.Index));
2035 } 2035 }
2036 } 2036 }
2037 } 2037 }
@@ -2365,9 +2365,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2365 { 2365 {
2366 if (avatar.IsChildAgent == false) 2366 if (avatar.IsChildAgent == false)
2367 { 2367 {
2368 result.Add(avatar.UUID); 2368 result.Add(new LSL_String(avatar.UUID.ToString()));
2369 result.Add(avatar.AbsolutePosition); 2369 OpenMetaverse.Vector3 ap = avatar.AbsolutePosition;
2370 result.Add(avatar.Name); 2370 result.Add(new LSL_Vector(ap.X, ap.Y, ap.Z));
2371 result.Add(new LSL_String(avatar.Name));
2371 } 2372 }
2372 } 2373 }
2373 }); 2374 });