Commit Graph

75 Commits

Author SHA1 Message Date
Tedd Hansen
ea74f97e9b Forgot to create an object before use. Now why can't .Net just do that itself? :) 2008-02-02 00:20:31 +00:00
Tedd Hansen
34d21ac94b Added some error checking to MaintenanceThread, no-crash (just log) loading of script engines, and support to load multiple script engines 2008-02-02 00:09:55 +00:00
Tedd Hansen
694642a482 Moved iniFilePath to a static and put it in OpenSim.Application.iniFilePath.
Refreshing config based on this.
Temporarily disabled feature to refresh config file while running.
2008-02-01 23:56:09 +00:00
Tedd Hansen
4715453159 Bugfix, maybe it won't crash during startup and crash somewhere else instead? :) 2008-02-01 23:44:02 +00:00
Tedd Hansen
d02a90823f SCRIPTING STILL BROKEN
Added comments and regions, restructured code
Changed a lot of AppDomain junk from console from using Console.Write to Log.Verbose and set it to #if DEBUG
All modules should now refresh their configuration runtime
Made all logging in ScriptEngine.Common get script name from actual engine
Renamed LSLLongCmdHandler to AsyncLSLCommandManager
Added auto-recover with 5 sec throttle for new MaintenanceThread
2008-02-01 23:36:36 +00:00
Tedd Hansen
a6726b0c9d SCRIPT SUPPORT IS STILL BROKEN.
Bugfix: Scripts exceeding max and set to be killed were not killed, only removed.
Added ability to re-read configuration while OpenSim is running
All regions now sharing one MaintenanceThread
New MaintenanceThread:
- checks for script execution timeout
- re-reads config
- starts/stops threads if thread active count becomes too high/low compared to config
Speed increase on event execution:
- Reuse of try{}catch{} blocks
- Time calculation on event execution
2008-02-01 22:18:55 +00:00
Tedd Hansen
0c0286911d Config option to set number of scripts per AppDomain 2008-02-01 20:52:00 +00:00
Tedd Hansen
e14c8f59f7 Added config options:
ScriptThreadPriority to set script thread priority
DeactivateScriptOnTimeout to remove script if it is executing too long
2008-02-01 20:45:15 +00:00
Tedd Hansen
f4ddf5cf28 Removed "Loading inventory for Primitive" message.
Fixed small bug in thread counter.
2008-02-01 20:19:29 +00:00
Tedd Hansen
a9c1f3fdb4 Experimental
Moved DotNetScriptEngine configuration to config file.
Added option to share script execution threads between regions.
2008-02-01 20:12:25 +00:00
Tedd Hansen
5d6e89eaf9 Highly experimental
A separate thread is used to enforce max function (event) execution time for scripts.
2008-02-01 19:07:05 +00:00
alondria
43ecb1b4d2 Fixed errors being thrown by invalid PSYS_SRC_TARGET_KEY's in llParticleSystem - defaults to source prim (consistent with LL grid).
Should fix mantis 427.
2008-02-01 15:22:11 +00:00
alondria
0eb4e85988 Thanks to Hashbox for a patch to:
Implementing llStringTrim and hooking in osRegionNotice
2008-02-01 14:18:00 +00:00
Teravus Ovares
bec71977ab * Added more supported feature to particlesystems. While this appears to have a libsl update... it's really a fix to the libsl version we're already using because of a bug in the particlesystem implementation
* Added two new simstat counters in the simstat enum for the RCCS.  (I'll find something cool to put in them)
* fixed a time waster in ODEPlugin.cs
2008-02-01 04:22:20 +00:00
Teravus Ovares
e2f783789c * Adding limited support for LLParticleSystem.
* We still need to set the 'default particle' texture as, a particle system with no texture set doesn't work.
* The particle System Flags don't seem to be quite right yet as some flags don't seem to have an effect.   So no alpha in/out, color change, affected by the wind, etc.. yet
* Thanks to Alondria for some massive work here.  This update just tweaks a few things that she did.
2008-01-31 18:27:11 +00:00
alondria
62ae3c9bf5 Hit a dead end with llParticleSystem (libsecondlife issues) so no functionality added yet, but did not want to loose work. 2008-01-31 06:59:48 +00:00
Charles Krinke
a759ff5ea3 Surround the "non implemented" in an else clause if face is inappropriate for:
llSetColor, llSetAlpha, llGetColor, llSetTexture, llOffsetTexture, 
llRotateTexture & llGetTexture
2008-01-21 03:14:38 +00:00
Teravus Ovares
8fdeab57b1 * Potential fix to the 'can't run a script anymore bug' 2008-01-19 02:58:19 +00:00
Tedd Hansen
82d43db1cc Added data structure to be passed through event execution queue so that events can use llDetect*-commands to find information about event. 2008-01-17 15:22:35 +00:00
Teravus Ovares
18c959df12 * Added llApplyImpulse in the global frame. The object must be physical before this'll do anything. Be careful with this function as it's easy to loose prim. 2008-01-17 14:59:05 +00:00
Teravus Ovares
c2863df49d * Added and implemented the LSL changed event.
* An example changed event syntax is at: http://opensimulator.org/wiki/Changed_Event_Example
* You can use this to trigger actions in your script if someone sits on your object_rez
* You can use this to figure out all of the CHANGED_ constants except for CHANGED_REGION, CHANGED_TELEPORT, and CHANGED_ALLOW_DROP
2008-01-17 02:23:48 +00:00
Adam Frisby
b25f9f322c * Mother of all commits:
* Cleaned up copyright notices in AssemblyInfo.cs's
* Added Copyright headers to a bunch of files missing them
* Replaced several common string instances with a static constant to prevent reallocation of the same strings thousands of times. "" -> String.Empty is the first such candidate.
2008-01-15 02:09:55 +00:00
Tedd Hansen
370e79cd9e ZERO_ROTATION set to 0,0,0,1 -- not 0,0,0,0 ;) 2008-01-14 15:37:00 +00:00
Charles Krinke
fa83249db8 Thank you very much, Kinoc for implementing llGetSubString and llDeleteSubString:
from the c# implementations of string.SubString(start,len) and string.Remove(start,len).
Especially since negative indexing and exclusion are included in the LSL versions. 
This patch is closer to the LSL version. Maybe an osSubString and osRemoveString 
would be appropriate?
2008-01-12 22:25:10 +00:00
Tedd Hansen
0081c060d0 Set eol 2008-01-12 14:45:59 +00:00
Tedd Hansen
33d82aa532 Added license to new files 2008-01-12 14:40:28 +00:00
Tedd Hansen
bacbade369 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.
2008-01-12 14:30:22 +00:00
Tedd Hansen
a993d0d335 ScriptServer communication is ok. Script is creatd on onrez. But since it can not access Scene it sort of crashes right away ;)
Added some sample placeholders for implementing rest of LSL events.
2008-01-12 10:25:08 +00:00
Tedd Hansen
011abad053 ScriptServer protocol now correctly casts datatypes -- ready for implementing 2008-01-12 09:44:01 +00:00
alondria
c2ca98519b Linking osTerrainGetHeight, osTerrainSetHeight, and osRegionRestart to LSL_BaseClass to allow them to be called in LSL scripts. 2008-01-12 03:23:11 +00:00
Jeff Ames
5d7e120d56 Set svn:eol-style. 2008-01-12 01:35:25 +00:00
Tedd Hansen
e7dbaad04f New ScriptServer protocol successfully implemented.
Still needs hooking up for all commands in both ends, separation of local and remote LSL-commands, etc.
2008-01-12 01:14:31 +00:00
Tedd Hansen
1e9a66cbaa ScriptServer communication protocol (v1), primitive RPC-like TCP client/server 2008-01-12 00:48:58 +00:00
Tedd Hansen
260145a7e6 Dynamic loading of ScriptEngine in ScriptServer
ScriptServer event pipe (OpenSim->ScriptServer->ScriptEngine) should in theory be done
2008-01-09 17:13:02 +00:00
Jeff Ames
3d7e6fc6d8 Set svn:eol-style. 2008-01-06 11:17:57 +00:00
Tedd Hansen
966f639ad6 Changes to ScriptServer to (hopefully) make it compile on both .Net and Mono.
Some debug info for startup added to find bugs. ++
2008-01-05 15:48:02 +00:00
Tedd Hansen
4d3a8f4b52 Fixed nant compile problem 2008-01-01 15:28:16 +00:00
Tedd Hansen
d484df15c0 Trying to fix nant compile error 2008-01-01 15:18:36 +00:00
Tedd Hansen
7ef7caa200 Temp removed new data types patch from Mantis #272, causing compile problems (nant) 2008-01-01 14:56:12 +00:00
Tedd Hansen
8d79a5d93c Minor changes. Changed Prebuild.xml to avoid first-time-compile error because of dependencies. Made some changes to new LSLString. 2008-01-01 14:23:14 +00:00
Tedd Hansen
86a38dfd0f Adrianas 0000272 -- I think we need to implement standard string/integer/float functions too. 2008-01-01 11:41:07 +00:00
Tedd Hansen
9eba3d2f89 Fixed string issue in compiler 2008-01-01 11:28:56 +00:00
Tedd Hansen
a8cb20355c Correction of last commit 2007-12-31 19:31:40 +00:00
Tedd Hansen
527b5f86a2 In this commit I am using an editor feature called "Save All" before I commit. 2007-12-30 16:34:54 +00:00
Tedd Hansen
7ef09a1202 Added comments to ScriptEngine classes that explains what their purpose is 2007-12-30 16:32:29 +00:00
Charles Krinke
3cf3b426b6 Thank you again, Alondria for:
Adding some more support to Vectors and Rotations  
Description  * String->Vector/Rotation added
* Vector * and / a double added.
2007-12-27 23:09:31 +00:00
lbsa71
efd90b56b7 * Optimized usings
* shortened references
* Removed redundant 'this'
* Normalized EOF
2007-12-27 21:41:48 +00:00
Charles Krinke
fa2495ae6b Again, great thanks to Alondria for:
Adding:: llSetParcelMusicUrl(), llGetRootPosition(), llGetRootRotation(), 
llGetGeometricCenter(), llSetLocalRot(), llListReplaceList(), 
llGetObjectPrimCount(),llGetParcelDetails(), llGetParcelMaxPrims(), 
llWater(), llGetLocalRot(), and llGetAccel()
2007-12-24 21:16:32 +00:00
Jeff Ames
6702b03733 Misc. cleanup:
* added Util.Clip(value, min, max)
* modified asset cache's numPackets calculation to use max packet size (600) instead of 1000
* removed a few magic numbers
2007-12-19 08:44:25 +00:00
Charles Krinke
6f389ba4cf Many Thanks to Alondria for adding:
The list type and a bunch of support functions to LSL  
Added/ReImplmented: llGetListLength(), llList2Integer(), osList2Double() (note rename), 
    llList2Float(), llList2String(), llList2Key(), llList2Vector(), llList2Rot(), 
    llList2List(), llDeleteSubList(), llGetListEntryType(), llList2CSV(), llCSV2List(), 
    llListInsertList(), llDumpList2String(), 
Borked Still: llListSort(), llListRandomize(), llList2ListStrided(), llListFindList(),
Changed: llHTTPRequest() (Made wrapper of LSL_Types.list->List<string>)
2007-12-18 02:41:34 +00:00