diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 203 |
1 files changed, 104 insertions, 99 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 5552078..a90d20c 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -77,14 +77,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
77 | protected float m_ScriptDistanceFactor = 1.0f; | 77 | protected float m_ScriptDistanceFactor = 1.0f; |
78 | protected float m_MinTimerInterval = 0.5f; | 78 | protected float m_MinTimerInterval = 0.5f; |
79 | 79 | ||
80 | private DateTime m_timer = DateTime.Now; | 80 | protected DateTime m_timer = DateTime.Now; |
81 | private bool m_waitingForScriptAnswer=false; | 81 | protected bool m_waitingForScriptAnswer=false; |
82 | private bool m_automaticLinkPermission=false; | 82 | protected bool m_automaticLinkPermission=false; |
83 | private IMessageTransferModule m_TransferModule = null; | 83 | protected IMessageTransferModule m_TransferModule = null; |
84 | private int m_notecardLineReadCharsMax = 255; | 84 | protected int m_notecardLineReadCharsMax = 255; |
85 | private IUrlModule m_UrlModule = null; | 85 | protected IUrlModule m_UrlModule = null; |
86 | |||
87 | //private static readonly ILog m_log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | ||
88 | 86 | ||
89 | public void Initialize(IScriptEngine ScriptEngine, SceneObjectPart host, uint localID, UUID itemID) | 87 | public void Initialize(IScriptEngine ScriptEngine, SceneObjectPart host, uint localID, UUID itemID) |
90 | { | 88 | { |
@@ -130,7 +128,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
130 | return lease; | 128 | return lease; |
131 | } | 129 | } |
132 | 130 | ||
133 | protected void ScriptSleep(int delay) | 131 | protected virtual void ConditionalScriptSleep(int delay) |
132 | { | ||
133 | // Uncomment to get SL compatibility! | ||
134 | // | ||
135 | // ScriptSleep(delay); | ||
136 | } | ||
137 | |||
138 | protected virtual void ScriptSleep(int delay) | ||
134 | { | 139 | { |
135 | delay = (int)((float)delay * m_ScriptDelayFactor); | 140 | delay = (int)((float)delay * m_ScriptDelayFactor); |
136 | if (delay == 0) | 141 | if (delay == 0) |
@@ -208,7 +213,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
208 | } | 213 | } |
209 | } | 214 | } |
210 | 215 | ||
211 | private List<SceneObjectPart> GetLinkParts(int linkType) | 216 | protected List<SceneObjectPart> GetLinkParts(int linkType) |
212 | { | 217 | { |
213 | List<SceneObjectPart> ret = new List<SceneObjectPart>(); | 218 | List<SceneObjectPart> ret = new List<SceneObjectPart>(); |
214 | ret.Add(m_host); | 219 | ret.Add(m_host); |
@@ -261,7 +266,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
261 | } | 266 | } |
262 | } | 267 | } |
263 | 268 | ||
264 | private UUID InventorySelf() | 269 | protected UUID InventorySelf() |
265 | { | 270 | { |
266 | UUID invItemID = new UUID(); | 271 | UUID invItemID = new UUID(); |
267 | 272 | ||
@@ -280,7 +285,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
280 | return invItemID; | 285 | return invItemID; |
281 | } | 286 | } |
282 | 287 | ||
283 | private UUID InventoryKey(string name, int type) | 288 | protected UUID InventoryKey(string name, int type) |
284 | { | 289 | { |
285 | m_host.AddScriptLPS(1); | 290 | m_host.AddScriptLPS(1); |
286 | 291 | ||
@@ -301,7 +306,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
301 | return UUID.Zero; | 306 | return UUID.Zero; |
302 | } | 307 | } |
303 | 308 | ||
304 | private UUID InventoryKey(string name) | 309 | protected UUID InventoryKey(string name) |
305 | { | 310 | { |
306 | m_host.AddScriptLPS(1); | 311 | m_host.AddScriptLPS(1); |
307 | 312 | ||
@@ -327,7 +332,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
327 | /// </summary> | 332 | /// </summary> |
328 | /// <param name="k"></param> | 333 | /// <param name="k"></param> |
329 | /// <returns></returns> | 334 | /// <returns></returns> |
330 | private UUID KeyOrName(string k) | 335 | protected UUID KeyOrName(string k) |
331 | { | 336 | { |
332 | UUID key = UUID.Zero; | 337 | UUID key = UUID.Zero; |
333 | 338 | ||
@@ -345,7 +350,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
345 | } | 350 | } |
346 | 351 | ||
347 | // convert a LSL_Rotation to a Quaternion | 352 | // convert a LSL_Rotation to a Quaternion |
348 | private Quaternion Rot2Quaternion(LSL_Rotation r) | 353 | protected Quaternion Rot2Quaternion(LSL_Rotation r) |
349 | { | 354 | { |
350 | Quaternion q = new Quaternion((float)r.x, (float)r.y, (float)r.z, (float)r.s); | 355 | Quaternion q = new Quaternion((float)r.x, (float)r.y, (float)r.z, (float)r.s); |
351 | q.Normalize(); | 356 | q.Normalize(); |
@@ -465,7 +470,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
465 | // Utility function for llRot2Euler | 470 | // Utility function for llRot2Euler |
466 | 471 | ||
467 | // normalize an angle between -PI and PI (-180 to +180 degrees) | 472 | // normalize an angle between -PI and PI (-180 to +180 degrees) |
468 | private double NormalizeAngle(double angle) | 473 | protected double NormalizeAngle(double angle) |
469 | { | 474 | { |
470 | angle = angle % (Math.PI * 2); | 475 | angle = angle % (Math.PI * 2); |
471 | // if (angle < 0) angle = angle + Math.PI * 2; | 476 | // if (angle < 0) angle = angle + Math.PI * 2; |
@@ -1235,7 +1240,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1235 | SetScale(m_host, scale); | 1240 | SetScale(m_host, scale); |
1236 | } | 1241 | } |
1237 | 1242 | ||
1238 | private void SetScale(SceneObjectPart part, LSL_Vector scale) | 1243 | protected void SetScale(SceneObjectPart part, LSL_Vector scale) |
1239 | { | 1244 | { |
1240 | // TODO: this needs to trigger a persistance save as well | 1245 | // TODO: this needs to trigger a persistance save as well |
1241 | 1246 | ||
@@ -1290,7 +1295,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1290 | SetColor(m_host, color, face); | 1295 | SetColor(m_host, color, face); |
1291 | } | 1296 | } |
1292 | 1297 | ||
1293 | private void SetColor(SceneObjectPart part, LSL_Vector color, int face) | 1298 | protected void SetColor(SceneObjectPart part, LSL_Vector color, int face) |
1294 | { | 1299 | { |
1295 | Primitive.TextureEntry tex = part.Shape.Textures; | 1300 | Primitive.TextureEntry tex = part.Shape.Textures; |
1296 | Color4 texcolor; | 1301 | Color4 texcolor; |
@@ -1464,7 +1469,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1464 | return GetAlpha(m_host, face); | 1469 | return GetAlpha(m_host, face); |
1465 | } | 1470 | } |
1466 | 1471 | ||
1467 | private LSL_Float GetAlpha(SceneObjectPart part, int face) | 1472 | protected LSL_Float GetAlpha(SceneObjectPart part, int face) |
1468 | { | 1473 | { |
1469 | Primitive.TextureEntry tex = part.Shape.Textures; | 1474 | Primitive.TextureEntry tex = part.Shape.Textures; |
1470 | if (face == ScriptBaseClass.ALL_SIDES) | 1475 | if (face == ScriptBaseClass.ALL_SIDES) |
@@ -1499,7 +1504,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1499 | SetAlpha(part, alpha, face); | 1504 | SetAlpha(part, alpha, face); |
1500 | } | 1505 | } |
1501 | 1506 | ||
1502 | private void SetAlpha(SceneObjectPart part, double alpha, int face) | 1507 | protected void SetAlpha(SceneObjectPart part, double alpha, int face) |
1503 | { | 1508 | { |
1504 | Primitive.TextureEntry tex = part.Shape.Textures; | 1509 | Primitive.TextureEntry tex = part.Shape.Textures; |
1505 | Color4 texcolor; | 1510 | Color4 texcolor; |
@@ -1543,7 +1548,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1543 | /// <param name="wind"></param> | 1548 | /// <param name="wind"></param> |
1544 | /// <param name="tension"></param> | 1549 | /// <param name="tension"></param> |
1545 | /// <param name="Force"></param> | 1550 | /// <param name="Force"></param> |
1546 | private void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, | 1551 | protected void SetFlexi(SceneObjectPart part, bool flexi, int softness, float gravity, float friction, |
1547 | float wind, float tension, LSL_Vector Force) | 1552 | float wind, float tension, LSL_Vector Force) |
1548 | { | 1553 | { |
1549 | if (part == null) | 1554 | if (part == null) |
@@ -1579,7 +1584,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1579 | /// <param name="intensity"></param> | 1584 | /// <param name="intensity"></param> |
1580 | /// <param name="radius"></param> | 1585 | /// <param name="radius"></param> |
1581 | /// <param name="falloff"></param> | 1586 | /// <param name="falloff"></param> |
1582 | private void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff) | 1587 | protected void SetPointLight(SceneObjectPart part, bool light, LSL_Vector color, float intensity, float radius, float falloff) |
1583 | { | 1588 | { |
1584 | if (part == null) | 1589 | if (part == null) |
1585 | return; | 1590 | return; |
@@ -1609,7 +1614,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1609 | return GetColor(m_host, face); | 1614 | return GetColor(m_host, face); |
1610 | } | 1615 | } |
1611 | 1616 | ||
1612 | private LSL_Vector GetColor(SceneObjectPart part, int face) | 1617 | protected LSL_Vector GetColor(SceneObjectPart part, int face) |
1613 | { | 1618 | { |
1614 | Primitive.TextureEntry tex = part.Shape.Textures; | 1619 | Primitive.TextureEntry tex = part.Shape.Textures; |
1615 | Color4 texcolor; | 1620 | Color4 texcolor; |
@@ -1650,7 +1655,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1650 | { | 1655 | { |
1651 | m_host.AddScriptLPS(1); | 1656 | m_host.AddScriptLPS(1); |
1652 | SetTexture(m_host, texture, face); | 1657 | SetTexture(m_host, texture, face); |
1653 | // ScriptSleep(200); | 1658 | ConditionalScriptSleep(200); |
1654 | } | 1659 | } |
1655 | 1660 | ||
1656 | public void llSetLinkTexture(int linknumber, string texture, int face) | 1661 | public void llSetLinkTexture(int linknumber, string texture, int face) |
@@ -1662,10 +1667,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1662 | foreach (SceneObjectPart part in parts) | 1667 | foreach (SceneObjectPart part in parts) |
1663 | SetTexture(part, texture, face); | 1668 | SetTexture(part, texture, face); |
1664 | 1669 | ||
1665 | // ScriptSleep(200); | 1670 | ConditionalScriptSleep(200); |
1666 | } | 1671 | } |
1667 | 1672 | ||
1668 | private void SetTexture(SceneObjectPart part, string texture, int face) | 1673 | protected void SetTexture(SceneObjectPart part, string texture, int face) |
1669 | { | 1674 | { |
1670 | UUID textureID=new UUID(); | 1675 | UUID textureID=new UUID(); |
1671 | 1676 | ||
@@ -1707,10 +1712,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1707 | m_host.AddScriptLPS(1); | 1712 | m_host.AddScriptLPS(1); |
1708 | 1713 | ||
1709 | ScaleTexture(m_host, u, v, face); | 1714 | ScaleTexture(m_host, u, v, face); |
1710 | // ScriptSleep(200); | 1715 | ConditionalScriptSleep(200); |
1711 | } | 1716 | } |
1712 | 1717 | ||
1713 | private void ScaleTexture(SceneObjectPart part, double u, double v, int face) | 1718 | protected void ScaleTexture(SceneObjectPart part, double u, double v, int face) |
1714 | { | 1719 | { |
1715 | Primitive.TextureEntry tex = part.Shape.Textures; | 1720 | Primitive.TextureEntry tex = part.Shape.Textures; |
1716 | if (face >= 0 && face < GetNumberOfSides(part)) | 1721 | if (face >= 0 && face < GetNumberOfSides(part)) |
@@ -1743,10 +1748,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1743 | { | 1748 | { |
1744 | m_host.AddScriptLPS(1); | 1749 | m_host.AddScriptLPS(1); |
1745 | OffsetTexture(m_host, u, v, face); | 1750 | OffsetTexture(m_host, u, v, face); |
1746 | // ScriptSleep(200); | 1751 | ConditionalScriptSleep(200); |
1747 | } | 1752 | } |
1748 | 1753 | ||
1749 | private void OffsetTexture(SceneObjectPart part, double u, double v, int face) | 1754 | protected void OffsetTexture(SceneObjectPart part, double u, double v, int face) |
1750 | { | 1755 | { |
1751 | Primitive.TextureEntry tex = part.Shape.Textures; | 1756 | Primitive.TextureEntry tex = part.Shape.Textures; |
1752 | if (face >= 0 && face < GetNumberOfSides(part)) | 1757 | if (face >= 0 && face < GetNumberOfSides(part)) |
@@ -1779,10 +1784,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1779 | { | 1784 | { |
1780 | m_host.AddScriptLPS(1); | 1785 | m_host.AddScriptLPS(1); |
1781 | RotateTexture(m_host, rotation, face); | 1786 | RotateTexture(m_host, rotation, face); |
1782 | // ScriptSleep(200); | 1787 | ConditionalScriptSleep(200); |
1783 | } | 1788 | } |
1784 | 1789 | ||
1785 | private void RotateTexture(SceneObjectPart part, double rotation, int face) | 1790 | protected void RotateTexture(SceneObjectPart part, double rotation, int face) |
1786 | { | 1791 | { |
1787 | Primitive.TextureEntry tex = part.Shape.Textures; | 1792 | Primitive.TextureEntry tex = part.Shape.Textures; |
1788 | if (face >= 0 && face < GetNumberOfSides(part)) | 1793 | if (face >= 0 && face < GetNumberOfSides(part)) |
@@ -1814,7 +1819,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1814 | return GetTexture(m_host, face); | 1819 | return GetTexture(m_host, face); |
1815 | } | 1820 | } |
1816 | 1821 | ||
1817 | private LSL_String GetTexture(SceneObjectPart part, int face) | 1822 | protected LSL_String GetTexture(SceneObjectPart part, int face) |
1818 | { | 1823 | { |
1819 | Primitive.TextureEntry tex = part.Shape.Textures; | 1824 | Primitive.TextureEntry tex = part.Shape.Textures; |
1820 | if (face == ScriptBaseClass.ALL_SIDES) | 1825 | if (face == ScriptBaseClass.ALL_SIDES) |
@@ -1842,7 +1847,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1842 | ScriptSleep(200); | 1847 | ScriptSleep(200); |
1843 | } | 1848 | } |
1844 | 1849 | ||
1845 | private void SetPos(SceneObjectPart part, LSL_Vector targetPos) | 1850 | protected void SetPos(SceneObjectPart part, LSL_Vector targetPos) |
1846 | { | 1851 | { |
1847 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) | 1852 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) |
1848 | LSL_Vector currentPos = llGetLocalPos(); | 1853 | LSL_Vector currentPos = llGetLocalPos(); |
@@ -1928,7 +1933,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1928 | ScriptSleep(200); | 1933 | ScriptSleep(200); |
1929 | } | 1934 | } |
1930 | 1935 | ||
1931 | private void SetRot(SceneObjectPart part, Quaternion rot) | 1936 | protected void SetRot(SceneObjectPart part, Quaternion rot) |
1932 | { | 1937 | { |
1933 | part.UpdateRotation(rot); | 1938 | part.UpdateRotation(rot); |
1934 | // Update rotation does not move the object in the physics scene if it's a linkset. | 1939 | // Update rotation does not move the object in the physics scene if it's a linkset. |
@@ -2208,7 +2213,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2208 | { | 2213 | { |
2209 | m_host.AddScriptLPS(1); | 2214 | m_host.AddScriptLPS(1); |
2210 | m_host.PreloadSound(sound); | 2215 | m_host.PreloadSound(sound); |
2211 | // ScriptSleep(1000); | 2216 | ConditionalScriptSleep(1000); |
2212 | } | 2217 | } |
2213 | 2218 | ||
2214 | /// <summary> | 2219 | /// <summary> |
@@ -2501,28 +2506,28 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2501 | { | 2506 | { |
2502 | m_host.AddScriptLPS(1); | 2507 | m_host.AddScriptLPS(1); |
2503 | Deprecated("llMakeExplosion"); | 2508 | Deprecated("llMakeExplosion"); |
2504 | // ScriptSleep(100); | 2509 | ConditionalScriptSleep(100); |
2505 | } | 2510 | } |
2506 | 2511 | ||
2507 | public void llMakeFountain(int particles, double scale, double vel, double lifetime, double arc, int bounce, string texture, LSL_Vector offset, double bounce_offset) | 2512 | public void llMakeFountain(int particles, double scale, double vel, double lifetime, double arc, int bounce, string texture, LSL_Vector offset, double bounce_offset) |
2508 | { | 2513 | { |
2509 | m_host.AddScriptLPS(1); | 2514 | m_host.AddScriptLPS(1); |
2510 | Deprecated("llMakeFountain"); | 2515 | Deprecated("llMakeFountain"); |
2511 | // ScriptSleep(100); | 2516 | ConditionalScriptSleep(100); |
2512 | } | 2517 | } |
2513 | 2518 | ||
2514 | public void llMakeSmoke(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset) | 2519 | public void llMakeSmoke(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset) |
2515 | { | 2520 | { |
2516 | m_host.AddScriptLPS(1); | 2521 | m_host.AddScriptLPS(1); |
2517 | Deprecated("llMakeSmoke"); | 2522 | Deprecated("llMakeSmoke"); |
2518 | // ScriptSleep(100); | 2523 | ConditionalScriptSleep(100); |
2519 | } | 2524 | } |
2520 | 2525 | ||
2521 | public void llMakeFire(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset) | 2526 | public void llMakeFire(int particles, double scale, double vel, double lifetime, double arc, string texture, LSL_Vector offset) |
2522 | { | 2527 | { |
2523 | m_host.AddScriptLPS(1); | 2528 | m_host.AddScriptLPS(1); |
2524 | Deprecated("llMakeFire"); | 2529 | Deprecated("llMakeFire"); |
2525 | // ScriptSleep(100); | 2530 | ConditionalScriptSleep(100); |
2526 | } | 2531 | } |
2527 | 2532 | ||
2528 | public void llRezAtRoot(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) | 2533 | public void llRezAtRoot(string inventory, LSL_Vector pos, LSL_Vector vel, LSL_Rotation rot, int param) |
@@ -2586,7 +2591,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2586 | } | 2591 | } |
2587 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) | 2592 | // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) |
2588 | ScriptSleep((int)((groupmass * velmag) / 10)); | 2593 | ScriptSleep((int)((groupmass * velmag) / 10)); |
2589 | // ScriptSleep(100); | 2594 | ConditionalScriptSleep(100); |
2590 | return; | 2595 | return; |
2591 | } | 2596 | } |
2592 | } | 2597 | } |
@@ -2642,7 +2647,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2642 | AsyncCommands.TimerPlugin.SetTimerEvent(m_localID, m_itemID, sec); | 2647 | AsyncCommands.TimerPlugin.SetTimerEvent(m_localID, m_itemID, sec); |
2643 | } | 2648 | } |
2644 | 2649 | ||
2645 | public void llSleep(double sec) | 2650 | public virtual void llSleep(double sec) |
2646 | { | 2651 | { |
2647 | m_host.AddScriptLPS(1); | 2652 | m_host.AddScriptLPS(1); |
2648 | Thread.Sleep((int)(sec * 1000)); | 2653 | Thread.Sleep((int)(sec * 1000)); |
@@ -2872,7 +2877,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2872 | } | 2877 | } |
2873 | 2878 | ||
2874 | emailModule.SendEmail(m_host.UUID, address, subject, message); | 2879 | emailModule.SendEmail(m_host.UUID, address, subject, message); |
2875 | // ScriptSleep(20000); | 2880 | ConditionalScriptSleep(20000); |
2876 | } | 2881 | } |
2877 | 2882 | ||
2878 | public void llGetNextEmail(string address, string subject) | 2883 | public void llGetNextEmail(string address, string subject) |
@@ -3676,7 +3681,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3676 | // destination is an object | 3681 | // destination is an object |
3677 | World.MoveTaskInventoryItem(destId, m_host, objId); | 3682 | World.MoveTaskInventoryItem(destId, m_host, objId); |
3678 | } | 3683 | } |
3679 | // ScriptSleep(3000); | 3684 | ConditionalScriptSleep(3000); |
3680 | } | 3685 | } |
3681 | 3686 | ||
3682 | public void llRemoveInventory(string name) | 3687 | public void llRemoveInventory(string name) |
@@ -3777,7 +3782,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3777 | AsyncCommands. | 3782 | AsyncCommands. |
3778 | DataserverPlugin.DataserverReply(rq.ToString(), reply); | 3783 | DataserverPlugin.DataserverReply(rq.ToString(), reply); |
3779 | 3784 | ||
3780 | // ScriptSleep(100); | 3785 | ConditionalScriptSleep(100); |
3781 | return tid.ToString(); | 3786 | return tid.ToString(); |
3782 | } | 3787 | } |
3783 | 3788 | ||
@@ -3815,11 +3820,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3815 | reply); | 3820 | reply); |
3816 | }); | 3821 | }); |
3817 | 3822 | ||
3818 | // ScriptSleep(1000); | 3823 | ConditionalScriptSleep(1000); |
3819 | return tid.ToString(); | 3824 | return tid.ToString(); |
3820 | } | 3825 | } |
3821 | } | 3826 | } |
3822 | // ScriptSleep(1000); | 3827 | ConditionalScriptSleep(1000); |
3823 | return String.Empty; | 3828 | return String.Empty; |
3824 | } | 3829 | } |
3825 | 3830 | ||
@@ -3848,7 +3853,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3848 | } | 3853 | } |
3849 | } | 3854 | } |
3850 | } | 3855 | } |
3851 | // ScriptSleep(5000); | 3856 | ConditionalScriptSleep(5000); |
3852 | } | 3857 | } |
3853 | 3858 | ||
3854 | public void llTextBox(string avatar, string message, int chat_channel) | 3859 | public void llTextBox(string avatar, string message, int chat_channel) |
@@ -4154,7 +4159,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4154 | // this function to understand which shape it is (taken from meshmerizer) | 4159 | // this function to understand which shape it is (taken from meshmerizer) |
4155 | // quite useful can be used by meshmerizer to have a centralized point of understanding the shape | 4160 | // quite useful can be used by meshmerizer to have a centralized point of understanding the shape |
4156 | // except that it refers to scripting constants | 4161 | // except that it refers to scripting constants |
4157 | private int getScriptPrimType(PrimitiveBaseShape primShape) | 4162 | protected int getScriptPrimType(PrimitiveBaseShape primShape) |
4158 | { | 4163 | { |
4159 | if (primShape.SculptEntry) | 4164 | if (primShape.SculptEntry) |
4160 | return ScriptBaseClass.PRIM_TYPE_SCULPT; | 4165 | return ScriptBaseClass.PRIM_TYPE_SCULPT; |
@@ -4189,7 +4194,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4189 | } | 4194 | } |
4190 | 4195 | ||
4191 | // Helper functions to understand if object has cut, hollow, dimple, and other affecting number of faces | 4196 | // Helper functions to understand if object has cut, hollow, dimple, and other affecting number of faces |
4192 | private void hasCutHollowDimpleProfileCut(int primType, PrimitiveBaseShape shape, out bool hasCut, out bool hasHollow, | 4197 | protected void hasCutHollowDimpleProfileCut(int primType, PrimitiveBaseShape shape, out bool hasCut, out bool hasHollow, |
4193 | out bool hasDimple, out bool hasProfileCut) | 4198 | out bool hasDimple, out bool hasProfileCut) |
4194 | { | 4199 | { |
4195 | if (primType == ScriptBaseClass.PRIM_TYPE_BOX | 4200 | if (primType == ScriptBaseClass.PRIM_TYPE_BOX |
@@ -4215,7 +4220,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4215 | return GetNumberOfSides(m_host); | 4220 | return GetNumberOfSides(m_host); |
4216 | } | 4221 | } |
4217 | 4222 | ||
4218 | private int GetNumberOfSides(SceneObjectPart part) | 4223 | protected int GetNumberOfSides(SceneObjectPart part) |
4219 | { | 4224 | { |
4220 | int ret = 0; | 4225 | int ret = 0; |
4221 | bool hasCut; | 4226 | bool hasCut; |
@@ -4461,7 +4466,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4461 | return GetTextureOffset(m_host, face); | 4466 | return GetTextureOffset(m_host, face); |
4462 | } | 4467 | } |
4463 | 4468 | ||
4464 | private LSL_Vector GetTextureOffset(SceneObjectPart part, int face) | 4469 | protected LSL_Vector GetTextureOffset(SceneObjectPart part, int face) |
4465 | { | 4470 | { |
4466 | Primitive.TextureEntry tex = part.Shape.Textures; | 4471 | Primitive.TextureEntry tex = part.Shape.Textures; |
4467 | LSL_Vector offset = new LSL_Vector(); | 4472 | LSL_Vector offset = new LSL_Vector(); |
@@ -4503,7 +4508,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4503 | return GetTextureRot(m_host, face); | 4508 | return GetTextureRot(m_host, face); |
4504 | } | 4509 | } |
4505 | 4510 | ||
4506 | private LSL_Float GetTextureRot(SceneObjectPart part, int face) | 4511 | protected LSL_Float GetTextureRot(SceneObjectPart part, int face) |
4507 | { | 4512 | { |
4508 | Primitive.TextureEntry tex = part.Shape.Textures; | 4513 | Primitive.TextureEntry tex = part.Shape.Textures; |
4509 | if (face == -1) | 4514 | if (face == -1) |
@@ -5299,7 +5304,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5299 | { | 5304 | { |
5300 | m_host.AddScriptLPS(1); | 5305 | m_host.AddScriptLPS(1); |
5301 | m_host.AdjustSoundGain(volume); | 5306 | m_host.AdjustSoundGain(volume); |
5302 | // ScriptSleep(100); | 5307 | ConditionalScriptSleep(100); |
5303 | } | 5308 | } |
5304 | 5309 | ||
5305 | public void llSetSoundQueueing(int queue) | 5310 | public void llSetSoundQueueing(int queue) |
@@ -5383,7 +5388,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5383 | World.TeleportClientHome(agentId, presence.ControllingClient); | 5388 | World.TeleportClientHome(agentId, presence.ControllingClient); |
5384 | } | 5389 | } |
5385 | } | 5390 | } |
5386 | // ScriptSleep(5000); | 5391 | ConditionalScriptSleep(5000); |
5387 | } | 5392 | } |
5388 | 5393 | ||
5389 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List in_spacers) | 5394 | public LSL_List llParseString2List(string str, LSL_List separators, LSL_List in_spacers) |
@@ -5733,7 +5738,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5733 | return returnval; | 5738 | return returnval; |
5734 | } | 5739 | } |
5735 | 5740 | ||
5736 | private Primitive.ParticleSystem getNewParticleSystemWithSLDefaultValues() | 5741 | protected Primitive.ParticleSystem getNewParticleSystemWithSLDefaultValues() |
5737 | { | 5742 | { |
5738 | Primitive.ParticleSystem ps = new Primitive.ParticleSystem(); | 5743 | Primitive.ParticleSystem ps = new Primitive.ParticleSystem(); |
5739 | 5744 | ||
@@ -5906,7 +5911,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5906 | NotImplemented("llGroundRepel"); | 5911 | NotImplemented("llGroundRepel"); |
5907 | } | 5912 | } |
5908 | 5913 | ||
5909 | private UUID GetTaskInventoryItem(string name) | 5914 | protected UUID GetTaskInventoryItem(string name) |
5910 | { | 5915 | { |
5911 | lock (m_host.TaskInventory) | 5916 | lock (m_host.TaskInventory) |
5912 | { | 5917 | { |
@@ -6075,7 +6080,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6075 | land.ParcelAccessList.Add(entry); | 6080 | land.ParcelAccessList.Add(entry); |
6076 | } | 6081 | } |
6077 | } | 6082 | } |
6078 | // ScriptSleep(100); | 6083 | ConditionalScriptSleep(100); |
6079 | } | 6084 | } |
6080 | 6085 | ||
6081 | public void llSetTouchText(string text) | 6086 | public void llSetTouchText(string text) |
@@ -6172,7 +6177,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6172 | av, m_host.Name, m_host.UUID, m_host.OwnerID, | 6177 | av, m_host.Name, m_host.UUID, m_host.OwnerID, |
6173 | message, new UUID("00000000-0000-2222-3333-100000001000"), chat_channel, buts); | 6178 | message, new UUID("00000000-0000-2222-3333-100000001000"), chat_channel, buts); |
6174 | 6179 | ||
6175 | // ScriptSleep(1000); | 6180 | ConditionalScriptSleep(1000); |
6176 | } | 6181 | } |
6177 | 6182 | ||
6178 | public void llVolumeDetect(int detect) | 6183 | public void llVolumeDetect(int detect) |
@@ -6197,7 +6202,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6197 | m_host.AddScriptLPS(1); | 6202 | m_host.AddScriptLPS(1); |
6198 | // Report an error as it does in SL | 6203 | // Report an error as it does in SL |
6199 | ShoutError("Deprecated. Please use llRemoteLoadScriptPin instead."); | 6204 | ShoutError("Deprecated. Please use llRemoteLoadScriptPin instead."); |
6200 | // ScriptSleep(3000); | 6205 | ConditionalScriptSleep(3000); |
6201 | } | 6206 | } |
6202 | 6207 | ||
6203 | public void llSetRemoteScriptAccessPin(int pin) | 6208 | public void llSetRemoteScriptAccessPin(int pin) |
@@ -6270,14 +6275,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6270 | "remote_data", resobj, | 6275 | "remote_data", resobj, |
6271 | new DetectParams[0])); | 6276 | new DetectParams[0])); |
6272 | } | 6277 | } |
6273 | // ScriptSleep(1000); | 6278 | ConditionalScriptSleep(1000); |
6274 | } | 6279 | } |
6275 | 6280 | ||
6276 | public LSL_String llSendRemoteData(string channel, string dest, int idata, string sdata) | 6281 | public LSL_String llSendRemoteData(string channel, string dest, int idata, string sdata) |
6277 | { | 6282 | { |
6278 | m_host.AddScriptLPS(1); | 6283 | m_host.AddScriptLPS(1); |
6279 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); | 6284 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); |
6280 | // ScriptSleep(3000); | 6285 | ConditionalScriptSleep(3000); |
6281 | return (xmlrpcMod.SendRemoteData(m_localID, m_itemID, channel, dest, idata, sdata)).ToString(); | 6286 | return (xmlrpcMod.SendRemoteData(m_localID, m_itemID, channel, dest, idata, sdata)).ToString(); |
6282 | } | 6287 | } |
6283 | 6288 | ||
@@ -6286,7 +6291,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6286 | m_host.AddScriptLPS(1); | 6291 | m_host.AddScriptLPS(1); |
6287 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); | 6292 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); |
6288 | xmlrpcMod.RemoteDataReply(channel, message_id, sdata, idata); | 6293 | xmlrpcMod.RemoteDataReply(channel, message_id, sdata, idata); |
6289 | // ScriptSleep(3000); | 6294 | ConditionalScriptSleep(3000); |
6290 | } | 6295 | } |
6291 | 6296 | ||
6292 | public void llCloseRemoteDataChannel(string channel) | 6297 | public void llCloseRemoteDataChannel(string channel) |
@@ -6294,7 +6299,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6294 | m_host.AddScriptLPS(1); | 6299 | m_host.AddScriptLPS(1); |
6295 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); | 6300 | IXMLRPC xmlrpcMod = m_ScriptEngine.World.RequestModuleInterface<IXMLRPC>(); |
6296 | xmlrpcMod.CloseXMLRPCChannel((UUID)channel); | 6301 | xmlrpcMod.CloseXMLRPCChannel((UUID)channel); |
6297 | // ScriptSleep(1000); | 6302 | ConditionalScriptSleep(1000); |
6298 | } | 6303 | } |
6299 | 6304 | ||
6300 | public LSL_String llMD5String(string src, int nonce) | 6305 | public LSL_String llMD5String(string src, int nonce) |
@@ -6309,7 +6314,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6309 | return Util.SHA1Hash(src).ToLower(); | 6314 | return Util.SHA1Hash(src).ToLower(); |
6310 | } | 6315 | } |
6311 | 6316 | ||
6312 | private ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist) | 6317 | protected ObjectShapePacket.ObjectDataBlock SetPrimitiveBlockShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist) |
6313 | { | 6318 | { |
6314 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); | 6319 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); |
6315 | 6320 | ||
@@ -6379,7 +6384,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6379 | return shapeBlock; | 6384 | return shapeBlock; |
6380 | } | 6385 | } |
6381 | 6386 | ||
6382 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge) | 6387 | protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector taper_b, LSL_Vector topshear, byte fudge) |
6383 | { | 6388 | { |
6384 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 6389 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
6385 | 6390 | ||
@@ -6427,7 +6432,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6427 | part.UpdateShape(shapeBlock); | 6432 | part.UpdateShape(shapeBlock); |
6428 | } | 6433 | } |
6429 | 6434 | ||
6430 | private void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge) | 6435 | protected void SetPrimitiveShapeParams(SceneObjectPart part, int holeshape, LSL_Vector cut, float hollow, LSL_Vector twist, LSL_Vector dimple, byte fudge) |
6431 | { | 6436 | { |
6432 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 6437 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
6433 | 6438 | ||
@@ -6468,7 +6473,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6468 | part.UpdateShape(shapeBlock); | 6473 | part.UpdateShape(shapeBlock); |
6469 | } | 6474 | } |
6470 | 6475 | ||
6471 | private 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) | 6476 | 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) |
6472 | { | 6477 | { |
6473 | ObjectShapePacket.ObjectDataBlock shapeBlock; | 6478 | ObjectShapePacket.ObjectDataBlock shapeBlock; |
6474 | 6479 | ||
@@ -6588,7 +6593,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6588 | part.UpdateShape(shapeBlock); | 6593 | part.UpdateShape(shapeBlock); |
6589 | } | 6594 | } |
6590 | 6595 | ||
6591 | private void SetPrimitiveShapeParams(SceneObjectPart part, string map, int type) | 6596 | protected void SetPrimitiveShapeParams(SceneObjectPart part, string map, int type) |
6592 | { | 6597 | { |
6593 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); | 6598 | ObjectShapePacket.ObjectDataBlock shapeBlock = new ObjectShapePacket.ObjectDataBlock(); |
6594 | UUID sculptId; | 6599 | UUID sculptId; |
@@ -6638,7 +6643,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
6638 | SetPrimParams(part, rules); | 6643 | SetPrimParams(part, rules); |
6639 | } | 6644 | } |
6640 | 6645 | ||
6641 | private void SetPrimParams(SceneObjectPart part, LSL_List rules) | 6646 | protected void SetPrimParams(SceneObjectPart part, LSL_List rules) |
6642 | { | 6647 | { |
6643 | int idx = 0; | 6648 | int idx = 0; |
6644 | 6649 | ||
@@ -7019,7 +7024,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7019 | { | 7024 | { |
7020 | m_host.AddScriptLPS(1); | 7025 | m_host.AddScriptLPS(1); |
7021 | Deprecated("llXorBase64Strings"); | 7026 | Deprecated("llXorBase64Strings"); |
7022 | // ScriptSleep(300); | 7027 | ConditionalScriptSleep(300); |
7023 | return String.Empty; | 7028 | return String.Empty; |
7024 | } | 7029 | } |
7025 | 7030 | ||
@@ -7067,7 +7072,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7067 | 7072 | ||
7068 | land.SetMusicUrl(url); | 7073 | land.SetMusicUrl(url); |
7069 | 7074 | ||
7070 | // ScriptSleep(2000); | 7075 | ConditionalScriptSleep(2000); |
7071 | } | 7076 | } |
7072 | 7077 | ||
7073 | public LSL_Vector llGetRootPosition() | 7078 | public LSL_Vector llGetRootPosition() |
@@ -7553,7 +7558,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7553 | // base-64 characters | 7558 | // base-64 characters |
7554 | // </summary> | 7559 | // </summary> |
7555 | 7560 | ||
7556 | private static readonly char[] i2ctable = | 7561 | protected static readonly char[] i2ctable = |
7557 | { | 7562 | { |
7558 | 'A','B','C','D','E','F','G','H', | 7563 | 'A','B','C','D','E','F','G','H', |
7559 | 'I','J','K','L','M','N','O','P', | 7564 | 'I','J','K','L','M','N','O','P', |
@@ -7573,7 +7578,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
7573 | // into 6-bit integers. | 7578 | // into 6-bit integers. |
7574 | // </summary> | 7579 | // </summary> |
7575 | 7580 | ||
7576 | private static readonly int[] c2itable = | 7581 | protected static readonly int[] c2itable = |
7577 | { | 7582 | { |
7578 | -1,-1,-1,-1,-1,-1,-1,-1, // 0x | 7583 | -1,-1,-1,-1,-1,-1,-1,-1, // 0x |
7579 | -1,-1,-1,-1,-1,-1,-1,-1, | 7584 | -1,-1,-1,-1,-1,-1,-1,-1, |
@@ -8104,7 +8109,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8104 | case 5: // DATA_SIM_POS | 8109 | case 5: // DATA_SIM_POS |
8105 | if (info == null) | 8110 | if (info == null) |
8106 | { | 8111 | { |
8107 | // ScriptSleep(1000); | 8112 | ConditionalScriptSleep(1000); |
8108 | return UUID.Zero.ToString(); | 8113 | return UUID.Zero.ToString(); |
8109 | } | 8114 | } |
8110 | reply = new LSL_Vector( | 8115 | reply = new LSL_Vector( |
@@ -8121,7 +8126,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8121 | case 7: // DATA_SIM_RATING | 8126 | case 7: // DATA_SIM_RATING |
8122 | if (info == null) | 8127 | if (info == null) |
8123 | { | 8128 | { |
8124 | // ScriptSleep(1000); | 8129 | ConditionalScriptSleep(1000); |
8125 | return UUID.Zero.ToString(); | 8130 | return UUID.Zero.ToString(); |
8126 | } | 8131 | } |
8127 | int access = info.RegionSettings.Maturity; | 8132 | int access = info.RegionSettings.Maturity; |
@@ -8140,7 +8145,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8140 | reply = "OpenSim"; | 8145 | reply = "OpenSim"; |
8141 | break; | 8146 | break; |
8142 | default: | 8147 | default: |
8143 | // ScriptSleep(1000); | 8148 | ConditionalScriptSleep(1000); |
8144 | return UUID.Zero.ToString(); // Raise no event | 8149 | return UUID.Zero.ToString(); // Raise no event |
8145 | } | 8150 | } |
8146 | UUID rq = UUID.Random(); | 8151 | UUID rq = UUID.Random(); |
@@ -8151,7 +8156,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8151 | AsyncCommands. | 8156 | AsyncCommands. |
8152 | DataserverPlugin.DataserverReply(rq.ToString(), reply); | 8157 | DataserverPlugin.DataserverReply(rq.ToString(), reply); |
8153 | 8158 | ||
8154 | // ScriptSleep(1000); | 8159 | ConditionalScriptSleep(1000); |
8155 | return tid.ToString(); | 8160 | return tid.ToString(); |
8156 | } | 8161 | } |
8157 | catch(Exception) | 8162 | catch(Exception) |
@@ -8295,7 +8300,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8295 | dm.SendUrlToUser( | 8300 | dm.SendUrlToUser( |
8296 | new UUID(avatar_id), m_host.Name, m_host.UUID, m_host.ObjectOwner, false, message, url); | 8301 | new UUID(avatar_id), m_host.Name, m_host.UUID, m_host.ObjectOwner, false, message, url); |
8297 | 8302 | ||
8298 | // ScriptSleep(10000); | 8303 | ConditionalScriptSleep(10000); |
8299 | } | 8304 | } |
8300 | 8305 | ||
8301 | public void llParcelMediaCommandList(LSL_List commandList) | 8306 | public void llParcelMediaCommandList(LSL_List commandList) |
@@ -8531,7 +8536,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8531 | time); | 8536 | time); |
8532 | } | 8537 | } |
8533 | } | 8538 | } |
8534 | // ScriptSleep(2000); | 8539 | ConditionalScriptSleep(2000); |
8535 | } | 8540 | } |
8536 | 8541 | ||
8537 | public LSL_List llParcelMediaQuery(LSL_List aList) | 8542 | public LSL_List llParcelMediaQuery(LSL_List aList) |
@@ -8569,7 +8574,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8569 | 8574 | ||
8570 | } | 8575 | } |
8571 | } | 8576 | } |
8572 | // ScriptSleep(2000); | 8577 | ConditionalScriptSleep(2000); |
8573 | return list; | 8578 | return list; |
8574 | } | 8579 | } |
8575 | 8580 | ||
@@ -8578,7 +8583,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8578 | m_host.AddScriptLPS(1); | 8583 | m_host.AddScriptLPS(1); |
8579 | Int64 tmp = 0; | 8584 | Int64 tmp = 0; |
8580 | Math.DivRem(Convert.ToInt64(Math.Pow(a, b)), c, out tmp); | 8585 | Math.DivRem(Convert.ToInt64(Math.Pow(a, b)), c, out tmp); |
8581 | // ScriptSleep(1000); | 8586 | ConditionalScriptSleep(1000); |
8582 | return Convert.ToInt32(tmp); | 8587 | return Convert.ToInt32(tmp); |
8583 | } | 8588 | } |
8584 | 8589 | ||
@@ -8682,7 +8687,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8682 | public void llSetPrimURL(string url) | 8687 | public void llSetPrimURL(string url) |
8683 | { | 8688 | { |
8684 | m_host.AddScriptLPS(1); | 8689 | m_host.AddScriptLPS(1); |
8685 | // ScriptSleep(2000); | 8690 | ConditionalScriptSleep(2000); |
8686 | } | 8691 | } |
8687 | 8692 | ||
8688 | /// <summary> | 8693 | /// <summary> |
@@ -8693,7 +8698,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8693 | { | 8698 | { |
8694 | m_host.AddScriptLPS(1); | 8699 | m_host.AddScriptLPS(1); |
8695 | ShoutError("llRefreshPrimURL - not yet supported"); | 8700 | ShoutError("llRefreshPrimURL - not yet supported"); |
8696 | // ScriptSleep(20000); | 8701 | ConditionalScriptSleep(20000); |
8697 | } | 8702 | } |
8698 | 8703 | ||
8699 | public LSL_String llEscapeURL(string url) | 8704 | public LSL_String llEscapeURL(string url) |
@@ -8735,7 +8740,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8735 | new Vector3((float)pos.x, (float)pos.y, (float)pos.z), | 8740 | new Vector3((float)pos.x, (float)pos.y, (float)pos.z), |
8736 | new Vector3((float)lookAt.x, (float)lookAt.y, (float)lookAt.z)); | 8741 | new Vector3((float)lookAt.x, (float)lookAt.y, (float)lookAt.z)); |
8737 | } | 8742 | } |
8738 | // ScriptSleep(1000); | 8743 | ConditionalScriptSleep(1000); |
8739 | } | 8744 | } |
8740 | 8745 | ||
8741 | public void llAddToLandBanList(string avatar, double hours) | 8746 | public void llAddToLandBanList(string avatar, double hours) |
@@ -8754,7 +8759,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8754 | land.ParcelAccessList.Add(entry); | 8759 | land.ParcelAccessList.Add(entry); |
8755 | } | 8760 | } |
8756 | } | 8761 | } |
8757 | // ScriptSleep(100); | 8762 | ConditionalScriptSleep(100); |
8758 | } | 8763 | } |
8759 | 8764 | ||
8760 | public void llRemoveFromLandPassList(string avatar) | 8765 | public void llRemoveFromLandPassList(string avatar) |
@@ -8776,7 +8781,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8776 | } | 8781 | } |
8777 | } | 8782 | } |
8778 | } | 8783 | } |
8779 | // ScriptSleep(100); | 8784 | ConditionalScriptSleep(100); |
8780 | } | 8785 | } |
8781 | 8786 | ||
8782 | public void llRemoveFromLandBanList(string avatar) | 8787 | public void llRemoveFromLandBanList(string avatar) |
@@ -8798,7 +8803,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
8798 | } | 8803 | } |
8799 | } | 8804 | } |
8800 | } | 8805 | } |
8801 | // ScriptSleep(100); | 8806 | ConditionalScriptSleep(100); |
8802 | } | 8807 | } |
8803 | 8808 | ||
8804 | public void llSetCameraParams(LSL_List rules) | 8809 | public void llSetCameraParams(LSL_List rules) |
@@ -9044,7 +9049,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9044 | } | 9049 | } |
9045 | } | 9050 | } |
9046 | } | 9051 | } |
9047 | // ScriptSleep(100); | 9052 | ConditionalScriptSleep(100); |
9048 | } | 9053 | } |
9049 | 9054 | ||
9050 | public void llResetLandPassList() | 9055 | public void llResetLandPassList() |
@@ -9061,7 +9066,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9061 | } | 9066 | } |
9062 | } | 9067 | } |
9063 | } | 9068 | } |
9064 | // ScriptSleep(100); | 9069 | ConditionalScriptSleep(100); |
9065 | } | 9070 | } |
9066 | 9071 | ||
9067 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) | 9072 | public LSL_Integer llGetParcelPrimCount(LSL_Vector pos, int category, int sim_wide) |
@@ -9140,7 +9145,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9140 | ret.Add(detectedParams.Value); | 9145 | ret.Add(detectedParams.Value); |
9141 | } | 9146 | } |
9142 | } | 9147 | } |
9143 | // ScriptSleep(2000); | 9148 | ConditionalScriptSleep(2000); |
9144 | return ret; | 9149 | return ret; |
9145 | } | 9150 | } |
9146 | 9151 | ||
@@ -9351,7 +9356,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9351 | } | 9356 | } |
9352 | 9357 | ||
9353 | public delegate void AssetRequestCallback(UUID assetID, AssetBase asset); | 9358 | public delegate void AssetRequestCallback(UUID assetID, AssetBase asset); |
9354 | private void WithNotecard(UUID assetID, AssetRequestCallback cb) | 9359 | protected void WithNotecard(UUID assetID, AssetRequestCallback cb) |
9355 | { | 9360 | { |
9356 | World.AssetService.Get(assetID.ToString(), this, | 9361 | World.AssetService.Get(assetID.ToString(), this, |
9357 | delegate(string i, object sender, AssetBase a) | 9362 | delegate(string i, object sender, AssetBase a) |
@@ -9398,7 +9403,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9398 | AsyncCommands. | 9403 | AsyncCommands. |
9399 | DataserverPlugin.DataserverReply(assetID.ToString(), | 9404 | DataserverPlugin.DataserverReply(assetID.ToString(), |
9400 | NotecardCache.GetLines(assetID).ToString()); | 9405 | NotecardCache.GetLines(assetID).ToString()); |
9401 | // ScriptSleep(100); | 9406 | ConditionalScriptSleep(100); |
9402 | return tid.ToString(); | 9407 | return tid.ToString(); |
9403 | } | 9408 | } |
9404 | 9409 | ||
@@ -9420,7 +9425,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9420 | NotecardCache.GetLines(id).ToString()); | 9425 | NotecardCache.GetLines(id).ToString()); |
9421 | }); | 9426 | }); |
9422 | 9427 | ||
9423 | // ScriptSleep(100); | 9428 | ConditionalScriptSleep(100); |
9424 | return tid.ToString(); | 9429 | return tid.ToString(); |
9425 | } | 9430 | } |
9426 | 9431 | ||
@@ -9460,7 +9465,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9460 | AsyncCommands. | 9465 | AsyncCommands. |
9461 | DataserverPlugin.DataserverReply(assetID.ToString(), | 9466 | DataserverPlugin.DataserverReply(assetID.ToString(), |
9462 | NotecardCache.GetLine(assetID, line, m_notecardLineReadCharsMax)); | 9467 | NotecardCache.GetLine(assetID, line, m_notecardLineReadCharsMax)); |
9463 | // ScriptSleep(100); | 9468 | ConditionalScriptSleep(100); |
9464 | return tid.ToString(); | 9469 | return tid.ToString(); |
9465 | } | 9470 | } |
9466 | 9471 | ||
@@ -9482,7 +9487,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9482 | NotecardCache.GetLine(id, line, m_notecardLineReadCharsMax)); | 9487 | NotecardCache.GetLine(id, line, m_notecardLineReadCharsMax)); |
9483 | }); | 9488 | }); |
9484 | 9489 | ||
9485 | // ScriptSleep(100); | 9490 | ConditionalScriptSleep(100); |
9486 | return tid.ToString(); | 9491 | return tid.ToString(); |
9487 | } | 9492 | } |
9488 | 9493 | ||
@@ -9490,13 +9495,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9490 | 9495 | ||
9491 | public class NotecardCache | 9496 | public class NotecardCache |
9492 | { | 9497 | { |
9493 | private class Notecard | 9498 | protected class Notecard |
9494 | { | 9499 | { |
9495 | public string[] text; | 9500 | public string[] text; |
9496 | public DateTime lastRef; | 9501 | public DateTime lastRef; |
9497 | } | 9502 | } |
9498 | 9503 | ||
9499 | private static Dictionary<UUID, Notecard> m_Notecards = | 9504 | protected static Dictionary<UUID, Notecard> m_Notecards = |
9500 | new Dictionary<UUID, Notecard>(); | 9505 | new Dictionary<UUID, Notecard>(); |
9501 | 9506 | ||
9502 | public static void Cache(UUID assetID, string text) | 9507 | public static void Cache(UUID assetID, string text) |
@@ -9515,7 +9520,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
9515 | } | 9520 | } |
9516 | } | 9521 | } |
9517 | 9522 | ||
9518 | private static string[] ParseText(string[] input) | 9523 | protected static string[] ParseText(string[] input) |
9519 | { | 9524 | { |
9520 | int idx = 0; | 9525 | int idx = 0; |
9521 | int level = 0; | 9526 | int level = 0; |