From 67e12b95ea7b68f4904a7484d77ecfd787d16d0c Mon Sep 17 00:00:00 2001
From: lbsa71
Date: Tue, 30 Oct 2007 09:05:31 +0000
Subject: * Optimized usings * Shortened type references * Removed redundant
'this' qualifier
---
.../DotNetEngine/Compiler/LSL/Compiler.cs | 38 +-
.../DotNetEngine/Compiler/LSL/LSL2CSConverter.cs | 82 +-
.../DotNetEngine/Compiler/LSL/LSL_BaseClass.cs | 2173 ++++++++++++++++----
3 files changed, 1811 insertions(+), 482 deletions(-)
(limited to 'OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL')
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
index a2eee66..7f452e0 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
@@ -27,16 +27,13 @@
*/
using System;
-using System.Collections.Generic;
-using System.Text;
-using System.IO;
-using Microsoft.CSharp;
using System.CodeDom.Compiler;
+using System.IO;
using System.Reflection;
+using Microsoft.CSharp;
namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
{
-
public class Compiler
{
private LSL2CSConverter LSL_Converter = new LSL2CSConverter();
@@ -45,7 +42,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
//private ICodeCompiler icc = codeProvider.CreateCompiler();
public string CompileFromFile(string LSOFileName)
{
- switch (System.IO.Path.GetExtension(LSOFileName).ToLower())
+ switch (Path.GetExtension(LSOFileName).ToLower())
{
case ".txt":
case ".lsl":
@@ -58,6 +55,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
throw new Exception("Unknown script type.");
}
}
+
///
/// Converts script from LSL to CS and calls CompileFromCSText
///
@@ -67,13 +65,14 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
{
if (Script.Substring(0, 4).ToLower() == "//c#")
{
- return CompileFromCSText( Script );
+ return CompileFromCSText(Script);
}
else
{
return CompileFromCSText(LSL_Converter.Convert(Script));
}
}
+
///
/// Compile CS script to .Net assembly (.dll)
///
@@ -81,14 +80,12 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
/// Filename to .dll assembly
public string CompileFromCSText(string Script)
{
-
-
// Output assembly name
scriptCompileCounter++;
string OutFile = Path.Combine("ScriptEngines", "Script_" + scriptCompileCounter + ".dll");
try
{
- System.IO.File.Delete(OutFile);
+ File.Delete(OutFile);
}
catch (Exception e)
{
@@ -99,12 +96,15 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
// DEBUG - write source to disk
try
{
- File.WriteAllText(Path.Combine("ScriptEngines", "debug_" + Path.GetFileNameWithoutExtension(OutFile) + ".cs"), Script);
+ File.WriteAllText(
+ Path.Combine("ScriptEngines", "debug_" + Path.GetFileNameWithoutExtension(OutFile) + ".cs"), Script);
+ }
+ catch
+ {
}
- catch { }
// Do actual compile
- System.CodeDom.Compiler.CompilerParameters parameters = new CompilerParameters();
+ CompilerParameters parameters = new CompilerParameters();
parameters.IncludeDebugInformation = true;
// Add all available assemblies
foreach (Assembly asm in AppDomain.CurrentDomain.GetAssemblies())
@@ -114,11 +114,11 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
}
string rootPath = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory);
- string rootPathSE = Path.GetDirectoryName(this.GetType().Assembly.Location);
+ string rootPathSE = Path.GetDirectoryName(GetType().Assembly.Location);
//Console.WriteLine("Assembly location: " + rootPath);
parameters.ReferencedAssemblies.Add(Path.Combine(rootPath, "OpenSim.Region.ScriptEngine.Common.dll"));
parameters.ReferencedAssemblies.Add(Path.Combine(rootPathSE, "OpenSim.Region.ScriptEngine.DotNetEngine.dll"));
-
+
//parameters.ReferencedAssemblies.Add("OpenSim.Region.Environment");
parameters.GenerateExecutable = false;
parameters.OutputAssembly = OutFile;
@@ -129,13 +129,12 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
// TODO: Return errors to user somehow
if (results.Errors.Count > 0)
{
-
string errtext = "";
foreach (CompilerError CompErr in results.Errors)
{
errtext += "Line number " + (CompErr.Line - 1) +
- ", Error Number: " + CompErr.ErrorNumber +
- ", '" + CompErr.ErrorText + "'\r\n";
+ ", Error Number: " + CompErr.ErrorNumber +
+ ", '" + CompErr.ErrorText + "'\r\n";
}
throw new Exception(errtext);
}
@@ -143,6 +142,5 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
return OutFile;
}
-
}
-}
+}
\ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSConverter.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSConverter.cs
index 18eeaa3..0c28617 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSConverter.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSConverter.cs
@@ -26,9 +26,7 @@
*
*/
-using System;
using System.Collections.Generic;
-using System.Text;
using System.Text.RegularExpressions;
namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
@@ -51,9 +49,8 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
dataTypes.Add("rotation", "LSL_Types.Quaternion");
dataTypes.Add("list", "list");
dataTypes.Add("null", "null");
-
}
-
+
public string Convert(string Script)
{
string Return = "";
@@ -81,7 +78,6 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
int quote_replaced_count = 0;
for (int p = 0; p < Script.Length; p++)
{
-
C = Script.Substring(p, 1);
while (true)
{
@@ -99,10 +95,13 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
if (quote == "")
{
// We didn't replace quote, probably because of empty string?
- _Script += quote_replacement_string + quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]);
+ _Script += quote_replacement_string +
+ quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]);
}
// We just left a quote
- quotes.Add(quote_replacement_string + quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]), quote);
+ quotes.Add(
+ quote_replacement_string +
+ quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]), quote);
quote = "";
}
break;
@@ -112,7 +111,6 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
{
// We are not inside a quote
quote_replaced = false;
-
}
else
{
@@ -120,7 +118,8 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
if (!quote_replaced)
{
// Replace quote
- _Script += quote_replacement_string + quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]);
+ _Script += quote_replacement_string +
+ quote_replaced_count.ToString().PadLeft(5, "0".ToCharArray()[0]);
quote_replaced = true;
}
quote += C;
@@ -141,7 +140,6 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
//
-
//
// PROCESS STATES
// Remove state definitions and add state names to start of each event within state
@@ -170,7 +168,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
if (ilevel == 1 && lastlevel == 0)
{
// 0 => 1: Get last
- Match m = Regex.Match(cache, @"(?![a-zA-Z_]+)\s*([a-zA-Z_]+)[^a-zA-Z_\(\)]*{", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Match m =
+ Regex.Match(cache, @"(?![a-zA-Z_]+)\s*([a-zA-Z_]+)[^a-zA-Z_\(\)]*{",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
in_state = false;
if (m.Success)
@@ -179,7 +179,11 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
in_state = true;
current_statename = m.Groups[1].Captures[0].Value;
//Console.WriteLine("Current statename: " + current_statename);
- cache = Regex.Replace(cache, @"(?(?![a-zA-Z_]+)\s*)" + @"([a-zA-Z_]+)(?[^a-zA-Z_\(\)]*){", "${s1}${s2}", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ cache =
+ Regex.Replace(cache,
+ @"(?(?![a-zA-Z_]+)\s*)" + @"([a-zA-Z_]+)(?[^a-zA-Z_\(\)]*){",
+ "${s1}${s2}",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
}
ret += cache;
cache = "";
@@ -196,7 +200,11 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
// void dataserver(key query_id, string data) {
//cache = Regex.Replace(cache, @"([^a-zA-Z_]\s*)((?!if|switch|for)[a-zA-Z_]+\s*\([^\)]*\)[^{]*{)", "$1" + "" + "$2", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
//Console.WriteLine("Replacing using statename: " + current_statename);
- cache = Regex.Replace(cache, @"^(\s*)((?!(if|switch|for)[^a-zA-Z0-9_])[a-zA-Z0-9_]*\s*\([^\)]*\)[^;]*\{)", @"$1public " + current_statename + "_event_$2", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ cache =
+ Regex.Replace(cache,
+ @"^(\s*)((?!(if|switch|for)[^a-zA-Z0-9_])[a-zA-Z0-9_]*\s*\([^\)]*\)[^;]*\{)",
+ @"$1public " + current_statename + "_event_$2",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
}
ret += cache;
@@ -216,32 +224,48 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
ret = "";
-
foreach (string key in dataTypes.Keys)
{
string val;
dataTypes.TryGetValue(key, out val);
// Replace CAST - (integer) with (int)
- Script = Regex.Replace(Script, @"\(" + key + @"\)", @"(" + val + ")", RegexOptions.Compiled | RegexOptions.Multiline);
+ Script =
+ Regex.Replace(Script, @"\(" + key + @"\)", @"(" + val + ")",
+ RegexOptions.Compiled | RegexOptions.Multiline);
// Replace return types and function variables - integer a() and f(integer a, integer a)
- Script = Regex.Replace(Script, @"(^|;|}|[\(,])(\s*)" + key + @"(\s*)", @"$1$2" + val + "$3", RegexOptions.Compiled | RegexOptions.Multiline);
+ Script =
+ Regex.Replace(Script, @"(^|;|}|[\(,])(\s*)" + key + @"(\s*)", @"$1$2" + val + "$3",
+ RegexOptions.Compiled | RegexOptions.Multiline);
}
// Add "void" in front of functions that needs it
- Script = Regex.Replace(Script, @"^(\s*public\s+)((?!(if|switch|for)[^a-zA-Z0-9_])[a-zA-Z0-9_]*\s*\([^\)]*\)[^;]*\{)", @"$1void $2", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script,
+ @"^(\s*public\s+)((?!(if|switch|for)[^a-zA-Z0-9_])[a-zA-Z0-9_]*\s*\([^\)]*\)[^;]*\{)",
+ @"$1void $2", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
// Replace and
- Script = Regex.Replace(Script, @"<([^,>]*,[^,>]*,[^,>]*,[^,>]*)>", @"new LSL_Types.Quaternion($1)", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
- Script = Regex.Replace(Script, @"<([^,>]*,[^,>]*,[^,>]*)>", @"new LSL_Types.Vector3($1)", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script, @"<([^,>]*,[^,>]*,[^,>]*,[^,>]*)>", @"new LSL_Types.Quaternion($1)",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script, @"<([^,>]*,[^,>]*,[^,>]*)>", @"new LSL_Types.Vector3($1)",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
// Replace List []'s
- Script = Regex.Replace(Script, @"\[([^\]]*)\]", @"List.Parse($1)", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script, @"\[([^\]]*)\]", @"List.Parse($1)",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
// Replace (string) to .ToString() //
- Script = Regex.Replace(Script, @"\(string\)\s*([a-zA-Z0-9_]+(\s*\([^\)]*\))?)", @"$1.ToString()", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
- Script = Regex.Replace(Script, @"\((float|int)\)\s*([a-zA-Z0-9_]+(\s*\([^\)]*\))?)", @"$1.Parse($2)", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script, @"\(string\)\s*([a-zA-Z0-9_]+(\s*\([^\)]*\))?)", @"$1.ToString()",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
+ Script =
+ Regex.Replace(Script, @"\((float|int)\)\s*([a-zA-Z0-9_]+(\s*\([^\)]*\))?)", @"$1.Parse($2)",
+ RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline);
// REPLACE BACK QUOTES
@@ -256,7 +280,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
// Add namespace, class name and inheritance
Return = "" +
- "using OpenSim.Region.ScriptEngine.Common;";
+ "using OpenSim.Region.ScriptEngine.Common;";
//"using System; " +
//"using System.Collections.Generic; " +
//"using System.Text; " +
@@ -278,17 +302,15 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
Return += "" +
- "namespace SecondLife { ";
- Return += "" +
- //"[Serializable] " +
- "public class Script : OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass { ";
+ "namespace SecondLife { ";
+ Return += "" +
+ //"[Serializable] " +
+ "public class Script : OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.LSL_BaseClass { ";
Return += @"public Script() { } ";
Return += Script;
Return += "} }\r\n";
return Return;
}
-
-
}
-}
+}
\ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs
index ea05efc..f2774d6 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs
@@ -28,476 +28,1788 @@
using System;
using System.Collections.Generic;
-using System.Text;
-using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler;
-using OpenSim.Region.ScriptEngine.Common;
-using System.Threading;
-using System.Reflection;
using System.Runtime.Remoting.Lifetime;
+using System.Threading;
+using OpenSim.Region.ScriptEngine.Common;
using integer = System.Int32;
using key = System.String;
using vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3;
using rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion;
-namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
-{
- //[Serializable]
- public class LSL_BaseClass : MarshalByRefObject, LSL_BuiltIn_Commands_Interface, IScript
- {
+namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
+{
+ //[Serializable]
+ public class LSL_BaseClass : MarshalByRefObject, LSL_BuiltIn_Commands_Interface, IScript
+ {
+ // Object never expires
+ public override Object InitializeLifetimeService()
+ {
+ //Console.WriteLine("LSL_BaseClass: InitializeLifetimeService()");
+ // return null;
+ ILease lease = (ILease) base.InitializeLifetimeService();
+
+ if (lease.CurrentState == LeaseState.Initial)
+ {
+ lease.InitialLeaseTime = TimeSpan.Zero; // TimeSpan.FromMinutes(1);
+ //lease.SponsorshipTimeout = TimeSpan.FromMinutes(2);
+ //lease.RenewOnCallTime = TimeSpan.FromSeconds(2);
+ }
+ return lease;
+ }
+
+
+ private Executor m_Exec;
+
+ public Executor Exec
+ {
+ get
+ {
+ if (m_Exec == null)
+ m_Exec = new Executor(this);
+ return m_Exec;
+ }
+ }
+
+ public LSL_BuiltIn_Commands_Interface m_LSL_Functions;
+ public string SourceCode = "";
+
+ public LSL_BaseClass()
+ {
+ }
+
+ public string State()
+ {
+ return m_LSL_Functions.State();
+ }
+
+
+ public void Start(LSL_BuiltIn_Commands_Interface LSL_Functions)
+ {
+ m_LSL_Functions = LSL_Functions;
+
+ //MainLog.Instance.Notice("ScriptEngine", "LSL_BaseClass.Start() called.");
+
+ // Get this AppDomain's settings and display some of them.
+ AppDomainSetup ads = AppDomain.CurrentDomain.SetupInformation;
+ Console.WriteLine("AppName={0}, AppBase={1}, ConfigFile={2}",
+ ads.ApplicationName,
+ ads.ApplicationBase,
+ ads.ConfigurationFile
+ );
+
+ // Display the name of the calling AppDomain and the name
+ // of the second domain.
+ // NOTE: The application's thread has transitioned between
+ // AppDomains.
+ Console.WriteLine("Calling to '{0}'.",
+ Thread.GetDomain().FriendlyName
+ );
+
+ return;
+ }
+
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ // They are only forwarders to LSL_BuiltIn_Commands.cs
+ //
+ public double llSin(double f)
+ {
+ return m_LSL_Functions.llSin(f);
+ }
+
+ public double llCos(double f)
+ {
+ return m_LSL_Functions.llCos(f);
+ }
+
+ public double llTan(double f)
+ {
+ return m_LSL_Functions.llTan(f);
+ }
+
+ public double llAtan2(double x, double y)
+ {
+ return m_LSL_Functions.llAtan2(x, y);
+ }
+
+ public double llSqrt(double f)
+ {
+ return m_LSL_Functions.llSqrt(f);
+ }
+
+ public double llPow(double fbase, double fexponent)
+ {
+ return m_LSL_Functions.llPow(fbase, fexponent);
+ }
+
+ public int llAbs(int i)
+ {
+ return m_LSL_Functions.llAbs(i);
+ }
+
+ public double llFabs(double f)
+ {
+ return m_LSL_Functions.llFabs(f);
+ }
+
+ public double llFrand(double mag)
+ {
+ return m_LSL_Functions.llFrand(mag);
+ }
+
+ public int llFloor(double f)
+ {
+ return m_LSL_Functions.llFloor(f);
+ }
+
+ public int llCeil(double f)
+ {
+ return m_LSL_Functions.llCeil(f);
+ }
+
+ public int llRound(double f)
+ {
+ return m_LSL_Functions.llRound(f);
+ }
+
+ public double llVecMag(vector v)
+ {
+ return m_LSL_Functions.llVecMag(v);
+ }
+
+ public vector llVecNorm(vector v)
+ {
+ return m_LSL_Functions.llVecNorm(v);
+ }
+
+ public double llVecDist(vector a, vector b)
+ {
+ return m_LSL_Functions.llVecDist(a, b);
+ }
+
+ public vector llRot2Euler(rotation r)
+ {
+ return m_LSL_Functions.llRot2Euler(r);
+ }
+
+ public rotation llEuler2Rot(vector v)
+ {
+ return m_LSL_Functions.llEuler2Rot(v);
+ }
+
+ public rotation llAxes2Rot(vector fwd, vector left, vector up)
+ {
+ return m_LSL_Functions.llAxes2Rot(fwd, left, up);
+ }
+
+ public vector llRot2Fwd(rotation r)
+ {
+ return m_LSL_Functions.llRot2Fwd(r);
+ }
+
+ public vector llRot2Left(rotation r)
+ {
+ return m_LSL_Functions.llRot2Left(r);
+ }
+
+ public vector llRot2Up(rotation r)
+ {
+ return m_LSL_Functions.llRot2Up(r);
+ }
+
+ public rotation llRotBetween(vector start, vector end)
+ {
+ return m_LSL_Functions.llRotBetween(start, end);
+ }
+
+ public void llWhisper(int channelID, string text)
+ {
+ m_LSL_Functions.llWhisper(channelID, text);
+ }
+
+ public void llSay(int channelID, string text)
+ {
+ m_LSL_Functions.llSay(channelID, text);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llShout(int channelID, string text)
+ {
+ m_LSL_Functions.llShout(channelID, text);
+ }
+
+ public int llListen(int channelID, string name, string ID, string msg)
+ {
+ return m_LSL_Functions.llListen(channelID, name, ID, msg);
+ }
+
+ public void llListenControl(int number, int active)
+ {
+ m_LSL_Functions.llListenControl(number, active);
+ }
+
+ public void llListenRemove(int number)
+ {
+ m_LSL_Functions.llListenRemove(number);
+ }
+
+ public void llSensor(string name, string id, int type, double range, double arc)
+ {
+ m_LSL_Functions.llSensor(name, id, type, range, arc);
+ }
+
+ public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate)
+ {
+ m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate);
+ }
+
+ public void llSensorRemove()
+ {
+ m_LSL_Functions.llSensorRemove();
+ }
+
+ public string llDetectedName(int number)
+ {
+ return m_LSL_Functions.llDetectedName(number);
+ }
+
+ public string llDetectedKey(int number)
+ {
+ return m_LSL_Functions.llDetectedKey(number);
+ }
+
+ public string llDetectedOwner(int number)
+ {
+ return m_LSL_Functions.llDetectedOwner(number);
+ }
+
+ public int llDetectedType(int number)
+ {
+ return m_LSL_Functions.llDetectedType(number);
+ }
+
+ public vector llDetectedPos(int number)
+ {
+ return m_LSL_Functions.llDetectedPos(number);
+ }
+
+ public vector llDetectedVel(int number)
+ {
+ return m_LSL_Functions.llDetectedVel(number);
+ }
+
+ public vector llDetectedGrab(int number)
+ {
+ return m_LSL_Functions.llDetectedGrab(number);
+ }
+
+ public rotation llDetectedRot(int number)
+ {
+ return m_LSL_Functions.llDetectedRot(number);
+ }
+
+ public int llDetectedGroup(int number)
+ {
+ return m_LSL_Functions.llDetectedGroup(number);
+ }
+
+ public int llDetectedLinkNumber(int number)
+ {
+ return m_LSL_Functions.llDetectedLinkNumber(number);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llDie()
+ {
+ m_LSL_Functions.llDie();
+ }
+
+ public double llGround(vector offset)
+ {
+ return m_LSL_Functions.llGround(offset);
+ }
+
+ public double llCloud(vector offset)
+ {
+ return m_LSL_Functions.llCloud(offset);
+ }
+
+ public vector llWind(vector offset)
+ {
+ return m_LSL_Functions.llWind(offset);
+ }
+
+ public void llSetStatus(int status, int value)
+ {
+ m_LSL_Functions.llSetStatus(status, value);
+ }
+
+ public int llGetStatus(int status)
+ {
+ return m_LSL_Functions.llGetStatus(status);
+ }
+
+ public void llSetScale(vector scale)
+ {
+ m_LSL_Functions.llSetScale(scale);
+ }
+
+ public vector llGetScale()
+ {
+ return m_LSL_Functions.llGetScale();
+ }
+
+ public void llSetColor(vector color, int face)
+ {
+ m_LSL_Functions.llSetColor(color, face);
+ }
+
+ public double llGetAlpha(int face)
+ {
+ return m_LSL_Functions.llGetAlpha(face);
+ }
+
+ public void llSetAlpha(double alpha, int face)
+ {
+ m_LSL_Functions.llSetAlpha(alpha, face);
+ }
+
+ public vector llGetColor(int face)
+ {
+ return m_LSL_Functions.llGetColor(face);
+ }
+
+ public void llSetTexture(string texture, int face)
+ {
+ m_LSL_Functions.llSetTexture(texture, face);
+ }
+
+ public void llScaleTexture(double u, double v, int face)
+ {
+ m_LSL_Functions.llScaleTexture(u, v, face);
+ }
+
+ public void llOffsetTexture(double u, double v, int face)
+ {
+ m_LSL_Functions.llOffsetTexture(u, v, face);
+ }
+
+ public void llRotateTexture(double rotation, int face)
+ {
+ m_LSL_Functions.llRotateTexture(rotation, face);
+ }
+
+ public string llGetTexture(int face)
+ {
+ return m_LSL_Functions.llGetTexture(face);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llSetPos(vector pos)
+ {
+ m_LSL_Functions.llSetPos(pos);
+ }
+
+ public vector llGetPos()
+ {
+ return m_LSL_Functions.llGetPos();
+ }
+
+ public vector llGetLocalPos()
+ {
+ return m_LSL_Functions.llGetLocalPos();
+ }
+
+ public void llSetRot(rotation rot)
+ {
+ m_LSL_Functions.llSetRot(rot);
+ }
+
+ public rotation llGetRot()
+ {
+ return m_LSL_Functions.llGetRot();
+ }
+
+ public rotation llGetLocalRot()
+ {
+ return m_LSL_Functions.llGetLocalRot();
+ }
+
+ public void llSetForce(vector force, int local)
+ {
+ m_LSL_Functions.llSetForce(force, local);
+ }
+
+ public vector llGetForce()
+ {
+ return m_LSL_Functions.llGetForce();
+ }
+
+ public int llTarget(vector position, double range)
+ {
+ return m_LSL_Functions.llTarget(position, range);
+ }
+
+ public void llTargetRemove(int number)
+ {
+ m_LSL_Functions.llTargetRemove(number);
+ }
+
+ public int llRotTarget(rotation rot, double error)
+ {
+ return m_LSL_Functions.llRotTarget(rot, error);
+ }
+
+ public void llRotTargetRemove(int number)
+ {
+ m_LSL_Functions.llRotTargetRemove(number);
+ }
+
+ public void llMoveToTarget(vector target, double tau)
+ {
+ m_LSL_Functions.llMoveToTarget(target, tau);
+ }
+
+ public void llStopMoveToTarget()
+ {
+ m_LSL_Functions.llStopMoveToTarget();
+ }
+
+ public void llApplyImpulse(vector force, int local)
+ {
+ m_LSL_Functions.llApplyImpulse(force, local);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llApplyRotationalImpulse(vector force, int local)
+ {
+ m_LSL_Functions.llApplyRotationalImpulse(force, local);
+ }
+
+ public void llSetTorque(vector torque, int local)
+ {
+ m_LSL_Functions.llSetTorque(torque, local);
+ }
+
+ public vector llGetTorque()
+ {
+ return m_LSL_Functions.llGetTorque();
+ }
+
+ public void llSetForceAndTorque(vector force, vector torque, int local)
+ {
+ m_LSL_Functions.llSetForceAndTorque(force, torque, local);
+ }
+
+ public vector llGetVel()
+ {
+ return m_LSL_Functions.llGetVel();
+ }
+
+ public vector llGetAccel()
+ {
+ return m_LSL_Functions.llGetAccel();
+ }
+
+ public vector llGetOmega()
+ {
+ return m_LSL_Functions.llGetOmega();
+ }
+
+ public double llGetTimeOfDay()
+ {
+ return m_LSL_Functions.llGetTimeOfDay();
+ }
+
+ public double llGetWallclock()
+ {
+ return m_LSL_Functions.llGetWallclock();
+ }
+
+ public double llGetTime()
+ {
+ return m_LSL_Functions.llGetTime();
+ }
+
+ public void llResetTime()
+ {
+ m_LSL_Functions.llResetTime();
+ }
+
+ public double llGetAndResetTime()
+ {
+ return m_LSL_Functions.llGetAndResetTime();
+ }
+
+ public void llSound()
+ {
+ m_LSL_Functions.llSound();
+ }
+
+ public void llPlaySound(string sound, double volume)
+ {
+ m_LSL_Functions.llPlaySound(sound, volume);
+ }
+
+ public void llLoopSound(string sound, double volume)
+ {
+ m_LSL_Functions.llLoopSound(sound, volume);
+ }
+
+ public void llLoopSoundMaster(string sound, double volume)
+ {
+ m_LSL_Functions.llLoopSoundMaster(sound, volume);
+ }
+
+ public void llLoopSoundSlave(string sound, double volume)
+ {
+ m_LSL_Functions.llLoopSoundSlave(sound, volume);
+ }
+
+ public void llPlaySoundSlave(string sound, double volume)
+ {
+ m_LSL_Functions.llPlaySoundSlave(sound, volume);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llTriggerSound(string sound, double volume)
+ {
+ m_LSL_Functions.llTriggerSound(sound, volume);
+ }
+
+ public void llStopSound()
+ {
+ m_LSL_Functions.llStopSound();
+ }
+
+ public void llPreloadSound(string sound)
+ {
+ m_LSL_Functions.llPreloadSound(sound);
+ }
+
+ public string llGetSubString(string src, int start, int end)
+ {
+ return m_LSL_Functions.llGetSubString(src, start, end);
+ }
+
+ public string llDeleteSubString(string src, int start, int end)
+ {
+ return m_LSL_Functions.llDeleteSubString(src, start, end);
+ }
+
+ public string llInsertString(string dst, int position, string src)
+ {
+ return m_LSL_Functions.llInsertString(dst, position, src);
+ }
+
+ public string llToUpper(string source)
+ {
+ return m_LSL_Functions.llToUpper(source);
+ }
+
+ public string llToLower(string source)
+ {
+ return m_LSL_Functions.llToLower(source);
+ }
+
+ public int llGiveMoney(string destination, int amount)
+ {
+ return m_LSL_Functions.llGiveMoney(destination, amount);
+ }
+
+ public void llMakeExplosion()
+ {
+ m_LSL_Functions.llMakeExplosion();
+ }
+
+ public void llMakeFountain()
+ {
+ m_LSL_Functions.llMakeFountain();
+ }
+
+ public void llMakeSmoke()
+ {
+ m_LSL_Functions.llMakeSmoke();
+ }
+
+ public void llMakeFire()
+ {
+ m_LSL_Functions.llMakeFire();
+ }
+
+ public void llRezObject(string inventory, vector pos, rotation rot, int param)
+ {
+ m_LSL_Functions.llRezObject(inventory, pos, rot, param);
+ }
+
+ public void llLookAt(vector target, double strength, double damping)
+ {
+ m_LSL_Functions.llLookAt(target, strength, damping);
+ }
+
+ public void llStopLookAt()
+ {
+ m_LSL_Functions.llStopLookAt();
+ }
+
+ public void llSetTimerEvent(double sec)
+ {
+ m_LSL_Functions.llSetTimerEvent(sec);
+ }
+
+ public void llSleep(double sec)
+ {
+ m_LSL_Functions.llSleep(sec);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public double llGetMass()
+ {
+ return m_LSL_Functions.llGetMass();
+ }
+
+ public void llCollisionFilter(string name, string id, int accept)
+ {
+ m_LSL_Functions.llCollisionFilter(name, id, accept);
+ }
+
+ public void llTakeControls(int controls, int accept, int pass_on)
+ {
+ m_LSL_Functions.llTakeControls(controls, accept, pass_on);
+ }
+
+ public void llReleaseControls()
+ {
+ m_LSL_Functions.llReleaseControls();
+ }
+
+ public void llAttachToAvatar(int attachment)
+ {
+ m_LSL_Functions.llAttachToAvatar(attachment);
+ }
+
+ public void llDetachFromAvatar()
+ {
+ m_LSL_Functions.llDetachFromAvatar();
+ }
+
+ public void llTakeCamera()
+ {
+ m_LSL_Functions.llTakeCamera();
+ }
+
+ public void llReleaseCamera()
+ {
+ m_LSL_Functions.llReleaseCamera();
+ }
+
+ public string llGetOwner()
+ {
+ return m_LSL_Functions.llGetOwner();
+ }
+
+ public void llInstantMessage(string user, string message)
+ {
+ m_LSL_Functions.llInstantMessage(user, message);
+ }
+
+ public void llEmail(string address, string subject, string message)
+ {
+ m_LSL_Functions.llEmail(address, subject, message);
+ }
+
+ public void llGetNextEmail(string address, string subject)
+ {
+ m_LSL_Functions.llGetNextEmail(address, subject);
+ }
+
+ public string llGetKey()
+ {
+ return m_LSL_Functions.llGetKey();
+ }
+
+ public void llSetBuoyancy(double buoyancy)
+ {
+ m_LSL_Functions.llSetBuoyancy(buoyancy);
+ }
+
+ public void llSetHoverHeight(double height, int water, double tau)
+ {
+ m_LSL_Functions.llSetHoverHeight(height, water, tau);
+ }
+
+ public void llStopHover()
+ {
+ m_LSL_Functions.llStopHover();
+ }
+
+ public void llMinEventDelay(double delay)
+ {
+ m_LSL_Functions.llMinEventDelay(delay);
+ }
+
+ public void llSoundPreload()
+ {
+ m_LSL_Functions.llSoundPreload();
+ }
+
+ public void llRotLookAt(rotation target, double strength, double damping)
+ {
+ m_LSL_Functions.llRotLookAt(target, strength, damping);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public int llStringLength(string str)
+ {
+ return m_LSL_Functions.llStringLength(str);
+ }
+
+ public void llStartAnimation(string anim)
+ {
+ m_LSL_Functions.llStartAnimation(anim);
+ }
+
+ public void llStopAnimation(string anim)
+ {
+ m_LSL_Functions.llStopAnimation(anim);
+ }
+
+ public void llPointAt()
+ {
+ m_LSL_Functions.llPointAt();
+ }
+
+ public void llStopPointAt()
+ {
+ m_LSL_Functions.llStopPointAt();
+ }
+
+ public void llTargetOmega(vector axis, double spinrate, double gain)
+ {
+ m_LSL_Functions.llTargetOmega(axis, spinrate, gain);
+ }
+
+ public int llGetStartParameter()
+ {
+ return m_LSL_Functions.llGetStartParameter();
+ }
+
+ public void llGodLikeRezObject(string inventory, vector pos)
+ {
+ m_LSL_Functions.llGodLikeRezObject(inventory, pos);
+ }
+
+ public void llRequestPermissions(string agent, int perm)
+ {
+ m_LSL_Functions.llRequestPermissions(agent, perm);
+ }
+
+ public string llGetPermissionsKey()
+ {
+ return m_LSL_Functions.llGetPermissionsKey();
+ }
+
+ public int llGetPermissions()
+ {
+ return m_LSL_Functions.llGetPermissions();
+ }
+
+ public int llGetLinkNumber()
+ {
+ return m_LSL_Functions.llGetLinkNumber();
+ }
+
+ public void llSetLinkColor(int linknumber, vector color, int face)
+ {
+ m_LSL_Functions.llSetLinkColor(linknumber, color, face);
+ }
+
+ public void llCreateLink(string target, int parent)
+ {
+ m_LSL_Functions.llCreateLink(target, parent);
+ }
+
+ public void llBreakLink(int linknum)
+ {
+ m_LSL_Functions.llBreakLink(linknum);
+ }
+
+ public void llBreakAllLinks()
+ {
+ m_LSL_Functions.llBreakAllLinks();
+ }
+
+ public string llGetLinkKey(int linknum)
+ {
+ return m_LSL_Functions.llGetLinkKey(linknum);
+ }
+
+ public void llGetLinkName(int linknum)
+ {
+ m_LSL_Functions.llGetLinkName(linknum);
+ }
+
+ public int llGetInventoryNumber(int type)
+ {
+ return m_LSL_Functions.llGetInventoryNumber(type);
+ }
+
+ public string llGetInventoryName(int type, int number)
+ {
+ return m_LSL_Functions.llGetInventoryName(type, number);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llSetScriptState(string name, int run)
+ {
+ m_LSL_Functions.llSetScriptState(name, run);
+ }
+
+ public double llGetEnergy()
+ {
+ return m_LSL_Functions.llGetEnergy();
+ }
+
+ public void llGiveInventory(string destination, string inventory)
+ {
+ m_LSL_Functions.llGiveInventory(destination, inventory);
+ }
+
+ public void llRemoveInventory(string item)
+ {
+ m_LSL_Functions.llRemoveInventory(item);
+ }
+
+ public void llSetText(string text, vector color, double alpha)
+ {
+ m_LSL_Functions.llSetText(text, color, alpha);
+ }
+
+ public double llWater(vector offset)
+ {
+ return m_LSL_Functions.llWater(offset);
+ }
+
+ public void llPassTouches(int pass)
+ {
+ m_LSL_Functions.llPassTouches(pass);
+ }
+
+ public string llRequestAgentData(string id, int data)
+ {
+ return m_LSL_Functions.llRequestAgentData(id, data);
+ }
+
+ public string llRequestInventoryData(string name)
+ {
+ return m_LSL_Functions.llRequestInventoryData(name);
+ }
+
+ public void llSetDamage(double damage)
+ {
+ m_LSL_Functions.llSetDamage(damage);
+ }
+
+ public void llTeleportAgentHome(string agent)
+ {
+ m_LSL_Functions.llTeleportAgentHome(agent);
+ }
+
+ public void llModifyLand(int action, int brush)
+ {
+ m_LSL_Functions.llModifyLand(action, brush);
+ }
+
+ public void llCollisionSound(string impact_sound, double impact_volume)
+ {
+ m_LSL_Functions.llCollisionSound(impact_sound, impact_volume);
+ }
+
+ public void llCollisionSprite(string impact_sprite)
+ {
+ m_LSL_Functions.llCollisionSprite(impact_sprite);
+ }
+
+ public string llGetAnimation(string id)
+ {
+ return m_LSL_Functions.llGetAnimation(id);
+ }
+
+ public void llResetScript()
+ {
+ m_LSL_Functions.llResetScript();
+ }
+
+ public void llMessageLinked(int linknum, int num, string str, string id)
+ {
+ m_LSL_Functions.llMessageLinked(linknum, num, str, id);
+ }
+
+ public void llPushObject(string target, vector impulse, vector ang_impulse, int local)
+ {
+ m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local);
+ }
+
+ public void llPassCollisions(int pass)
+ {
+ m_LSL_Functions.llPassCollisions(pass);
+ }
+
+ public string llGetScriptName()
+ {
+ return m_LSL_Functions.llGetScriptName();
+ }
+
+ public int llGetNumberOfSides()
+ {
+ return m_LSL_Functions.llGetNumberOfSides();
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public rotation llAxisAngle2Rot(vector axis, double angle)
+ {
+ return m_LSL_Functions.llAxisAngle2Rot(axis, angle);
+ }
+
+ public vector llRot2Axis(rotation rot)
+ {
+ return m_LSL_Functions.llRot2Axis(rot);
+ }
+
+ public void llRot2Angle()
+ {
+ m_LSL_Functions.llRot2Angle();
+ }
+
+ public double llAcos(double val)
+ {
+ return m_LSL_Functions.llAcos(val);
+ }
+
+ public double llAsin(double val)
+ {
+ return m_LSL_Functions.llAsin(val);
+ }
+
+ public double llAngleBetween(rotation a, rotation b)
+ {
+ return m_LSL_Functions.llAngleBetween(a, b);
+ }
+
+ public string llGetInventoryKey(string name)
+ {
+ return m_LSL_Functions.llGetInventoryKey(name);
+ }
+
+ public void llAllowInventoryDrop(int add)
+ {
+ m_LSL_Functions.llAllowInventoryDrop(add);
+ }
+
+ public vector llGetSunDirection()
+ {
+ return m_LSL_Functions.llGetSunDirection();
+ }
+
+ public vector llGetTextureOffset(int face)
+ {
+ return m_LSL_Functions.llGetTextureOffset(face);
+ }
+
+ public vector llGetTextureScale(int side)
+ {
+ return m_LSL_Functions.llGetTextureScale(side);
+ }
+
+ public double llGetTextureRot(int side)
+ {
+ return m_LSL_Functions.llGetTextureRot(side);
+ }
+
+ public int llSubStringIndex(string source, string pattern)
+ {
+ return m_LSL_Functions.llSubStringIndex(source, pattern);
+ }
+
+ public string llGetOwnerKey(string id)
+ {
+ return m_LSL_Functions.llGetOwnerKey(id);
+ }
+
+ public vector llGetCenterOfMass()
+ {
+ return m_LSL_Functions.llGetCenterOfMass();
+ }
+
+ public List llListSort(List src, int stride, int ascending)
+ {
+ return m_LSL_Functions.llListSort(src, stride, ascending);
+ }
+
+ public int llGetListLength(List src)
+ {
+ return m_LSL_Functions.llGetListLength(src);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public int llList2Integer(List src, int index)
+ {
+ return m_LSL_Functions.llList2Integer(src, index);
+ }
+
+ public double llList2double(List src, int index)
+ {
+ return m_LSL_Functions.llList2double(src, index);
+ }
+
+ public string llList2String(List src, int index)
+ {
+ return m_LSL_Functions.llList2String(src, index);
+ }
+
+ public string llList2Key(List src, int index)
+ {
+ return m_LSL_Functions.llList2Key(src, index);
+ }
+
+ public vector llList2Vector(List src, int index)
+ {
+ return m_LSL_Functions.llList2Vector(src, index);
+ }
+
+ public rotation llList2Rot(List src, int index)
+ {
+ return m_LSL_Functions.llList2Rot(src, index);
+ }
+
+ public List llList2List(List src, int start, int end)
+ {
+ return m_LSL_Functions.llList2List(src, start, end);
+ }
+
+ public List llDeleteSubList(List src, int start, int end)
+ {
+ return m_LSL_Functions.llDeleteSubList(src, start, end);
+ }
+
+ public int llGetListEntryType(List src, int index)
+ {
+ return m_LSL_Functions.llGetListEntryType(src, index);
+ }
+
+ public string llList2CSV(List src)
+ {
+ return m_LSL_Functions.llList2CSV(src);
+ }
+
+ public List llCSV2List(string src)
+ {
+ return m_LSL_Functions.llCSV2List(src);
+ }
+
+ public List llListRandomize(List src, int stride)
+ {
+ return m_LSL_Functions.llListRandomize(src, stride);
+ }
+
+ public List llList2ListStrided(List src, int start, int end, int stride)
+ {
+ return m_LSL_Functions.llList2ListStrided(src, start, end, stride);
+ }
+
+ public vector llGetRegionCorner()
+ {
+ return m_LSL_Functions.llGetRegionCorner();
+ }
+
+ public List llListInsertList(List dest, List src, int start)
+ {
+ return m_LSL_Functions.llListInsertList(dest, src, start);
+ }
+
+ public int llListFindList(List src, List test)
+ {
+ return m_LSL_Functions.llListFindList(src, test);
+ }
+
+ public string llGetObjectName()
+ {
+ return m_LSL_Functions.llGetObjectName();
+ }
+
+ public void llSetObjectName(string name)
+ {
+ m_LSL_Functions.llSetObjectName(name);
+ }
+
+ public string llGetDate()
+ {
+ return m_LSL_Functions.llGetDate();
+ }
+
+ public int llEdgeOfWorld(vector pos, vector dir)
+ {
+ return m_LSL_Functions.llEdgeOfWorld(pos, dir);
+ }
+
+ public int llGetAgentInfo(string id)
+ {
+ return m_LSL_Functions.llGetAgentInfo(id);
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llAdjustSoundVolume(double volume)
+ {
+ m_LSL_Functions.llAdjustSoundVolume(volume);
+ }
+
+ public void llSetSoundQueueing(int queue)
+ {
+ m_LSL_Functions.llSetSoundQueueing(queue);
+ }
+
+ public void llSetSoundRadius(double radius)
+ {
+ m_LSL_Functions.llSetSoundRadius(radius);
+ }
+
+ public string llKey2Name(string id)
+ {
+ return m_LSL_Functions.llKey2Name(id);
+ }
+
+ public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate)
+ {
+ m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate);
+ }
+
+ public void llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west)
+ {
+ m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west);
+ }
+
+ public void llEjectFromLand(string pest)
+ {
+ m_LSL_Functions.llEjectFromLand(pest);
+ }
+
+ public void llParseString2List()
+ {
+ m_LSL_Functions.llParseString2List();
+ }
+
+ public int llOverMyLand(string id)
+ {
+ return m_LSL_Functions.llOverMyLand(id);
+ }
+
+ public string llGetLandOwnerAt(vector pos)
+ {
+ return m_LSL_Functions.llGetLandOwnerAt(pos);
+ }
+
+ public string llGetNotecardLine(string name, int line)
+ {
+ return m_LSL_Functions.llGetNotecardLine(name, line);
+ }
+
+ public vector llGetAgentSize(string id)
+ {
+ return m_LSL_Functions.llGetAgentSize(id);
+ }
+
+ public int llSameGroup(string agent)
+ {
+ return m_LSL_Functions.llSameGroup(agent);
+ }
+
+ public void llUnSit(string id)
+ {
+ m_LSL_Functions.llUnSit(id);
+ }
+
+ public vector llGroundSlope(vector offset)
+ {
+ return m_LSL_Functions.llGroundSlope(offset);
+ }
+
+ public vector llGroundNormal(vector offset)
+ {
+ return m_LSL_Functions.llGroundNormal(offset);
+ }
+
+ public vector llGroundContour(vector offset)
+ {
+ return m_LSL_Functions.llGroundContour(offset);
+ }
+
+ public int llGetAttached()
+ {
+ return m_LSL_Functions.llGetAttached();
+ }
+
+ public int llGetFreeMemory()
+ {
+ return m_LSL_Functions.llGetFreeMemory();
+ }
+
+ public string llGetRegionName()
+ {
+ return m_LSL_Functions.llGetRegionName();
+ }
+
+ public double llGetRegionTimeDilation()
+ {
+ return m_LSL_Functions.llGetRegionTimeDilation();
+ }
+
+ public double llGetRegionFPS()
+ {
+ return m_LSL_Functions.llGetRegionFPS();
+ }
+
+ //
+ // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
+ //
+ public void llParticleSystem(List