Commit Graph

2411 Commits (59b38f842af4a1ad81e24b132948481e75004d6d)

Author SHA1 Message Date
Dalien Talbot d1df81c221 Applied ckrinke's patch for #453. Thanks Charles! :) 2007-09-30 09:01:51 +00:00
lbsa71 3c7161d128 * Rewired Touch to route to group/part (Still triggering EventManager as well) 2007-09-20 05:22:18 +00:00
lbsa71 a963b3057b * Replaced usage of ClientView with IClientAPI
* Some propertification and hideousness of fields.
2007-09-18 09:59:33 +00:00
Sean Dague b8d9737a47 fixing me some line endings 2007-09-17 12:52:03 +00:00
Brian McBee 279177219e Fixed missing Axiom references. 2007-09-16 13:02:16 +00:00
Tedd Hansen c654506b18 Implemented: llSetText, llResetScript
Implemented: llHTTPRequest (queue, thread, etc -- but not actuall call)
2007-09-16 03:36:13 +00:00
Tedd Hansen 88968622ea Implemented: llStringToBase64, llBase64ToString, llXorBase64Strings, llXorBase64StringsCorrect, llGetTimestamp 2007-09-15 16:45:37 +00:00
Tedd Hansen cff586df68 Bugfixed: llListRandomize
Implemented: llListSort, llList2ListStrided, llDeleteSubString, llInsertString
2007-09-15 16:16:57 +00:00
Tedd Hansen c6344fcf94 llList2Key, llList2Rot, llList2List 2007-09-15 15:55:40 +00:00
Tedd Hansen ad042f1d75 Implemented llList2CSV, llCSV2List, llListRandomize, llList2Vector, llListFindList, llListInsertList, llDeleteSubList 2007-09-15 15:45:20 +00:00
Tedd Hansen 1e0f9604a6 Will display error in main chat if unsupported llFunction is used. 2007-09-15 14:57:07 +00:00
Tedd Hansen ed68a3894c Now loading "OpenSim.Region.ScriptEngine.Common.dll" into scripts AppDomain and "using OpenSim.Region.ScriptEngine.Common;" at start of script when converted from LSL. Vectors and rotations now works. 2007-09-15 14:22:38 +00:00
lbsa71 f8ddf7429e * Wired up chat so that channel goes into OnChatFromViewer. However:
* There's no libsl reply packet field for it, I guess other channels than 0 makes no sense sending back to clients.
  * We do not currently support objects listening, so there's really no way of actually using this feature.
So; somebody please wire chat all the way to the scripts.
2007-09-14 13:46:05 +00:00
lbsa71 1b1808d45d * fixed script compilation
* reversed //c# - if
  * rightifyed what's actually converted
2007-09-14 09:25:07 +00:00
Sean Dague 8849637493 more fun with LSL implementations 2007-09-14 08:57:13 +00:00
Sean Dague 23b8e39c1b llSetPos(), llGetPos(), llGetLocalPos() now implemented 2007-09-13 14:19:57 +00:00
Tedd Hansen 0709d96716 If first 4 characters in script is "//C#" script will be treated as pure C# instead of LSL/C# hybrid. This means no preprocessing before compile. 2007-09-13 14:15:02 +00:00
Sean Dague af6c9d355d implement llGetScale and llSetScale
drop IScriptHost for now and just use SceneObjectPart, given how many of
SceneObjectPart's properties we need for the script engine
2007-09-13 13:06:54 +00:00
Sean Dague afea5f2205 remove ^M, as native storage should be UNIX format, and ^M in/out mashing
will happen on the windows side now that eol-style is correct
2007-09-13 11:41:42 +00:00
Tedd Hansen cef8c5e9d7 Hiding evidence that I once was a VB coder (thanks to refactoring). Renamed member names to smallcapsy. 2007-09-13 11:11:08 +00:00
MW 3a1ddca8a1 Fixing namespace problems 2007-09-11 14:33:32 +00:00
MW 04cf04600c Applied ldvoipeng's patch [#360], sorry for it taking so long to apply it. If in future anyone's patch hasn't been applied within a few days, please can someone kick one of the developers with svn access. 2007-09-11 14:18:34 +00:00
lbsa71 b134617e07 * Took a stab at #388 2007-09-10 13:42:11 +00:00
Sean Dague ffe9c9374a mass update of urls in source code to new website 2007-09-10 08:14:38 +00:00
MW 5020e4e602 Cut down on the number of compile warnings. Now down to 5: 4 are related to unused events on IClientAPI and 1 is a unused variable in LSL_BuiltIn_Commands (which I'll leave to Tedd, as he will know if it will be used in the future or not). 2007-09-08 08:12:19 +00:00
MW c29df824c2 Converted the LSL scripting engine into a IRegionModule, so now all "modules" share a common base interface and are loaded from the single loader. (It seems to work fine, but I have left the old scriptengine loader, incase we have to change back).
Removed the reference to OpenJpeg in the DynamicTextureModule, to see if that was causing the build problem someone is having. 
Added a Temporary fix for the "existing connection was forcibly closed by the remote host" exception on windows when a user logs out of a multiregion instance. 
Some early work to prepare for improving the way clients are updated (about prims etc).
2007-09-08 07:50:31 +00:00
MW bfd36e2e83 Some work on Module loading/management.
Some more modules templates classes (hoping that someone will pick some of these and work on implementing them).
Early version of the "Dynamic Texture Module", although currently there are no render modules included (so not really functional without them). 
Added osSetDynamicTextureURL script function, for attaching a dynamic texture to a prim. 
Some work on the console command handling. Added "change-region <regionname>" and "exit-region" so that after the use of change-region, the commands entered will apply to that region only. Then use exit-region to return to the top level (so commands then function as they did before and either apply to all regions or to the first region) (Note: this hasn't been tested very much)
2007-09-04 13:43:56 +00:00
Tedd Hansen 5a149084d4 startup event on script added to object, not all inside object. 2007-08-28 18:22:48 +00:00
MW 6181191a03 Stopped EntityBase from implementing IScriptHost, as don't think it should, multiple objects are based on entitybase and they all don't want the baggage from IScriptHost. SceneObjectPart already implements it anyway.
Added llGetOwner function, and tested the ll functions that I added in last commit.
2007-08-27 11:18:50 +00:00
MW 4c3be4e91f Another small tweak to image sending.
Implemented a few ll Functions, llSetObjectName llGetObjectName, llLoadURL (all currently untested).
2007-08-27 10:34:28 +00:00
Brian McBee f6706e6cf8 Fixing llList2double issue (Thanks ldvoipeng) 2007-08-27 01:58:56 +00:00
Tedd Hansen 7e06df5f83 llList-commands from ldvoipeng, new Default.lsl from dalien 2007-08-26 21:21:21 +00:00
MW 291eb48fb0 Another attempt to fix the image sending bug (next week, I intend to rewrite the assetcache and asset server).
Attempt to fix bug # 326. (crashing when using save-xml and hollow prims)
Attempt to fix bug # 328 (limit of 50 items in a folder)
2007-08-26 17:57:25 +00:00
Tedd Hansen 83d5df3979 in-world run-time error-message no-w con-tains function-name. 2007-08-26 14:04:22 +00:00
Tedd Hansen ebb0099816 Run-time script errors are now shown in-world. No line number though, might require script to be compiled with (slow) debug information. 2007-08-26 13:31:58 +00:00
Tedd Hansen fda97aa3c5 Bugfix for last commit, { instead of ( 2007-08-26 08:43:46 +00:00
Tedd Hansen 25e200c46a Fixed bug that occurs sometimes on script unload where queued script event was attempted executed after AppDomain was unloaded. 2007-08-26 08:20:48 +00:00
Tedd Hansen 0cd6d26adb Fixed error on shutdown caused by ThreadAbortException sending message through already disposed logger. Thanks ckrinke 2007-08-25 22:26:27 +00:00
Tedd Hansen 53ef427e9e Forgot mutex lock on List<> for timers 2007-08-25 21:50:28 +00:00
Tedd Hansen d9b9b16513 Script compiler should now show error on correct line number in original LSL-script. 2007-08-25 21:35:03 +00:00
MW 4b42bc5311 oops , shouldn't have committed my local testing changes 2007-08-25 20:38:57 +00:00
Tedd Hansen 80234b98e5 Removal of script that was unable to compile no longer crashes server.
Displays script compile error messages in-world.
2007-08-25 20:34:54 +00:00
MW 65d6ef1bc1 Test to see if this change improves or makes worse the texture sending bug 2007-08-25 20:33:53 +00:00
Tedd Hansen 05a7f44d73 testing Tedds temporary CIA-standin 2007-08-25 20:07:46 +00:00
Tedd Hansen 370f36e4e1 testing Tedds temporary CIA-standin 2007-08-25 20:04:05 +00:00
Tedd Hansen b75c1b2191 Added class for "long commands" (command that returns as event) with dedicated thread for processing. Added support for llSetTimerEvent(). Deleting old compiled scripts before new compile is attempted (avoids loading wrong script on compile error). 2007-08-25 19:08:15 +00:00
Tedd Hansen 53be4774b3 Scripts no longer crash sim after 5 minutes (override InitializeLifetimeService). Loading/Unloading of scripts are now handled in separate thread so server is no delayed because of this. Each script is loaded into a single AppDomain (temporary test for script unload, eats ~15KB more memory for each script). Unload of scripts has been verified to free up memory. 2007-08-25 15:31:47 +00:00
Tedd Hansen 07836b890c Lowered priority of script threads. Executing state_entry() event on script rez. 2007-08-23 18:43:11 +00:00
Brian McBee 107469ed93 More lsl functions (thanks to ldviopeng and wjordan!) 2007-08-23 05:26:02 +00:00
Tedd Hansen caee73353d Debug shows how many bytes (total) a script (assembly) uses after compile and load. 2007-08-22 20:01:04 +00:00
Tedd Hansen 4beef91d00 GC.GetTotalMemory(true) was blocking.
We now support individual scripts on individual prims. Do the script dance... \o/ \o\ /o/ \o/ .o.
2007-08-22 19:33:10 +00:00
Tedd Hansen 0eadb7591e Added OnRemoveScript event handler to ScriptEngine. Fixed event queuing of empty objects crash. 2007-08-22 18:41:31 +00:00
Tedd Hansen 5a86fd2c31 (Untested) Scripts are individually loaded into objects (on rez), and event fired likewise. Bugfixes coming in next commit. 2007-08-22 18:09:38 +00:00
lbsa71 5403153c15 A case of 'while I was working someone set me up the bomb'. 2007-08-22 16:04:04 +00:00
lbsa71 22537aa620 * Added stub OnRezScript handler with plentiful of comments 2007-08-22 15:29:47 +00:00
Tedd Hansen 33326c1a70 Some minor changes + krinkec's updates to ll* functions. 2007-08-20 10:58:51 +00:00
Tedd Hansen 1b826c2fdc Added "StopScriot()" to ScriptManager. Stops Executor from executing events in script, removes script from EventQueueManagers target list, tells AppDomainManager that script is no longer active (and ready for unload). 2007-08-19 17:47:47 +00:00
Tedd Hansen eeaac68d73 Code comments on recent changes in EventQueueManager 2007-08-19 11:38:58 +00:00
Tedd Hansen 7770c65a7e Sped up EventQueueManager response time (scripts now respond quickly). Added support for multiple threads executing events on objects, but only one thread on one script at the time (to utilize MultiCore/hyperthreading CPU's). 2007-08-19 11:09:54 +00:00
Tedd Hansen e70cdbc5ac Added event method invoke cache to Executor. "Bind once, Invoke multiple times". Will speed up script event execution considerable. But at the cost of some memory (will be optimized later with RuntimeXHandle). 2007-08-19 10:28:27 +00:00
Tedd Hansen 1893164d26 Moved script loading from ScriptManager to AppDomainManager. Now increases scripts loaded count in AppDomain properly. 2007-08-19 06:52:59 +00:00
Tedd Hansen 489803e6bc Did I forget to add IScript.cs? Yes I did... 2007-08-18 23:38:03 +00:00
Tedd Hansen 37446b0392 Moved in-AppDomain event execution from Script to OpenSim.Region.ScriptEngine.Executor. Script no longer responsible for handling event calls to itself (and we can create reference cache in Executor). 2007-08-18 23:24:38 +00:00
Tedd Hansen 1ae73931da Added (theoretical) AppDomain cleanup code. 2007-08-18 22:33:06 +00:00
Tedd Hansen 240712ca9f Scripts are working again. Scripts are now loaded into limited AppDomains (no security yet).
*phew* that only took me 12 hours of coding...
2007-08-18 22:09:07 +00:00
Tedd Hansen 6faa8d8d68 Script loads into separate AppDomain without errors. Events and llFunctions not working yet. 2007-08-18 21:31:35 +00:00
Tedd Hansen f444fe4f87 Moved OpenSim.Region.ScriptEngine.Common.dll from bin\ScriptEngine\ to bin\ folder - hopefully solves compile problem on Linux. 2007-08-18 21:10:40 +00:00
Tedd Hansen 551f2af39f LSL Compiler now only referring required assemblies (DotNetEngine and Common). Changed Vector and Rotation to custom types (stored in Common) that needs to be changed later. No longer using Axiom. Script support still broken. 2007-08-18 20:53:13 +00:00
Tedd Hansen 1d41fd4984 Working on AppDomains. Scripting is now officially broken. :] 2007-08-18 19:54:04 +00:00
Tedd Hansen 6d10c65358 Moved LSL_BuiltIn_Commands_Interface.cs to a separate library (OpenSim.Region.ScriptEngine.Common). Fixed last compile error (forgot to include LSL_BuiltIn_Commands.cs). 2007-08-18 18:53:03 +00:00
Tedd Hansen 1284369a32 Started on AppDomains for ScriptEngine. Moved llFunctions in LSL_BaseClass.cs to LSL_BuiltIn_Commands.cs. Changed how scripts are loaded. 2007-08-18 18:18:14 +00:00
Brian McBee fdd5602422 llstrenglength (thanks ldvoipeng!) 2007-08-18 16:56:05 +00:00
Brian McBee 8eb9952e5f lsl test cases, and llregioncorner (thanks Dalien!) 2007-08-18 02:15:21 +00:00
Tedd Hansen fcf7db7272 Pimped up Default.lsl. Now featuring a touch counter.
Changed "ObjectID" in ScriptEngine to IScriptHost reference. Events will now be queued based on IScriptHost reference instead of string ID of object. Removed "root" object reference in script.
2007-08-17 21:24:38 +00:00
Tedd Hansen 577fb1a987 Removed RAIL test from startup for now... 2007-08-17 19:47:40 +00:00
Tedd Hansen f2dd6c86f7 Added RAIL.dll
Updated DotSets.dll and Mono.PEToolkit.dll
Started on microthreading - currently display exception during startup
2007-08-17 18:39:04 +00:00
Tedd Hansen 66695ded13 krinkec's updates to ll* interface and functions. 2007-08-17 17:33:18 +00:00
lbsa71 e53d680d41 * Now sending manager, host and root host to Script in constructor.
* Changed how Script accesses World
* Implemented llSay, llWhisper and llShout
* Added SetText() to IScriptHost, implemented llText
* Minor renamings to conform with code conventions
2007-08-16 18:40:44 +00:00
lbsa71 25fd8d0273 * Introduced IScriptHost as an interface to fetching object data from scripts.
* This meant introducing AbsolutePosition on all objects (since SimChat wants that)
2007-08-16 17:08:03 +00:00
Tedd Hansen 6831c42fe2 compile error removed :) 2007-08-15 19:30:19 +00:00
Tedd Hansen 9c3251b177 Bugfixes in LSL compiler. Changed most datatypes to int (instead of UInt32) and double (instead of float). 2007-08-15 19:25:29 +00:00
Adam Frisby 226339cd40 * Applying ckrinke's LSL baseclass changes (Thanks!) 2007-08-15 16:57:01 +00:00
Adam Frisby bf60577e57 * Fixed bug with llModPow
* Implemented llSleep
* Implemented llGetEnergy (always returns 1.0)
* Implemented llGetRegionName
* Implemented llGetRegionTimeDilation (always returns 1.0)
* Implemented llGetRegionFPS (always returns 10.0)
2007-08-15 16:52:24 +00:00
Adam Frisby ceb1c12bd1 * New LSL functions
+ llAsin / llAcos
+ llMD5String
+ llModPow
+ llGetUnixTime
2007-08-15 16:44:00 +00:00
Tedd Hansen 6b72ed01e3 Minor change to LSL_BaseClass adding pseudocode to World.SimChat 2007-08-14 19:36:43 +00:00
Tedd Hansen 16defc30eb krinkec's updates to ll* interface and functions 2007-08-14 19:06:57 +00:00
Tedd Hansen 09e1f5f22e Correct caps of Default.lsl for Linux. Thanks again krinkec. :) 2007-08-14 16:42:00 +00:00
Tedd Hansen 2a892eb736 Removed some debugging. Removed *.lso from project include in prebuild.xml. 2007-08-14 16:25:22 +00:00
Tedd Hansen 9573aa7582 llSay() works again. Cleanup of debug messages. 2007-08-14 16:14:19 +00:00
Tedd Hansen afaa12a9e2 ScriptEngine: Some error handling, logs to logger 2007-08-14 15:59:36 +00:00
Tedd Hansen 79dc1a4f7d Common script for all objects (Default.lsl). ScriptEngine touch_start event now works, but llSay only outputs to server console. 2007-08-13 20:55:07 +00:00
Tedd Hansen 876f71cf93 (DotNet) ScriptEngine is now loaded and added to Scene during startup. 2007-08-13 19:39:51 +00:00
Tedd Hansen 050921d7b6 krinkec's updates to ll* interface and functions 2007-08-13 17:28:08 +00:00
Tedd Hansen ed1208d043 ScriptEngine successfully compiles script, we are now even further than LSO was.
Also added C# script support.
2007-08-12 19:04:07 +00:00
Tedd Hansen 75c5bdbef9 ScriptManager now uses LSL-compiler.
LSL_BuiltIn_Commands_TestImplementation.cs no longer needs updating.
2007-08-12 18:36:42 +00:00
Tedd Hansen d715b0f66c LSL_BaseClass now receives scene during init 2007-08-12 18:27:46 +00:00
Tedd Hansen a968d05864 LSL BuiltIn implementation is now in Compiler\LSL\LSL_BaseClass. So users won't have to reference every internal command by object. 2007-08-12 18:06:02 +00:00
Tedd Hansen fd63c0cd32 Code comments and cleanup, correct datatypes for key, vector, rotation, (hopefully) reference to Axiom during compile, passing of BuiltIns during script load, BuiltIn interface added, etc etc 2007-08-12 17:37:37 +00:00
Tedd Hansen 7a5474ec28 Script now compiles unsuccessfully
(unknown datatypes, no references)
2007-08-12 17:04:09 +00:00
Tedd Hansen 734f288290 LSL ScriptEngine now only needs to inherit from BaseClass and we will be MUCH closer to complete LSL support than we were yesterday. 2007-08-12 16:44:57 +00:00
Tedd Hansen f5955ab539 Initial LSL to C# converter, not working yet! 2007-08-12 13:38:16 +00:00
Tedd Hansen 8b17e4da10 Renamed Compiler.LSL to Compiler.LSO 2007-08-10 16:22:20 +00:00
Tedd Hansen ae970d4171 Removed 2 warnings. Added pointer comments to where to add hooks and modify functions to get SE working. 2007-08-09 20:59:35 +00:00
Tedd Hansen 6829c45cb3 ScriptEngine just needs 2 events hooked up and llSay() implemented to work. See TODO.txt for details. 2007-08-09 18:57:41 +00:00
Tedd Hansen c447c45895 Removed spaces from directory names 2007-08-09 18:07:22 +00:00
Tedd Hansen bf69aca961 Merged OpenSim.ScriptEngine.DotNetEngine.Compiler.LSL into OpenSim.ScriptEngine.DotNetEngine to avoid the compile error 2007-08-09 18:03:24 +00:00
MW cf203cf5ee The startup set of assets in the local asset server can now be set from a xml file (OpenSimAssetSet.xml). (remember to make changes to the set, you will also need to delete the old asset .yap file, so that it is recreated).
Also the set of items in the OpenSim inventory Library can also now be set from a xml file (OpenSimLibrary.xml).
2007-08-08 17:11:02 +00:00
Tedd Hansen 1a9966abac Commit works? 2007-08-08 15:40:35 +00:00
MW a3b1a61e6a Removed System.Windows.Form reference from DotNetEngine.Compiler.LSL , it didn't seem to be needed anyway. 2007-08-08 15:26:19 +00:00
Tedd Hansen 356f59ac45 Added ScriptEngine to solution (prebuild.xml) 2007-08-08 14:36:54 +00:00
Tedd Hansen 2a0e157985 Added ScriptEngine.DotNetEngine 2007-08-08 14:05:13 +00:00