aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-08-01Look up the NPC module when the SensorRepeat class is created, rather than ↵Justin Clark-Casey (justincc)1-5/+6
on every single sensor sweep.
2012-07-31Resolve a deadlock between INPCModule and SensorRepeat by replacing the ↵Justin Clark-Casey (justincc)1-35/+43
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-31Adds support to ScriptModuleComms for region modules to exportMic Bowman1-2/+37
constants to the script engine.
2012-07-29Return world rotation on llGetObjectDetails()'s OBJECT_ROTMelanie1-1/+11
2012-07-28LSL/OSSL lacks Math.Min & Math.Max implementations.SignpostMarv3-0/+54
2012-07-27Remove a couple of compiler warnings pointed out by SignpostMarvJustin Clark-Casey (justincc)1-2/+0
2012-07-25Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring ↵Justin Clark-Casey (justincc)1-0/+1
with other monitoring code from OpenSim.Framework
2012-07-25Make SceneManager.OnRegionsReadyStatusChange event available.Justin Clark-Casey (justincc)1-1/+1
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-20As per opensim-dev mailing list discussion, extend llGetDetectedType() to ↵Justin Clark-Casey (justincc)1-5/+28
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-20As per opensim-dev mailing list conversation, introduce OS_NPC constant for ↵Justin Clark-Casey (justincc)2-2/+4
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-20Enables support for UUIDs to be returned in lists fromMic Bowman1-3/+13
modInvoke commands. Thanks SignpostMarv!!!
2012-07-20Implements a very useful OSSL function to test a string to seeMic Bowman3-0/+26
if it is a UUID. The function is osIsUUID(). Thanks SignpostMarv!
2012-07-18Stop the 15 second initial script compile wait if a script is being rezzed ↵Justin Clark-Casey (justincc)1-0/+4
on a previously empty region.
2012-07-17Revert "Revert "refactor: make llGiveInventory() use existing ↵Justin Clark-Casey (justincc)1-24/+9
GetInventoryItem() method rather than iterate through TaskInventory itself."" This reverts commit 59a29f5f221a1ffe4e22c63ef9da82270442b213. 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-17Fix regression where llGiveInventory() had stopped asking non-owner ↵Justin Clark-Casey (justincc)1-29/+29
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-17Revert "refactor: make llGiveInventory() use existing GetInventoryItem() ↵Justin Clark-Casey (justincc)1-11/+24
method rather than iterate through TaskInventory itself." This reverts commit 58b13d51a7eddb442e38e6dc6790a9e7cf68bad7.
2012-07-17Make the scrpt running flag work properlyMelanie2-6/+24
2012-07-16Revert "Fix script "Running" behavior"Melanie4-37/+0
A better solution using the already present flags must be found. This reverts commit 6d3ee8bb39d47ed7b32e8905fa0b2fc31c5a9f80.
2012-07-16sending more user-friendly messages to the script error window rather than ↵SignpostMarv1-1/+14
the thrown exceptions. Signed-off-by: Melanie <melanie@t-data.com>
2012-07-14acting on feedback from justinccSignpostMarv1-6/+7
2012-07-14acting on feedback from justinccSignpostMarv1-39/+42
2012-07-14added in some extra variables, it sometimes thinks it is on the same parcel :(SignpostMarv1-5/+7
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14adding workaround for silent failure if position is outside the bounds of a ↵SignpostMarv1-13/+41
region, implementing parcel prim count check. Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14Implementation of llSetRegionPos(). Does not implement failure on object ↵SignpostMarv3-4/+45
entry/prim limit/access restrictions. Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-13Rather than instantiating a UTF8 encoding everywhere when we want to supress ↵Justin Clark-Casey (justincc)1-1/+1
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-12Remove IClientAPI.GetClientEP() in favour of existing identical ↵Justin Clark-Casey (justincc)1-6/+2
IClientAPI.RemoteEndpoint.
2012-07-11Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than ↵Justin Clark-Casey (justincc)5-25/+15
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-11Allow XEngine StartDelay to be configured in the [XEngine] config section.Justin Clark-Casey (justincc)2-2/+10
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-11Remove WorldComm module from the regression TestCompileAndStartScript() ↵Justin Clark-Casey (justincc)1-4/+1
since the infrastructure no longer fails if this module isn't present, at least on the tested codepaths
2012-07-11Add regression TestDetachScriptedAttachmentToInventory()Justin Clark-Casey (justincc)3-10/+17
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-10Disable logging in regression test in OSSL_ApiAttachmentTestsJustin Clark-Casey (justincc)1-1/+1
2012-07-10If a script is being stopped manually, then give the scriptpool thread 1 ↵Justin Clark-Casey (justincc)1-1/+5
second to finish normally before forcibly aborting. This is to avoid the worst of the problems in mono 2.6, 2.10 where an aborted thread does not always release all its locks. This very short grace period is identical to the existing behaviour when a script is removed from the scene.
2012-07-09This script allows an object to be attached directly from prim inventory to ↵Justin Clark-Casey (justincc)4-5/+96
another avatar in the scene. Very useful in serious game/environment scenarios where its only allowed for trusted creators. Threat level Severe
2012-07-07minor: remove some recent mono compiler warningsJustin Clark-Casey (justincc)1-1/+1
2012-07-07Remove redundant SetScene() function in Scene.AddSceneObject()Justin Clark-Casey (justincc)2-10/+10
This is always done later on in SceneGraph.AddSceneObject() if the call hasn't failed due to sanity checks. There's no other purpose for this method to exist and it's dangerous/pointless to call in other conditions.
2012-07-06Mantis 6063 osNpcTouch.Talun3-0/+41
Allow NPCS to touch obects.
2012-07-05regrade osFormatString, osMatchString and osReplaceString to VeryLow.Justin Clark-Casey (justincc)1-3/+3
I can't see that these present any real hazard to sim functioning.
2012-07-05Add OSSL function osForceAttachToAvatarFromInventory()Justin Clark-Casey (justincc)7-6/+253
This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first. Still only attaches objects to the owner of the script. This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them. Threat level high.
2012-07-04Use GetInventoryItem() in llRezAtRoot rather than iterating through a cloned ↵Justin Clark-Casey (justincc)1-40/+36
dictionary
2012-07-04refactor: In llGetNotecardLine() use existing GetInventoryItem() rather than ↵Justin Clark-Casey (justincc)1-10/+4
inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04refactor: In llGetNumberOfNotecardLines() use existing GetInventoryItem() ↵Justin Clark-Casey (justincc)1-10/+4
rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04refactor: use existing GetInventoryItem() in GetScriptByName(), itself ↵Justin Clark-Casey (justincc)1-13/+9
renamed from ScriptByName()
2012-07-04refactor: In llGetInventoryType() use existing GetInventoryItem()Justin Clark-Casey (justincc)1-11/+5
2012-07-04refactor: In llGetInventoryCreator() use existing GetInventoryItem()Justin Clark-Casey (justincc)1-12/+8
2012-07-04refactor: In llGetInventoryPermMask() use existing GetInventoryItem()Justin Clark-Casey (justincc)1-24/+21
2012-07-04refactor: in llGetInventoryPermMask use existing GetInventoryItem()Justin Clark-Casey (justincc)1-23/+19
2012-07-04refactor: In llRemoteLoadScriptPin() use existing GetInventoryItem()Justin Clark-Casey (justincc)1-20/+5
2012-07-04refactor: replace use of LSL_Api.GetTaskInventoryItem() with existing ↵Justin Clark-Casey (justincc)1-22/+11
GetInventoryItem()
2012-07-04refactor: In llGetInventoryKey() use existing GetInventoryItem()Justin Clark-Casey (justincc)1-15/+9
2012-07-04In llMessageLinked() use GetInventoryItems() rather than cloning ↵Justin Clark-Casey (justincc)1-4/+2
TaskInventory directory GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe