aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs
diff options
context:
space:
mode:
authorTedd Hansen2008-01-12 14:30:22 +0000
committerTedd Hansen2008-01-12 14:30:22 +0000
commitbacbade369a5244f9bcc611488b59f3bd4c8a564 (patch)
tree2cd909eff401066a69dba96615cbf736fdd73be5 /OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs
parent* Trying something to see if it helps teleports and border crossings (diff)
downloadopensim-SC_OLD-bacbade369a5244f9bcc611488b59f3bd4c8a564.zip
opensim-SC_OLD-bacbade369a5244f9bcc611488b59f3bd4c8a564.tar.gz
opensim-SC_OLD-bacbade369a5244f9bcc611488b59f3bd4c8a564.tar.bz2
opensim-SC_OLD-bacbade369a5244f9bcc611488b59f3bd4c8a564.tar.xz
Major reorganizing of DotNetEngine. Moved common script engine parts to ScriptEngine.Common, only .Net-specific code in DotNetEngine. AppDomains, event handling, event execution queue and multithreading, script load/unload queue, etc has been moved to ScriptEngine.Common.
Loads of things has been put into interfaces instead of the specific class. We are now one step closer to ScriptServer, and its very easy to implement new script languages. Just a few lines required to make them a OpenSim script module with all its glory.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs2165
1 files changed, 2165 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs
new file mode 100644
index 0000000..5de9a85
--- /dev/null
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BaseClass.cs
@@ -0,0 +1,2165 @@
1/*
2* Copyright (c) Contributors, http://opensimulator.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4*
5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission.
15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*
27*/
28
29using System;
30using System.Collections.Generic;
31using System.Runtime.Remoting.Lifetime;
32using System.Threading;
33using OpenSim.Region.ScriptEngine.Common;
34using integer = System.Int32;
35using key = System.String;
36using vector = OpenSim.Region.ScriptEngine.Common.LSL_Types.Vector3;
37using rotation = OpenSim.Region.ScriptEngine.Common.LSL_Types.Quaternion;
38
39namespace OpenSim.Region.ScriptEngine.Common
40{
41 public class LSL_BaseClass : MarshalByRefObject, LSL_BuiltIn_Commands_Interface, IScript
42 {
43
44 //
45 // Included as base for any LSL-script that is compiled.
46 // Any function added here will be accessible to the LSL script. But it must also be added to "LSL_BuiltIn_Commands_Interface" in "OpenSim.Region.ScriptEngine.Common" class.
47 //
48 // Security note: This script will be running inside an restricted AppDomain. Currently AppDomain is not very restricted.
49 //
50
51 // Object never expires
52 public override Object InitializeLifetimeService()
53 {
54 //Console.WriteLine("LSL_BaseClass: InitializeLifetimeService()");
55 // return null;
56 ILease lease = (ILease)base.InitializeLifetimeService();
57
58 if (lease.CurrentState == LeaseState.Initial)
59 {
60 lease.InitialLeaseTime = TimeSpan.Zero; // TimeSpan.FromMinutes(1);
61 //lease.SponsorshipTimeout = TimeSpan.FromMinutes(2);
62 //lease.RenewOnCallTime = TimeSpan.FromSeconds(2);
63 }
64 return lease;
65 }
66
67
68 private Executor m_Exec;
69
70 Executor IScript.Exec
71 {
72 get
73 {
74 if (m_Exec == null)
75 m_Exec = new Executor(this);
76 return m_Exec;
77 }
78 }
79
80
81 public LSL_BuiltIn_Commands_Interface m_LSL_Functions;
82 private string _Source = "";
83 public string Source
84 {
85 get
86 {
87 return _Source;
88 }
89 set { _Source = value; }
90 }
91
92
93 public LSL_BaseClass()
94 {
95 }
96
97 public string State()
98 {
99 return m_LSL_Functions.State();
100 }
101
102
103
104 public void Start(LSL_BuiltIn_Commands_Interface LSL_Functions)
105 {
106 m_LSL_Functions = LSL_Functions;
107
108 //MainLog.Instance.Notice("ScriptEngine", "LSL_BaseClass.Start() called.");
109
110 // Get this AppDomain's settings and display some of them.
111 AppDomainSetup ads = AppDomain.CurrentDomain.SetupInformation;
112 Console.WriteLine("AppName={0}, AppBase={1}, ConfigFile={2}",
113 ads.ApplicationName,
114 ads.ApplicationBase,
115 ads.ConfigurationFile
116 );
117
118 // Display the name of the calling AppDomain and the name
119 // of the second domain.
120 // NOTE: The application's thread has transitioned between
121 // AppDomains.
122 Console.WriteLine("Calling to '{0}'.",
123 Thread.GetDomain().FriendlyName
124 );
125
126 return;
127 }
128
129
130 //
131 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
132 //
133 // They are only forwarders to LSL_BuiltIn_Commands.cs
134 //
135 public double llSin(double f)
136 {
137 return m_LSL_Functions.llSin(f);
138 }
139
140 public double llCos(double f)
141 {
142 return m_LSL_Functions.llCos(f);
143 }
144
145 public double llTan(double f)
146 {
147 return m_LSL_Functions.llTan(f);
148 }
149
150 public double llAtan2(double x, double y)
151 {
152 return m_LSL_Functions.llAtan2(x, y);
153 }
154
155 public double llSqrt(double f)
156 {
157 return m_LSL_Functions.llSqrt(f);
158 }
159
160 public double llPow(double fbase, double fexponent)
161 {
162 return m_LSL_Functions.llPow(fbase, fexponent);
163 }
164
165 public int llAbs(int i)
166 {
167 return m_LSL_Functions.llAbs(i);
168 }
169
170 public double llFabs(double f)
171 {
172 return m_LSL_Functions.llFabs(f);
173 }
174
175 public double llFrand(double mag)
176 {
177 return m_LSL_Functions.llFrand(mag);
178 }
179
180 public int llFloor(double f)
181 {
182 return m_LSL_Functions.llFloor(f);
183 }
184
185 public int llCeil(double f)
186 {
187 return m_LSL_Functions.llCeil(f);
188 }
189
190 public int llRound(double f)
191 {
192 return m_LSL_Functions.llRound(f);
193 }
194
195 public double llVecMag(vector v)
196 {
197 return m_LSL_Functions.llVecMag(v);
198 }
199
200 public vector llVecNorm(vector v)
201 {
202 return m_LSL_Functions.llVecNorm(v);
203 }
204
205 public double llVecDist(vector a, vector b)
206 {
207 return m_LSL_Functions.llVecDist(a, b);
208 }
209
210 public vector llRot2Euler(rotation r)
211 {
212 return m_LSL_Functions.llRot2Euler(r);
213 }
214
215 public rotation llEuler2Rot(vector v)
216 {
217 return m_LSL_Functions.llEuler2Rot(v);
218 }
219
220 public rotation llAxes2Rot(vector fwd, vector left, vector up)
221 {
222 return m_LSL_Functions.llAxes2Rot(fwd, left, up);
223 }
224
225 public vector llRot2Fwd(rotation r)
226 {
227 return m_LSL_Functions.llRot2Fwd(r);
228 }
229
230 public vector llRot2Left(rotation r)
231 {
232 return m_LSL_Functions.llRot2Left(r);
233 }
234
235 public vector llRot2Up(rotation r)
236 {
237 return m_LSL_Functions.llRot2Up(r);
238 }
239
240 public rotation llRotBetween(vector start, vector end)
241 {
242 return m_LSL_Functions.llRotBetween(start, end);
243 }
244
245 public void llWhisper(int channelID, string text)
246 {
247 m_LSL_Functions.llWhisper(channelID, text);
248 }
249
250 public void llSay(int channelID, string text)
251 {
252 m_LSL_Functions.llSay(channelID, text);
253 }
254
255 //
256 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
257 //
258 public void llShout(int channelID, string text)
259 {
260 m_LSL_Functions.llShout(channelID, text);
261 }
262
263 public int llListen(int channelID, string name, string ID, string msg)
264 {
265 return m_LSL_Functions.llListen(channelID, name, ID, msg);
266 }
267
268 public void llListenControl(int number, int active)
269 {
270 m_LSL_Functions.llListenControl(number, active);
271 }
272
273 public void llListenRemove(int number)
274 {
275 m_LSL_Functions.llListenRemove(number);
276 }
277
278 public void llSensor(string name, string id, int type, double range, double arc)
279 {
280 m_LSL_Functions.llSensor(name, id, type, range, arc);
281 }
282
283 public void llSensorRepeat(string name, string id, int type, double range, double arc, double rate)
284 {
285 m_LSL_Functions.llSensorRepeat(name, id, type, range, arc, rate);
286 }
287
288 public void llSensorRemove()
289 {
290 m_LSL_Functions.llSensorRemove();
291 }
292
293 public string llDetectedName(int number)
294 {
295 return m_LSL_Functions.llDetectedName(number);
296 }
297
298 public string llDetectedKey(int number)
299 {
300 return m_LSL_Functions.llDetectedKey(number);
301 }
302
303 public string llDetectedOwner(int number)
304 {
305 return m_LSL_Functions.llDetectedOwner(number);
306 }
307
308 public int llDetectedType(int number)
309 {
310 return m_LSL_Functions.llDetectedType(number);
311 }
312
313 public vector llDetectedPos(int number)
314 {
315 return m_LSL_Functions.llDetectedPos(number);
316 }
317
318 public vector llDetectedVel(int number)
319 {
320 return m_LSL_Functions.llDetectedVel(number);
321 }
322
323 public vector llDetectedGrab(int number)
324 {
325 return m_LSL_Functions.llDetectedGrab(number);
326 }
327
328 public rotation llDetectedRot(int number)
329 {
330 return m_LSL_Functions.llDetectedRot(number);
331 }
332
333 public int llDetectedGroup(int number)
334 {
335 return m_LSL_Functions.llDetectedGroup(number);
336 }
337
338 public int llDetectedLinkNumber(int number)
339 {
340 return m_LSL_Functions.llDetectedLinkNumber(number);
341 }
342
343 //
344 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
345 //
346 public void llDie()
347 {
348 m_LSL_Functions.llDie();
349 }
350
351 public double llGround(vector offset)
352 {
353 return m_LSL_Functions.llGround(offset);
354 }
355
356 public double llCloud(vector offset)
357 {
358 return m_LSL_Functions.llCloud(offset);
359 }
360
361 public vector llWind(vector offset)
362 {
363 return m_LSL_Functions.llWind(offset);
364 }
365
366 public void llSetStatus(int status, int value)
367 {
368 m_LSL_Functions.llSetStatus(status, value);
369 }
370
371 public int llGetStatus(int status)
372 {
373 return m_LSL_Functions.llGetStatus(status);
374 }
375
376 public void llSetScale(vector scale)
377 {
378 m_LSL_Functions.llSetScale(scale);
379 }
380
381 public vector llGetScale()
382 {
383 return m_LSL_Functions.llGetScale();
384 }
385
386 public void llSetColor(vector color, int face)
387 {
388 m_LSL_Functions.llSetColor(color, face);
389 }
390
391 public double llGetAlpha(int face)
392 {
393 return m_LSL_Functions.llGetAlpha(face);
394 }
395
396 public void llSetAlpha(double alpha, int face)
397 {
398 m_LSL_Functions.llSetAlpha(alpha, face);
399 }
400
401 public vector llGetColor(int face)
402 {
403 return m_LSL_Functions.llGetColor(face);
404 }
405
406 public void llSetTexture(string texture, int face)
407 {
408 m_LSL_Functions.llSetTexture(texture, face);
409 }
410
411 public void llScaleTexture(double u, double v, int face)
412 {
413 m_LSL_Functions.llScaleTexture(u, v, face);
414 }
415
416 public void llOffsetTexture(double u, double v, int face)
417 {
418 m_LSL_Functions.llOffsetTexture(u, v, face);
419 }
420
421 public void llRotateTexture(double rotation, int face)
422 {
423 m_LSL_Functions.llRotateTexture(rotation, face);
424 }
425
426 public string llGetTexture(int face)
427 {
428 return m_LSL_Functions.llGetTexture(face);
429 }
430
431 //
432 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
433 //
434 public void llSetPos(vector pos)
435 {
436 m_LSL_Functions.llSetPos(pos);
437 }
438
439 public vector llGetPos()
440 {
441 return m_LSL_Functions.llGetPos();
442 }
443
444 public vector llGetLocalPos()
445 {
446 return m_LSL_Functions.llGetLocalPos();
447 }
448
449 public void llSetRot(rotation rot)
450 {
451 m_LSL_Functions.llSetRot(rot);
452 }
453
454 public rotation llGetRot()
455 {
456 return m_LSL_Functions.llGetRot();
457 }
458
459 public rotation llGetLocalRot()
460 {
461 return m_LSL_Functions.llGetLocalRot();
462 }
463
464 public void llSetForce(vector force, int local)
465 {
466 m_LSL_Functions.llSetForce(force, local);
467 }
468
469 public vector llGetForce()
470 {
471 return m_LSL_Functions.llGetForce();
472 }
473
474 public int llTarget(vector position, double range)
475 {
476 return m_LSL_Functions.llTarget(position, range);
477 }
478
479 public void llTargetRemove(int number)
480 {
481 m_LSL_Functions.llTargetRemove(number);
482 }
483
484 public int llRotTarget(rotation rot, double error)
485 {
486 return m_LSL_Functions.llRotTarget(rot, error);
487 }
488
489 public void llRotTargetRemove(int number)
490 {
491 m_LSL_Functions.llRotTargetRemove(number);
492 }
493
494 public void llMoveToTarget(vector target, double tau)
495 {
496 m_LSL_Functions.llMoveToTarget(target, tau);
497 }
498
499 public void llStopMoveToTarget()
500 {
501 m_LSL_Functions.llStopMoveToTarget();
502 }
503
504 public void llApplyImpulse(vector force, int local)
505 {
506 m_LSL_Functions.llApplyImpulse(force, local);
507 }
508
509 //
510 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
511 //
512 public void llApplyRotationalImpulse(vector force, int local)
513 {
514 m_LSL_Functions.llApplyRotationalImpulse(force, local);
515 }
516
517 public void llSetTorque(vector torque, int local)
518 {
519 m_LSL_Functions.llSetTorque(torque, local);
520 }
521
522 public vector llGetTorque()
523 {
524 return m_LSL_Functions.llGetTorque();
525 }
526
527 public void llSetForceAndTorque(vector force, vector torque, int local)
528 {
529 m_LSL_Functions.llSetForceAndTorque(force, torque, local);
530 }
531
532 public vector llGetVel()
533 {
534 return m_LSL_Functions.llGetVel();
535 }
536
537 public vector llGetAccel()
538 {
539 return m_LSL_Functions.llGetAccel();
540 }
541
542 public vector llGetOmega()
543 {
544 return m_LSL_Functions.llGetOmega();
545 }
546
547 public double llGetTimeOfDay()
548 {
549 return m_LSL_Functions.llGetTimeOfDay();
550 }
551
552 public double llGetWallclock()
553 {
554 return m_LSL_Functions.llGetWallclock();
555 }
556
557 public double llGetTime()
558 {
559 return m_LSL_Functions.llGetTime();
560 }
561
562 public void llResetTime()
563 {
564 m_LSL_Functions.llResetTime();
565 }
566
567 public double llGetAndResetTime()
568 {
569 return m_LSL_Functions.llGetAndResetTime();
570 }
571
572 public void llSound()
573 {
574 m_LSL_Functions.llSound();
575 }
576
577 public void llPlaySound(string sound, double volume)
578 {
579 m_LSL_Functions.llPlaySound(sound, volume);
580 }
581
582 public void llLoopSound(string sound, double volume)
583 {
584 m_LSL_Functions.llLoopSound(sound, volume);
585 }
586
587 public void llLoopSoundMaster(string sound, double volume)
588 {
589 m_LSL_Functions.llLoopSoundMaster(sound, volume);
590 }
591
592 public void llLoopSoundSlave(string sound, double volume)
593 {
594 m_LSL_Functions.llLoopSoundSlave(sound, volume);
595 }
596
597 public void llPlaySoundSlave(string sound, double volume)
598 {
599 m_LSL_Functions.llPlaySoundSlave(sound, volume);
600 }
601
602 //
603 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
604 //
605 public void llTriggerSound(string sound, double volume)
606 {
607 m_LSL_Functions.llTriggerSound(sound, volume);
608 }
609
610 public void llStopSound()
611 {
612 m_LSL_Functions.llStopSound();
613 }
614
615 public void llPreloadSound(string sound)
616 {
617 m_LSL_Functions.llPreloadSound(sound);
618 }
619
620 public string llGetSubString(string src, int start, int end)
621 {
622 return m_LSL_Functions.llGetSubString(src, start, end);
623 }
624
625 public string llDeleteSubString(string src, int start, int end)
626 {
627 return m_LSL_Functions.llDeleteSubString(src, start, end);
628 }
629
630 public string llInsertString(string dst, int position, string src)
631 {
632 return m_LSL_Functions.llInsertString(dst, position, src);
633 }
634
635 public string llToUpper(string source)
636 {
637 return m_LSL_Functions.llToUpper(source);
638 }
639
640 public string llToLower(string source)
641 {
642 return m_LSL_Functions.llToLower(source);
643 }
644
645 public int llGiveMoney(string destination, int amount)
646 {
647 return m_LSL_Functions.llGiveMoney(destination, amount);
648 }
649
650 public void llMakeExplosion()
651 {
652 m_LSL_Functions.llMakeExplosion();
653 }
654
655 public void llMakeFountain()
656 {
657 m_LSL_Functions.llMakeFountain();
658 }
659
660 public void llMakeSmoke()
661 {
662 m_LSL_Functions.llMakeSmoke();
663 }
664
665 public void llMakeFire()
666 {
667 m_LSL_Functions.llMakeFire();
668 }
669
670 public void llRezObject(string inventory, vector pos, rotation rot, int param)
671 {
672 m_LSL_Functions.llRezObject(inventory, pos, rot, param);
673 }
674
675 public void llLookAt(vector target, double strength, double damping)
676 {
677 m_LSL_Functions.llLookAt(target, strength, damping);
678 }
679
680 public void llStopLookAt()
681 {
682 m_LSL_Functions.llStopLookAt();
683 }
684
685 public void llSetTimerEvent(double sec)
686 {
687 m_LSL_Functions.llSetTimerEvent(sec);
688 }
689
690 public void llSleep(double sec)
691 {
692 m_LSL_Functions.llSleep(sec);
693 }
694
695 //
696 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
697 //
698 public double llGetMass()
699 {
700 return m_LSL_Functions.llGetMass();
701 }
702
703 public void llCollisionFilter(string name, string id, int accept)
704 {
705 m_LSL_Functions.llCollisionFilter(name, id, accept);
706 }
707
708 public void llTakeControls(int controls, int accept, int pass_on)
709 {
710 m_LSL_Functions.llTakeControls(controls, accept, pass_on);
711 }
712
713 public void llReleaseControls()
714 {
715 m_LSL_Functions.llReleaseControls();
716 }
717
718 public void llAttachToAvatar(int attachment)
719 {
720 m_LSL_Functions.llAttachToAvatar(attachment);
721 }
722
723 public void llDetachFromAvatar()
724 {
725 m_LSL_Functions.llDetachFromAvatar();
726 }
727
728 public void llTakeCamera()
729 {
730 m_LSL_Functions.llTakeCamera();
731 }
732
733 public void llReleaseCamera()
734 {
735 m_LSL_Functions.llReleaseCamera();
736 }
737
738 public string llGetOwner()
739 {
740 return m_LSL_Functions.llGetOwner();
741 }
742
743 public void llInstantMessage(string user, string message)
744 {
745 m_LSL_Functions.llInstantMessage(user, message);
746 }
747
748 public void llEmail(string address, string subject, string message)
749 {
750 m_LSL_Functions.llEmail(address, subject, message);
751 }
752
753 public void llGetNextEmail(string address, string subject)
754 {
755 m_LSL_Functions.llGetNextEmail(address, subject);
756 }
757
758 public string llGetKey()
759 {
760 return m_LSL_Functions.llGetKey();
761 }
762
763 public void llSetBuoyancy(double buoyancy)
764 {
765 m_LSL_Functions.llSetBuoyancy(buoyancy);
766 }
767
768 public void llSetHoverHeight(double height, int water, double tau)
769 {
770 m_LSL_Functions.llSetHoverHeight(height, water, tau);
771 }
772
773 public void llStopHover()
774 {
775 m_LSL_Functions.llStopHover();
776 }
777
778 public void llMinEventDelay(double delay)
779 {
780 m_LSL_Functions.llMinEventDelay(delay);
781 }
782
783 public void llSoundPreload()
784 {
785 m_LSL_Functions.llSoundPreload();
786 }
787
788 public void llRotLookAt(rotation target, double strength, double damping)
789 {
790 m_LSL_Functions.llRotLookAt(target, strength, damping);
791 }
792
793 //
794 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
795 //
796 public int llStringLength(string str)
797 {
798 return m_LSL_Functions.llStringLength(str);
799 }
800
801 public void llStartAnimation(string anim)
802 {
803 m_LSL_Functions.llStartAnimation(anim);
804 }
805
806 public void llStopAnimation(string anim)
807 {
808 m_LSL_Functions.llStopAnimation(anim);
809 }
810
811 public void llPointAt()
812 {
813 m_LSL_Functions.llPointAt();
814 }
815
816 public void llStopPointAt()
817 {
818 m_LSL_Functions.llStopPointAt();
819 }
820
821 public void llTargetOmega(vector axis, double spinrate, double gain)
822 {
823 m_LSL_Functions.llTargetOmega(axis, spinrate, gain);
824 }
825
826 public int llGetStartParameter()
827 {
828 return m_LSL_Functions.llGetStartParameter();
829 }
830
831 public void llGodLikeRezObject(string inventory, vector pos)
832 {
833 m_LSL_Functions.llGodLikeRezObject(inventory, pos);
834 }
835
836 public void llRequestPermissions(string agent, int perm)
837 {
838 m_LSL_Functions.llRequestPermissions(agent, perm);
839 }
840
841 public string llGetPermissionsKey()
842 {
843 return m_LSL_Functions.llGetPermissionsKey();
844 }
845
846 public int llGetPermissions()
847 {
848 return m_LSL_Functions.llGetPermissions();
849 }
850
851 public int llGetLinkNumber()
852 {
853 return m_LSL_Functions.llGetLinkNumber();
854 }
855
856 public void llSetLinkColor(int linknumber, vector color, int face)
857 {
858 m_LSL_Functions.llSetLinkColor(linknumber, color, face);
859 }
860
861 public void llCreateLink(string target, int parent)
862 {
863 m_LSL_Functions.llCreateLink(target, parent);
864 }
865
866 public void llBreakLink(int linknum)
867 {
868 m_LSL_Functions.llBreakLink(linknum);
869 }
870
871 public void llBreakAllLinks()
872 {
873 m_LSL_Functions.llBreakAllLinks();
874 }
875
876 public string llGetLinkKey(int linknum)
877 {
878 return m_LSL_Functions.llGetLinkKey(linknum);
879 }
880
881 public string llGetLinkName(int linknum)
882 {
883 return m_LSL_Functions.llGetLinkName(linknum);
884 }
885
886 public int llGetInventoryNumber(int type)
887 {
888 return m_LSL_Functions.llGetInventoryNumber(type);
889 }
890
891 public string llGetInventoryName(int type, int number)
892 {
893 return m_LSL_Functions.llGetInventoryName(type, number);
894 }
895
896 //
897 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
898 //
899 public void llSetScriptState(string name, int run)
900 {
901 m_LSL_Functions.llSetScriptState(name, run);
902 }
903
904 public double llGetEnergy()
905 {
906 return m_LSL_Functions.llGetEnergy();
907 }
908
909 public void llGiveInventory(string destination, string inventory)
910 {
911 m_LSL_Functions.llGiveInventory(destination, inventory);
912 }
913
914 public void llRemoveInventory(string item)
915 {
916 m_LSL_Functions.llRemoveInventory(item);
917 }
918
919 public void llSetText(string text, vector color, double alpha)
920 {
921 m_LSL_Functions.llSetText(text, color, alpha);
922 }
923
924 public double llWater(vector offset)
925 {
926 return m_LSL_Functions.llWater(offset);
927 }
928
929 public void llPassTouches(int pass)
930 {
931 m_LSL_Functions.llPassTouches(pass);
932 }
933
934 public string llRequestAgentData(string id, int data)
935 {
936 return m_LSL_Functions.llRequestAgentData(id, data);
937 }
938
939 public string llRequestInventoryData(string name)
940 {
941 return m_LSL_Functions.llRequestInventoryData(name);
942 }
943
944 public void llSetDamage(double damage)
945 {
946 m_LSL_Functions.llSetDamage(damage);
947 }
948
949 public void llTeleportAgentHome(string agent)
950 {
951 m_LSL_Functions.llTeleportAgentHome(agent);
952 }
953
954 public void llModifyLand(int action, int brush)
955 {
956 m_LSL_Functions.llModifyLand(action, brush);
957 }
958
959 public void llCollisionSound(string impact_sound, double impact_volume)
960 {
961 m_LSL_Functions.llCollisionSound(impact_sound, impact_volume);
962 }
963
964 public void llCollisionSprite(string impact_sprite)
965 {
966 m_LSL_Functions.llCollisionSprite(impact_sprite);
967 }
968
969 public string llGetAnimation(string id)
970 {
971 return m_LSL_Functions.llGetAnimation(id);
972 }
973
974 public void llResetScript()
975 {
976 m_LSL_Functions.llResetScript();
977 }
978
979 public void llMessageLinked(int linknum, int num, string str, string id)
980 {
981 m_LSL_Functions.llMessageLinked(linknum, num, str, id);
982 }
983
984 public void llPushObject(string target, vector impulse, vector ang_impulse, int local)
985 {
986 m_LSL_Functions.llPushObject(target, impulse, ang_impulse, local);
987 }
988
989 public void llPassCollisions(int pass)
990 {
991 m_LSL_Functions.llPassCollisions(pass);
992 }
993
994 public string llGetScriptName()
995 {
996 return m_LSL_Functions.llGetScriptName();
997 }
998
999 public int llGetNumberOfSides()
1000 {
1001 return m_LSL_Functions.llGetNumberOfSides();
1002 }
1003
1004 //
1005 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1006 //
1007 public rotation llAxisAngle2Rot(vector axis, double angle)
1008 {
1009 return m_LSL_Functions.llAxisAngle2Rot(axis, angle);
1010 }
1011
1012 public vector llRot2Axis(rotation rot)
1013 {
1014 return m_LSL_Functions.llRot2Axis(rot);
1015 }
1016
1017 public void llRot2Angle()
1018 {
1019 m_LSL_Functions.llRot2Angle();
1020 }
1021
1022 public double llAcos(double val)
1023 {
1024 return m_LSL_Functions.llAcos(val);
1025 }
1026
1027 public double llAsin(double val)
1028 {
1029 return m_LSL_Functions.llAsin(val);
1030 }
1031
1032 public double llAngleBetween(rotation a, rotation b)
1033 {
1034 return m_LSL_Functions.llAngleBetween(a, b);
1035 }
1036
1037 public string llGetInventoryKey(string name)
1038 {
1039 return m_LSL_Functions.llGetInventoryKey(name);
1040 }
1041
1042 public void llAllowInventoryDrop(int add)
1043 {
1044 m_LSL_Functions.llAllowInventoryDrop(add);
1045 }
1046
1047 public vector llGetSunDirection()
1048 {
1049 return m_LSL_Functions.llGetSunDirection();
1050 }
1051
1052 public vector llGetTextureOffset(int face)
1053 {
1054 return m_LSL_Functions.llGetTextureOffset(face);
1055 }
1056
1057 public vector llGetTextureScale(int side)
1058 {
1059 return m_LSL_Functions.llGetTextureScale(side);
1060 }
1061
1062 public double llGetTextureRot(int side)
1063 {
1064 return m_LSL_Functions.llGetTextureRot(side);
1065 }
1066
1067 public int llSubStringIndex(string source, string pattern)
1068 {
1069 return m_LSL_Functions.llSubStringIndex(source, pattern);
1070 }
1071
1072 public string llGetOwnerKey(string id)
1073 {
1074 return m_LSL_Functions.llGetOwnerKey(id);
1075 }
1076
1077 public vector llGetCenterOfMass()
1078 {
1079 return m_LSL_Functions.llGetCenterOfMass();
1080 }
1081
1082 public LSL_Types.list llListSort(LSL_Types.list src, int stride, int ascending)
1083 {
1084 return m_LSL_Functions.llListSort(src, stride, ascending);
1085 }
1086
1087 public int llGetListLength(LSL_Types.list src)
1088 {
1089 return m_LSL_Functions.llGetListLength(src);
1090 }
1091
1092 //
1093 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1094 //
1095 public int llList2Integer(LSL_Types.list src, int index)
1096 {
1097 return m_LSL_Functions.llList2Integer(src, index);
1098 }
1099
1100 public double osList2Double(LSL_Types.list src, int index)
1101 {
1102 return m_LSL_Functions.osList2Double(src, index);
1103 }
1104
1105 public string llList2String(LSL_Types.list src, int index)
1106 {
1107 return m_LSL_Functions.llList2String(src, index);
1108 }
1109
1110 public string llList2Key(LSL_Types.list src, int index)
1111 {
1112 return m_LSL_Functions.llList2Key(src, index);
1113 }
1114
1115 public vector llList2Vector(LSL_Types.list src, int index)
1116 {
1117 return m_LSL_Functions.llList2Vector(src, index);
1118 }
1119
1120 public rotation llList2Rot(LSL_Types.list src, int index)
1121 {
1122 return m_LSL_Functions.llList2Rot(src, index);
1123 }
1124
1125 public LSL_Types.list llList2List(LSL_Types.list src, int start, int end)
1126 {
1127 return m_LSL_Functions.llList2List(src, start, end);
1128 }
1129
1130 public LSL_Types.list llDeleteSubList(LSL_Types.list src, int start, int end)
1131 {
1132 return m_LSL_Functions.llDeleteSubList(src, start, end);
1133 }
1134
1135 public int llGetListEntryType(LSL_Types.list src, int index)
1136 {
1137 return m_LSL_Functions.llGetListEntryType(src, index);
1138 }
1139
1140 public string llList2CSV(LSL_Types.list src)
1141 {
1142 return m_LSL_Functions.llList2CSV(src);
1143 }
1144
1145 public LSL_Types.list llCSV2List(string src)
1146 {
1147 return m_LSL_Functions.llCSV2List(src);
1148 }
1149
1150 public LSL_Types.list llListRandomize(LSL_Types.list src, int stride)
1151 {
1152 return m_LSL_Functions.llListRandomize(src, stride);
1153 }
1154
1155 public LSL_Types.list llList2ListStrided(LSL_Types.list src, int start, int end, int stride)
1156 {
1157 return m_LSL_Functions.llList2ListStrided(src, start, end, stride);
1158 }
1159
1160 public vector llGetRegionCorner()
1161 {
1162 return m_LSL_Functions.llGetRegionCorner();
1163 }
1164
1165 public LSL_Types.list llListInsertList(LSL_Types.list dest, LSL_Types.list src, int start)
1166 {
1167 return m_LSL_Functions.llListInsertList(dest, src, start);
1168 }
1169
1170 public int llListFindList(LSL_Types.list src, LSL_Types.list test)
1171 {
1172 return m_LSL_Functions.llListFindList(src, test);
1173 }
1174
1175 public string llGetObjectName()
1176 {
1177 return m_LSL_Functions.llGetObjectName();
1178 }
1179
1180 public void llSetObjectName(string name)
1181 {
1182 m_LSL_Functions.llSetObjectName(name);
1183 }
1184
1185 public string llGetDate()
1186 {
1187 return m_LSL_Functions.llGetDate();
1188 }
1189
1190 public int llEdgeOfWorld(vector pos, vector dir)
1191 {
1192 return m_LSL_Functions.llEdgeOfWorld(pos, dir);
1193 }
1194
1195 public int llGetAgentInfo(string id)
1196 {
1197 return m_LSL_Functions.llGetAgentInfo(id);
1198 }
1199
1200 //
1201 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1202 //
1203 public void llAdjustSoundVolume(double volume)
1204 {
1205 m_LSL_Functions.llAdjustSoundVolume(volume);
1206 }
1207
1208 public void llSetSoundQueueing(int queue)
1209 {
1210 m_LSL_Functions.llSetSoundQueueing(queue);
1211 }
1212
1213 public void llSetSoundRadius(double radius)
1214 {
1215 m_LSL_Functions.llSetSoundRadius(radius);
1216 }
1217
1218 public string llKey2Name(string id)
1219 {
1220 return m_LSL_Functions.llKey2Name(id);
1221 }
1222
1223 public void llSetTextureAnim(int mode, int face, int sizex, int sizey, double start, double length, double rate)
1224 {
1225 m_LSL_Functions.llSetTextureAnim(mode, face, sizex, sizey, start, length, rate);
1226 }
1227
1228 public void llTriggerSoundLimited(string sound, double volume, vector top_north_east, vector bottom_south_west)
1229 {
1230 m_LSL_Functions.llTriggerSoundLimited(sound, volume, top_north_east, bottom_south_west);
1231 }
1232
1233 public void llEjectFromLand(string pest)
1234 {
1235 m_LSL_Functions.llEjectFromLand(pest);
1236 }
1237
1238 public void llParseString2List()
1239 {
1240 m_LSL_Functions.llParseString2List();
1241 }
1242
1243 public int llOverMyLand(string id)
1244 {
1245 return m_LSL_Functions.llOverMyLand(id);
1246 }
1247
1248 public string llGetLandOwnerAt(vector pos)
1249 {
1250 return m_LSL_Functions.llGetLandOwnerAt(pos);
1251 }
1252
1253 public string llGetNotecardLine(string name, int line)
1254 {
1255 return m_LSL_Functions.llGetNotecardLine(name, line);
1256 }
1257
1258 public vector llGetAgentSize(string id)
1259 {
1260 return m_LSL_Functions.llGetAgentSize(id);
1261 }
1262
1263 public int llSameGroup(string agent)
1264 {
1265 return m_LSL_Functions.llSameGroup(agent);
1266 }
1267
1268 public void llUnSit(string id)
1269 {
1270 m_LSL_Functions.llUnSit(id);
1271 }
1272
1273 public vector llGroundSlope(vector offset)
1274 {
1275 return m_LSL_Functions.llGroundSlope(offset);
1276 }
1277
1278 public vector llGroundNormal(vector offset)
1279 {
1280 return m_LSL_Functions.llGroundNormal(offset);
1281 }
1282
1283 public vector llGroundContour(vector offset)
1284 {
1285 return m_LSL_Functions.llGroundContour(offset);
1286 }
1287
1288 public int llGetAttached()
1289 {
1290 return m_LSL_Functions.llGetAttached();
1291 }
1292
1293 public int llGetFreeMemory()
1294 {
1295 return m_LSL_Functions.llGetFreeMemory();
1296 }
1297
1298 public string llGetRegionName()
1299 {
1300 return m_LSL_Functions.llGetRegionName();
1301 }
1302
1303 public double llGetRegionTimeDilation()
1304 {
1305 return m_LSL_Functions.llGetRegionTimeDilation();
1306 }
1307
1308 public double llGetRegionFPS()
1309 {
1310 return m_LSL_Functions.llGetRegionFPS();
1311 }
1312
1313 //
1314 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1315 //
1316 public void llParticleSystem(List<Object> rules)
1317 {
1318 m_LSL_Functions.llParticleSystem(rules);
1319 }
1320
1321 public void llGroundRepel(double height, int water, double tau)
1322 {
1323 m_LSL_Functions.llGroundRepel(height, water, tau);
1324 }
1325
1326 public void llGiveInventoryList()
1327 {
1328 m_LSL_Functions.llGiveInventoryList();
1329 }
1330
1331 public void llSetVehicleType(int type)
1332 {
1333 m_LSL_Functions.llSetVehicleType(type);
1334 }
1335
1336 public void llSetVehicledoubleParam(int param, double value)
1337 {
1338 m_LSL_Functions.llSetVehicledoubleParam(param, value);
1339 }
1340
1341 public void llSetVehicleVectorParam(int param, vector vec)
1342 {
1343 m_LSL_Functions.llSetVehicleVectorParam(param, vec);
1344 }
1345
1346 public void llSetVehicleRotationParam(int param, rotation rot)
1347 {
1348 m_LSL_Functions.llSetVehicleRotationParam(param, rot);
1349 }
1350
1351 public void llSetVehicleFlags(int flags)
1352 {
1353 m_LSL_Functions.llSetVehicleFlags(flags);
1354 }
1355
1356 public void llRemoveVehicleFlags(int flags)
1357 {
1358 m_LSL_Functions.llRemoveVehicleFlags(flags);
1359 }
1360
1361 public void llSitTarget(vector offset, rotation rot)
1362 {
1363 m_LSL_Functions.llSitTarget(offset, rot);
1364 }
1365
1366 public string llAvatarOnSitTarget()
1367 {
1368 return m_LSL_Functions.llAvatarOnSitTarget();
1369 }
1370
1371 public void llAddToLandPassList(string avatar, double hours)
1372 {
1373 m_LSL_Functions.llAddToLandPassList(avatar, hours);
1374 }
1375
1376 public void llSetTouchText(string text)
1377 {
1378 m_LSL_Functions.llSetTouchText(text);
1379 }
1380
1381 public void llSetSitText(string text)
1382 {
1383 m_LSL_Functions.llSetSitText(text);
1384 }
1385
1386 public void llSetCameraEyeOffset(vector offset)
1387 {
1388 m_LSL_Functions.llSetCameraEyeOffset(offset);
1389 }
1390
1391 public void llSetCameraAtOffset(vector offset)
1392 {
1393 m_LSL_Functions.llSetCameraAtOffset(offset);
1394 }
1395
1396 public string llDumpList2String(LSL_Types.list src, string seperator)
1397 {
1398 return m_LSL_Functions.llDumpList2String(src, seperator);
1399 }
1400
1401 public void llScriptDanger(vector pos)
1402 {
1403 m_LSL_Functions.llScriptDanger(pos);
1404 }
1405
1406 public void llDialog(string avatar, string message, LSL_Types.list buttons, int chat_channel)
1407 {
1408 m_LSL_Functions.llDialog(avatar, message, buttons, chat_channel);
1409 }
1410
1411 public void llVolumeDetect(int detect)
1412 {
1413 m_LSL_Functions.llVolumeDetect(detect);
1414 }
1415
1416 public void llResetOtherScript(string name)
1417 {
1418 m_LSL_Functions.llResetOtherScript(name);
1419 }
1420
1421 public int llGetScriptState(string name)
1422 {
1423 return m_LSL_Functions.llGetScriptState(name);
1424 }
1425
1426 public void llRemoteLoadScript()
1427 {
1428 m_LSL_Functions.llRemoteLoadScript();
1429 }
1430
1431 public void llSetRemoteScriptAccessPin(int pin)
1432 {
1433 m_LSL_Functions.llSetRemoteScriptAccessPin(pin);
1434 }
1435
1436 public void llRemoteLoadScriptPin(string target, string name, int pin, int running, int start_param)
1437 {
1438 m_LSL_Functions.llRemoteLoadScriptPin(target, name, pin, running, start_param);
1439 }
1440
1441 //
1442 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1443 //
1444 public void llOpenRemoteDataChannel()
1445 {
1446 m_LSL_Functions.llOpenRemoteDataChannel();
1447 }
1448
1449 public string llSendRemoteData(string channel, string dest, int idata, string sdata)
1450 {
1451 return m_LSL_Functions.llSendRemoteData(channel, dest, idata, sdata);
1452 }
1453
1454 public void llRemoteDataReply(string channel, string message_id, string sdata, int idata)
1455 {
1456 m_LSL_Functions.llRemoteDataReply(channel, message_id, sdata, idata);
1457 }
1458
1459 public void llCloseRemoteDataChannel(string channel)
1460 {
1461 m_LSL_Functions.llCloseRemoteDataChannel(channel);
1462 }
1463
1464 public string llMD5String(string src, int nonce)
1465 {
1466 return m_LSL_Functions.llMD5String(src, nonce);
1467 }
1468
1469 public void llSetPrimitiveParams(LSL_Types.list rules)
1470 {
1471 m_LSL_Functions.llSetPrimitiveParams(rules);
1472 }
1473
1474 public string llStringToBase64(string str)
1475 {
1476 return m_LSL_Functions.llStringToBase64(str);
1477 }
1478
1479 public string llBase64ToString(string str)
1480 {
1481 return m_LSL_Functions.llBase64ToString(str);
1482 }
1483
1484 public void llXorBase64Strings()
1485 {
1486 m_LSL_Functions.llXorBase64Strings();
1487 }
1488
1489 public void llRemoteDataSetRegion()
1490 {
1491 m_LSL_Functions.llRemoteDataSetRegion();
1492 }
1493
1494 public double llLog10(double val)
1495 {
1496 return m_LSL_Functions.llLog10(val);
1497 }
1498
1499 public double llLog(double val)
1500 {
1501 return m_LSL_Functions.llLog(val);
1502 }
1503
1504 public LSL_Types.list llGetAnimationList(string id)
1505 {
1506 return m_LSL_Functions.llGetAnimationList(id);
1507 }
1508
1509 public void llSetParcelMusicURL(string url)
1510 {
1511 m_LSL_Functions.llSetParcelMusicURL(url);
1512 }
1513
1514 public vector llGetRootPosition()
1515 {
1516 return m_LSL_Functions.llGetRootPosition();
1517 }
1518
1519 public rotation llGetRootRotation()
1520 {
1521 return m_LSL_Functions.llGetRootRotation();
1522 }
1523
1524 public string llGetObjectDesc()
1525 {
1526 return m_LSL_Functions.llGetObjectDesc();
1527 }
1528
1529 public void llSetObjectDesc(string desc)
1530 {
1531 m_LSL_Functions.llSetObjectDesc(desc);
1532 }
1533
1534 public string llGetCreator()
1535 {
1536 return m_LSL_Functions.llGetCreator();
1537 }
1538
1539 public string llGetTimestamp()
1540 {
1541 return m_LSL_Functions.llGetTimestamp();
1542 }
1543
1544 public void llSetLinkAlpha(int linknumber, double alpha, int face)
1545 {
1546 m_LSL_Functions.llSetLinkAlpha(linknumber, alpha, face);
1547 }
1548
1549 public int llGetNumberOfPrims()
1550 {
1551 return m_LSL_Functions.llGetNumberOfPrims();
1552 }
1553
1554 public string llGetNumberOfNotecardLines(string name)
1555 {
1556 return m_LSL_Functions.llGetNumberOfNotecardLines(name);
1557 }
1558
1559 public LSL_Types.list llGetBoundingBox(string obj)
1560 {
1561 return m_LSL_Functions.llGetBoundingBox(obj);
1562 }
1563
1564 public vector llGetGeometricCenter()
1565 {
1566 return m_LSL_Functions.llGetGeometricCenter();
1567 }
1568
1569 public void llGetPrimitiveParams()
1570 {
1571 m_LSL_Functions.llGetPrimitiveParams();
1572 }
1573
1574 //
1575 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1576 //
1577 public string llIntegerToBase64(int number)
1578 {
1579 return m_LSL_Functions.llIntegerToBase64(number);
1580 }
1581
1582 public int llBase64ToInteger(string str)
1583 {
1584 return m_LSL_Functions.llBase64ToInteger(str);
1585 }
1586
1587 public double llGetGMTclock()
1588 {
1589 return m_LSL_Functions.llGetGMTclock();
1590 }
1591
1592 public string llGetSimulatorHostname()
1593 {
1594 return m_LSL_Functions.llGetSimulatorHostname();
1595 }
1596
1597 public void llSetLocalRot(rotation rot)
1598 {
1599 m_LSL_Functions.llSetLocalRot(rot);
1600 }
1601
1602 public LSL_Types.list llParseStringKeepNulls(string src, LSL_Types.list seperators, LSL_Types.list spacers)
1603 {
1604 return m_LSL_Functions.llParseStringKeepNulls(src, seperators, spacers);
1605 }
1606
1607 public void llRezAtRoot(string inventory, vector position, vector velocity, rotation rot, int param)
1608 {
1609 m_LSL_Functions.llRezAtRoot(inventory, position, velocity, rot, param);
1610 }
1611
1612 public int llGetObjectPermMask(int mask)
1613 {
1614 return m_LSL_Functions.llGetObjectPermMask(mask);
1615 }
1616
1617 public void llSetObjectPermMask(int mask, int value)
1618 {
1619 m_LSL_Functions.llSetObjectPermMask(mask, value);
1620 }
1621
1622 public void llGetInventoryPermMask(string item, int mask)
1623 {
1624 m_LSL_Functions.llGetInventoryPermMask(item, mask);
1625 }
1626
1627 public void llSetInventoryPermMask(string item, int mask, int value)
1628 {
1629 m_LSL_Functions.llSetInventoryPermMask(item, mask, value);
1630 }
1631
1632 public string llGetInventoryCreator(string item)
1633 {
1634 return m_LSL_Functions.llGetInventoryCreator(item);
1635 }
1636
1637 public void llOwnerSay(string msg)
1638 {
1639 m_LSL_Functions.llOwnerSay(msg);
1640 }
1641
1642 public void llRequestSimulatorData(string simulator, int data)
1643 {
1644 m_LSL_Functions.llRequestSimulatorData(simulator, data);
1645 }
1646
1647 public void llForceMouselook(int mouselook)
1648 {
1649 m_LSL_Functions.llForceMouselook(mouselook);
1650 }
1651
1652 public double llGetObjectMass(string id)
1653 {
1654 return m_LSL_Functions.llGetObjectMass(id);
1655 }
1656
1657 public LSL_Types.list llListReplaceList(LSL_Types.list dest, LSL_Types.list src, int start, int end)
1658 {
1659 return m_LSL_Functions.llListReplaceList(dest, src, start, end);
1660 }
1661
1662 public void llLoadURL(string avatar_id, string message, string url)
1663 {
1664 m_LSL_Functions.llLoadURL(avatar_id, message, url);
1665 }
1666
1667 public void llParcelMediaCommandList(LSL_Types.list commandList)
1668 {
1669 m_LSL_Functions.llParcelMediaCommandList(commandList);
1670 }
1671
1672 public void llParcelMediaQuery()
1673 {
1674 m_LSL_Functions.llParcelMediaQuery();
1675 }
1676
1677 public int llModPow(int a, int b, int c)
1678 {
1679 return m_LSL_Functions.llModPow(a, b, c);
1680 }
1681
1682 //
1683 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1684 //
1685 public int llGetInventoryType(string name)
1686 {
1687 return m_LSL_Functions.llGetInventoryType(name);
1688 }
1689
1690 public void llSetPayPrice(int price, LSL_Types.list quick_pay_buttons)
1691 {
1692 m_LSL_Functions.llSetPayPrice(price, quick_pay_buttons);
1693 }
1694
1695 public vector llGetCameraPos()
1696 {
1697 return m_LSL_Functions.llGetCameraPos();
1698 }
1699
1700 public rotation llGetCameraRot()
1701 {
1702 return m_LSL_Functions.llGetCameraRot();
1703 }
1704
1705 public void llSetPrimURL()
1706 {
1707 m_LSL_Functions.llSetPrimURL();
1708 }
1709
1710 public void llRefreshPrimURL()
1711 {
1712 m_LSL_Functions.llRefreshPrimURL();
1713 }
1714
1715 public string llEscapeURL(string url)
1716 {
1717 return m_LSL_Functions.llEscapeURL(url);
1718 }
1719
1720 public string llUnescapeURL(string url)
1721 {
1722 return m_LSL_Functions.llUnescapeURL(url);
1723 }
1724
1725 public void llMapDestination(string simname, vector pos, vector look_at)
1726 {
1727 m_LSL_Functions.llMapDestination(simname, pos, look_at);
1728 }
1729
1730 public void llAddToLandBanList(string avatar, double hours)
1731 {
1732 m_LSL_Functions.llAddToLandBanList(avatar, hours);
1733 }
1734
1735 public void llRemoveFromLandPassList(string avatar)
1736 {
1737 m_LSL_Functions.llRemoveFromLandPassList(avatar);
1738 }
1739
1740 public void llRemoveFromLandBanList(string avatar)
1741 {
1742 m_LSL_Functions.llRemoveFromLandBanList(avatar);
1743 }
1744
1745 public void llSetCameraParams(LSL_Types.list rules)
1746 {
1747 m_LSL_Functions.llSetCameraParams(rules);
1748 }
1749
1750 public void llClearCameraParams()
1751 {
1752 m_LSL_Functions.llClearCameraParams();
1753 }
1754
1755 public double llListStatistics(int operation, LSL_Types.list src)
1756 {
1757 return m_LSL_Functions.llListStatistics(operation, src);
1758 }
1759
1760 public int llGetUnixTime()
1761 {
1762 return m_LSL_Functions.llGetUnixTime();
1763 }
1764
1765 public int llGetParcelFlags(vector pos)
1766 {
1767 return m_LSL_Functions.llGetParcelFlags(pos);
1768 }
1769
1770 public int llGetRegionFlags()
1771 {
1772 return m_LSL_Functions.llGetRegionFlags();
1773 }
1774
1775 public string llXorBase64StringsCorrect(string str1, string str2)
1776 {
1777 return m_LSL_Functions.llXorBase64StringsCorrect(str1, str2);
1778 }
1779
1780 public string llHTTPRequest(string url, LSL_Types.list parameters, string body)
1781 {
1782 return m_LSL_Functions.llHTTPRequest(url, parameters, body);
1783 }
1784
1785 public void llResetLandBanList()
1786 {
1787 m_LSL_Functions.llResetLandBanList();
1788 }
1789
1790 public void llResetLandPassList()
1791 {
1792 m_LSL_Functions.llResetLandPassList();
1793 }
1794
1795 public int llGetParcelPrimCount(vector pos, int category, int sim_wide)
1796 {
1797 return m_LSL_Functions.llGetParcelPrimCount(pos, category, sim_wide);
1798 }
1799
1800 public LSL_Types.list llGetParcelPrimOwners(vector pos)
1801 {
1802 return m_LSL_Functions.llGetParcelPrimOwners(pos);
1803 }
1804
1805 public int llGetObjectPrimCount(string object_id)
1806 {
1807 return m_LSL_Functions.llGetObjectPrimCount(object_id);
1808 }
1809
1810 //
1811 // DO NOT MODIFY HERE: MODIFY IN LSL_BuiltIn_Commands.cs
1812 //
1813 public int llGetParcelMaxPrims(vector pos, int sim_wide)
1814 {
1815 return m_LSL_Functions.llGetParcelMaxPrims(pos, sim_wide);
1816 }
1817
1818 public LSL_Types.list llGetParcelDetails(vector pos, LSL_Types.list param)
1819 {
1820 return m_LSL_Functions.llGetParcelDetails(pos, param);
1821 }
1822
1823 //
1824 // OpenSim Functions
1825 //
1826 public string osSetDynamicTextureURL(string dynamicID, string contentType, string url, string extraParams,
1827 int timer)
1828 {
1829 return m_LSL_Functions.osSetDynamicTextureURL(dynamicID, contentType, url, extraParams, timer);
1830 }
1831
1832 public double osTerrainGetHeight(int x, int y)
1833 {
1834 return m_LSL_Functions.osTerrainGetHeight(x, y);
1835 }
1836
1837 public int osTerrainSetHeight(int x, int y, double val)
1838 {
1839 return m_LSL_Functions.osTerrainSetHeight(x, y, val);
1840 }
1841
1842 public int osRegionRestart(double seconds)
1843 {
1844 return m_LSL_Functions.osRegionRestart(seconds);
1845 }
1846
1847 // LSL CONSTANTS
1848 public const int TRUE = 1;
1849 public const int FALSE = 0;
1850 public const int STATUS_PHYSICS = 1;
1851 public const int STATUS_ROTATE_X = 2;
1852 public const int STATUS_ROTATE_Y = 4;
1853 public const int STATUS_ROTATE_Z = 8;
1854 public const int STATUS_PHANTOM = 16;
1855 public const int STATUS_SANDBOX = 32;
1856 public const int STATUS_BLOCK_GRAB = 64;
1857 public const int STATUS_DIE_AT_EDGE = 128;
1858 public const int STATUS_RETURN_AT_EDGE = 256;
1859 public const int AGENT = 1;
1860 public const int ACTIVE = 2;
1861 public const int PASSIVE = 4;
1862 public const int SCRIPTED = 8;
1863 public const int CONTROL_FWD = 1;
1864 public const int CONTROL_BACK = 2;
1865 public const int CONTROL_LEFT = 4;
1866 public const int CONTROL_RIGHT = 8;
1867 public const int CONTROL_UP = 16;
1868 public const int CONTROL_DOWN = 32;
1869 public const int CONTROL_ROT_LEFT = 256;
1870 public const int CONTROL_ROT_RIGHT = 512;
1871 public const int CONTROL_LBUTTON = 268435456;
1872 public const int CONTROL_ML_LBUTTON = 1073741824;
1873 public const int PERMISSION_DEBIT = 2;
1874 public const int PERMISSION_TAKE_CONTROLS = 4;
1875 public const int PERMISSION_REMAP_CONTROLS = 8;
1876 public const int PERMISSION_TRIGGER_ANIMATION = 16;
1877 public const int PERMISSION_ATTACH = 32;
1878 public const int PERMISSION_RELEASE_OWNERSHIP = 64;
1879 public const int PERMISSION_CHANGE_LINKS = 128;
1880 public const int PERMISSION_CHANGE_JOINTS = 256;
1881 public const int PERMISSION_CHANGE_PERMISSIONS = 512;
1882 public const int PERMISSION_TRACK_CAMERA = 1024;
1883 public const int AGENT_FLYING = 1;
1884 public const int AGENT_ATTACHMENTS = 2;
1885 public const int AGENT_SCRIPTED = 4;
1886 public const int AGENT_MOUSELOOK = 8;
1887 public const int AGENT_SITTING = 16;
1888 public const int AGENT_ON_OBJECT = 32;
1889 public const int AGENT_AWAY = 64;
1890 public const int AGENT_WALKING = 128;
1891 public const int AGENT_IN_AIR = 256;
1892 public const int AGENT_TYPING = 512;
1893 public const int AGENT_CROUCHING = 1024;
1894 public const int AGENT_BUSY = 2048;
1895 public const int AGENT_ALWAYS_RUN = 4096;
1896 public const int PSYS_PART_INTERP_COLOR_MASK = 1;
1897 public const int PSYS_PART_INTERP_SCALE_MASK = 2;
1898 public const int PSYS_PART_BOUNCE_MASK = 4;
1899 public const int PSYS_PART_WIND_MASK = 8;
1900 public const int PSYS_PART_FOLLOW_SRC_MASK = 16;
1901 public const int PSYS_PART_FOLLOW_VELOCITY_MASK = 32;
1902 public const int PSYS_PART_TARGET_POS_MASK = 64;
1903 public const int PSYS_PART_TARGET_LINEAR_MASK = 128;
1904 public const int PSYS_PART_EMISSIVE_MASK = 256;
1905 public const int PSYS_PART_FLAGS = 0;
1906 public const int PSYS_PART_START_COLOR = 1;
1907 public const int PSYS_PART_START_ALPHA = 2;
1908 public const int PSYS_PART_END_COLOR = 3;
1909 public const int PSYS_PART_END_ALPHA = 4;
1910 public const int PSYS_PART_START_SCALE = 5;
1911 public const int PSYS_PART_END_SCALE = 6;
1912 public const int PSYS_PART_MAX_AGE = 7;
1913 public const int PSYS_SRC_ACCEL = 8;
1914 public const int PSYS_SRC_PATTERN = 9;
1915 public const int PSYS_SRC_INNERANGLE = 10;
1916 public const int PSYS_SRC_OUTERANGLE = 11;
1917 public const int PSYS_SRC_TEXTURE = 12;
1918 public const int PSYS_SRC_BURST_RATE = 13;
1919 public const int PSYS_SRC_BURST_PART_COUNT = 15;
1920 public const int PSYS_SRC_BURST_RADIUS = 16;
1921 public const int PSYS_SRC_BURST_SPEED_MIN = 17;
1922 public const int PSYS_SRC_BURST_SPEED_MAX = 18;
1923 public const int PSYS_SRC_MAX_AGE = 19;
1924 public const int PSYS_SRC_TARGET_KEY = 20;
1925 public const int PSYS_SRC_OMEGA = 21;
1926 public const int PSYS_SRC_ANGLE_BEGIN = 22;
1927 public const int PSYS_SRC_ANGLE_END = 23;
1928 public const int PSYS_SRC_PATTERN_DROP = 1;
1929 public const int PSYS_SRC_PATTERN_EXPLODE = 2;
1930 public const int PSYS_SRC_PATTERN_ANGLE = 4;
1931 public const int PSYS_SRC_PATTERN_ANGLE_CONE = 8;
1932 public const int PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY = 16;
1933 public const int VEHICLE_TYPE_NONE = 0;
1934 public const int VEHICLE_TYPE_SLED = 1;
1935 public const int VEHICLE_TYPE_CAR = 2;
1936 public const int VEHICLE_TYPE_BOAT = 3;
1937 public const int VEHICLE_TYPE_AIRPLANE = 4;
1938 public const int VEHICLE_TYPE_BALLOON = 5;
1939 public const int VEHICLE_LINEAR_FRICTION_TIMESCALE = 16;
1940 public const int VEHICLE_ANGULAR_FRICTION_TIMESCALE = 17;
1941 public const int VEHICLE_LINEAR_MOTOR_DIRECTION = 18;
1942 public const int VEHICLE_LINEAR_MOTOR_OFFSET = 20;
1943 public const int VEHICLE_ANGULAR_MOTOR_DIRECTION = 19;
1944 public const int VEHICLE_HOVER_HEIGHT = 24;
1945 public const int VEHICLE_HOVER_EFFICIENCY = 25;
1946 public const int VEHICLE_HOVER_TIMESCALE = 26;
1947 public const int VEHICLE_BUOYANCY = 27;
1948 public const int VEHICLE_LINEAR_DEFLECTION_EFFICIENCY = 28;
1949 public const int VEHICLE_LINEAR_DEFLECTION_TIMESCALE = 29;
1950 public const int VEHICLE_LINEAR_MOTOR_TIMESCALE = 30;
1951 public const int VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE = 31;
1952 public const int VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY = 32;
1953 public const int VEHICLE_ANGULAR_DEFLECTION_TIMESCALE = 33;
1954 public const int VEHICLE_ANGULAR_MOTOR_TIMESCALE = 34;
1955 public const int VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE = 35;
1956 public const int VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY = 36;
1957 public const int VEHICLE_VERTICAL_ATTRACTION_TIMESCALE = 37;
1958 public const int VEHICLE_BANKING_EFFICIENCY = 38;
1959 public const int VEHICLE_BANKING_MIX = 39;
1960 public const int VEHICLE_BANKING_TIMESCALE = 40;
1961 public const int VEHICLE_REFERENCE_FRAME = 44;
1962 public const int VEHICLE_FLAG_NO_DEFLECTION_UP = 1;
1963 public const int VEHICLE_FLAG_LIMIT_ROLL_ONLY = 2;
1964 public const int VEHICLE_FLAG_HOVER_WATER_ONLY = 4;
1965 public const int VEHICLE_FLAG_HOVER_TERRAIN_ONLY = 8;
1966 public const int VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT = 16;
1967 public const int VEHICLE_FLAG_HOVER_UP_ONLY = 32;
1968 public const int VEHICLE_FLAG_LIMIT_MOTOR_UP = 64;
1969 public const int VEHICLE_FLAG_MOUSELOOK_STEER = 128;
1970 public const int VEHICLE_FLAG_MOUSELOOK_BANK = 256;
1971 public const int VEHICLE_FLAG_CAMERA_DECOUPLED = 512;
1972 public const int INVENTORY_ALL = -1;
1973 public const int INVENTORY_NONE = -1;
1974 public const int INVENTORY_TEXTURE = 0;
1975 public const int INVENTORY_SOUND = 1;
1976 public const int INVENTORY_LANDMARK = 3;
1977 public const int INVENTORY_CLOTHING = 5;
1978 public const int INVENTORY_OBJECT = 6;
1979 public const int INVENTORY_NOTECARD = 7;
1980 public const int INVENTORY_SCRIPT = 10;
1981 public const int INVENTORY_BODYPART = 13;
1982 public const int INVENTORY_ANIMATION = 20;
1983 public const int INVENTORY_GESTURE = 21;
1984 public const int ATTACH_CHEST = 1;
1985 public const int ATTACH_HEAD = 2;
1986 public const int ATTACH_LSHOULDER = 3;
1987 public const int ATTACH_RSHOULDER = 4;
1988 public const int ATTACH_LHAND = 5;
1989 public const int ATTACH_RHAND = 6;
1990 public const int ATTACH_LFOOT = 7;
1991 public const int ATTACH_RFOOT = 8;
1992 public const int ATTACH_BACK = 9;
1993 public const int ATTACH_PELVIS = 10;
1994 public const int ATTACH_MOUTH = 11;
1995 public const int ATTACH_CHIN = 12;
1996 public const int ATTACH_LEAR = 13;
1997 public const int ATTACH_REAR = 14;
1998 public const int ATTACH_LEYE = 15;
1999 public const int ATTACH_REYE = 16;
2000 public const int ATTACH_NOSE = 17;
2001 public const int ATTACH_RUARM = 18;
2002 public const int ATTACH_RLARM = 19;
2003 public const int ATTACH_LUARM = 20;
2004 public const int ATTACH_LLARM = 21;
2005 public const int ATTACH_RHIP = 22;
2006 public const int ATTACH_RULEG = 23;
2007 public const int ATTACH_RLLEG = 24;
2008 public const int ATTACH_LHIP = 25;
2009 public const int ATTACH_LULEG = 26;
2010 public const int ATTACH_LLLEG = 27;
2011 public const int ATTACH_BELLY = 28;
2012 public const int ATTACH_RPEC = 29;
2013 public const int ATTACH_LPEC = 30;
2014 public const int LAND_LEVEL = 0;
2015 public const int LAND_RAISE = 1;
2016 public const int LAND_LOWER = 2;
2017 public const int LAND_SMOOTH = 3;
2018 public const int LAND_NOISE = 4;
2019 public const int LAND_REVERT = 5;
2020 public const int LAND_SMALL_BRUSH = 1;
2021 public const int LAND_MEDIUM_BRUSH = 2;
2022 public const int LAND_LARGE_BRUSH = 3;
2023 public const int DATA_ONLINE = 1;
2024 public const int DATA_NAME = 2;
2025 public const int DATA_BORN = 3;
2026 public const int DATA_RATING = 4;
2027 public const int DATA_SIM_POS = 5;
2028 public const int DATA_SIM_STATUS = 6;
2029 public const int DATA_SIM_RATING = 7;
2030 public const int ANIM_ON = 1;
2031 public const int LOOP = 2;
2032 public const int REVERSE = 4;
2033 public const int PING_PONG = 8;
2034 public const int SMOOTH = 16;
2035 public const int ROTATE = 32;
2036 public const int SCALE = 64;
2037 public const int ALL_SIDES = -1;
2038 public const int LINK_SET = -1;
2039 public const int LINK_ROOT = 1;
2040 public const int LINK_ALL_OTHERS = -2;
2041 public const int LINK_ALL_CHILDREN = -3;
2042 public const int LINK_THIS = -4;
2043 public const int CHANGED_INVENTORY = 1;
2044 public const int CHANGED_COLOR = 2;
2045 public const int CHANGED_SHAPE = 4;
2046 public const int CHANGED_SCALE = 8;
2047 public const int CHANGED_TEXTURE = 16;
2048 public const int CHANGED_LINK = 32;
2049 public const int CHANGED_ALLOWED_DROP = 64;
2050 public const int CHANGED_OWNER = 128;
2051 public const int TYPE_INVALID = 0;
2052 public const int TYPE_INTEGER = 1;
2053 public const int TYPE_double = 2;
2054 public const int TYPE_STRING = 3;
2055 public const int TYPE_KEY = 4;
2056 public const int TYPE_VECTOR = 5;
2057 public const int TYPE_ROTATION = 6;
2058 public const int REMOTE_DATA_CHANNEL = 1;
2059 public const int REMOTE_DATA_REQUEST = 2;
2060 public const int REMOTE_DATA_REPLY = 3;
2061
2062 public const int PRIM_MATERIAL = 2;
2063 public const int PRIM_PHYSICS = 3;
2064 public const int PRIM_TEMP_ON_REZ = 4;
2065 public const int PRIM_PHANTOM = 5;
2066 public const int PRIM_POSITION = 6;
2067 public const int PRIM_SIZE = 7;
2068 public const int PRIM_ROTATION = 8;
2069 public const int PRIM_TYPE = 9;
2070 public const int PRIM_TEXTURE = 17;
2071 public const int PRIM_COLOR = 18;
2072 public const int PRIM_BUMP_SHINY = 19;
2073 public const int PRIM_FULLBRIGHT = 20;
2074 public const int PRIM_FLEXIBLE = 21;
2075 public const int PRIM_TEXGEN = 22;
2076 public const int PRIM_CAST_SHADOWS = 24; // Not implemented, here for completeness sake
2077 public const int PRIM_POINT_LIGHT = 23; // Huh?
2078 public const int PRIM_TEXGEN_DEFAULT = 0;
2079 public const int PRIM_TEXGEN_PLANAR = 1;
2080 public const int PRIM_TYPE_BOX = 0;
2081 public const int PRIM_TYPE_CYLINDER = 1;
2082 public const int PRIM_TYPE_PRISM = 2;
2083 public const int PRIM_TYPE_SPHERE = 3;
2084 public const int PRIM_TYPE_TORUS = 4;
2085 public const int PRIM_TYPE_TUBE = 5;
2086 public const int PRIM_TYPE_RING = 6;
2087 public const int PRIM_TYPE_SCULPT = 7;
2088 public const int PRIM_HOLE_DEFAULT = 0;
2089 public const int PRIM_HOLE_CIRCLE = 16;
2090 public const int PRIM_HOLE_SQUARE = 32;
2091 public const int PRIM_HOLE_TRIANGLE = 48;
2092 public const int PRIM_MATERIAL_STONE = 0;
2093 public const int PRIM_MATERIAL_METAL = 1;
2094 public const int PRIM_MATERIAL_GLASS = 2;
2095 public const int PRIM_MATERIAL_WOOD = 3;
2096 public const int PRIM_MATERIAL_FLESH = 4;
2097 public const int PRIM_MATERIAL_PLASTIC = 5;
2098 public const int PRIM_MATERIAL_RUBBER = 6;
2099 public const int PRIM_MATERIAL_LIGHT = 7;
2100 public const int PRIM_SHINY_NONE = 0;
2101 public const int PRIM_SHINY_LOW = 1;
2102 public const int PRIM_SHINY_MEDIUM = 2;
2103 public const int PRIM_SHINY_HIGH = 3;
2104 public const int PRIM_BUMP_NONE = 0;
2105 public const int PRIM_BUMP_BRIGHT = 1;
2106 public const int PRIM_BUMP_DARK = 2;
2107 public const int PRIM_BUMP_WOOD = 3;
2108 public const int PRIM_BUMP_BARK = 4;
2109 public const int PRIM_BUMP_BRICKS = 5;
2110 public const int PRIM_BUMP_CHECKER = 6;
2111 public const int PRIM_BUMP_CONCRETE = 7;
2112 public const int PRIM_BUMP_TILE = 8;
2113 public const int PRIM_BUMP_STONE = 9;
2114 public const int PRIM_BUMP_DISKS = 10;
2115 public const int PRIM_BUMP_GRAVEL = 11;
2116 public const int PRIM_BUMP_BLOBS = 12;
2117 public const int PRIM_BUMP_SIDING = 13;
2118 public const int PRIM_BUMP_LARGETILE = 14;
2119 public const int PRIM_BUMP_STUCCO = 15;
2120 public const int PRIM_BUMP_SUCTION = 16;
2121 public const int PRIM_BUMP_WEAVE = 17;
2122
2123 public const int PRIM_SCULPT_TYPE_SPHERE = 1;
2124 public const int PRIM_SCULPT_TYPE_TORUS = 2;
2125 public const int PRIM_SCULPT_TYPE_PLANE = 3;
2126 public const int PRIM_SCULPT_TYPE_CYLINDER = 4;
2127
2128
2129 public const int MASK_BASE = 0;
2130 public const int MASK_OWNER = 1;
2131 public const int MASK_GROUP = 2;
2132 public const int MASK_EVERYONE = 3;
2133 public const int MASK_NEXT = 4;
2134 public const int PERM_TRANSFER = 8192;
2135 public const int PERM_MODIFY = 16384;
2136 public const int PERM_COPY = 32768;
2137 public const int PERM_MOVE = 524288;
2138 public const int PERM_ALL = 2147483647;
2139 public const int PARCEL_MEDIA_COMMAND_STOP = 0;
2140 public const int PARCEL_MEDIA_COMMAND_PAUSE = 1;
2141 public const int PARCEL_MEDIA_COMMAND_PLAY = 2;
2142 public const int PARCEL_MEDIA_COMMAND_LOOP = 3;
2143 public const int PARCEL_MEDIA_COMMAND_TEXTURE = 4;
2144 public const int PARCEL_MEDIA_COMMAND_URL = 5;
2145 public const int PARCEL_MEDIA_COMMAND_TIME = 6;
2146 public const int PARCEL_MEDIA_COMMAND_AGENT = 7;
2147 public const int PARCEL_MEDIA_COMMAND_UNLOAD = 8;
2148 public const int PARCEL_MEDIA_COMMAND_AUTO_ALIGN = 9;
2149 public const int PAY_HIDE = -1;
2150 public const int PAY_DEFAULT = -2;
2151 public const string NULL_KEY = "00000000-0000-0000-0000-000000000000";
2152 public const string EOF = "\n\n\n";
2153 public const double PI = 3.14159274f;
2154 public const double TWO_PI = 6.28318548f;
2155 public const double PI_BY_TWO = 1.57079637f;
2156 public const double DEG_TO_RAD = 0.01745329238f;
2157 public const double RAD_TO_DEG = 57.29578f;
2158 public const double SQRT2 = 1.414213538f;
2159
2160 // Can not be public const?
2161 public vector ZERO_VECTOR = new vector(0, 0, 0);
2162 public rotation ZERO_ROTATION = new rotation(0, 0, 0, 0);
2163
2164 }
2165} \ No newline at end of file