aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs387
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs2
2 files changed, 196 insertions, 193 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 8e5c203..485a3b5 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -221,8 +221,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
221 221
222 public List<SceneObjectPart> GetLinkParts(int linkType) 222 public List<SceneObjectPart> GetLinkParts(int linkType)
223 { 223 {
224 List<SceneObjectPart> ret = new List<SceneObjectPart>(); 224 List<SceneObjectPart> ret = new List<SceneObjectPart>();
225 if (m_host == null || m_host.ParentGroup == null || m_host.ParentGroup.IsDeleted) 225 if (m_host == null || m_host.ParentGroup == null || m_host.ParentGroup.IsDeleted)
226 return ret; 226 return ret;
227 ret.Add(m_host); 227 ret.Add(m_host);
228 228
@@ -1115,6 +1115,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1115 return detectedParams.TouchUV; 1115 return detectedParams.TouchUV;
1116 } 1116 }
1117 1117
1118 [DebuggerNonUserCode]
1118 public virtual void llDie() 1119 public virtual void llDie()
1119 { 1120 {
1120 m_host.AddScriptLPS(1); 1121 m_host.AddScriptLPS(1);
@@ -1190,8 +1191,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1190 } 1191 }
1191 1192
1192 public void llSetStatus(int status, int value) 1193 public void llSetStatus(int status, int value)
1193 { 1194 {
1194 if (m_host == null || m_host.ParentGroup == null || m_host.ParentGroup.IsDeleted) 1195 if (m_host == null || m_host.ParentGroup == null || m_host.ParentGroup.IsDeleted)
1195 return; 1196 return;
1196 m_host.AddScriptLPS(1); 1197 m_host.AddScriptLPS(1);
1197 1198
@@ -1367,7 +1368,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1367 } 1368 }
1368 1369
1369 protected void SetScale(SceneObjectPart part, LSL_Vector scale) 1370 protected void SetScale(SceneObjectPart part, LSL_Vector scale)
1370 { 1371 {
1371 // TODO: this needs to trigger a persistance save as well 1372 // TODO: this needs to trigger a persistance save as well
1372 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1373 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1373 return; 1374 return;
@@ -1426,8 +1427,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1426 } 1427 }
1427 1428
1428 protected void SetColor(SceneObjectPart part, LSL_Vector color, int face) 1429 protected void SetColor(SceneObjectPart part, LSL_Vector color, int face)
1429 { 1430 {
1430 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1431 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1431 return; 1432 return;
1432 1433
1433 Primitive.TextureEntry tex = part.Shape.Textures; 1434 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1471,8 +1472,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1471 } 1472 }
1472 1473
1473 public void SetTexGen(SceneObjectPart part, int face,int style) 1474 public void SetTexGen(SceneObjectPart part, int face,int style)
1474 { 1475 {
1475 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1476 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1476 return; 1477 return;
1477 1478
1478 Primitive.TextureEntry tex = part.Shape.Textures; 1479 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1504,8 +1505,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1504 } 1505 }
1505 1506
1506 public void SetGlow(SceneObjectPart part, int face, float glow) 1507 public void SetGlow(SceneObjectPart part, int face, float glow)
1507 { 1508 {
1508 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1509 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1509 return; 1510 return;
1510 1511
1511 Primitive.TextureEntry tex = part.Shape.Textures; 1512 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1532,8 +1533,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1532 } 1533 }
1533 1534
1534 public void SetShiny(SceneObjectPart part, int face, int shiny, Bumpiness bump) 1535 public void SetShiny(SceneObjectPart part, int face, int shiny, Bumpiness bump)
1535 { 1536 {
1536 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1537 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1537 return; 1538 return;
1538 1539
1539 Shininess sval = new Shininess(); 1540 Shininess sval = new Shininess();
@@ -1584,8 +1585,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1584 } 1585 }
1585 1586
1586 public void SetFullBright(SceneObjectPart part, int face, bool bright) 1587 public void SetFullBright(SceneObjectPart part, int face, bool bright)
1587 { 1588 {
1588 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1589 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1589 return; 1590 return;
1590 1591
1591 Primitive.TextureEntry tex = part.Shape.Textures; 1592 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1654,8 +1655,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1654 } 1655 }
1655 1656
1656 protected void SetAlpha(SceneObjectPart part, double alpha, int face) 1657 protected void SetAlpha(SceneObjectPart part, double alpha, int face)
1657 { 1658 {
1658 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1659 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1659 return; 1660 return;
1660 1661
1661 Primitive.TextureEntry tex = part.Shape.Textures; 1662 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1702,8 +1703,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1702 /// <param name="Force"></param> 1703 /// <param name="Force"></param>
1703 protected void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, 1704 protected void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction,
1704 float wind, float tension, LSL_Vector Force) 1705 float wind, float tension, LSL_Vector Force)
1705 { 1706 {
1706 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1707 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1707 return; 1708 return;
1708 1709
1709 if (flexi) 1710 if (flexi)
@@ -1737,8 +1738,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1737 /// <param name="radius"></param> 1738 /// <param name="radius"></param>
1738 /// <param name="falloff"></param> 1739 /// <param name="falloff"></param>
1739 protected void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff) 1740 protected void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff)
1740 { 1741 {
1741 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1742 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1742 return; 1743 return;
1743 1744
1744 if (light) 1745 if (light)
@@ -1823,8 +1824,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1823 } 1824 }
1824 1825
1825 protected void SetTexture(SceneObjectPart part, string texture, int face) 1826 protected void SetTexture(SceneObjectPart part, string texture, int face)
1826 { 1827 {
1827 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1828 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1828 return; 1829 return;
1829 1830
1830 UUID textureID=new UUID(); 1831 UUID textureID=new UUID();
@@ -1871,8 +1872,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1871 } 1872 }
1872 1873
1873 protected void ScaleTexture(SceneObjectPart part, double u, double v, int face) 1874 protected void ScaleTexture(SceneObjectPart part, double u, double v, int face)
1874 { 1875 {
1875 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1876 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1876 return; 1877 return;
1877 1878
1878 Primitive.TextureEntry tex = part.Shape.Textures; 1879 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1910,8 +1911,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1910 } 1911 }
1911 1912
1912 protected void OffsetTexture(SceneObjectPart part, double u, double v, int face) 1913 protected void OffsetTexture(SceneObjectPart part, double u, double v, int face)
1913 { 1914 {
1914 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1915 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1915 return; 1916 return;
1916 1917
1917 Primitive.TextureEntry tex = part.Shape.Textures; 1918 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -1949,8 +1950,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1949 } 1950 }
1950 1951
1951 protected void RotateTexture(SceneObjectPart part, double rotation, int face) 1952 protected void RotateTexture(SceneObjectPart part, double rotation, int face)
1952 { 1953 {
1953 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1954 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1954 return; 1955 return;
1955 1956
1956 Primitive.TextureEntry tex = part.Shape.Textures; 1957 Primitive.TextureEntry tex = part.Shape.Textures;
@@ -2022,8 +2023,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2022 } 2023 }
2023 2024
2024 protected void SetPos(SceneObjectPart part, LSL_Vector targetPos) 2025 protected void SetPos(SceneObjectPart part, LSL_Vector targetPos)
2025 { 2026 {
2026 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 2027 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
2027 return; 2028 return;
2028 2029
2029 // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) 2030 // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos)
@@ -2119,8 +2120,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2119 } 2120 }
2120 2121
2121 protected void SetRot(SceneObjectPart part, Quaternion rot) 2122 protected void SetRot(SceneObjectPart part, Quaternion rot)
2122 { 2123 {
2123 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 2124 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
2124 return; 2125 return;
2125 2126
2126 part.UpdateRotation(rot); 2127 part.UpdateRotation(rot);
@@ -4016,7 +4017,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4016 bucket); 4017 bucket);
4017 4018
4018 if (m_TransferModule != null) 4019 if (m_TransferModule != null)
4019 m_TransferModule.SendInstantMessage(msg, delegate(bool success) {}); 4020 m_TransferModule.SendInstantMessage(msg, delegate(bool success) {});
4020 4021
4021 //This delay should only occur when giving inventory to avatars. 4022 //This delay should only occur when giving inventory to avatars.
4022 ScriptSleep(3000); 4023 ScriptSleep(3000);
@@ -6662,9 +6663,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6662 } 6663 }
6663 6664
6664 protected ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist) 6665 protected ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist)
6665 { 6666 {
6666 ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); 6667 ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock();
6667 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 6668 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
6668 return shapeBlock; 6669 return shapeBlock;
6669 6670
6670 if (holeshape != (int)ScriptBaseClass.PRIM_HOLE_DEFAULT && 6671 if (holeshape != (int)ScriptBaseClass.PRIM_HOLE_DEFAULT &&
@@ -6735,8 +6736,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6735 } 6736 }
6736 6737
6737 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge) 6738 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge)
6738 { 6739 {
6739 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 6740 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
6740 return; 6741 return;
6741 6742
6742 ObjectShapePacket.ObjectDataBlock shapeBlock; 6743 ObjectShapePacket.ObjectDataBlock shapeBlock;
@@ -6787,8 +6788,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6787 } 6788 }
6788 6789
6789 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge) 6790 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge)
6790 { 6791 {
6791 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 6792 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
6792 return; 6793 return;
6793 6794
6794 ObjectShapePacket.ObjectDataBlock shapeBlock; 6795 ObjectShapePacket.ObjectDataBlock shapeBlock;
@@ -6832,8 +6833,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6832 } 6833 }
6833 6834
6834 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector holesize, LSL_Vector topshear, LSL_Vector profilecut, LSL_Vector taper_a, float revolutions, float radiusoffset, float skew, byte fudge) 6835 protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector holesize, LSL_Vector topshear, LSL_Vector profilecut, LSL_Vector taper_a, float revolutions, float radiusoffset, float skew, byte fudge)
6835 { 6836 {
6836 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 6837 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
6837 return; 6838 return;
6838 6839
6839 ObjectShapePacket.ObjectDataBlock shapeBlock; 6840 ObjectShapePacket.ObjectDataBlock shapeBlock;
@@ -6956,8 +6957,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6956 } 6957 }
6957 6958
6958 protected void SetPrimitiveShapeParams(SceneObjectPart part, string map, int type) 6959 protected void SetPrimitiveShapeParams(SceneObjectPart part, string map, int type)
6959 { 6960 {
6960 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 6961 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
6961 return; 6962 return;
6962 6963
6963 ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); 6964 ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock();
@@ -6993,13 +6994,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6993 } 6994 }
6994 6995
6995 public void llSetPrimitiveParams(LSL_List rules) 6996 public void llSetPrimitiveParams(LSL_List rules)
6996 { 6997 {
6997 m_host.AddScriptLPS(1); 6998 m_host.AddScriptLPS(1);
6998 SetPrimParams(m_host, rules); 6999 SetPrimParams(m_host, rules);
6999 } 7000 }
7000 7001
7001 public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules) 7002 public void llSetLinkPrimitiveParams(int linknumber, LSL_List rules)
7002 { 7003 {
7003 m_host.AddScriptLPS(1); 7004 m_host.AddScriptLPS(1);
7004 7005
7005 List<SceneObjectPart> parts = GetLinkParts(linknumber); 7006 List<SceneObjectPart> parts = GetLinkParts(linknumber);
@@ -7014,8 +7015,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7014 } 7015 }
7015 7016
7016 protected void SetPrimParams(SceneObjectPart part, LSL_List rules) 7017 protected void SetPrimParams(SceneObjectPart part, LSL_List rules)
7017 { 7018 {
7018 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 7019 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
7019 return; 7020 return;
7020 7021
7021 int idx = 0; 7022 int idx = 0;
@@ -7848,96 +7849,96 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7848 } 7849 }
7849 break; 7850 break;
7850 7851
7851 case (int)ScriptBaseClass.PRIM_BUMP_SHINY: 7852 case (int)ScriptBaseClass.PRIM_BUMP_SHINY:
7852 if (remain < 1) 7853 if (remain < 1)
7853 return res; 7854 return res;
7854 face = (int)rules.GetLSLIntegerItem(idx++); 7855 face = (int)rules.GetLSLIntegerItem(idx++);
7855 7856
7856 tex = part.Shape.Textures; 7857 tex = part.Shape.Textures;
7857 int shiny; 7858 int shiny;
7858 if (face == ScriptBaseClass.ALL_SIDES) 7859 if (face == ScriptBaseClass.ALL_SIDES)
7859 { 7860 {
7860 for (face = 0; face < GetNumberOfSides(part); face++) 7861 for (face = 0; face < GetNumberOfSides(part); face++)
7861 { 7862 {
7862 Shininess shinyness = tex.GetFace((uint)face).Shiny; 7863 Shininess shinyness = tex.GetFace((uint)face).Shiny;
7863 if (shinyness == Shininess.High) 7864 if (shinyness == Shininess.High)
7864 { 7865 {
7865 shiny = ScriptBaseClass.PRIM_SHINY_HIGH; 7866 shiny = ScriptBaseClass.PRIM_SHINY_HIGH;
7866 } 7867 }
7867 else if (shinyness == Shininess.Medium) 7868 else if (shinyness == Shininess.Medium)
7868 { 7869 {
7869 shiny = ScriptBaseClass.PRIM_SHINY_MEDIUM; 7870 shiny = ScriptBaseClass.PRIM_SHINY_MEDIUM;
7870 } 7871 }
7871 else if (shinyness == Shininess.Low) 7872 else if (shinyness == Shininess.Low)
7872 { 7873 {
7873 shiny = ScriptBaseClass.PRIM_SHINY_LOW; 7874 shiny = ScriptBaseClass.PRIM_SHINY_LOW;
7874 } 7875 }
7875 else 7876 else
7876 { 7877 {
7877 shiny = ScriptBaseClass.PRIM_SHINY_NONE; 7878 shiny = ScriptBaseClass.PRIM_SHINY_NONE;
7878 } 7879 }
7879 res.Add(new LSL_Integer(shiny)); 7880 res.Add(new LSL_Integer(shiny));
7880 res.Add(new LSL_Integer((int)tex.GetFace((uint)face).Bump)); 7881 res.Add(new LSL_Integer((int)tex.GetFace((uint)face).Bump));
7881 } 7882 }
7882 } 7883 }
7883 else 7884 else
7884 { 7885 {
7885 Shininess shinyness = tex.GetFace((uint)face).Shiny; 7886 Shininess shinyness = tex.GetFace((uint)face).Shiny;
7886 if (shinyness == Shininess.High) 7887 if (shinyness == Shininess.High)
7887 { 7888 {
7888 shiny = ScriptBaseClass.PRIM_SHINY_HIGH; 7889 shiny = ScriptBaseClass.PRIM_SHINY_HIGH;
7889 } 7890 }
7890 else if (shinyness == Shininess.Medium) 7891 else if (shinyness == Shininess.Medium)
7891 { 7892 {
7892 shiny = ScriptBaseClass.PRIM_SHINY_MEDIUM; 7893 shiny = ScriptBaseClass.PRIM_SHINY_MEDIUM;
7893 } 7894 }
7894 else if (shinyness == Shininess.Low) 7895 else if (shinyness == Shininess.Low)
7895 { 7896 {
7896 shiny = ScriptBaseClass.PRIM_SHINY_LOW; 7897 shiny = ScriptBaseClass.PRIM_SHINY_LOW;
7897 } 7898 }
7898 else 7899 else
7899 { 7900 {
7900 shiny = ScriptBaseClass.PRIM_SHINY_NONE; 7901 shiny = ScriptBaseClass.PRIM_SHINY_NONE;
7901 } 7902 }
7902 res.Add(new LSL_Integer(shiny)); 7903 res.Add(new LSL_Integer(shiny));
7903 res.Add(new LSL_Integer((int)tex.GetFace((uint)face).Bump)); 7904 res.Add(new LSL_Integer((int)tex.GetFace((uint)face).Bump));
7904 } 7905 }
7905 break; 7906 break;
7906 7907
7907 case (int)ScriptBaseClass.PRIM_FULLBRIGHT: 7908 case (int)ScriptBaseClass.PRIM_FULLBRIGHT:
7908 if (remain < 1) 7909 if (remain < 1)
7909 return res; 7910 return res;
7910 face = (int)rules.GetLSLIntegerItem(idx++); 7911 face = (int)rules.GetLSLIntegerItem(idx++);
7911 7912
7912 tex = part.Shape.Textures; 7913 tex = part.Shape.Textures;
7913 int fullbright; 7914 int fullbright;
7914 if (face == ScriptBaseClass.ALL_SIDES) 7915 if (face == ScriptBaseClass.ALL_SIDES)
7915 { 7916 {
7916 for (face = 0; face < GetNumberOfSides(part); face++) 7917 for (face = 0; face < GetNumberOfSides(part); face++)
7917 { 7918 {
7918 if (tex.GetFace((uint)face).Fullbright == true) 7919 if (tex.GetFace((uint)face).Fullbright == true)
7919 { 7920 {
7920 fullbright = ScriptBaseClass.TRUE; 7921 fullbright = ScriptBaseClass.TRUE;
7921 } 7922 }
7922 else 7923 else
7923 { 7924 {
7924 fullbright = ScriptBaseClass.FALSE; 7925 fullbright = ScriptBaseClass.FALSE;
7925 } 7926 }
7926 res.Add(new LSL_Integer(fullbright)); 7927 res.Add(new LSL_Integer(fullbright));
7927 } 7928 }
7928 } 7929 }
7929 else 7930 else
7930 { 7931 {
7931 if (tex.GetFace((uint)face).Fullbright == true) 7932 if (tex.GetFace((uint)face).Fullbright == true)
7932 { 7933 {
7933 fullbright = ScriptBaseClass.TRUE; 7934 fullbright = ScriptBaseClass.TRUE;
7934 } 7935 }
7935 else 7936 else
7936 { 7937 {
7937 fullbright = ScriptBaseClass.FALSE; 7938 fullbright = ScriptBaseClass.FALSE;
7938 } 7939 }
7939 res.Add(new LSL_Integer(fullbright)); 7940 res.Add(new LSL_Integer(fullbright));
7940 } 7941 }
7941 break; 7942 break;
7942 7943
7943 case (int)ScriptBaseClass.PRIM_FLEXIBLE: 7944 case (int)ScriptBaseClass.PRIM_FLEXIBLE:
@@ -7958,37 +7959,37 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7958 break; 7959 break;
7959 7960
7960 case (int)ScriptBaseClass.PRIM_TEXGEN: 7961 case (int)ScriptBaseClass.PRIM_TEXGEN:
7961 // (PRIM_TEXGEN_DEFAULT, PRIM_TEXGEN_PLANAR) 7962 // (PRIM_TEXGEN_DEFAULT, PRIM_TEXGEN_PLANAR)
7962 if (remain < 1) 7963 if (remain < 1)
7963 return res; 7964 return res;
7964 face = (int)rules.GetLSLIntegerItem(idx++); 7965 face = (int)rules.GetLSLIntegerItem(idx++);
7965 7966
7966 tex = part.Shape.Textures; 7967 tex = part.Shape.Textures;
7967 if (face == ScriptBaseClass.ALL_SIDES) 7968 if (face == ScriptBaseClass.ALL_SIDES)
7968 { 7969 {
7969 for (face = 0; face < GetNumberOfSides(part); face++) 7970 for (face = 0; face < GetNumberOfSides(part); face++)
7970 { 7971 {
7971 if (tex.GetFace((uint)face).TexMapType == MappingType.Planar) 7972 if (tex.GetFace((uint)face).TexMapType == MappingType.Planar)
7972 { 7973 {
7973 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_PLANAR)); 7974 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_PLANAR));
7974 } 7975 }
7975 else 7976 else
7976 { 7977 {
7977 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_DEFAULT)); 7978 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_DEFAULT));
7978 } 7979 }
7979 } 7980 }
7980 } 7981 }
7981 else 7982 else
7982 { 7983 {
7983 if (tex.GetFace((uint)face).TexMapType == MappingType.Planar) 7984 if (tex.GetFace((uint)face).TexMapType == MappingType.Planar)
7984 { 7985 {
7985 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_PLANAR)); 7986 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_PLANAR));
7986 } 7987 }
7987 else 7988 else
7988 { 7989 {
7989 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_DEFAULT)); 7990 res.Add(new LSL_Integer(ScriptBaseClass.PRIM_TEXGEN_DEFAULT));
7990 } 7991 }
7991 } 7992 }
7992 break; 7993 break;
7993 7994
7994 case (int)ScriptBaseClass.PRIM_POINT_LIGHT: 7995 case (int)ScriptBaseClass.PRIM_POINT_LIGHT:
@@ -8006,26 +8007,26 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
8006 res.Add(new LSL_Float(shape.LightFalloff)); // falloff 8007 res.Add(new LSL_Float(shape.LightFalloff)); // falloff
8007 break; 8008 break;
8008 8009
8009 case (int)ScriptBaseClass.PRIM_GLOW: 8010 case (int)ScriptBaseClass.PRIM_GLOW:
8010 if (remain < 1) 8011 if (remain < 1)
8011 return res; 8012 return res;
8012 face = (int)rules.GetLSLIntegerItem(idx++); 8013 face = (int)rules.GetLSLIntegerItem(idx++);
8013 8014
8014 tex = part.Shape.Textures; 8015 tex = part.Shape.Textures;
8015 float primglow; 8016 float primglow;
8016 if (face == ScriptBaseClass.ALL_SIDES) 8017 if (face == ScriptBaseClass.ALL_SIDES)
8017 { 8018 {
8018 for (face = 0; face < GetNumberOfSides(part); face++) 8019 for (face = 0; face < GetNumberOfSides(part); face++)
8019 { 8020 {
8020 primglow = tex.GetFace((uint)face).Glow; 8021 primglow = tex.GetFace((uint)face).Glow;
8021 res.Add(new LSL_Float(primglow)); 8022 res.Add(new LSL_Float(primglow));
8022 } 8023 }
8023 } 8024 }
8024 else 8025 else
8025 { 8026 {
8026 primglow = tex.GetFace((uint)face).Glow; 8027 primglow = tex.GetFace((uint)face).Glow;
8027 res.Add(new LSL_Float(primglow)); 8028 res.Add(new LSL_Float(primglow));
8028 } 8029 }
8029 break; 8030 break;
8030 case (int)ScriptBaseClass.PRIM_TEXT: 8031 case (int)ScriptBaseClass.PRIM_TEXT:
8031 Color4 textColor = part.GetTextColor(); 8032 Color4 textColor = part.GetTextColor();
@@ -9187,7 +9188,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
9187 m_host.AddScriptLPS(1); 9188 m_host.AddScriptLPS(1);
9188 9189
9189 if (quick_pay_buttons.Data.Length < 4) 9190 if (quick_pay_buttons.Data.Length < 4)
9190 { 9191 {
9191 int x; 9192 int x;
9192 for (x=quick_pay_buttons.Data.Length; x<= 4; x++) 9193 for (x=quick_pay_buttons.Data.Length; x<= 4; x++)
9193 { 9194 {
@@ -9195,12 +9196,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
9195 } 9196 }
9196 } 9197 }
9197 int[] nPrice = new int[5]; 9198 int[] nPrice = new int[5];
9198 nPrice[0]=price; 9199 nPrice[0]=price;
9199 nPrice[1] = (LSL_Integer)quick_pay_buttons.Data[0]; 9200 nPrice[1] = (LSL_Integer)quick_pay_buttons.Data[0];
9200 nPrice[2] = (LSL_Integer)quick_pay_buttons.Data[1]; 9201 nPrice[2] = (LSL_Integer)quick_pay_buttons.Data[1];
9201 nPrice[3] = (LSL_Integer)quick_pay_buttons.Data[2]; 9202 nPrice[3] = (LSL_Integer)quick_pay_buttons.Data[2];
9202 nPrice[4] = (LSL_Integer)quick_pay_buttons.Data[3]; 9203 nPrice[4] = (LSL_Integer)quick_pay_buttons.Data[3];
9203 m_host.ParentGroup.RootPart.PayPrice = nPrice; 9204 m_host.ParentGroup.RootPart.PayPrice = nPrice;
9204 m_host.ParentGroup.HasGroupChanged = true; 9205 m_host.ParentGroup.HasGroupChanged = true;
9205 } 9206 }
9206 9207
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
index 3339995..e86d08c 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Stub.cs
@@ -26,6 +26,7 @@
26 */ 26 */
27 27
28using System; 28using System;
29using System.Diagnostics; //for [DebuggerNonUserCode]
29using System.Runtime.Remoting.Lifetime; 30using System.Runtime.Remoting.Lifetime;
30using System.Threading; 31using System.Threading;
31using System.Reflection; 32using System.Reflection;
@@ -309,6 +310,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
309 m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel); 310 m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel);
310 } 311 }
311 312
313 [DebuggerNonUserCode]
312 public void llDie() 314 public void llDie()
313 { 315 {
314 m_LSL_Functions.llDie(); 316 m_LSL_Functions.llDie();