aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-01-21Have SOP and LSL_Api call the proper GetCenterOfMass and GetGeometricCenterRobert Adams1-1/+1
routines on the physics engine. Won't make a difference for any existing scripts since ODE always returned Vector3.Zero.
2013-01-19New constants for llGetObjectDetailsTalun2-0/+92
New constants for llGetObjectDetails OBJECT_CHARACTER_TIME, OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE, OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ also Pathfining constants, 3 of which are used by llGetObjectDetails
2013-01-19Mantis 6507 keys returned by llGetAgentList incorrect for llList2KeyTalun1-2/+2
The type of the keys returned by llGetAgentList corrected to LSL_Key
2013-01-18Restore previous client AO behaviour by not allowing them to remove the ↵Justin Clark-Casey (justincc)2-2/+2
default animation but continue to allow scripts to do so. This keeps the fix from http://opensimulator.org/mantis/view.php?id=6327 and fixes the behaviour regression in http://opensimulator.org/mantis/view.php?id=6483 Animations may still exhibit different behaviour if both scripts and clients are adjusting animations. A change in the behaviour of client AO to not remove all animations may be a better long term approach.
2013-01-16JustinCC's core re-mergeMelanie14-77/+177
2013-01-16Implement co-operative script termination if termination comes during a ↵Justin Clark-Casey (justincc)14-49/+291
script wait event (llSleep(), etc.) This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability. If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread. This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period. Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented. This commit, unlike 1b5c41c, passes the wait handle as an extra parameter through IScript.Initialize() instead of passing IScriptInstance itself.
2013-01-16Revert "Implement co-operative script termination if termination comes ↵Justin Clark-Casey (justincc)4-248/+10
during a script wait event (llSleep(), etc.)" Doing this as a favour to Melanie. This will be back with passing the wait handles directly to the api. This reverts commit 1b5c41c14ad11325be249ea1cce3c65d4d6a89be.
2013-01-16Implement co-operative script termination if termination comes during a ↵Justin Clark-Casey (justincc)4-10/+248
script wait event (llSleep(), etc.) This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability. If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread. This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period. Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
2013-01-15Fix llSetRegionPos and detail behaviors of llSet[Link]PrimitiveParams[Fast]()Melanie1-5/+9
regarding prim positioning.
2013-01-15Instead of passing separate engine, part and item components to script APIs, ↵Justin Clark-Casey (justincc)12-68/+88
pass down IScriptInstance instead. This is to allow the future co-operative script thread terminate feature to detect and act upon termination requests. This splits the assembly and state loading out from the ScriptInstance() constructor to a separate Load() method in order to facilititate continued script logic regression testing.
2013-01-14refactor: Simplify ScriptInstance by retaining reference to SceneObjectPart ↵Justin Clark-Casey (justincc)1-72/+55
instead of sometimes but not always looking it up.
2013-01-11BulletSim: add osGetPhysicsEngineType() LSL function and updateRobert Adams3-11/+54
the physics engines to return the name that is specified in the INI file ("physics = XXX") as the type of engine. This os function is a little different than the others in that it does not throw an exception of one is not privilaged to use it. It merely returns an empty string.
2013-01-11make sure keyframe rotations are normalizedUbitUmarov1-1/+3
2013-01-10Add "show script timers" command to show script timers. For debug purposes.Justin Clark-Casey (justincc)2-32/+38
Also, "show sensors" changes to "show script sensors".
2013-01-10Add "show sensors" command to show script sensor information for debug purposes.Justin Clark-Casey (justincc)1-32/+62
2013-01-09 fix llGetRot and parameters prim_rotation for attachments. Only onUbitUmarov1-1/+27
LSL_api to avoid side effects for now
2013-01-09 stop endless loop in lGetLinkPrimitiveParamsUbitUmarov1-0/+2
2013-01-09Prevent a null ref in llGetLinkPrimiteveParams. Still not a fix for the realMelanie1-1/+1
issue.
2013-01-04Set default particle burst count to 1 instead of 0 in any set particle ↵Justin Clark-Casey (justincc)1-3/+3
system script call that does not have an empty list. As per http://opensimulator.org/mantis/view.php?id=6353
2013-01-04Fix build break caused by missing ) from dce2809.Justin Clark-Casey (justincc)1-1/+1
Was hand-typing in a line of code I had tested before but not retested this time
2013-01-04Automatically grant sit-related llRequestPermissions() for subsequent ↵Justin Clark-Casey (justincc)1-15/+1
avatars sitting on the same scene obejct, instead of wrongly popping up request permissions dialog. Resolves http://opensimulator.org/mantis/view.php?id=6478
2013-01-04refactor: simplify llGetNumberOfPrims() to return prim count + sitting ↵Justin Clark-Casey (justincc)1-7/+1
avatar count rather than independently inspecting every scene presence
2013-01-04Fix llGetLinkName() to return the name of the last avatar sat as the last ↵Justin Clark-Casey (justincc)1-41/+35
link number. As per http://wiki.secondlife.com/wiki/LlGetLinkName
2013-01-04Fix llGetLinkKey() to return the last sat avatar as the last link number.Justin Clark-Casey (justincc)1-17/+31
As per http://wiki.secondlife.com/wiki/LlGetLinkKey This is done by keeping a scene-object wide list of sitters. This also fixes bugs in this function where linknums 0 and 1 weren't treated properly if there were sitting avatars on a single prim. This also fixes a minor race condition for multiple concurrent sitters on a prim with no current sitters by locking on the object-wide list rather than individual sop lists Addresses http://opensimulator.org/mantis/view.php?id=6477
2013-01-03Scipt modules get the OpenMetaverse types, so lists passed as arguments to ↵SignpostMarv1-2/+27
script module functions which then later call LSL_Types.list.GetVector3Item() or LSL_Types.list.GetQuaternionItem() methods would then trigger an InvalidCastException, which is now avoided.
2013-01-03Improving documentation of AttachToAvatar and GetLine methods in LSL_Api.cs ↵SignpostMarv1-8/+15
based on doxygen error output
2013-01-02Fixed several problems with the Sun: some settings didn't work, or were ↵Oren Hurvitz1-6/+4
inconsistently used. - The sun position is always calculated by combining the sun settings in the Region and Estate. This fixes the problem that 'UseEstateSun' didn't work. - To remove ambiguity, the EstateToolsSunUpdate event no longer accepts the sun's position as parameters. That's because the position is always calculated from the Region and Estate settings. - Use only the 'FixedSun' flag to determine whether the sun is fixed; not the 'UseGlobalTime' flag. - Don't change the region's 'SunPosition' field according to the sun's position: this field is used only to set the position when using a FixedSun. (The 'SunVector' field does get updated according to the sun's position in the sky)
2013-01-02If an NPC is unowned, then always auto-grant permissions requested via ↵Justin Clark-Casey (justincc)1-1/+1
llRequestPermissions() This is consistent with all other OSSL NPC functions that allow unowned avatars to be manipulated. Aims to address http://opensimulator.org/mantis/view.php?id=6483
2013-01-01* ubit pointed out another place where that check needed to be updated and I ↵teravus1-6/+3
normalized it.
2013-01-01* This is actually the fix described the last commit.. I had commented it ↵teravus1-1/+1
out to see if the problem had affected all attachments or just HUD attachments.
2013-01-01* Fixes the attachment scripted rotation bug. The problem is the code was ↵teravus1-2/+11
relying on m_host.ParentId = 0 to determine if the attachment should be rotated against root prim offset. To fix it for attachments, we also need to check if the host's localID == RootPart's localID. otherwise we are cumulatively rotating against the host's root part rotation offset (which in this case, is it's own rotation)
2012-12-31Resolve Mantis 6480 (http://opensimulator.org/mantis/view.php?id=6480)Robert Adams1-2/+11
by reversing the sign on the recoil computation and adding a [XEngine]RecoilScaleFactor parameter which defaults to zero. Testing in SL seems to show that there is not a recoil action there. Or, at least, it is very small. If someone knows how small, the default for the scale factor should be changed.
2012-12-18Replace axis rotation numeric constants (STATUS_ROTATE_XYZ) with symbols. ↵Robert Adams1-3/+4
Also made it so llSetStatus() can individually enable disable rotation axi using the bitmask of flags.
2012-12-17Extend default 1 second wait for event completion to other thread script ↵Justin Clark-Casey (justincc)1-2/+2
reset (as called by llResetOtherScript()). As with script stop (via llDie()) aborting other scripts event threads, llResetOtherScript() can also abort any current event thread on another script. On mono 2.6, 2.10 and possibly later this may cause locking problems in certain code areas. This commit reuses the recently introduced [XEngine] WaitForEventCompletionOnScriptStop to make this a 1 sec timeout, rather than 0 secs.
2012-12-12Log situations where workitem event threads are aborted on stop request ↵Justin Clark-Casey (justincc)1-3/+3
because they failed to complete event processing within the given timeout. This is for bug hunting purposes where thread aborts may be causing dangling lock issues and subsequent vm crashes on mono (with ReaderWriterLockSlim, etc.)
2012-12-12Add "debug script log" command to allow setting a numeric debug level on ↵Justin Clark-Casey (justincc)1-8/+29
individual IScriptInstances for debugging purposes. Current, state changes and event fires can be logged for individual scripts. See command help for more details.
2012-12-07 fix regressionUbitUmarov1-2/+2
2012-12-07*TEST* add some avatar skeleton information and use it to calculate avatarUbitUmarov1-4/+25
height and bounding box. Change LSL acording.
2012-12-06Instead of printing script errors out to console, put to debug log so that ↵Justin Clark-Casey (justincc)1-1/+11
we also get timestamps. This commit also adds script name, part name, uuid, etc. for later identification. This information has been sent to console since 2009 but may be turned down if it proves too noisy. However, I still currently need it to investigate some region problems probably triggered by scripting.
2012-12-05Remove some mono warnings in script tests, chiefly where SetUp() wasn't ↵Justin Clark-Casey (justincc)5-7/+13
properly calling to OpenSimTestCase.SetUp()
2012-12-05Add IScriptInstance.EventsQueued to match EventsProcessed instead of asking ↵Justin Clark-Casey (justincc)1-0/+9
callers to lock and directly inspect the EventQueue
2012-12-05Add IScriptInstance.EventsProcessed stat so that we can record this ↵Justin Clark-Casey (justincc)1-0/+4
information and display in "show scripts" for debug purposes
2012-12-03XmlRpcGridRouterBlueWall1-0/+7
Flesh out XmlRpcGridRouter to reap unused channels from gateway when scripts or objects are removed, or when the llCloseRemoteDataChannel is called. See: http://http://forge.opensimulator.org/gf/project/xmlrpcrouter/ or https://github.com/BlueWall/XmlRpcRouter for php gateway and test code.
2012-12-03Add a transaction ID to the money module path for llTransferLindenDollarsMelanie1-2/+2
2012-11-24 avoid potencial NullReferenceExceptionUbitUmarov1-2/+5
2012-11-24Consistenly make NUnit test cases inherit from OpenSimTestCase which ↵Justin Clark-Casey (justincc)11-11/+11
automatically turns off any logging enabled between tests
2012-11-15Revert "Merge master into teravuswork", it should have been avination, not ↵teravus16-1945/+959
master. This reverts commit dfac269032300872c4d0dc507f4f9062d102b0f4, reversing changes made to 619c39e5144f15aca129d6d999bcc5c34133ee64.
2012-11-14Added AssemblyInfos to every dll in the OpenSim.Region namespace.Diva Canto6-0/+198
2012-11-09llSetLinkCamera implementationPixelTomsen3-0/+36
wiki: http://wiki.secondlife.com/wiki/LlSetLinkCamera mantis: http://opensimulator.org/mantis/view.php?id=6397
2012-11-05Change user message on TeskInventoryAccepted to let the viewer format itMelanie1-5/+5
properly