aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api/Implementation (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Have SOP and LSL_Api call the proper GetCenterOfMass and GetGeometricCenterRobert Adams2013-01-211-1/+1
| | | | | routines on the physics engine. Won't make a difference for any existing scripts since ODE always returned Vector3.Zero.
* New constants for llGetObjectDetailsTalun2013-01-191-0/+75
| | | | | | | 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
* Mantis 6507 keys returned by llGetAgentList incorrect for llList2KeyTalun2013-01-191-2/+2
| | | | The type of the keys returned by llGetAgentList corrected to LSL_Key
* Restore previous client AO behaviour by not allowing them to remove the ↵Justin Clark-Casey (justincc)2013-01-182-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.
* Implement co-operative script termination if termination comes during a ↵Justin Clark-Casey (justincc)2013-01-164-19/+43
| | | | | | | | | | 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.
* Revert "Implement co-operative script termination if termination comes ↵Justin Clark-Casey (justincc)2013-01-161-24/+7
| | | | | | | | 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.
* Implement co-operative script termination if termination comes during a ↵Justin Clark-Casey (justincc)2013-01-161-7/+24
| | | | | | | | | 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.
* Instead of passing separate engine, part and item components to script APIs, ↵Justin Clark-Casey (justincc)2013-01-154-21/+24
| | | | | | | | 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.
* BulletSim: add osGetPhysicsEngineType() LSL function and updateRobert Adams2013-01-111-11/+48
| | | | | | | | 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.
* Add "show script timers" command to show script timers. For debug purposes.Justin Clark-Casey (justincc)2013-01-102-32/+38
| | | | Also, "show sensors" changes to "show script sensors".
* Add "show sensors" command to show script sensor information for debug purposes.Justin Clark-Casey (justincc)2013-01-101-32/+62
|
* Set default particle burst count to 1 instead of 0 in any set particle ↵Justin Clark-Casey (justincc)2013-01-041-3/+3
| | | | | | system script call that does not have an empty list. As per http://opensimulator.org/mantis/view.php?id=6353
* Fix build break caused by missing ) from dce2809.Justin Clark-Casey (justincc)2013-01-041-1/+1
| | | | Was hand-typing in a line of code I had tested before but not retested this time
* Automatically grant sit-related llRequestPermissions() for subsequent ↵Justin Clark-Casey (justincc)2013-01-041-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
* refactor: simplify llGetNumberOfPrims() to return prim count + sitting ↵Justin Clark-Casey (justincc)2013-01-041-7/+1
| | | | avatar count rather than independently inspecting every scene presence
* Fix llGetLinkName() to return the name of the last avatar sat as the last ↵Justin Clark-Casey (justincc)2013-01-041-41/+35
| | | | | | link number. As per http://wiki.secondlife.com/wiki/LlGetLinkName
* Fix llGetLinkKey() to return the last sat avatar as the last link number.Justin Clark-Casey (justincc)2013-01-041-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
* Improving documentation of AttachToAvatar and GetLine methods in LSL_Api.cs ↵SignpostMarv2013-01-031-8/+15
| | | | based on doxygen error output
* Fixed several problems with the Sun: some settings didn't work, or were ↵Oren Hurvitz2013-01-021-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)
* If an NPC is unowned, then always auto-grant permissions requested via ↵Justin Clark-Casey (justincc)2013-01-021-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
* Resolve Mantis 6480 (http://opensimulator.org/mantis/view.php?id=6480)Robert Adams2012-12-311-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.
* Replace axis rotation numeric constants (STATUS_ROTATE_XYZ) with symbols. ↵Robert Adams2012-12-181-3/+4
| | | | Also made it so llSetStatus() can individually enable disable rotation axi using the bitmask of flags.
* XmlRpcGridRouterBlueWall2012-12-031-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.
* Added AssemblyInfos to every dll in the OpenSim.Region namespace.Diva Canto2012-11-141-0/+33
|
* llSetLinkCamera implementationPixelTomsen2012-11-091-0/+30
| | | | | | wiki: http://wiki.secondlife.com/wiki/LlSetLinkCamera mantis: http://opensimulator.org/mantis/view.php?id=6397
* Change user message on TeskInventoryAccepted to let the viewer format itMelanie2012-11-051-5/+5
| | | | properly
* refactoring llCollisionSound to use new KeyOrName methodSignpostMarv2012-10-291-10/+1
|
* Refactoring llTriggerSoundLimited with a new method on ISoundModule, as the ↵SignpostMarv2012-10-291-6/+3
| | | | LL Wiki spec for llTriggerSoundLimited states an axis-aligned bounding box, not radial constraint
* refactoring llTriggerSoundLimited to not use the LSL methods, since that ↵SignpostMarv2012-10-291-2/+2
| | | | will cause unnecessary calls to m_host.AddScriptLPS(1)
* refactoring llGetPos() to take advantage of implicit converterSignpostMarv2012-10-291-2/+1
|
* shifting from two instances of typecasting to one instance of typecasting in ↵SignpostMarv2012-10-291-4/+4
| | | | llTriggerSoundLimited
* 80-character width terminal formatting of recent commits to llPlaySound, ↵SignpostMarv2012-10-291-7/+15
| | | | llPlaySoundSlave, llTriggerSound and llTriggerSoundLimited
* shuffling code around so that the interface for ISoundModule.SendSound() ↵SignpostMarv2012-10-291-4/+40
| | | | specifies a UUID rather than a string
* moving SendSound from SceneObjectPart to ISoundModuleSignpostMarv2012-10-291-5/+17
|
* deduplicating code into a single LoopSound methodSignpostMarv2012-10-291-21/+7
|
* adjusting parameter order of PreloadSound to be more logicalSignpostMarv2012-10-291-1/+1
|
* transposing LoopSoundMaster to Sound ModuleSignpostMarv2012-10-291-25/+3
|
* transposing preload sound onto sound moduleSignpostMarv2012-10-291-1/+2
|
* transposing stop sound into sound moduleSignpostMarv2012-10-291-37/+5
|
* moving comment for llStopSound inside the method block prior to ↵SignpostMarv2012-10-291-1/+1
| | | | transposition to sound module
* Immediately setting gain to zero as a workaround for code not stopping sound ↵SignpostMarv2012-10-291-0/+1
| | | | started by llPlaySound
* Separate LSL's notion of the default anim from the actually playing anims.Melanie2012-10-261-3/+3
|
* adding ability for listeners to be filtered by regular expressions and a ↵SignpostMarv2012-10-261-0/+63
| | | | general-purpose function to see if a given string matches a given regex
* Formatting and casing correction in WorldCommModule, trailing new line in ↵SignpostMarv2012-10-261-1/+1
| | | | OSSL to get git diff to not complain
* minor: Add comment as to why we are pulcking plain old ints out of the ↵Justin Clark-Casey (justincc)2012-10-261-0/+2
| | | | LSL_List when converting values from LSL for modInvoke()
* Removing the apparently superfluous explicit namespace reference so that the ↵SignpostMarv2012-10-261-8/+2
| | | | if-else-if-else block in ConvertFromLSL can have a consistent appearance
* system ints can end up in LSL lists, which can cause counter-intuitive ↵SignpostMarv2012-10-261-0/+2
| | | | unknown list element type errors in ConvertFromLSL (via modInvoke)
* Get osNpcCreate() and osNpcLoadAppearance() to generate a script error if ↵Justin Clark-Casey (justincc)2012-10-251-5/+6
| | | | appearance notecard does not exist, rather than returning UUID.Zero or silently failing.
* When scripts generate expected exceptions (e.g. due to checked bad ↵Justin Clark-Casey (justincc)2012-10-253-8/+8
| | | | | | | parameter) throw ScriptException instead of just a plain old exception. This is to make it easier to distinguish these exceptions from unexpected OpenSimulator problems internally and in regression tests. No functional changes.
* Make osNpcCreate() return UUID.Zero instead of throwing an exception if ↵Justin Clark-Casey (justincc)2012-10-251-8/+18
| | | | notecard name is invalid. Make osNpcLoadAppearance() fail silently in same circumstance rather than throwing exception.