diff options
-rw-r--r-- | OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs (renamed from OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands_Interface.cs) | 2 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/AppDomainManager.cs | 7 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs | 59 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_BaseClass.cs | 1 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_OPCODE_IL_processor.cs | 1 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs | 472 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | 6 | ||||
-rw-r--r-- | prebuild.xml | 26 |
8 files changed, 560 insertions, 14 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands_Interface.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs index b7fd2d2..58ade0b 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands_Interface.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands_Interface.cs | |||
@@ -30,7 +30,7 @@ using System; | |||
30 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
31 | using System.Text; | 31 | using System.Text; |
32 | 32 | ||
33 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | 33 | namespace OpenSim.Region.ScriptEngine.Common |
34 | { | 34 | { |
35 | public interface LSL_BuiltIn_Commands_Interface | 35 | public interface LSL_BuiltIn_Commands_Interface |
36 | { | 36 | { |
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/AppDomainManager.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/AppDomainManager.cs index 1e20547..2e1e3d1 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/AppDomainManager.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/AppDomainManager.cs | |||
@@ -85,7 +85,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
85 | //Console.WriteLine("Loading: " + a.GetName(true)); | 85 | //Console.WriteLine("Loading: " + a.GetName(true)); |
86 | try | 86 | try |
87 | { | 87 | { |
88 | AD.Load(a.GetName(true)); | 88 | //AD.Load(a.GetName(true)); |
89 | 89 | ||
90 | } | 90 | } |
91 | catch (Exception e) | 91 | catch (Exception e) |
@@ -106,10 +106,5 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
106 | 106 | ||
107 | } | 107 | } |
108 | 108 | ||
109 | public class NOOP : MarshalByRefType | ||
110 | { | ||
111 | public NOOP() { | ||
112 | } | ||
113 | } | ||
114 | } | 109 | } |
115 | } | 110 | } |
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs index cc62ab5..bdae95d 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL_BaseClass.cs | |||
@@ -2,7 +2,7 @@ using System; | |||
2 | using System.Collections.Generic; | 2 | using System.Collections.Generic; |
3 | using System.Text; | 3 | using System.Text; |
4 | using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler; | 4 | using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler; |
5 | using OpenSim.Framework.Console; | 5 | using OpenSim.Region.ScriptEngine.Common; |
6 | using System.Threading; | 6 | using System.Threading; |
7 | 7 | ||
8 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | 8 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL |
@@ -25,7 +25,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
25 | { | 25 | { |
26 | m_LSL_Functions = LSL_Functions; | 26 | m_LSL_Functions = LSL_Functions; |
27 | 27 | ||
28 | MainLog.Instance.Notice("ScriptEngine", "LSL_BaseClass.Start() called."); | 28 | //MainLog.Instance.Notice("ScriptEngine", "LSL_BaseClass.Start() called."); |
29 | 29 | ||
30 | // Get this AppDomain's settings and display some of them. | 30 | // Get this AppDomain's settings and display some of them. |
31 | AppDomainSetup ads = AppDomain.CurrentDomain.SetupInformation; | 31 | AppDomainSetup ads = AppDomain.CurrentDomain.SetupInformation; |
@@ -46,6 +46,13 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
46 | return; | 46 | return; |
47 | } | 47 | } |
48 | 48 | ||
49 | |||
50 | |||
51 | // | ||
52 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
53 | // | ||
54 | // They are only forwarders to LSL_BuiltIn_Commands.cs | ||
55 | // | ||
49 | public double llSin(double f) { return m_LSL_Functions.llSin(f); } | 56 | public double llSin(double f) { return m_LSL_Functions.llSin(f); } |
50 | public double llCos(double f) { return m_LSL_Functions.llCos(f); } | 57 | public double llCos(double f) { return m_LSL_Functions.llCos(f); } |
51 | public double llTan(double f) { return m_LSL_Functions.llTan(f); } | 58 | public double llTan(double f) { return m_LSL_Functions.llTan(f); } |
@@ -70,6 +77,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
70 | public Axiom.Math.Quaternion llRotBetween(Axiom.Math.Vector3 start, Axiom.Math.Vector3 end) { return m_LSL_Functions.llRotBetween(start, end); } | 77 | public Axiom.Math.Quaternion llRotBetween(Axiom.Math.Vector3 start, Axiom.Math.Vector3 end) { return m_LSL_Functions.llRotBetween(start, end); } |
71 | public void llWhisper(int channelID, string text) { m_LSL_Functions.llWhisper(channelID, text); } | 78 | public void llWhisper(int channelID, string text) { m_LSL_Functions.llWhisper(channelID, text); } |
72 | public void llSay(int channelID, string text) { m_LSL_Functions.llSay(channelID, text); } | 79 | public void llSay(int channelID, string text) { m_LSL_Functions.llSay(channelID, text); } |
80 | // | ||
81 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
82 | // | ||
73 | public void llShout(int channelID, string text) { m_LSL_Functions.llShout(channelID, text); } | 83 | public void llShout(int channelID, string text) { m_LSL_Functions.llShout(channelID, text); } |
74 | public int llListen(int channelID, string name, string ID, string msg) { return m_LSL_Functions.llListen(channelID, name, ID, msg); } | 84 | public int llListen(int channelID, string name, string ID, string msg) { return m_LSL_Functions.llListen(channelID, name, ID, msg); } |
75 | public void llListenControl(int number, int active) { m_LSL_Functions.llListenControl(number, active); } | 85 | public void llListenControl(int number, int active) { m_LSL_Functions.llListenControl(number, active); } |
@@ -87,6 +97,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
87 | public Axiom.Math.Quaternion llDetectedRot(int number) { return m_LSL_Functions.llDetectedRot(number); } | 97 | public Axiom.Math.Quaternion llDetectedRot(int number) { return m_LSL_Functions.llDetectedRot(number); } |
88 | public int llDetectedGroup(int number) { return m_LSL_Functions.llDetectedGroup(number); } | 98 | public int llDetectedGroup(int number) { return m_LSL_Functions.llDetectedGroup(number); } |
89 | public int llDetectedLinkNumber(int number) { return m_LSL_Functions.llDetectedLinkNumber(number); } | 99 | public int llDetectedLinkNumber(int number) { return m_LSL_Functions.llDetectedLinkNumber(number); } |
100 | // | ||
101 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
102 | // | ||
90 | public void llDie() { m_LSL_Functions.llDie(); } | 103 | public void llDie() { m_LSL_Functions.llDie(); } |
91 | public double llGround(Axiom.Math.Vector3 offset) { return m_LSL_Functions.llGround(offset); } | 104 | public double llGround(Axiom.Math.Vector3 offset) { return m_LSL_Functions.llGround(offset); } |
92 | public double llCloud(Axiom.Math.Vector3 offset) { return m_LSL_Functions.llCloud(offset); } | 105 | public double llCloud(Axiom.Math.Vector3 offset) { return m_LSL_Functions.llCloud(offset); } |
@@ -104,6 +117,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
104 | public void llOffsetTexture(double u, double v, int face) { m_LSL_Functions.llOffsetTexture(u, v, face); } | 117 | public void llOffsetTexture(double u, double v, int face) { m_LSL_Functions.llOffsetTexture(u, v, face); } |
105 | public void llRotateTexture(double rotation, int face) { m_LSL_Functions.llRotateTexture(rotation, face); } | 118 | public void llRotateTexture(double rotation, int face) { m_LSL_Functions.llRotateTexture(rotation, face); } |
106 | public string llGetTexture(int face) { return m_LSL_Functions.llGetTexture(face); } | 119 | public string llGetTexture(int face) { return m_LSL_Functions.llGetTexture(face); } |
120 | // | ||
121 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
122 | // | ||
107 | public void llSetPos(Axiom.Math.Vector3 pos) { m_LSL_Functions.llSetPos(pos); } | 123 | public void llSetPos(Axiom.Math.Vector3 pos) { m_LSL_Functions.llSetPos(pos); } |
108 | public Axiom.Math.Vector3 llGetPos() { return m_LSL_Functions.llGetPos(); } | 124 | public Axiom.Math.Vector3 llGetPos() { return m_LSL_Functions.llGetPos(); } |
109 | public Axiom.Math.Vector3 llGetLocalPos() { return m_LSL_Functions.llGetLocalPos(); } | 125 | public Axiom.Math.Vector3 llGetLocalPos() { return m_LSL_Functions.llGetLocalPos(); } |
@@ -119,6 +135,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
119 | public void llMoveToTarget(Axiom.Math.Vector3 target, double tau) { m_LSL_Functions.llMoveToTarget(target, tau); } | 135 | public void llMoveToTarget(Axiom.Math.Vector3 target, double tau) { m_LSL_Functions.llMoveToTarget(target, tau); } |
120 | public void llStopMoveToTarget() { m_LSL_Functions.llStopMoveToTarget(); } | 136 | public void llStopMoveToTarget() { m_LSL_Functions.llStopMoveToTarget(); } |
121 | public void llApplyImpulse(Axiom.Math.Vector3 force, int local) { m_LSL_Functions.llApplyImpulse(force, local); } | 137 | public void llApplyImpulse(Axiom.Math.Vector3 force, int local) { m_LSL_Functions.llApplyImpulse(force, local); } |
138 | // | ||
139 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
140 | // | ||
122 | public void llApplyRotationalImpulse(Axiom.Math.Vector3 force, int local) { m_LSL_Functions.llApplyRotationalImpulse(force, local); } | 141 | public void llApplyRotationalImpulse(Axiom.Math.Vector3 force, int local) { m_LSL_Functions.llApplyRotationalImpulse(force, local); } |
123 | public void llSetTorque(Axiom.Math.Vector3 torque, int local) { m_LSL_Functions.llSetTorque(torque, local); } | 142 | public void llSetTorque(Axiom.Math.Vector3 torque, int local) { m_LSL_Functions.llSetTorque(torque, local); } |
124 | public Axiom.Math.Vector3 llGetTorque() { return m_LSL_Functions.llGetTorque(); } | 143 | public Axiom.Math.Vector3 llGetTorque() { return m_LSL_Functions.llGetTorque(); } |
@@ -137,6 +156,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
137 | public void llLoopSoundMaster(string sound, double volume) { m_LSL_Functions.llLoopSoundMaster(sound, volume); } | 156 | public void llLoopSoundMaster(string sound, double volume) { m_LSL_Functions.llLoopSoundMaster(sound, volume); } |
138 | public void llLoopSoundSlave(string sound, double volume) { m_LSL_Functions.llLoopSoundSlave(sound, volume); } | 157 | public void llLoopSoundSlave(string sound, double volume) { m_LSL_Functions.llLoopSoundSlave(sound, volume); } |
139 | public void llPlaySoundSlave(string sound, double volume) { m_LSL_Functions.llPlaySoundSlave(sound, volume); } | 158 | public void llPlaySoundSlave(string sound, double volume) { m_LSL_Functions.llPlaySoundSlave(sound, volume); } |
159 | // | ||
160 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
161 | // | ||
140 | public void llTriggerSound(string sound, double volume) { m_LSL_Functions.llTriggerSound(sound, volume); } | 162 | public void llTriggerSound(string sound, double volume) { m_LSL_Functions.llTriggerSound(sound, volume); } |
141 | public void llStopSound() { m_LSL_Functions.llStopSound(); } | 163 | public void llStopSound() { m_LSL_Functions.llStopSound(); } |
142 | public void llPreloadSound(string sound) { m_LSL_Functions.llPreloadSound(sound); } | 164 | public void llPreloadSound(string sound) { m_LSL_Functions.llPreloadSound(sound); } |
@@ -155,6 +177,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
155 | public void llStopLookAt() { m_LSL_Functions.llStopLookAt(); } | 177 | public void llStopLookAt() { m_LSL_Functions.llStopLookAt(); } |
156 | public void llSetTimerEvent(double sec) { m_LSL_Functions.llSetTimerEvent(sec); } | 178 | public void llSetTimerEvent(double sec) { m_LSL_Functions.llSetTimerEvent(sec); } |
157 | public void llSleep(double sec) { m_LSL_Functions.llSleep(sec); } | 179 | public void llSleep(double sec) { m_LSL_Functions.llSleep(sec); } |
180 | // | ||
181 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
182 | // | ||
158 | public double llGetMass() { return m_LSL_Functions.llGetMass(); } | 183 | public double llGetMass() { return m_LSL_Functions.llGetMass(); } |
159 | public void llCollisionFilter(string name, string id, int accept) { m_LSL_Functions.llCollisionFilter(name, id, accept); } | 184 | public void llCollisionFilter(string name, string id, int accept) { m_LSL_Functions.llCollisionFilter(name, id, accept); } |
160 | public void llTakeControls(int controls, int accept, int pass_on) { m_LSL_Functions.llTakeControls(controls, accept, pass_on); } | 185 | public void llTakeControls(int controls, int accept, int pass_on) { m_LSL_Functions.llTakeControls(controls, accept, pass_on); } |
@@ -174,6 +199,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
174 | public void llMinEventDelay(double delay) { m_LSL_Functions.llMinEventDelay(delay); } | 199 | public void llMinEventDelay(double delay) { m_LSL_Functions.llMinEventDelay(delay); } |
175 | public void llSoundPreload() { m_LSL_Functions.llSoundPreload(); } | 200 | public void llSoundPreload() { m_LSL_Functions.llSoundPreload(); } |
176 | public void llRotLookAt(Axiom.Math.Quaternion target, double strength, double damping) { m_LSL_Functions.llRotLookAt(target, strength, damping); } | 201 | public void llRotLookAt(Axiom.Math.Quaternion target, double strength, double damping) { m_LSL_Functions.llRotLookAt(target, strength, damping); } |
202 | // | ||
203 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
204 | // | ||
177 | public int llStringLength(string str) { return m_LSL_Functions.llStringLength(str); } | 205 | public int llStringLength(string str) { return m_LSL_Functions.llStringLength(str); } |
178 | public void llStartAnimation(string anim) { m_LSL_Functions.llStartAnimation(anim); } | 206 | public void llStartAnimation(string anim) { m_LSL_Functions.llStartAnimation(anim); } |
179 | public void llStopAnimation(string anim) { m_LSL_Functions.llStopAnimation(anim); } | 207 | public void llStopAnimation(string anim) { m_LSL_Functions.llStopAnimation(anim); } |
@@ -194,6 +222,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
194 | public void llGetLinkName(int linknum) { m_LSL_Functions.llGetLinkName(linknum); } | 222 | public void llGetLinkName(int linknum) { m_LSL_Functions.llGetLinkName(linknum); } |
195 | public int llGetInventoryNumber(int type) { return m_LSL_Functions.llGetInventoryNumber(type); } | 223 | public int llGetInventoryNumber(int type) { return m_LSL_Functions.llGetInventoryNumber(type); } |
196 | public string llGetInventoryName(int type, int number) { return m_LSL_Functions.llGetInventoryName(type, number); } | 224 | public string llGetInventoryName(int type, int number) { return m_LSL_Functions.llGetInventoryName(type, number); } |
225 | // | ||
226 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
227 | // | ||
197 | public void llSetScriptState(string name, int run) { m_LSL_Functions.llSetScriptState(name, run); } | 228 | public void llSetScriptState(string name, int run) { m_LSL_Functions.llSetScriptState(name, run); } |
198 | public double llGetEnergy() { return m_LSL_Functions.llGetEnergy(); } | 229 | public double llGetEnergy() { return m_LSL_Functions.llGetEnergy(); } |
199 | public void llGiveInventory(string destination, string inventory) { m_LSL_Functions.llGiveInventory(destination, inventory); } | 230 | public void llGiveInventory(string destination, string inventory) { m_LSL_Functions.llGiveInventory(destination, inventory); } |
@@ -215,6 +246,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
215 | public void llPassCollisions(int pass) { m_LSL_Functions.llPassCollisions(pass); } | 246 | public void llPassCollisions(int pass) { m_LSL_Functions.llPassCollisions(pass); } |
216 | public string llGetScriptName() { return m_LSL_Functions.llGetScriptName(); } | 247 | public string llGetScriptName() { return m_LSL_Functions.llGetScriptName(); } |
217 | public int llGetNumberOfSides() { return m_LSL_Functions.llGetNumberOfSides(); } | 248 | public int llGetNumberOfSides() { return m_LSL_Functions.llGetNumberOfSides(); } |
249 | // | ||
250 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
251 | // | ||
218 | public Axiom.Math.Quaternion llAxisAngle2Rot(Axiom.Math.Vector3 axis, double angle) { return m_LSL_Functions.llAxisAngle2Rot(axis, angle); } | 252 | public Axiom.Math.Quaternion llAxisAngle2Rot(Axiom.Math.Vector3 axis, double angle) { return m_LSL_Functions.llAxisAngle2Rot(axis, angle); } |
219 | public Axiom.Math.Vector3 llRot2Axis(Axiom.Math.Quaternion rot) { return m_LSL_Functions.llRot2Axis(rot); } | 253 | public Axiom.Math.Vector3 llRot2Axis(Axiom.Math.Quaternion rot) { return m_LSL_Functions.llRot2Axis(rot); } |
220 | public void llRot2Angle() { m_LSL_Functions.llRot2Angle(); } | 254 | public void llRot2Angle() { m_LSL_Functions.llRot2Angle(); } |
@@ -232,6 +266,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
232 | public Axiom.Math.Vector3 llGetCenterOfMass() { return m_LSL_Functions.llGetCenterOfMass(); } | 266 | public Axiom.Math.Vector3 llGetCenterOfMass() { return m_LSL_Functions.llGetCenterOfMass(); } |
233 | public List<string> llListSort(List<string> src, int stride, int ascending) { return m_LSL_Functions.llListSort(src, stride, ascending); } | 267 | public List<string> llListSort(List<string> src, int stride, int ascending) { return m_LSL_Functions.llListSort(src, stride, ascending); } |
234 | public int llGetListLength(List<string> src) { return m_LSL_Functions.llGetListLength(src); } | 268 | public int llGetListLength(List<string> src) { return m_LSL_Functions.llGetListLength(src); } |
269 | // | ||
270 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
271 | // | ||
235 | public int llList2Integer(List<string> src, int index) { return m_LSL_Functions.llList2Integer(src, index); } | 272 | public int llList2Integer(List<string> src, int index) { return m_LSL_Functions.llList2Integer(src, index); } |
236 | public double llList2double(List<string> src, int index) { return m_LSL_Functions.llList2double(src, index); } | 273 | public double llList2double(List<string> src, int index) { return m_LSL_Functions.llList2double(src, index); } |
237 | public string llList2String(List<string> src, int index) { return m_LSL_Functions.llList2String(src, index); } | 274 | public string llList2String(List<string> src, int index) { return m_LSL_Functions.llList2String(src, index); } |
@@ -253,6 +290,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
253 | public string llGetDate() { return m_LSL_Functions.llGetDate(); } | 290 | public string llGetDate() { return m_LSL_Functions.llGetDate(); } |
254 | public int llEdgeOfWorld(Axiom.Math.Vector3 pos, Axiom.Math.Vector3 dir) { return m_LSL_Functions.llEdgeOfWorld(pos, dir); } | 291 | public int llEdgeOfWorld(Axiom.Math.Vector3 pos, Axiom.Math.Vector3 dir) { return m_LSL_Functions.llEdgeOfWorld(pos, dir); } |
255 | public int llGetAgentInfo(string id) { return m_LSL_Functions.llGetAgentInfo(id); } | 292 | public int llGetAgentInfo(string id) { return m_LSL_Functions.llGetAgentInfo(id); } |
293 | // | ||
294 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
295 | // | ||
256 | public void llAdjustSoundVolume(double volume) { m_LSL_Functions.llAdjustSoundVolume(volume); } | 296 | public void llAdjustSoundVolume(double volume) { m_LSL_Functions.llAdjustSoundVolume(volume); } |
257 | public void llSetSoundQueueing(int queue) { m_LSL_Functions.llSetSoundQueueing(queue); } | 297 | public void llSetSoundQueueing(int queue) { m_LSL_Functions.llSetSoundQueueing(queue); } |
258 | public void llSetSoundRadius(double radius) { m_LSL_Functions.llSetSoundRadius(radius); } | 298 | public void llSetSoundRadius(double radius) { m_LSL_Functions.llSetSoundRadius(radius); } |
@@ -275,6 +315,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
275 | public string llGetRegionName() { return m_LSL_Functions.llGetRegionName(); } | 315 | public string llGetRegionName() { return m_LSL_Functions.llGetRegionName(); } |
276 | public double llGetRegionTimeDilation() { return m_LSL_Functions.llGetRegionTimeDilation(); } | 316 | public double llGetRegionTimeDilation() { return m_LSL_Functions.llGetRegionTimeDilation(); } |
277 | public double llGetRegionFPS() { return m_LSL_Functions.llGetRegionFPS(); } | 317 | public double llGetRegionFPS() { return m_LSL_Functions.llGetRegionFPS(); } |
318 | // | ||
319 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
320 | // | ||
278 | public void llParticleSystem(List<Object> rules) { m_LSL_Functions.llParticleSystem(rules); } | 321 | public void llParticleSystem(List<Object> rules) { m_LSL_Functions.llParticleSystem(rules); } |
279 | public void llGroundRepel(double height, int water, double tau) { m_LSL_Functions.llGroundRepel(height, water, tau); } | 322 | public void llGroundRepel(double height, int water, double tau) { m_LSL_Functions.llGroundRepel(height, water, tau); } |
280 | public void llGiveInventoryList() { m_LSL_Functions.llGiveInventoryList(); } | 323 | public void llGiveInventoryList() { m_LSL_Functions.llGiveInventoryList(); } |
@@ -300,6 +343,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
300 | public void llRemoteLoadScript() { m_LSL_Functions.llRemoteLoadScript(); } | 343 | public void llRemoteLoadScript() { m_LSL_Functions.llRemoteLoadScript(); } |
301 | public void llSetRemoteScriptAccessPin(int pin) { m_LSL_Functions.llSetRemoteScriptAccessPin(pin); } | 344 | public void llSetRemoteScriptAccessPin(int pin) { m_LSL_Functions.llSetRemoteScriptAccessPin(pin); } |
302 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) { m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); } | 345 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) { m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param); } |
346 | // | ||
347 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
348 | // | ||
303 | public void llOpenRemoteDataChannel() { m_LSL_Functions.llOpenRemoteDataChannel(); } | 349 | public void llOpenRemoteDataChannel() { m_LSL_Functions.llOpenRemoteDataChannel(); } |
304 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) { return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); } | 350 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) { return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata); } |
305 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) { m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); } | 351 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) { m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata); } |
@@ -326,6 +372,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
326 | public List<string> llGetBoundingBox(string obj) { return m_LSL_Functions.llGetBoundingBox(obj); } | 372 | public List<string> llGetBoundingBox(string obj) { return m_LSL_Functions.llGetBoundingBox(obj); } |
327 | public Axiom.Math.Vector3 llGetGeometricCenter() { return m_LSL_Functions.llGetGeometricCenter(); } | 373 | public Axiom.Math.Vector3 llGetGeometricCenter() { return m_LSL_Functions.llGetGeometricCenter(); } |
328 | public void llGetPrimitiveParams() { m_LSL_Functions.llGetPrimitiveParams(); } | 374 | public void llGetPrimitiveParams() { m_LSL_Functions.llGetPrimitiveParams(); } |
375 | // | ||
376 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
377 | // | ||
329 | public string llIntegerToBase64(int number) { return m_LSL_Functions.llIntegerToBase64(number); } | 378 | public string llIntegerToBase64(int number) { return m_LSL_Functions.llIntegerToBase64(number); } |
330 | public int llBase64ToInteger(string str) { return m_LSL_Functions.llBase64ToInteger(str); } | 379 | public int llBase64ToInteger(string str) { return m_LSL_Functions.llBase64ToInteger(str); } |
331 | public double llGetGMTclock() { return m_LSL_Functions.llGetGMTclock(); } | 380 | public double llGetGMTclock() { return m_LSL_Functions.llGetGMTclock(); } |
@@ -347,6 +396,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
347 | public void llParcelMediaCommandList(List<string> commandList) { m_LSL_Functions.llParcelMediaCommandList(commandList); } | 396 | public void llParcelMediaCommandList(List<string> commandList) { m_LSL_Functions.llParcelMediaCommandList(commandList); } |
348 | public void llParcelMediaQuery() { m_LSL_Functions.llParcelMediaQuery(); } | 397 | public void llParcelMediaQuery() { m_LSL_Functions.llParcelMediaQuery(); } |
349 | public int llModPow(int a, int b, int c) { return m_LSL_Functions.llModPow(a, b, c); } | 398 | public int llModPow(int a, int b, int c) { return m_LSL_Functions.llModPow(a, b, c); } |
399 | // | ||
400 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
401 | // | ||
350 | public int llGetInventoryType(string name) { return m_LSL_Functions.llGetInventoryType(name); } | 402 | public int llGetInventoryType(string name) { return m_LSL_Functions.llGetInventoryType(name); } |
351 | public void llSetPayPrice(int price, List<string> quick_pay_buttons) { m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); } | 403 | public void llSetPayPrice(int price, List<string> quick_pay_buttons) { m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons); } |
352 | public Axiom.Math.Vector3 llGetCameraPos() { return m_LSL_Functions.llGetCameraPos(); } | 404 | public Axiom.Math.Vector3 llGetCameraPos() { return m_LSL_Functions.llGetCameraPos(); } |
@@ -372,6 +424,9 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL | |||
372 | public int llGetParcelPrimCount(Axiom.Math.Vector3 pos, int category, int sim_wide) { return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); } | 424 | public int llGetParcelPrimCount(Axiom.Math.Vector3 pos, int category, int sim_wide) { return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide); } |
373 | public List<string> llGetParcelPrimOwners(Axiom.Math.Vector3 pos) { return m_LSL_Functions.llGetParcelPrimOwners(pos); } | 425 | public List<string> llGetParcelPrimOwners(Axiom.Math.Vector3 pos) { return m_LSL_Functions.llGetParcelPrimOwners(pos); } |
374 | public int llGetObjectPrimCount(string object_id) { return m_LSL_Functions.llGetObjectPrimCount(object_id); } | 426 | public int llGetObjectPrimCount(string object_id) { return m_LSL_Functions.llGetObjectPrimCount(object_id); } |
427 | // | ||
428 | // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs | ||
429 | // | ||
375 | public int llGetParcelMaxPrims(Axiom.Math.Vector3 pos, int sim_wide) { return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); } | 430 | public int llGetParcelMaxPrims(Axiom.Math.Vector3 pos, int sim_wide) { return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide); } |
376 | public List<string> llGetParcelDetails(Axiom.Math.Vector3 pos, List<string> param) { return m_LSL_Functions.llGetParcelDetails(pos, param); } | 431 | public List<string> llGetParcelDetails(Axiom.Math.Vector3 pos, List<string> param) { return m_LSL_Functions.llGetParcelDetails(pos, param); } |
377 | 432 | ||
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_BaseClass.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_BaseClass.cs index 0fbb2cf..374d37d 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_BaseClass.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_BaseClass.cs | |||
@@ -3,6 +3,7 @@ using System.Collections.Generic; | |||
3 | using System.Text; | 3 | using System.Text; |
4 | using System.IO; | 4 | using System.IO; |
5 | using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler; | 5 | using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler; |
6 | using OpenSim.Region.ScriptEngine.Common; | ||
6 | 7 | ||
7 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO | 8 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO |
8 | { | 9 | { |
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_OPCODE_IL_processor.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_OPCODE_IL_processor.cs index e472f4a..18a2b55 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_OPCODE_IL_processor.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSO/LSL_OPCODE_IL_processor.cs | |||
@@ -31,6 +31,7 @@ using System.Collections.Generic; | |||
31 | using System.Text; | 31 | using System.Text; |
32 | using System.Reflection; | 32 | using System.Reflection; |
33 | using System.Reflection.Emit; | 33 | using System.Reflection.Emit; |
34 | using OpenSim.Region.ScriptEngine.Common; | ||
34 | 35 | ||
35 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO | 36 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSO |
36 | { | 37 | { |
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs new file mode 100644 index 0000000..8c2e799 --- /dev/null +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs | |||
@@ -0,0 +1,472 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using libsecondlife; | ||
5 | using OpenSim.Region.Environment.Scenes; | ||
6 | using OpenSim.Region.Environment.Scenes.Scripting; | ||
7 | using OpenSim.Region.ScriptEngine.DotNetEngine.Compiler; | ||
8 | using OpenSim.Region.ScriptEngine.Common; | ||
9 | using OpenSim.Framework.Console; | ||
10 | |||
11 | namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler | ||
12 | { | ||
13 | |||
14 | /// <summary> | ||
15 | /// Contains all LSL ll-functions. This class will be in Default AppDomain. | ||
16 | /// </summary> | ||
17 | [Serializable] | ||
18 | public class LSL_BuiltIn_Commands: LSL_BuiltIn_Commands_Interface | ||
19 | { | ||
20 | private System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding(); | ||
21 | private ScriptManager m_manager; | ||
22 | private IScriptHost m_host; | ||
23 | |||
24 | public LSL_BuiltIn_Commands(ScriptManager manager, IScriptHost host) | ||
25 | { | ||
26 | m_manager = manager; | ||
27 | m_host = host; | ||
28 | |||
29 | MainLog.Instance.Notice("ScriptEngine", "LSL_BaseClass.Start() called. Hosted by [" + m_host.Name + ":" + m_host.UUID + "@" + m_host.AbsolutePosition + "]"); | ||
30 | } | ||
31 | |||
32 | |||
33 | public string State = "default"; | ||
34 | |||
35 | public Scene World | ||
36 | { | ||
37 | get { return m_manager.World; } | ||
38 | } | ||
39 | |||
40 | //These are the implementations of the various ll-functions used by the LSL scripts. | ||
41 | //starting out, we use the System.Math library for trig functions. - CFK 8-14-07 | ||
42 | public double llSin(double f) { return (double)Math.Sin(f); } | ||
43 | public double llCos(double f) { return (double)Math.Cos(f); } | ||
44 | public double llTan(double f) { return (double)Math.Tan(f); } | ||
45 | public double llAtan2(double x, double y) { return (double)Math.Atan2(y, x); } | ||
46 | public double llSqrt(double f) { return (double)Math.Sqrt(f); } | ||
47 | public double llPow(double fbase, double fexponent) { return (double)Math.Pow(fbase, fexponent); } | ||
48 | public int llAbs(int i) { return (int)Math.Abs(i); } | ||
49 | public double llFabs(double f) { return (double)Math.Abs(f); } | ||
50 | |||
51 | public double llFrand(double mag) | ||
52 | { | ||
53 | lock (OpenSim.Framework.Utilities.Util.RandomClass) | ||
54 | { | ||
55 | return OpenSim.Framework.Utilities.Util.RandomClass.Next((int)mag); | ||
56 | } | ||
57 | } | ||
58 | public int llFloor(double f) { return (int)Math.Floor(f); } | ||
59 | public int llCeil(double f) { return (int)Math.Ceiling(f); } | ||
60 | public int llRound(double f) { return (int)Math.Round(f, 1); } | ||
61 | public double llVecMag(Axiom.Math.Vector3 v) { return 0; } | ||
62 | public Axiom.Math.Vector3 llVecNorm(Axiom.Math.Vector3 v) { return new Axiom.Math.Vector3(); } | ||
63 | public double llVecDist(Axiom.Math.Vector3 a, Axiom.Math.Vector3 b) { return 0; } | ||
64 | public Axiom.Math.Vector3 llRot2Euler(Axiom.Math.Quaternion r) { return new Axiom.Math.Vector3(); } | ||
65 | public Axiom.Math.Quaternion llEuler2Rot(Axiom.Math.Vector3 v) { return new Axiom.Math.Quaternion(); } | ||
66 | public Axiom.Math.Quaternion llAxes2Rot(Axiom.Math.Vector3 fwd, Axiom.Math.Vector3 left, Axiom.Math.Vector3 up) { return new Axiom.Math.Quaternion(); } | ||
67 | public Axiom.Math.Vector3 llRot2Fwd(Axiom.Math.Quaternion r) { return new Axiom.Math.Vector3(); } | ||
68 | public Axiom.Math.Vector3 llRot2Left(Axiom.Math.Quaternion r) { return new Axiom.Math.Vector3(); } | ||
69 | public Axiom.Math.Vector3 llRot2Up(Axiom.Math.Quaternion r) { return new Axiom.Math.Vector3(); } | ||
70 | public Axiom.Math.Quaternion llRotBetween(Axiom.Math.Vector3 start, Axiom.Math.Vector3 end) { return new Axiom.Math.Quaternion(); } | ||
71 | |||
72 | public void llWhisper(int channelID, string text) | ||
73 | { | ||
74 | //Common.SendToDebug("INTERNAL FUNCTION llWhisper(" + channelID + ", \"" + text + "\");"); | ||
75 | Console.WriteLine("llWhisper Channel " + channelID + ", Text: \"" + text + "\""); | ||
76 | //type for whisper is 0 | ||
77 | World.SimChat(Helpers.StringToField(text), | ||
78 | 0, m_host.AbsolutePosition, m_host.Name, m_host.UUID); | ||
79 | |||
80 | |||
81 | } | ||
82 | //public void llSay(int channelID, string text) | ||
83 | public void llSay(int channelID, string text) | ||
84 | { | ||
85 | //TODO: DO SOMETHING USEFUL HERE | ||
86 | //Common.SendToDebug("INTERNAL FUNCTION llSay(" + (int)channelID + ", \"" + (string)text + "\");"); | ||
87 | Console.WriteLine("llSay Channel " + channelID + ", Text: \"" + text + "\""); | ||
88 | //type for say is 1 | ||
89 | |||
90 | World.SimChat(Helpers.StringToField(text), | ||
91 | 1, m_host.AbsolutePosition, m_host.Name, m_host.UUID); | ||
92 | } | ||
93 | |||
94 | public void llShout(int channelID, string text) | ||
95 | { | ||
96 | Console.WriteLine("llShout Channel " + channelID + ", Text: \"" + text + "\""); | ||
97 | //type for shout is 2 | ||
98 | World.SimChat(Helpers.StringToField(text), | ||
99 | 2, m_host.AbsolutePosition, m_host.Name, m_host.UUID); | ||
100 | |||
101 | } | ||
102 | |||
103 | public int llListen(int channelID, string name, string ID, string msg) { return 0; } | ||
104 | public void llListenControl(int number, int active) { return; } | ||
105 | public void llListenRemove(int number) { return; } | ||
106 | public void llSensor(string name, string id, int type, double range, double arc) { return; } | ||
107 | public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate) { return; } | ||
108 | public void llSensorRemove() { return; } | ||
109 | public string llDetectedName(int number) { return ""; } | ||
110 | public string llDetectedKey(int number) { return ""; } | ||
111 | public string llDetectedOwner(int number) { return ""; } | ||
112 | public int llDetectedType(int number) { return 0; } | ||
113 | public Axiom.Math.Vector3 llDetectedPos(int number) { return new Axiom.Math.Vector3(); } | ||
114 | public Axiom.Math.Vector3 llDetectedVel(int number) { return new Axiom.Math.Vector3(); } | ||
115 | public Axiom.Math.Vector3 llDetectedGrab(int number) { return new Axiom.Math.Vector3(); } | ||
116 | public Axiom.Math.Quaternion llDetectedRot(int number) { return new Axiom.Math.Quaternion(); } | ||
117 | public int llDetectedGroup(int number) { return 0; } | ||
118 | public int llDetectedLinkNumber(int number) { return 0; } | ||
119 | public void llDie() { return; } | ||
120 | public double llGround(Axiom.Math.Vector3 offset) { return 0; } | ||
121 | public double llCloud(Axiom.Math.Vector3 offset) { return 0; } | ||
122 | public Axiom.Math.Vector3 llWind(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); } | ||
123 | public void llSetStatus(int status, int value) { return; } | ||
124 | public int llGetStatus(int status) { return 0; } | ||
125 | public void llSetScale(Axiom.Math.Vector3 scale) { return; } | ||
126 | public Axiom.Math.Vector3 llGetScale() { return new Axiom.Math.Vector3(); } | ||
127 | public void llSetColor(Axiom.Math.Vector3 color, int face) { return; } | ||
128 | public double llGetAlpha(int face) { return 0; } | ||
129 | public void llSetAlpha(double alpha, int face) { return; } | ||
130 | public Axiom.Math.Vector3 llGetColor(int face) { return new Axiom.Math.Vector3(); } | ||
131 | public void llSetTexture(string texture, int face) { return; } | ||
132 | public void llScaleTexture(double u, double v, int face) { return; } | ||
133 | public void llOffsetTexture(double u, double v, int face) { return; } | ||
134 | public void llRotateTexture(double rotation, int face) { return; } | ||
135 | public string llGetTexture(int face) { return ""; } | ||
136 | public void llSetPos(Axiom.Math.Vector3 pos) { return; } | ||
137 | |||
138 | public Axiom.Math.Vector3 llGetPos() | ||
139 | { | ||
140 | throw new NotImplementedException("llGetPos"); | ||
141 | // return m_host.AbsolutePosition; | ||
142 | } | ||
143 | |||
144 | public Axiom.Math.Vector3 llGetLocalPos() { return new Axiom.Math.Vector3(); } | ||
145 | public void llSetRot(Axiom.Math.Quaternion rot) { } | ||
146 | public Axiom.Math.Quaternion llGetRot() { return new Axiom.Math.Quaternion(); } | ||
147 | public Axiom.Math.Quaternion llGetLocalRot() { return new Axiom.Math.Quaternion(); } | ||
148 | public void llSetForce(Axiom.Math.Vector3 force, int local) { } | ||
149 | public Axiom.Math.Vector3 llGetForce() { return new Axiom.Math.Vector3(); } | ||
150 | public int llTarget(Axiom.Math.Vector3 position, double range) { return 0; } | ||
151 | public void llTargetRemove(int number) { } | ||
152 | public int llRotTarget(Axiom.Math.Quaternion rot, double error) { return 0; } | ||
153 | public void llRotTargetRemove(int number) { } | ||
154 | public void llMoveToTarget(Axiom.Math.Vector3 target, double tau) { } | ||
155 | public void llStopMoveToTarget() { } | ||
156 | public void llApplyImpulse(Axiom.Math.Vector3 force, int local) { } | ||
157 | public void llApplyRotationalImpulse(Axiom.Math.Vector3 force, int local) { } | ||
158 | public void llSetTorque(Axiom.Math.Vector3 torque, int local) { } | ||
159 | public Axiom.Math.Vector3 llGetTorque() { return new Axiom.Math.Vector3(); } | ||
160 | public void llSetForceAndTorque(Axiom.Math.Vector3 force, Axiom.Math.Vector3 torque, int local) { } | ||
161 | public Axiom.Math.Vector3 llGetVel() { return new Axiom.Math.Vector3(); } | ||
162 | public Axiom.Math.Vector3 llGetAccel() { return new Axiom.Math.Vector3(); } | ||
163 | public Axiom.Math.Vector3 llGetOmega() { return new Axiom.Math.Vector3(); } | ||
164 | public double llGetTimeOfDay() { return 0; } | ||
165 | public double llGetWallclock() { return 0; } | ||
166 | public double llGetTime() { return 0; } | ||
167 | public void llResetTime() { } | ||
168 | public double llGetAndResetTime() { return 0; } | ||
169 | public void llSound() { } | ||
170 | public void llPlaySound(string sound, double volume) { } | ||
171 | public void llLoopSound(string sound, double volume) { } | ||
172 | public void llLoopSoundMaster(string sound, double volume) { } | ||
173 | public void llLoopSoundSlave(string sound, double volume) { } | ||
174 | public void llPlaySoundSlave(string sound, double volume) { } | ||
175 | public void llTriggerSound(string sound, double volume) { } | ||
176 | public void llStopSound() { } | ||
177 | public void llPreloadSound(string sound) { } | ||
178 | public string llGetSubString(string src, int start, int end) { return src.Substring(start, end); } | ||
179 | public string llDeleteSubString(string src, int start, int end) { return ""; } | ||
180 | public string llInsertString(string dst, int position, string src) { return ""; } | ||
181 | public string llToUpper(string src) { return src.ToUpper(); } | ||
182 | public string llToLower(string src) { return src.ToLower(); } | ||
183 | public int llGiveMoney(string destination, int amount) { return 0; } | ||
184 | public void llMakeExplosion() { } | ||
185 | public void llMakeFountain() { } | ||
186 | public void llMakeSmoke() { } | ||
187 | public void llMakeFire() { } | ||
188 | public void llRezObject(string inventory, Axiom.Math.Vector3 pos, Axiom.Math.Quaternion rot, int param) { } | ||
189 | public void llLookAt(Axiom.Math.Vector3 target, double strength, double damping) { } | ||
190 | public void llStopLookAt() { } | ||
191 | public void llSetTimerEvent(double sec) { } | ||
192 | public void llSleep(double sec) { System.Threading.Thread.Sleep((int)(sec * 1000)); } | ||
193 | public double llGetMass() { return 0; } | ||
194 | public void llCollisionFilter(string name, string id, int accept) { } | ||
195 | public void llTakeControls(int controls, int accept, int pass_on) { } | ||
196 | public void llReleaseControls() { } | ||
197 | public void llAttachToAvatar(int attachment) { } | ||
198 | public void llDetachFromAvatar() { } | ||
199 | public void llTakeCamera() { } | ||
200 | public void llReleaseCamera() { } | ||
201 | public string llGetOwner() { return ""; } | ||
202 | public void llInstantMessage(string user, string message) { } | ||
203 | public void llEmail(string address, string subject, string message) { } | ||
204 | public void llGetNextEmail(string address, string subject) { } | ||
205 | public string llGetKey() { return ""; } | ||
206 | public void llSetBuoyancy(double buoyancy) { } | ||
207 | public void llSetHoverHeight(double height, int water, double tau) { } | ||
208 | public void llStopHover() { } | ||
209 | public void llMinEventDelay(double delay) { } | ||
210 | public void llSoundPreload() { } | ||
211 | public void llRotLookAt(Axiom.Math.Quaternion target, double strength, double damping) { } | ||
212 | |||
213 | public int llStringLength(string str) | ||
214 | { | ||
215 | if (str.Length > 0) | ||
216 | { | ||
217 | return str.Length; | ||
218 | } | ||
219 | else | ||
220 | { | ||
221 | return 0; | ||
222 | } | ||
223 | } | ||
224 | |||
225 | public void llStartAnimation(string anim) { } | ||
226 | public void llStopAnimation(string anim) { } | ||
227 | public void llPointAt() { } | ||
228 | public void llStopPointAt() { } | ||
229 | public void llTargetOmega(Axiom.Math.Vector3 axis, double spinrate, double gain) { } | ||
230 | public int llGetStartParameter() { return 0; } | ||
231 | public void llGodLikeRezObject(string inventory, Axiom.Math.Vector3 pos) { } | ||
232 | public void llRequestPermissions(string agent, int perm) { } | ||
233 | public string llGetPermissionsKey() { return ""; } | ||
234 | public int llGetPermissions() { return 0; } | ||
235 | public int llGetLinkNumber() { return 0; } | ||
236 | public void llSetLinkColor(int linknumber, Axiom.Math.Vector3 color, int face) { } | ||
237 | public void llCreateLink(string target, int parent) { } | ||
238 | public void llBreakLink(int linknum) { } | ||
239 | public void llBreakAllLinks() { } | ||
240 | public string llGetLinkKey(int linknum) { return ""; } | ||
241 | public void llGetLinkName(int linknum) { } | ||
242 | public int llGetInventoryNumber(int type) { return 0; } | ||
243 | public string llGetInventoryName(int type, int number) { return ""; } | ||
244 | public void llSetScriptState(string name, int run) { } | ||
245 | public double llGetEnergy() { return 1.0f; } | ||
246 | public void llGiveInventory(string destination, string inventory) { } | ||
247 | public void llRemoveInventory(string item) { } | ||
248 | |||
249 | public void llSetText(string text, Axiom.Math.Vector3 color, double alpha) | ||
250 | { | ||
251 | m_host.SetText(text, color, alpha); | ||
252 | } | ||
253 | |||
254 | public double llWater(Axiom.Math.Vector3 offset) { return 0; } | ||
255 | public void llPassTouches(int pass) { } | ||
256 | public string llRequestAgentData(string id, int data) { return ""; } | ||
257 | public string llRequestInventoryData(string name) { return ""; } | ||
258 | public void llSetDamage(double damage) { } | ||
259 | public void llTeleportAgentHome(string agent) { } | ||
260 | public void llModifyLand(int action, int brush) { } | ||
261 | public void llCollisionSound(string impact_sound, double impact_volume) { } | ||
262 | public void llCollisionSprite(string impact_sprite) { } | ||
263 | public string llGetAnimation(string id) { return ""; } | ||
264 | public void llResetScript() { } | ||
265 | public void llMessageLinked(int linknum, int num, string str, string id) { } | ||
266 | public void llPushObject(string target, Axiom.Math.Vector3 impulse, Axiom.Math.Vector3 ang_impulse, int local) { } | ||
267 | public void llPassCollisions(int pass) { } | ||
268 | public string llGetScriptName() { return ""; } | ||
269 | public int llGetNumberOfSides() { return 0; } | ||
270 | public Axiom.Math.Quaternion llAxisAngle2Rot(Axiom.Math.Vector3 axis, double angle) { return new Axiom.Math.Quaternion(); } | ||
271 | public Axiom.Math.Vector3 llRot2Axis(Axiom.Math.Quaternion rot) { return new Axiom.Math.Vector3(); } | ||
272 | public void llRot2Angle() { } | ||
273 | public double llAcos(double val) { return (double)Math.Acos(val); } | ||
274 | public double llAsin(double val) { return (double)Math.Asin(val); } | ||
275 | public double llAngleBetween(Axiom.Math.Quaternion a, Axiom.Math.Quaternion b) { return 0; } | ||
276 | public string llGetInventoryKey(string name) { return ""; } | ||
277 | public void llAllowInventoryDrop(int add) { } | ||
278 | public Axiom.Math.Vector3 llGetSunDirection() { return new Axiom.Math.Vector3(); } | ||
279 | public Axiom.Math.Vector3 llGetTextureOffset(int face) { return new Axiom.Math.Vector3(); } | ||
280 | public Axiom.Math.Vector3 llGetTextureScale(int side) { return new Axiom.Math.Vector3(); } | ||
281 | public double llGetTextureRot(int side) { return 0; } | ||
282 | public int llSubStringIndex(string source, string pattern) { return 0; } | ||
283 | public string llGetOwnerKey(string id) { return ""; } | ||
284 | public Axiom.Math.Vector3 llGetCenterOfMass() { return new Axiom.Math.Vector3(); } | ||
285 | public List<string> llListSort(List<string> src, int stride, int ascending) | ||
286 | { return new List<string>(); } | ||
287 | public int llGetListLength(List<string> src) { return 0; } | ||
288 | public int llList2Integer(List<string> src, int index) { return 0; } | ||
289 | public double llList2double(List<string> src, int index) { return 0; } | ||
290 | public string llList2String(List<string> src, int index) { return ""; } | ||
291 | public string llList2Key(List<string> src, int index) { return ""; } | ||
292 | public Axiom.Math.Vector3 llList2Vector(List<string> src, int index) | ||
293 | { return new Axiom.Math.Vector3(); } | ||
294 | public Axiom.Math.Quaternion llList2Rot(List<string> src, int index) | ||
295 | { return new Axiom.Math.Quaternion(); } | ||
296 | public List<string> llList2List(List<string> src, int start, int end) | ||
297 | { return new List<string>(); } | ||
298 | public List<string> llDeleteSubList(List<string> src, int start, int end) | ||
299 | { return new List<string>(); } | ||
300 | public int llGetListEntryType(List<string> src, int index) { return 0; } | ||
301 | public string llList2CSV(List<string> src) { return ""; } | ||
302 | public List<string> llCSV2List(string src) | ||
303 | { return new List<string>(); } | ||
304 | public List<string> llListRandomize(List<string> src, int stride) | ||
305 | { return new List<string>(); } | ||
306 | public List<string> llList2ListStrided(List<string> src, int start, int end, int stride) | ||
307 | { return new List<string>(); } | ||
308 | public Axiom.Math.Vector3 llGetRegionCorner() | ||
309 | { return new Axiom.Math.Vector3(World.RegionInfo.RegionLocX * 256, World.RegionInfo.RegionLocY * 256, 0); } | ||
310 | public List<string> llListInsertList(List<string> dest, List<string> src, int start) | ||
311 | { return new List<string>(); } | ||
312 | public int llListFindList(List<string> src, List<string> test) { return 0; } | ||
313 | public string llGetObjectName() { return ""; } | ||
314 | public void llSetObjectName(string name) { } | ||
315 | public string llGetDate() { return ""; } | ||
316 | public int llEdgeOfWorld(Axiom.Math.Vector3 pos, Axiom.Math.Vector3 dir) { return 0; } | ||
317 | public int llGetAgentInfo(string id) { return 0; } | ||
318 | public void llAdjustSoundVolume(double volume) { } | ||
319 | public void llSetSoundQueueing(int queue) { } | ||
320 | public void llSetSoundRadius(double radius) { } | ||
321 | public string llKey2Name(string id) { return ""; } | ||
322 | public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate) { } | ||
323 | public void llTriggerSoundLimited(string sound, double volume, Axiom.Math.Vector3 top_north_east, Axiom.Math.Vector3 bottom_south_west) { } | ||
324 | public void llEjectFromLand(string pest) { } | ||
325 | public void llParseString2List() { } | ||
326 | public int llOverMyLand(string id) { return 0; } | ||
327 | public string llGetLandOwnerAt(Axiom.Math.Vector3 pos) { return ""; } | ||
328 | public string llGetNotecardLine(string name, int line) { return ""; } | ||
329 | public Axiom.Math.Vector3 llGetAgentSize(string id) { return new Axiom.Math.Vector3(); } | ||
330 | public int llSameGroup(string agent) { return 0; } | ||
331 | public void llUnSit(string id) { } | ||
332 | public Axiom.Math.Vector3 llGroundSlope(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); } | ||
333 | public Axiom.Math.Vector3 llGroundNormal(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); } | ||
334 | public Axiom.Math.Vector3 llGroundContour(Axiom.Math.Vector3 offset) { return new Axiom.Math.Vector3(); } | ||
335 | public int llGetAttached() { return 0; } | ||
336 | public int llGetFreeMemory() { return 0; } | ||
337 | public string llGetRegionName() { return m_manager.RegionName; } | ||
338 | public double llGetRegionTimeDilation() { return 1.0f; } | ||
339 | public double llGetRegionFPS() { return 10.0f; } | ||
340 | public void llParticleSystem(List<Object> rules) { } | ||
341 | public void llGroundRepel(double height, int water, double tau) { } | ||
342 | public void llGiveInventoryList() { } | ||
343 | public void llSetVehicleType(int type) { } | ||
344 | public void llSetVehicledoubleParam(int param, double value) { } | ||
345 | public void llSetVehicleVectorParam(int param, Axiom.Math.Vector3 vec) { } | ||
346 | public void llSetVehicleRotationParam(int param, Axiom.Math.Quaternion rot) { } | ||
347 | public void llSetVehicleFlags(int flags) { } | ||
348 | public void llRemoveVehicleFlags(int flags) { } | ||
349 | public void llSitTarget(Axiom.Math.Vector3 offset, Axiom.Math.Quaternion rot) { } | ||
350 | public string llAvatarOnSitTarget() { return ""; } | ||
351 | public void llAddToLandPassList(string avatar, double hours) { } | ||
352 | public void llSetTouchText(string text) | ||
353 | { | ||
354 | } | ||
355 | |||
356 | public void llSetSitText(string text) | ||
357 | { | ||
358 | } | ||
359 | public void llSetCameraEyeOffset(Axiom.Math.Vector3 offset) { } | ||
360 | public void llSetCameraAtOffset(Axiom.Math.Vector3 offset) { } | ||
361 | public void llDumpList2String() { } | ||
362 | public void llScriptDanger(Axiom.Math.Vector3 pos) { } | ||
363 | public void llDialog(string avatar, string message, List<string> buttons, int chat_channel) { } | ||
364 | public void llVolumeDetect(int detect) { } | ||
365 | public void llResetOtherScript(string name) { } | ||
366 | public int llGetScriptState(string name) { return 0; } | ||
367 | public void llRemoteLoadScript() { } | ||
368 | public void llSetRemoteScriptAccessPin(int pin) { } | ||
369 | public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param) { } | ||
370 | public void llOpenRemoteDataChannel() { } | ||
371 | public string llSendRemoteData(string channel, string dest, int idata, string sdata) { return ""; } | ||
372 | public void llRemoteDataReply(string channel, string message_id, string sdata, int idata) { } | ||
373 | public void llCloseRemoteDataChannel(string channel) { } | ||
374 | public string llMD5String(string src, int nonce) | ||
375 | { | ||
376 | return OpenSim.Framework.Utilities.Util.Md5Hash(src + ":" + nonce.ToString()); | ||
377 | } | ||
378 | public void llSetPrimitiveParams(List<string> rules) { } | ||
379 | public string llStringToBase64(string str) { return ""; } | ||
380 | public string llBase64ToString(string str) { return ""; } | ||
381 | public void llXorBase64Strings() { } | ||
382 | public void llRemoteDataSetRegion() { } | ||
383 | public double llLog10(double val) { return (double)Math.Log10(val); } | ||
384 | public double llLog(double val) { return (double)Math.Log(val); } | ||
385 | public List<string> llGetAnimationList(string id) { return new List<string>(); } | ||
386 | public void llSetParcelMusicURL(string url) { } | ||
387 | |||
388 | public Axiom.Math.Vector3 llGetRootPosition() | ||
389 | { | ||
390 | throw new NotImplementedException("llGetRootPosition"); | ||
391 | //return m_root.AbsolutePosition; | ||
392 | } | ||
393 | |||
394 | public Axiom.Math.Quaternion llGetRootRotation() | ||
395 | { | ||
396 | return new Axiom.Math.Quaternion(); | ||
397 | } | ||
398 | |||
399 | public string llGetObjectDesc() { return ""; } | ||
400 | public void llSetObjectDesc(string desc) { } | ||
401 | public string llGetCreator() { return ""; } | ||
402 | public string llGetTimestamp() { return ""; } | ||
403 | public void llSetLinkAlpha(int linknumber, double alpha, int face) { } | ||
404 | public int llGetNumberOfPrims() { return 0; } | ||
405 | public string llGetNumberOfNotecardLines(string name) { return ""; } | ||
406 | public List<string> llGetBoundingBox(string obj) { return new List<string>(); } | ||
407 | public Axiom.Math.Vector3 llGetGeometricCenter() { return new Axiom.Math.Vector3(); } | ||
408 | public void llGetPrimitiveParams() { } | ||
409 | public string llIntegerToBase64(int number) { return ""; } | ||
410 | public int llBase64ToInteger(string str) { return 0; } | ||
411 | public double llGetGMTclock() { return 0; } | ||
412 | public string llGetSimulatorHostname() { return ""; } | ||
413 | public void llSetLocalRot(Axiom.Math.Quaternion rot) { } | ||
414 | public List<string> llParseStringKeepNulls(string src, List<string> seperators, List<string> spacers) | ||
415 | { return new List<string>(); } | ||
416 | public void llRezAtRoot(string inventory, Axiom.Math.Vector3 position, Axiom.Math.Vector3 velocity, Axiom.Math.Quaternion rot, int param) { } | ||
417 | public int llGetObjectPermMask(int mask) { return 0; } | ||
418 | public void llSetObjectPermMask(int mask, int value) { } | ||
419 | public void llGetInventoryPermMask(string item, int mask) { } | ||
420 | public void llSetInventoryPermMask(string item, int mask, int value) { } | ||
421 | public string llGetInventoryCreator(string item) { return ""; } | ||
422 | public void llOwnerSay(string msg) { } | ||
423 | public void llRequestSimulatorData(string simulator, int data) { } | ||
424 | public void llForceMouselook(int mouselook) { } | ||
425 | public double llGetObjectMass(string id) { return 0; } | ||
426 | public void llListReplaceList() { } | ||
427 | public void llLoadURL(string avatar_id, string message, string url) { } | ||
428 | public void llParcelMediaCommandList(List<string> commandList) { } | ||
429 | public void llParcelMediaQuery() { } | ||
430 | |||
431 | public int llModPow(int a, int b, int c) | ||
432 | { | ||
433 | Int64 tmp = 0; | ||
434 | Int64 val = Math.DivRem(Convert.ToInt64(Math.Pow(a, b)), c, out tmp); | ||
435 | |||
436 | return Convert.ToInt32(tmp); | ||
437 | } | ||
438 | |||
439 | public int llGetInventoryType(string name) { return 0; } | ||
440 | public void llSetPayPrice(int price, List<string> quick_pay_buttons) { } | ||
441 | public Axiom.Math.Vector3 llGetCameraPos() { return new Axiom.Math.Vector3(); } | ||
442 | public Axiom.Math.Quaternion llGetCameraRot() { return new Axiom.Math.Quaternion(); } | ||
443 | public void llSetPrimURL() { } | ||
444 | public void llRefreshPrimURL() { } | ||
445 | public string llEscapeURL(string url) { return ""; } | ||
446 | public string llUnescapeURL(string url) { return ""; } | ||
447 | public void llMapDestination(string simname, Axiom.Math.Vector3 pos, Axiom.Math.Vector3 look_at) { } | ||
448 | public void llAddToLandBanList(string avatar, double hours) { } | ||
449 | public void llRemoveFromLandPassList(string avatar) { } | ||
450 | public void llRemoveFromLandBanList(string avatar) { } | ||
451 | public void llSetCameraParams(List<string> rules) { } | ||
452 | public void llClearCameraParams() { } | ||
453 | public double llListStatistics(int operation, List<string> src) { return 0; } | ||
454 | public int llGetUnixTime() | ||
455 | { | ||
456 | return OpenSim.Framework.Utilities.Util.UnixTimeSinceEpoch(); | ||
457 | } | ||
458 | public int llGetParcelFlags(Axiom.Math.Vector3 pos) { return 0; } | ||
459 | public int llGetRegionFlags() { return 0; } | ||
460 | public string llXorBase64StringsCorrect(string str1, string str2) { return ""; } | ||
461 | public void llHTTPRequest() { } | ||
462 | public void llResetLandBanList() { } | ||
463 | public void llResetLandPassList() { } | ||
464 | public int llGetParcelPrimCount(Axiom.Math.Vector3 pos, int category, int sim_wide) { return 0; } | ||
465 | public List<string> llGetParcelPrimOwners(Axiom.Math.Vector3 pos) { return new List<string>(); } | ||
466 | public int llGetObjectPrimCount(string object_id) { return 0; } | ||
467 | public int llGetParcelMaxPrims(Axiom.Math.Vector3 pos, int sim_wide) { return 0; } | ||
468 | public List<string> llGetParcelDetails(Axiom.Math.Vector3 pos, List<string> param) { return new List<string>(); } | ||
469 | |||
470 | |||
471 | } | ||
472 | } | ||
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs index 7155b09..1d2689d 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | |||
@@ -58,7 +58,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
58 | private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) | 58 | private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) |
59 | { | 59 | { |
60 | 60 | ||
61 | Console.WriteLine("CurrentDomain_AssemblyResolve: " + args.Name); | 61 | //Console.WriteLine("CurrentDomain_AssemblyResolve: " + args.Name); |
62 | return Assembly.GetExecutingAssembly().FullName == args.Name ? Assembly.GetExecutingAssembly() : null; | 62 | return Assembly.GetExecutingAssembly().FullName == args.Name ? Assembly.GetExecutingAssembly() : null; |
63 | 63 | ||
64 | } | 64 | } |
@@ -231,11 +231,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
231 | //Console.WriteLine("Base directory: " + AppDomain.CurrentDomain.BaseDirectory); | 231 | //Console.WriteLine("Base directory: " + AppDomain.CurrentDomain.BaseDirectory); |
232 | 232 | ||
233 | //LSL_BaseClass mbrt = (LSL_BaseClass)FreeAppDomain.CreateInstanceFromAndUnwrap(FileName, "SecondLife.Script"); | 233 | //LSL_BaseClass mbrt = (LSL_BaseClass)FreeAppDomain.CreateInstanceFromAndUnwrap(FileName, "SecondLife.Script"); |
234 | |||
235 | //Type mytype = mbrt.GetType(); | 234 | //Type mytype = mbrt.GetType(); |
236 | |||
237 | |||
238 | |||
239 | 235 | ||
240 | //Console.WriteLine("is proxy={0}", RemotingServices.IsTransparentProxy(mbrt)); | 236 | //Console.WriteLine("is proxy={0}", RemotingServices.IsTransparentProxy(mbrt)); |
241 | 237 | ||
diff --git a/prebuild.xml b/prebuild.xml index bfc8cd4..7f4a45e 100644 --- a/prebuild.xml +++ b/prebuild.xml | |||
@@ -937,6 +937,30 @@ | |||
937 | </Files> | 937 | </Files> |
938 | </Project> | 938 | </Project> |
939 | 939 | ||
940 | <Project name="OpenSim.Region.ScriptEngine.Common" path="OpenSim/Region/ScriptEngine/Common" type="Library"> | ||
941 | <Configuration name="Debug"> | ||
942 | <Options> | ||
943 | <OutputPath>../../../../bin/ScriptEngines/</OutputPath> | ||
944 | </Options> | ||
945 | </Configuration> | ||
946 | <Configuration name="Release"> | ||
947 | <Options> | ||
948 | <OutputPath>../../../../bin/ScriptEngines/</OutputPath> | ||
949 | </Options> | ||
950 | </Configuration> | ||
951 | |||
952 | <ReferencePath>../../../../bin/</ReferencePath> | ||
953 | <ReferencePath>../../../../bin/ScriptEngines/</ReferencePath> | ||
954 | <Reference name="System" localCopy="false"/> | ||
955 | <Reference name="System.Data" localCopy="false"/> | ||
956 | <Reference name="System.Xml" localCopy="false"/> | ||
957 | <Reference name="Axiom.MathLib.dll" localCopy="false"/> | ||
958 | <Files> | ||
959 | <Match pattern="*.cs" recurse="true"/> | ||
960 | </Files> | ||
961 | </Project> | ||
962 | |||
963 | |||
940 | 964 | ||
941 | <Project name="OpenSim.Region.ScriptEngine.DotNetEngine" path="OpenSim/Region/ScriptEngine/DotNetEngine" type="Library"> | 965 | <Project name="OpenSim.Region.ScriptEngine.DotNetEngine" path="OpenSim/Region/ScriptEngine/DotNetEngine" type="Library"> |
942 | <Configuration name="Debug"> | 966 | <Configuration name="Debug"> |
@@ -962,6 +986,7 @@ | |||
962 | <Reference name="RAIL.dll"/> | 986 | <Reference name="RAIL.dll"/> |
963 | <Reference name="OpenSim.Framework"/> | 987 | <Reference name="OpenSim.Framework"/> |
964 | <Reference name="OpenSim.Framework.Console"/> | 988 | <Reference name="OpenSim.Framework.Console"/> |
989 | <Reference name="OpenSim.Region.ScriptEngine.Common"/> | ||
965 | <Files> | 990 | <Files> |
966 | <Match pattern="*.cs" recurse="true"/> | 991 | <Match pattern="*.cs" recurse="true"/> |
967 | </Files> | 992 | </Files> |
@@ -970,6 +995,7 @@ | |||
970 | 995 | ||
971 | 996 | ||
972 | 997 | ||
998 | |||
973 | </Solution> | 999 | </Solution> |
974 | 1000 | ||
975 | 1001 | ||