Justin Clark-Casey (justincc)
0d25be3f81
Make C# scripts return correct error line and column numbers instead of failing because they have no linemap.
...
Adapted fix from http://opensimulator.org/mantis/view.php?id=6571
Thanks Nickel Briand
2013-03-13 00:19:37 +00:00
Justin Clark-Casey (justincc)
be686f80a3
minor: Remove mono compiler warnings from LSL_ApiHttpTests
2013-03-11 23:01:07 +00:00
Mic Bowman
30e06b0742
Convert doubles passed back through the MOD interface into LSL_Floats
2013-03-05 20:32:06 -08:00
Justin Clark-Casey (justincc)
a9f380d124
Fix bug in osGetPrimitiveParams() so that it works for prims with the same owner as the script and not ones with different owners.
...
Addresses http://opensimulator.org/mantis/view.php?id=6560
2013-03-06 00:22:58 +00:00
Justin Clark-Casey (justincc)
239a8da74e
Fix potential concurrency issue since the LSL notecard cache was not being checked for expiry under lock
2013-02-28 21:19:23 +00:00
Justin Clark-Casey (justincc)
a523ed1e4d
Fix bug where simultaneous calls by different scripts to llGetNotecardLine() or llGetNumberOfNotecardLines() would sometimes not trigger a dataserver event.
...
This was because the notecard asset ID was being used as the request identifier.
Now using a random ID, in common with other code using the DataServer
2013-02-28 21:15:14 +00:00
Justin Clark-Casey (justincc)
14684116f8
Add regression tests for llGetNotecardLine()
2013-02-28 20:57:03 +00:00
Diva Canto
3cc3a8e5bf
Removed duplicate 'using' statement.
2013-02-27 21:12:27 -08:00
Diva Canto
bb44758179
Switched to using the other Util function with a default value.
2013-02-27 20:59:16 -08:00
Diva Canto
64b8ce73da
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-02-27 20:50:03 -08:00
Diva Canto
f1010d7b15
Moved the HG default variables out of [Startup] and into their own section [Hypergrid] in *Common.ini.example. Backwards compatible for now.
2013-02-27 20:49:41 -08:00
Justin Clark-Casey (justincc)
61ba02e95f
minor: remove some mono compiler warnings in script regression tests
2013-02-27 20:38:10 +00:00
Justin Clark-Casey (justincc)
59bd099b03
Add regression test for llReleaseUrl() (and for llRequestUrl)
...
Forgot to add file for llRequestUrl() test in commit b8a7c8b
2013-02-27 20:12:58 +00:00
Justin Clark-Casey (justincc)
b8a7c8b26f
Add regression test for llRequestUrl()
2013-02-26 23:36:36 +00:00
Diva Canto
0e8289cd00
Added new Util function for reading config vars that's more generic than the one I added yesterday -- this is for helping move config vars out of [Startup]
2013-02-22 15:57:33 -08:00
Diva Canto
e515cdddec
Simplification of HG configs: HomeURI and GatekeeperURI now are defined as default under [Startup]. They can then be overwritten in the other sections (but probably shouldn't). I kept the existing code for backwards compatibility, so this should not cause any breaks from people's current configurations. But people should move to have these 2 vars under [Startup] -- see OpenSim.ini.example and Robust.HG.ini.example. And yes, both names now end with "URI" for consistency.
2013-02-21 17:26:19 -08:00
Diva Canto
4779f7d7d5
Deleted all AssemblyFileVersion directives
2013-02-19 17:14:55 -08:00
Justin Clark-Casey (justincc)
69d0e168fb
Fix a very unlikely-to-occur NullReferenceException race condition in llPushObject() where the code assumed that the physics actor it null-checked would still be null when it invoked a method on it
2013-02-14 00:20:23 +00:00
Justin Clark-Casey (justincc)
a82bd5678e
Use an integer when specifying the XWorkItem wait rather than a TimeSpan to avoid a Windows casting issue in SmartThreadPool for large TimeSpans.
...
TimeSpan.Milliseconds is an int64. However, STP casts this to an int (32-bit).
If TimeSpan.MaxValue is given then the casting results in an invalid value for the SDK WaitHandle.WaitAll() call.
This was causing the co-op script termination regression tests to fail on Windows but not Mono 2.10.8 (which is perhaps not strict in the negative values that it accepts).
Solution here is to use the int millisecondsTimeout STP call rather than the TimeSpan one.
This also allows us to more clearly specify Timeout.Infinite rather than TimeSpan.MaxValue
Thanks to Teravus for this spot.
2013-02-12 21:34:12 +00:00
Melanie
6504e3d4ce
Rename "Bounciness" to "Restitution"
2013-02-07 03:30:02 +00:00
Melanie
e5beb480ea
Partial port of Avination's support for the new physics parameters.
...
Implements the parameters as properties, the serialization and
database storage (MySQL only). Implements llSetPrimitiveParams for
prim physics shape and the other 4 extra params. Only the prim shape type
"None" is currently functional. No support for the Viewer UI (yet), that
will be ported in due course. Lots more to port, this is a large-ish changeset.
2013-02-06 08:03:04 +00:00
Justin Clark-Casey (justincc)
5c94346bd7
refactor: Move functions that lookup asset ids from task inventory or pass them through to ScriptUtils class in OpenSim.Region.Framework.dll
...
Renames functions to better reflect what they do.
This is so that code registering with modInvoke() can reuse this code to provide functions that behave in a consistent manner with existing LSL/OSSL functions.
2013-02-06 01:17:19 +00:00
Justin Clark-Casey (justincc)
562067eb16
Fix bug where viewers would not see the "Module command functions not enabled" error if these were disabled and a viewer attempted to call one.
...
This was not working because the shouter was wrongly signalled as an agent rather than a prim
2013-02-05 02:09:21 +00:00
Justin Clark-Casey (justincc)
1f1da23097
Bump version and assembly version numbers from 0.7.5 to 0.7.6
...
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
Justin Clark-Casey (justincc)
2ff301ca11
Correct spelling mistake in new RayFilterFlags, LSLPhanton -> LSLPhantom
2013-02-02 01:34:49 +00:00
Justin Clark-Casey (justincc)
5ac84a3793
Fix issue where lsl -> c# generation in co-operative termination mode did not correctly handle single statement versions of for, while and do-while loops.
...
Add regression tests to validate the fix.
This problem will not affect the default abort termination mode.
2013-01-30 03:52:22 +00:00
Justin Clark-Casey (justincc)
ccdf86c737
minor: remove EnableLogging() left over in CoopTerminationTests
2013-01-29 04:35:05 +00:00
Justin Clark-Casey (justincc)
ca26ff9436
minor: remove some mono compile warnings in XEngine.cs
2013-01-29 03:58:11 +00:00
Justin Clark-Casey (justincc)
53833babf9
Add OnScriptMovingStartEvent and OnScriptMovingEndEvent to EventManager so that these can be triggered by future code (not yet implemented).
...
Also hooks up moving_start and moving_end script events, eliminating itemID on XEngine EventManager methods since this is completely unused.
An adaptation of the patch in http://opensimulator.org/mantis/view.php?id=6515
Thanks Garmin Kawaguichi and Signpost Marv.
2013-01-26 03:57:51 +00:00
Talun
ceabb1b49a
Mantis 6343: Turn a prim to flexy to OFF don't work llSetPrimParams
...
Correction so that scripts can turn Flexi off as well as on.
2013-01-26 02:55:24 +00:00
teravus
878df52515
* This makes the non-physics llCastRay 'better'. It's not 'correctly working', and if you look deep enough, you see that the results are not really stable depending on the direction of the ray.
2013-01-23 21:58:51 -05:00
Justin Clark-Casey (justincc)
f7feed4d44
Remove unnecessary System.Linq reference from Compiler.cs
...
Hopefully will fix windows build via compile.bat
2013-01-24 01:11:04 +00:00
Justin Clark-Casey (justincc)
b775761104
Disable the not very useful infinite recursion co-op termination tests for now as they appear to cause failures with testing in jenkins.
...
These tests are not very useful anyway as they never actually get a chance to try termination before the script runs out of stack
2013-01-24 00:31:42 +00:00
Justin Clark-Casey (justincc)
1a610f30d8
Fix mono 2.4.3 build break by using CreateInstanceAndUnwrap 9 method call deprecated in later .net versions
2013-01-24 00:23:12 +00:00
Justin Clark-Casey (justincc)
55c6753b13
Merge branch 'master' into cooptermination
2013-01-24 00:03:44 +00:00
Justin Clark-Casey (justincc)
8a22ac3f94
Pass narrower WaitHandle rather than EventWaitHandle as co-op termination wait handle to script APIs.
...
APIs don't need to reference any methods on EventWaitHandle
2013-01-23 23:38:08 +00:00
Justin Clark-Casey (justincc)
72dd3633ee
Improve logging by making it clearer which script is failing if an assembly fails to load.
...
Moves the noise co-op start/stop debug log messages to only display if xengine debug level >= 1
Logs which stop strategy is being used (abort or co-op)
Adjusts some other logging to remove not very useful stuff
2013-01-23 23:34:15 +00:00
Melanie
c1795ed399
Add the Avination physics raycast glue so Core Physics can implement raycast
2013-01-23 21:03:24 +00:00
Melanie
6a2b673fca
Remove the return value from llGiveMoney and add llTransferLindenDollars. Also
...
make llGiveMoney async so the script thread is not held up waiting for comms
to an external server.
2013-01-23 19:45:36 +00:00
Justin Clark-Casey (justincc)
cf168194e5
If ScriptStopStrategy hasn't been set to co-op in [XEngine] config, then continue to generate C# that is functionality identical to historical generation
...
This is to eliminate disruption until co-op termination has been well-tested.
In non co-op mode, XEngine will continue to load DLLs of the existing Script class and the new XEngineScript class.
Moving to co-op mode still requires existing script DLL deletion to force recompilation, either manually or by setting DeleteScriptsOnStartup = true for one run.
This change also means that scripts which fail to initialize do not still show up as running scripts.
2013-01-23 02:36:43 +00:00
Justin Clark-Casey (justincc)
9a4914e58c
Add co-op termination regression test for infinite recursive manual call on event function.
...
Such code would normally terminate quickly with a stack overflow exception anyway.
2013-01-22 02:32:40 +00:00
Justin Clark-Casey (justincc)
0727784186
Set script delay factor to 0 in co-op termination tests
...
This is to ensure loops aren't actually terminating from a wait on an LSL function.
This was not the case with any of the existing tests.
2013-01-22 02:26:04 +00:00
Justin Clark-Casey (justincc)
679dc811dd
Add regression test for co-op termination on infinite user function call regression.
...
Such a script would probably run out of stack pretty quickly anyway.
2013-01-22 02:22:58 +00:00
Justin Clark-Casey (justincc)
b93e8020e2
Add regression test for co-op stop of an infinite jump loop
...
Also fixes bug in do-while test
Improves detection of failure due to invalid script in test
Sets up xengine anew for each test rather than once for the while testsuite to improve isolation between tests.
Stop listening for chat after the first 'script is running' chat is received to reduce test run time.
2013-01-22 02:16:10 +00:00
Justin Clark-Casey (justincc)
cf0b5e4f27
Add do-while co-op termination test
...
Minor changes to scripts in other tests.
2013-01-22 01:53:10 +00:00
Justin Clark-Casey (justincc)
fbdfe43d75
Add single and comound while loop co-op termination test
2013-01-22 01:40:18 +00:00
Justin Clark-Casey (justincc)
c6ba27d096
Fix bug in generating termination checks in compound statement for loop.
...
Add regression test for this case.
2013-01-22 01:23:10 +00:00
Justin Clark-Casey (justincc)
a558f9797d
factor out common code in existing co-op termination regression tests
2013-01-22 01:13:45 +00:00
Justin Clark-Casey (justincc)
419f8e0f76
Increase WaitForEventCompletionOnScriptStop to 120 secs to show that the co-op setting is active in its regression tests.
2013-01-22 01:08:24 +00:00
Justin Clark-Casey (justincc)
1730de14a4
minor: comment out Console.WriteLine debugging message in XEngine
2013-01-22 01:00:53 +00:00
Justin Clark-Casey (justincc)
cd446c32d6
Add regression test TestStopOnLongForLoop()
2013-01-22 00:59:46 +00:00
Justin Clark-Casey (justincc)
49d674c74d
refactor: rename XEngineTest to more descriptive XEngineBasicTests
2013-01-22 00:35:56 +00:00
Robert Adams
95c53ecae7
Have SOP and LSL_Api call the proper GetCenterOfMass and GetGeometricCenter
...
routines on the physics engine. Won't make a difference for any
existing scripts since ODE always returned Vector3.Zero.
2013-01-21 15:55:54 -08:00
Oren Hurvitz
b77da5039e
Assign the SmartThreadPool name in the constructor
...
This is required because some threads are created in the constructor, so assigning the name afterwards would be too late.
2013-01-19 02:08:58 +00:00
Talun
27e2ec177a
New constants for llGetObjectDetails
...
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-19 01:50:16 +00:00
Talun
4f70e423df
Mantis 6507 keys returned by llGetAgentList incorrect for llList2Key
...
The type of the keys returned by llGetAgentList corrected to LSL_Key
2013-01-19 01:14:11 +00:00
Justin Clark-Casey (justincc)
74256c0cc4
Restore previous client AO behaviour by not allowing them to remove the 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-18 22:57:09 +00:00
Justin Clark-Casey (justincc)
c8afc8523b
Implement non-wait co-operative termination of scripts for XEngine in addition to termination on wait.
...
This involves inserting opensim_reserved_CheckForCoopTermination() calls in lsl -> c# translation at any place where the script could be in a loop with no wait calls.
These places are for, while, do-while, label, user function call and manual event function call.
Call goes through to an XEngineScriptBase which extends ScriptBase.
IEngine is extended to supply necessary engine-specific parent class references and constructor parameters to Compiler.
Unfortunately, since XEngineScriptBase has to be passed WaitHandle in its constructor, older compiled scripts will fail to load with an error on the OpenSim console.
Such scripts will need to be recompiled, either by removing all *.dll files from the bin/ScriptEngines/<region-id> or by setting DeleteScriptsOnStartup = true in [XEngine] for one run.
Automatic recompilation may be implemented in a later commit.
This feature should not yet be used, default remains termination with Thread.Abort() which will work as normal once scripts are recompiled.
2013-01-17 23:39:09 +00:00
Justin Clark-Casey (justincc)
0963ece25b
Implement co-operative script termination if termination comes during a 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-16 02:07:43 +00:00
Justin Clark-Casey (justincc)
b8949024bc
Revert "Implement co-operative script termination if termination comes 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 1b5c41c14a
.
2013-01-16 01:45:09 +00:00
Justin Clark-Casey (justincc)
1b5c41c14a
Implement co-operative script termination if termination comes during a 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-16 00:12:40 +00:00
Justin Clark-Casey (justincc)
fccb03227e
Instead of passing separate engine, part and item components to script APIs, 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-15 21:13:22 +00:00
Justin Clark-Casey (justincc)
c846cefda9
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-01-15 00:24:51 +00:00
Justin Clark-Casey (justincc)
7978b349bd
refactor: Simplify ScriptInstance by retaining reference to SceneObjectPart instead of sometimes but not always looking it up.
2013-01-14 23:19:47 +00:00
Robert Adams
eacc2561d1
BulletSim: add osGetPhysicsEngineType() LSL function and update
...
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-11 16:47:35 -08:00
Justin Clark-Casey (justincc)
b1b4687250
Add "show script timers" command to show script timers. For debug purposes.
...
Also, "show sensors" changes to "show script sensors".
2013-01-10 00:57:49 +00:00
Justin Clark-Casey (justincc)
a0000a034f
Add "show sensors" command to show script sensor information for debug purposes.
2013-01-10 00:32:22 +00:00
Justin Clark-Casey (justincc)
3d5e3e35b7
minor: Fix command match of "debug script" command to "debug scripts" to match other scripts commands (and it's own short help text)
2013-01-09 00:08:08 +00:00
Justin Clark-Casey (justincc)
5fa4b8b144
minor: Allow "script *" console commands to take multiple script item ids
2013-01-09 00:01:48 +00:00
Justin Clark-Casey (justincc)
7232cedd2b
Set default particle burst count to 1 instead of 0 in any set particle system script call that does not have an empty list.
...
As per http://opensimulator.org/mantis/view.php?id=6353
2013-01-04 21:37:11 +00:00
Justin Clark-Casey (justincc)
7e45096314
Fix build break caused by missing ) from dce2809
.
...
Was hand-typing in a line of code I had tested before but not retested this time
2013-01-04 21:22:51 +00:00
Justin Clark-Casey (justincc)
dce2809137
Automatically grant sit-related llRequestPermissions() for subsequent 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-04 21:18:53 +00:00
Justin Clark-Casey (justincc)
a3bf3a2aa5
refactor: simplify llGetNumberOfPrims() to return prim count + sitting avatar count rather than independently inspecting every scene presence
2013-01-04 20:56:39 +00:00
Justin Clark-Casey (justincc)
9869ca83b4
Fix llGetLinkName() to return the name of the last avatar sat as the last link number.
...
As per http://wiki.secondlife.com/wiki/LlGetLinkName
2013-01-04 20:54:11 +00:00
Justin Clark-Casey (justincc)
9503383887
Fix llGetLinkKey() to return the last sat avatar as the last link number.
...
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-04 20:34:39 +00:00
SignpostMarv
aa78df4a79
Scipt modules get the OpenMetaverse types, so lists passed as arguments to 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-03 00:18:33 +00:00
SignpostMarv
a5ac6af16a
Improving documentation of AttachToAvatar and GetLine methods in LSL_Api.cs based on doxygen error output
2013-01-03 00:17:24 +00:00
Oren Hurvitz
1a6694b264
Fixed several problems with the Sun: some settings didn't work, or were 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-02 23:16:24 +00:00
Justin Clark-Casey (justincc)
30e5e5cce6
If an NPC is unowned, then always auto-grant permissions requested via 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-02 19:25:52 +00:00
Justin Clark-Casey (justincc)
bc9a7ba0d6
minor: Assign names to the different SmartThreadPools for debugging purposes.
...
A different approach to the patch in http://opensimulator.org/mantis/view.php?id=6462
that doesn't involve further forking of SmartThreadPool
2013-01-01 23:57:20 +00:00
Robert Adams
4914d6c0ea
Resolve Mantis 6480 ( http://opensimulator.org/mantis/view.php?id=6480 )
...
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-31 19:57:20 -08:00
Robert Adams
d15bfcf614
Replace axis rotation numeric constants (STATUS_ROTATE_XYZ) with symbols. Also made it so llSetStatus() can individually enable disable rotation axi using the bitmask of flags.
2012-12-18 19:25:40 -08:00
Justin Clark-Casey (justincc)
e6fd8365af
Extend default 1 second wait for event completion to other thread script 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-17 21:37:02 +00:00
Justin Clark-Casey (justincc)
523213060b
Add WaitForEventCompletionOnScriptStop [XEngine] config param to OpenSimDefaults.ini to allow change of the wait time for an event to complete on script removal before aborting its thread
...
Default is 1000, as has previously been the case.
This parameter exists for further debug work concerning mono 2.10 crashes that may be related to locks not being removed on Thread.Abort
2012-12-13 23:21:25 +00:00
Justin Clark-Casey (justincc)
512e4c9313
Log situations where workitem event threads are aborted on stop request 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-12 23:30:26 +00:00
Justin Clark-Casey (justincc)
047270bdc8
Add "debug script log" command to allow setting a numeric debug level on 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-12 23:13:34 +00:00
Justin Clark-Casey (justincc)
418c0cb01d
Add asset id to "show script" and "show scripts" command output to make it easier to extract and inspect the script's asset via "dump asset"
2012-12-12 22:06:09 +00:00
Justin Clark-Casey (justincc)
1c9ecc55d3
Instead of printing script errors out to console, put to debug log so that 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-06 00:22:52 +00:00
Justin Clark-Casey (justincc)
ec765de7e5
Add engine-wide events queued and events processed numbers to output of "xengine status" console command. For debugging purposes.
2012-12-05 23:41:50 +00:00
Justin Clark-Casey (justincc)
66982c8a59
Remove some mono warnings in script tests, chiefly where SetUp() wasn't properly calling to OpenSimTestCase.SetUp()
2012-12-05 23:36:15 +00:00
Justin Clark-Casey (justincc)
5ba99cbf55
Add IScriptInstance.EventsQueued to match EventsProcessed instead of asking callers to lock and directly inspect the EventQueue
2012-12-05 23:33:48 +00:00
Justin Clark-Casey (justincc)
652f4bcb42
For now, sort "show scripts" output in descending order sorted by events processed.
...
For debug purposes - should later add options to allow different sorting or show only highest 10, etc.
2012-12-05 23:27:50 +00:00
Justin Clark-Casey (justincc)
e8df0f1b4c
Add IScriptInstance.EventsProcessed stat so that we can record this information and display in "show scripts" for debug purposes
2012-12-05 22:33:46 +00:00
Justin Clark-Casey (justincc)
ea786414c2
In XEngine.DoOnRezScript() use Culture.SetCurrentCulture() instead of constructing a new CultureInfo separately
2012-12-05 21:51:08 +00:00
Justin Clark-Casey (justincc)
d97440c7cf
On XEngine.ProcessEventHandler(), instead of creating a new CultureInfo on every call use the single one set by Culture.SetCurrentCulture()
...
This is slightly different in that SetCurrentCulture() does not use overridden settings if the system culture matches en-US but some settings there have been changed.
This is what we want - we do not want to use any system overriden settings.
2012-12-05 21:40:28 +00:00
BlueWall
ac65085cc3
XmlRpcGridRouter
...
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-03 20:16:44 -05:00
Justin Clark-Casey (justincc)
22d4c52ffc
Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests
2012-11-24 03:15:24 +00:00
Diva Canto
aeeaa3a0a9
Added AssemblyInfos to every dll in the OpenSim.Region namespace.
2012-11-14 11:09:43 -08:00
PixelTomsen
64c80aec64
llSetLinkCamera implementation
...
wiki: http://wiki.secondlife.com/wiki/LlSetLinkCamera
mantis: http://opensimulator.org/mantis/view.php?id=6397
2012-11-09 14:31:56 -08:00
Melanie
236cc1f268
Change user message on TeskInventoryAccepted to let the viewer format it
...
properly
2012-11-05 00:05:01 +00:00
Justin Clark-Casey (justincc)
566aaef1f4
Also add the additional ScriptException constructor necessary to get [Serializable] to work.
2012-10-31 00:56:41 +00:00
Justin Clark-Casey (justincc)
b3072cf343
Mark ScriptException as [Serializable] for when it has to cross AppDomains
2012-10-31 00:46:07 +00:00
Justin Clark-Casey (justincc)
6235d16c31
Make "show object part" command correctly display script status.
...
Uses new IEntityInventory.TryGetScriptInstanceRunning()
Makes it clearer that TaskInventoryItem.ScriptRunning cannot be used as it is temporary and not updated.
2012-10-31 00:31:18 +00:00
SignpostMarv
dcac2a7f71
refactoring llCollisionSound to use new KeyOrName method
2012-10-29 23:39:01 +00:00
SignpostMarv
a9999a9676
Refactoring llTriggerSoundLimited with a new method on ISoundModule, as the LL Wiki spec for llTriggerSoundLimited states an axis-aligned bounding box, not radial constraint
2012-10-29 23:39:01 +00:00
SignpostMarv
ef15711089
refactoring llTriggerSoundLimited to not use the LSL methods, since that will cause unnecessary calls to m_host.AddScriptLPS(1)
2012-10-29 23:39:00 +00:00
SignpostMarv
af9dc483e9
refactoring llGetPos() to take advantage of implicit converter
2012-10-29 23:39:00 +00:00
SignpostMarv
f9923d4423
shifting from two instances of typecasting to one instance of typecasting in llTriggerSoundLimited
2012-10-29 23:39:00 +00:00
SignpostMarv
c796f7861e
80-character width terminal formatting of recent commits to llPlaySound, llPlaySoundSlave, llTriggerSound and llTriggerSoundLimited
2012-10-29 23:39:00 +00:00
SignpostMarv
c5af16aef8
shuffling code around so that the interface for ISoundModule.SendSound() specifies a UUID rather than a string
2012-10-29 23:39:00 +00:00
SignpostMarv
5abcecc735
moving SendSound from SceneObjectPart to ISoundModule
2012-10-29 23:39:00 +00:00
SignpostMarv
9df510157e
deduplicating code into a single LoopSound method
2012-10-29 23:38:59 +00:00
SignpostMarv
d7ffcace8f
adjusting parameter order of PreloadSound to be more logical
2012-10-29 23:38:59 +00:00
SignpostMarv
29a8ae48b5
transposing LoopSoundMaster to Sound Module
2012-10-29 23:38:59 +00:00
SignpostMarv
a68e2fe169
transposing preload sound onto sound module
2012-10-29 23:38:58 +00:00
SignpostMarv
8763a637b5
transposing stop sound into sound module
2012-10-29 23:38:58 +00:00
SignpostMarv
206a694c6b
moving comment for llStopSound inside the method block prior to transposition to sound module
2012-10-29 23:38:58 +00:00
SignpostMarv
7560010f34
Immediately setting gain to zero as a workaround for code not stopping sound started by llPlaySound
2012-10-29 23:38:56 +00:00
Melanie
1c5f6e48b8
Separate LSL's notion of the default anim from the actually playing anims.
2012-10-26 21:23:20 +01:00
SignpostMarv
e977761071
adding ability for listeners to be filtered by regular expressions and a general-purpose function to see if a given string matches a given regex
2012-10-26 02:08:00 +01:00
SignpostMarv
18b1ee6f37
Formatting and casing correction in WorldCommModule, trailing new line in OSSL to get git diff to not complain
2012-10-26 02:08:00 +01:00
Justin Clark-Casey (justincc)
1b3b7a61ac
minor: Add comment as to why we are pulcking plain old ints out of the LSL_List when converting values from LSL for modInvoke()
2012-10-26 01:50:46 +01:00
SignpostMarv
ecdb88679e
Removing the apparently superfluous explicit namespace reference so that the if-else-if-else block in ConvertFromLSL can have a consistent appearance
2012-10-26 01:43:54 +01:00
SignpostMarv
01972cc9e8
system ints can end up in LSL lists, which can cause counter-intuitive unknown list element type errors in ConvertFromLSL (via modInvoke)
2012-10-26 01:43:53 +01:00
Justin Clark-Casey (justincc)
8af8319b95
Get osNpcCreate() and osNpcLoadAppearance() to generate a script error if appearance notecard does not exist, rather than returning UUID.Zero or silently failing.
2012-10-25 03:02:00 +01:00
Justin Clark-Casey (justincc)
d9aaf51561
When scripts generate expected exceptions (e.g. due to checked bad 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.
2012-10-25 02:52:20 +01:00
Justin Clark-Casey (justincc)
ae662b54ea
Make osNpcCreate() return UUID.Zero instead of throwing an exception if notecard name is invalid. Make osNpcLoadAppearance() fail silently in same circumstance rather than throwing exception.
2012-10-25 01:07:06 +01:00
Justin Clark-Casey (justincc)
5d4ac5a90f
Add TestOsNpcLoadAppearance()
2012-10-25 00:59:27 +01:00
Justin Clark-Casey (justincc)
1743fe5d62
Move npc creation tests involving appearance from OSSL_ApiAppearanceTest to OSSL_ApiNpcTests
...
This is a more intuitive location.
2012-10-25 00:29:50 +01:00
BlueWall
2aac113ac1
Add CLICK_ACTION_ZOOM
...
Add support for V2/3 CLICK_ACTION_ZOOM to llSetClickAction
2012-10-20 04:32:04 -04:00
SignpostMarv
af5383e479
altering documentation for llGetLinkName, as the current documentation is rather lengthy for a "summary".
2012-10-19 02:48:59 +01:00
SignpostMarv
645e3171b4
since llGetLinkName has a "simplest case", it should be the first check made.
2012-10-19 02:48:59 +01:00
SignpostMarv
597df51f91
the simplest case for llGetLinkName also applies to the LINK_THIS constant
2012-10-19 02:48:59 +01:00
SignpostMarv
ec044537d5
ensuring that operand order in llGetLinkName is internally consistent
2012-10-19 02:48:59 +01:00
Justin Clark-Casey (justincc)
ab0294f010
Add missing category paremeter to llGiveInventoryList grid IM construction.
...
This was a regression from 16c9c1df
Sat Oct 6 02:34:49 2012 +0100.
Should resolve http://opensimulator.org/mantis/view.php?id=6360
2012-10-16 01:33:35 +01:00
Justin Clark-Casey (justincc)
330b976a62
Improve on TBG Renfold's fix to llRequestSimulatorData DATA_SIM_POS by only performing HG regionflags service check if the region secret is not empty.
...
An empty RegionSecret is never HG, whilst a non-empty one may be HG or being genuinely used as a RegionSecret.
2012-10-13 01:03:09 +01:00
TBG Renfold
f6e166cd0b
Now using region flags for llRequestSimulatorData DATA_SIM_POS.
...
If the region is not classed a hypergrid region, then the region secret is checked to make sure that it is a valid UUID.
Just a temporary fix at this time.
2012-10-13 00:50:34 +01:00
Justin Clark-Casey (justincc)
756ac4f321
Correct osSetContentType() threat check to query osSetContentType rather than osSetResponseType
2012-10-10 01:39:47 +01:00
Justin Clark-Casey (justincc)
11d8119a21
Remove osDropAttachment threat level check wrongly placed in OSSL_Api.ShoutErrorOnLackingOwnerPerms.
2012-10-10 01:37:57 +01:00
Justin Clark-Casey (justincc)
16c9c1dff7
On receiving TaskInventoryAccepted with a destination folder in the binary bucket slot for RLV, notify the viewer about inventory folder updates.
...
The viewer would not see the folder move without this, either on accept or decline.
This commit also updates the TaskInventoryOffered message to better conform with the data LL uses
Changes are, agentID is prim owner rather than prim id, agent name is now simply object name rather than name with owner detail,
message is just folder name in single quotes, message is not timestamped.
However, folder is not renamed "still #RLV/~<name>". Long term solution is probably not to do these operations server-side.
Notes will be added to http://opensimulator.org/mantis/view.php?id=6311
2012-10-06 02:34:49 +01:00
Melanie
653a98e891
Fix a viewer crash issue
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-10-03 17:39:13 +01:00
SignpostMarv
a1679517d3
correcting typo
2012-10-02 22:14:47 +01:00
SignpostMarv
f555febdb7
taking into account the recent introduction of implicit operators
2012-10-02 22:14:46 +01:00
SignpostMarv
ce7694c108
added perms checking, duplicated functionality to methods that do not require perms and have higher threat level
2012-10-02 22:14:46 +01:00
SignpostMarv
c677c04f10
fixing copypasta
2012-10-02 22:14:46 +01:00
SignpostMarv
35b7c80e0b
implementing osDropAttachment & osDropAttachmentAt
2012-10-02 22:14:46 +01:00
Melanie
54ec8b197b
Add money event routing to the script engine.
2012-10-02 01:25:55 +01:00
Melanie
14b659e550
Send money() events to the clicked prim. Reverting a change I made over a year ago.
2012-10-02 01:17:46 +01:00
Justin Clark-Casey (justincc)
5df3944607
Fix llListFindList() returning no match when there is a match with a script constant component in the source list.
...
Adds regression test for this case.
Based on http://opensimulator.org/mantis/view.php?id=6156
Thanks SignpostMarv.
2012-09-22 00:23:25 +01:00
SignpostMarv
8db5d79f4b
passing in the function name to MOD_Api.ConvertFromLSL for more user-friendly error messages
2012-09-10 13:15:32 +01:00
SignpostMarv
e041f09750
refactoring to allow Scene.GetLandData to accept Vector3 as an argument. Note that the prior work on LSL_Vector implicit operators means one does not need to explicitly cast a LSL_Vector to Vector3
2012-09-08 00:44:27 +01:00
SignpostMarv
874bde366a
4096 is used in various places as the maximum height of a region, refactoring to be a constant
2012-09-08 00:14:39 +01:00
Mic Bowman
641b08aa78
Enables cast from int to float for MOD* functions;
...
Thanks SignpostMarv!
2012-09-05 09:13:16 -07:00
SignpostMarv
07dbe46ba3
wrapping attachment functions in a region
2012-09-04 00:03:44 +01:00
SignpostMarv
ff867b59cf
Implementing functing to send messages directly to attachments
2012-09-04 00:03:44 +01:00
SignpostMarv
d4b8a13a1d
refactoring the grunt work of MessageObject into a private method with a UUID argument
2012-09-04 00:03:44 +01:00
SignpostMarv
a858c5daee
implementing a function to get the number of attachments worn
2012-09-04 00:03:43 +01:00
Melanie
d297eb39e5
Revert "made setting rotation match Second Life"
...
Second Life seems to have introduced a bug, as we have confirmation that SL
behavior changed recently and changed in contradiction to their stated intention
This appears to be another of the bugs SL is notorious for. Signpost and I have
decided to back this out until SL's intention becomes clear.
This reverts commit f7b88d1c40
.
2012-09-03 21:52:12 +01:00
Melanie
29218cdb31
Revert "no need to assign rotation to a variable now"
...
This reverts commit a3d140b57c
.
2012-09-03 21:52:03 +01:00
Melanie
359f9efc76
Revert "formatting"
...
This reverts commit fb211c64fd
.
2012-09-03 21:51:54 +01:00
SignpostMarv
fb211c64fd
formatting
2012-09-03 13:55:41 +01:00
SignpostMarv
a3d140b57c
no need to assign rotation to a variable now
2012-09-03 13:55:40 +01:00
SignpostMarv
f7b88d1c40
made setting rotation match Second Life
2012-09-03 13:55:40 +01:00
SignpostMarv
3c019bea8c
Implementing a vastly simpler means of allowing region modules to access GetLinkParts than mantis 6236
2012-08-31 01:19:17 +01:00
SignpostMarv
c76c63725b
fixing bug where last element in list is ignored
2012-08-30 00:10:28 +01:00
SignpostMarv
6b277394c0
refactoring as the list funcs either skip invalid values or recall ToDoubleList
2012-08-30 00:10:28 +01:00
Mic Bowman
3d736d575f
This partially implements the LSL function to set the response
...
type for an HTTP request. Since the "official" LSL function limits
the use of the response type, it is implemented as osSetContentType
with a string for the content mime type and a threat level of high.
With this function you should be able to implement rather functional
media-on-a-prim application with much less difficulty.
2012-08-29 14:56:51 -07:00
SignpostMarv
0c3061f973
implementing rule tracking
2012-08-29 02:10:04 +01:00
SignpostMarv
3bf7bd6359
track originating IScriptApi method for SL-like error messages. Will add rule number tracking in next commit.
2012-08-29 02:10:04 +01:00
SignpostMarv
1e18f0f26a
copying documentation from http://opensimulator.org/wiki/Threat_level
2012-08-28 00:12:35 +01:00
SignpostMarv
6e86b23012
implementing PRIM_LINK_TARGET on GetPrimParams ala SetPrimParams
2012-08-25 02:30:23 +01:00
SignpostMarv
58714b0aca
minor formatting
2012-08-25 02:30:23 +01:00
SignpostMarv
5203665bb2
refactoring to local variable for cleaner code
2012-08-25 02:30:23 +01:00
SignpostMarv
2a2e120470
since we will be making the Get return type the remaining ruleset as with the Set return type, we need to move the original return type to a ref param
2012-08-25 02:30:23 +01:00
SignpostMarv
a8044999fb
use SceneObjectPart instead of var
2012-08-25 02:30:23 +01:00
SignpostMarv
3d504261b0
renaming to be similar to equivalent Set command
2012-08-25 02:30:23 +01:00
Justin Clark-Casey (justincc)
f3a5e3a02b
Log initial script startup info notice when xengine actually starts to do this for debugging purposes, rather than before it actually starts to do this.
2012-08-25 00:42:32 +01:00
SignpostMarv
67477290ad
stripping superfluous whitespace
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-08-24 17:44:35 +01:00
SignpostMarv
582a256646
immediately returning the string.Join operation instead of checking if the list has members
2012-08-24 17:44:14 +01:00
SignpostMarv
d188272462
refactoring using List.ConvertAll<string>
2012-08-24 17:44:14 +01:00
Justin Clark-Casey (justincc)
a08687aef3
Revert "implementing function to allow scripts to self-replicate as if the owner duplicated them, using the same script delay as llRezObject()"
...
This reverts commit 2ad9d656b3
.
Reverted pending consideration of associated issues.
2012-08-24 01:18:35 +01:00
SignpostMarv
2ad9d656b3
implementing function to allow scripts to self-replicate as if the owner duplicated them, using the same script delay as llRezObject()
2012-08-24 00:21:42 +01:00
TBG Renfold
a3cbda0d74
Removed land checking as suggested by SignpostMarv.
...
Now whatever remaining health the avatar has is displayed (float).
This will be 100% (100.000000) if no damage has occurred (as what the viewer should really be seeing anyway).
Returns -1.000000 if the avatar is not found.
2012-08-24 00:13:27 +01:00
TBG Renfold
4f3fabae5b
Adds osGetHealth.
...
Returns the amount of health (in an integer) that an avatar has left in the scene.
If an avatar is not found or safe is enabled on a region, -1 is returned.
Example usage:
default
{
touch_end(integer _t)
{
key agentID = llDetectedKey(0);
osCauseDamage(agentID, 50);
llSay(0, llKey2Name(agentID) + " has " + (string)osGetHealth(agentID) + "% health left.");
}
}
2012-08-24 00:13:14 +01:00
Justin Clark-Casey (justincc)
aede42b875
If a script state save fails for some reason on shutdown/region removal, get xengine to spit out some useful information and continue to save other script states
2012-08-23 23:13:53 +01:00
SignpostMarv
4820dfd733
this should be an if-else block in case the non-phys min/max are smaller than the physical min/max
2012-08-22 23:55:01 +01:00
SignpostMarv
481c00f50a
refactoring out SetFaceColor
2012-08-20 23:10:25 +01:00
SignpostMarv
ede3b9ab07
making use of implicit operators and Util.Clip handling of Vector3
2012-08-20 23:10:25 +01:00
SignpostMarv
b863a15a82
single operation for PRIM_COLOR
2012-08-20 23:10:25 +01:00
Justin Clark-Casey (justincc)
bcbd450fe4
Add --force flag to "kick user" console command to allow bypassing of recent race condition checks.
...
This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once).
You should only attempt --force if a normal kick fails.
This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive.
This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
2012-08-20 20:24:54 +01:00
Melanie
8769e4ee73
Add a reference to OpenMetaverseType.dll to compiled script assemblies.
2012-08-18 19:08:38 +01:00
SignpostMarv
d72d599056
integrating redundant code into operator
2012-08-18 18:30:00 +01:00
SignpostMarv
ca33619e11
Rot2Quaternion is now redundant
2012-08-18 18:30:00 +01:00
SignpostMarv
ffdde05bb7
constructor means not having to manually refer to individual properties
2012-08-18 18:29:59 +01:00
SignpostMarv
fb84ff96a9
implicit operators mean one does not need to instantiate new objects manually
2012-08-18 18:29:59 +01:00
SignpostMarv
52d7af05bc
adding missing refactor for LSL_Vector
2012-08-18 18:29:59 +01:00
SignpostMarv
2b0c8bc480
Implementing operators & constructors for Quaternion
2012-08-18 18:29:59 +01:00
Melanie
2a70afeca2
Fix the whitespace formatting error introduced by the last patch
2012-08-18 14:00:10 +01:00
SignpostMarv
5d7751da89
refactoring for Vector3 operator & constructor tweaks
2012-08-18 13:21:55 +01:00
Melanie
9d6fe1224a
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2012-08-18 12:57:49 +01:00
SignpostMarv
28d0aff2e3
adding null return to fix building
2012-08-17 23:23:03 +01:00
SignpostMarv
7068fddd2f
fixing bug that get/set the wrong property for prim types other than sphere & box
2012-08-17 23:23:03 +01:00
SignpostMarv
466d684fbe
implemented
2012-08-17 23:23:03 +01:00
SignpostMarv
74f5253a36
attempt to handle InvalidCastException in a manner similar to Second Life
2012-08-17 23:08:24 +01:00
Justin Clark-Casey (justincc)
0860a0d856
minor: Make xengine debug message on script load a scripting loading message instead.
...
This is more useful if compilation fails due to an uncatchable exception since we know what was being compiled.
2012-08-17 22:30:01 +01:00
SignpostMarv
e9ea911563
adding a clip method to handle Vector3 objects to enable a minor amount of refactoring
2012-08-17 18:40:49 +01:00
Melanie
9995421df1
Do a proper null check to avoid the overloaded operator == trap
2012-08-16 02:35:03 +01:00
SignpostMarv
ef4122213c
enables configurable minimum sizes for physical & non-physical prims
2012-08-15 23:35:23 +01:00
Melanie
e286a95d76
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2012-08-15 22:59:31 +01:00
SignpostMarv
0aa1f1cc3f
Implementing PRIM_LINK_TARGET in a non-recursive fashion
2012-08-15 22:58:33 +01:00
SignpostMarv
7679384829
adding ATTACH_*_PEC constants
2012-08-15 22:06:20 +01:00
Melanie
ebbf349c6a
Let the temp attachment module add a command to allow attaching without permissions and add support for this (incomplete!) to LSL
2012-08-15 19:37:16 +01:00
Justin Clark-Casey (justincc)
c42fe6c159
Prevent race conditions when one thread removes an NPC SP before another thread has retreived it after checking whether the NPC exists.
2012-08-14 21:44:06 +01:00
Melanie
fe4c3a37c0
Lay some groundwork for temp attachments. Decouple attachments from inventory.
2012-08-14 00:12:15 +01:00
SignpostMarv
58c630c18e
attempt at replicating behaviour of llList2thing functions in SL
...
Committed with changes. Please don't sign comments with your name. Please
don't use your own coding style, use the OpenSim project style. Please
don't modify unrelated whitespace.
Signed-off-by: Melanie <melanie@t-data.com>
2012-08-13 19:17:19 +01:00
Melanie
926c0b90a1
Release http-in URLs when llResetScript is called
2012-08-07 20:48:22 +01:00
Justin Clark-Casey (justincc)
513b77b78d
refactor: rename SOG.RezzingObjectID to SOG.FromPartID to match FromFolderID, FromItemID and to reflect that it's a SOP ID rather than a SOG ID.
2012-08-03 02:26:54 +01:00
SignpostMarv
cd2c5843a8
reduced-complexity implementation of function to get rezzing object key
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-08-02 22:12:36 +01:00
Justin Clark-Casey (justincc)
794363421d
Look up the NPC module when the SensorRepeat class is created, rather than on every single sensor sweep.
2012-08-01 00:39:37 +01:00
Justin Clark-Casey (justincc)
7609daca38
Resolve a deadlock between INPCModule and SensorRepeat by replacing the SensorRepeat list with a new list on add/removes rather than locking it for the duration of the sensor sweep.
...
A deadlock was observed today where NPC removal on a script thread would lock the NPC list and then try to lock the sensor list via scripted attachment removal.
Concurrently, the sensor sweep thread would lock the sensor list and then try to lock the NPC list to check NPC status.
This commit resolves the deadlock by replacing the sensor list on update rather than locking it for the duration of the sweep.
2012-07-31 23:57:57 +01:00
Mic Bowman
a76a289d11
Adds support to ScriptModuleComms for region modules to export
...
constants to the script engine.
2012-07-31 10:45:37 -07:00
Melanie
3f6dfa92ab
Return world rotation on llGetObjectDetails()'s OBJECT_ROT
2012-07-29 16:05:35 +01:00
SignpostMarv
72d29bdb40
LSL/OSSL lacks Math.Min & Math.Max implementations.
2012-07-28 00:09:11 +01:00
Justin Clark-Casey (justincc)
1133f81dce
Remove a couple of compiler warnings pointed out by SignpostMarv
2012-07-27 20:40:25 +01:00
Justin Clark-Casey (justincc)
5aec0ff207
Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring with other monitoring code from OpenSim.Framework
2012-07-25 23:27:00 +01:00
Justin Clark-Casey (justincc)
31304c222d
Make SceneManager.OnRegionsReadyStatusChange event available.
...
This is fired when all regions are ready or when at least one region becomes not ready.
Recently added EventManager.OnRegionReady becomes OnRegionReadyStatusChange to match OnLoginsEnabledStatusChange
2012-07-25 21:00:59 +01:00
Justin Clark-Casey (justincc)
ecf7bb268c
As per opensim-dev mailing list discussion, extend llGetDetectedType() to return OS_NPC if an OS npc is detected.
...
The detection will also return agent is the NPC has been created with the OS_NPC_SENSE_AS_AGENT option.
2012-07-20 21:36:33 +01:00
Justin Clark-Casey (justincc)
bcfc392edf
As per opensim-dev mailing list conversation, introduce OS_NPC constant for use with llSensor()
...
This same constant will later be used with llGetDetectedType().
This constant has a different name from NPC to avoid possible conflict with future LSL changes.
This constant has a different value to try and avoid unnecessary conflict with future constants that may use the same value.
Using the 'NPC' constant with llSensor() will remain valid but is deprecated.
2012-07-20 21:08:04 +01:00
Mic Bowman
a4281ca014
Enables support for UUIDs to be returned in lists from
...
modInvoke commands.
Thanks SignpostMarv!!!
2012-07-20 10:48:51 -07:00
Mic Bowman
644fb6b013
Implements a very useful OSSL function to test a string to see
...
if it is a UUID. The function is osIsUUID().
Thanks SignpostMarv!
2012-07-20 10:25:50 -07:00
Justin Clark-Casey (justincc)
1971b6bb4f
Stop the 15 second initial script compile wait if a script is being rezzed on a previously empty region.
2012-07-18 22:24:52 +01:00
Justin Clark-Casey (justincc)
b9749d5aaf
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-17 23:48:53 +01:00
Justin Clark-Casey (justincc)
48a5f10be1
Revert "Revert "refactor: make llGiveInventory() use existing GetInventoryItem() method rather than iterate through TaskInventory itself.""
...
This reverts commit 59a29f5f22
.
The original revert was committed by mistake - it turns out this was not the cause of Mantis 6089
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-17 23:48:09 +01:00
Justin Clark-Casey (justincc)
56870d9609
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-17 23:34:50 +01:00
Justin Clark-Casey (justincc)
ecb759c1e5
Fix regression where llGiveInventory() had stopped asking non-owner receivers to accept/decline.
...
This appears to be a regression from back in commit db91044
(Mon Aug 22 2011) where we started to send TaskInventoryOffered msg dialog rather than InventoryOffered dialog.
This is probably correct, but failed because the bucket was too large and because we wouldn't have handled the TaskInventoryDeclined option anyway.
This patch handles both of these and make llGiveInventoryList() use TaskInventoryOffered as well
Fixes http://opensimulator.org/mantis/view.php?id=6089
2012-07-17 23:31:38 +01:00
Justin Clark-Casey (justincc)
59a29f5f22
Revert "refactor: make llGiveInventory() use existing GetInventoryItem() method rather than iterate through TaskInventory itself."
...
This reverts commit 58b13d51a7
.
2012-07-17 22:56:21 +01:00
Melanie
c489bc1cd2
Make the scrpt running flag work properly
2012-07-17 15:00:42 +02:00
Melanie
1c3b0da74a
Revert "Fix script "Running" behavior"
...
A better solution using the already present flags must be found.
This reverts commit 6d3ee8bb39
.
2012-07-16 23:31:55 +01:00
SignpostMarv
ee7478fa16
sending more user-friendly messages to the script error window rather than the thrown exceptions.
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-07-16 21:32:38 +01:00
SignpostMarv
84b7ae2573
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
423101b425
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
e3453dd9ca
added in some extra variables, it sometimes thinks it is on the same parcel :(
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
b6cd3b625e
adding workaround for silent failure if position is outside the bounds of a region, implementing parcel prim count check.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
8d59385eea
Implementation of llSetRegionPos(). Does not implement failure on object entry/prim limit/access restrictions.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
Justin Clark-Casey (justincc)
884d603cac
Rather than instantiating a UTF8 encoding everywhere when we want to supress the BOM, use a single Util.UTF8NoBomEncoding.
...
This class is thread-safe (as evidenced by the provision of the system-wide Encoding.UTF8 which does not suppress BOM on output).
2012-07-13 01:03:28 +01:00
Justin Clark-Casey (justincc)
3b3d9967b1
Remove IClientAPI.GetClientEP() in favour of existing identical IClientAPI.RemoteEndpoint.
2012-07-12 23:29:57 +01:00
Justin Clark-Casey (justincc)
916e3bf886
Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than constructing fresh copies.
...
The encodings are thread-safe and already used in such a manner in other places.
This isn't done where Byte Order Mark output is suppressed, since Encoding.UTF8 is constructed to output the BOM.
2012-07-11 22:54:22 +01:00
Justin Clark-Casey (justincc)
33cff9b9d7
Allow XEngine StartDelay to be configured in the [XEngine] config section.
...
This is only currently meant for use by regression tests that don't have any issues if XEngine is started up quickly, since no other operations will be occuring simultaneously.
Therefore, this is not yet documented externally.
2012-07-11 21:55:18 +01:00
Justin Clark-Casey (justincc)
0e611c47d3
Remove WorldComm module from the regression TestCompileAndStartScript() since the infrastructure no longer fails if this module isn't present, at least on the tested codepaths
2012-07-11 21:46:46 +01:00
Justin Clark-Casey (justincc)
fc24563206
Add regression TestDetachScriptedAttachmentToInventory()
...
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11 21:43:35 +01:00