| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
ISceneAgent.PresenceType from which IScenePresence inherits.
No other code changes required.
|
|
|
|
|
|
| |
justincc's original work. Sample scripts before doing so. Also refactor some
crucial common code and eliminate parameters that were only ever used with
the same constant value.
|
|
|
|
| |
logins disabled on startup.
|
|
|
|
|
|
| |
A better solution using the already present flags must be found.
This reverts commit 6d3ee8bb39d47ed7b32e8905fa0b2fc31c5a9f80.
|
|
|
|
| |
This currently only does a relatively crude check for a ScriptState node in the serialized xml
|
|
|
|
|
|
| |
the known item with script state still in the script engine and then remove the scripts.
This is to fix a regression starting from 5301648 where attachments had to start being deleted before persistence in order to avoid race conditions with hud update threads.
|
|
|
|
| |
Allow NPCS to touch obects.
|
| |
|
|
|
|
|
|
|
| |
directly instead of an item ID to then shuffle through attachments, saving CPU busywork.
Almost all callers already had the sog to hand.
Still checking that it's really an attachment, but now by inspecting SOG.AttachedAvatar
|
|
|
|
| |
AttachmentsModule.
|
|
|
|
|
|
| |
delete first to avoid a hud race condition with update threads.
If delete doesn't occur first then the update thread can outrace the IsAttachment = false necessary to save attachments and send hud artifacts to other viewers.
|
|
|
|
| |
Unchecking "Running" box in script editor now persists. This fixes http://opensimulator.org/mantis/view.php?id=6057
|
|
|
|
|
|
| |
started.
Adds DebugLevel infrastructure to XEngine though currently commented out and unused.
|
|
|
|
|
|
| |
SceneObjectPartInventory.GetInventoryItem(string)
Also gets llStopAnimation() to call KeyOrName rather than duplicating logic.
|
|
|
|
|
|
|
|
|
| |
before the source region has finished cleaning up old agent data and structures.
If this is allowed, then the client usually gets forcibly logged out and data structures might be put into bad states.
To prevent this, the binary state machine of EMT.m_agentsInTransit is replaced with a 4 state machine (Preparing, Transferring, ReceivedAtDestination, CleaningUp).
This is necessary because the source region needs to know when the destination region has received the user but a teleport back cannot happen until the source region has cleaned up.
Tested on standalone, grid and with v1 and v3 clients.
|
|
|
|
|
|
|
|
|
|
|
|
| |
allow an immediate teleport back.
This is to help relieve a race condition when an agent teleports then immediately attempts to teleport back before the source region has properly cleaned up/demoted the old ScenePresence.
This is rare in viewers but much more possible via scripting or region module.
However, more needs to be done since virtually all clean up happens after the transit flag is cleared .
Possibly need to add a 'cleaning up' state to in transit.
This change required making the EntityTransferModule and HGEntityTransferModule per-region rather than shared, in order to allow separate transit lists.
Changes were also required in LocalSimulationConnector.
Tested in standalone, grid and with local and remote region crossings with attachments.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
includes database region store migrations for mssql, mysql, sqlite
enable/disable this module:
Cap_EnvironmentSettings = "localhost" (for enable)
Cap_EnvironmentSettings = "" (for disable) at ClientStack.LindenCaps section (OpenSimDefaults.ini file)
or owerwrite in OpenSim.ini
mantis: http://opensimulator.org/mantis/view.php?id=5860
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
| |
|
|
|
|
|
|
|
| |
llAttachToAvatar() or osForceAttachToAvatar() would wrongly have next permissions come into play when they detached that object and rezzed it in scene.
This is because the attachments module code was setting the 'object slam' bit by using PermissionMask.All
Solution here is to route the attachment item creation call through the existing inventory code in BasicInventoryAccessModule rather than copy/pasted code in AttachmentsModule itself.
|
|
|
|
|
|
| |
saved) will have a size larger than 256x256
Not yet read. Do not rely on this information yet, it may change.
|
|
|
|
|
|
| |
more than one megaregion in a simulator, separated by water.
Rename IsRootRegion() to IsRootForMegaregion()
|
|
|
|
|
|
|
|
| |
future use. Please do not rely on this remaining here.
An adaptation of part of Garmin's patch from http://opensimulator.org/mantis/view.php?id=5975, thanks!
Flag only written if the SW corner OAR is saved - this is the only one that captures object data presently (though not land or terrain data).
This adds an IRegionCombinerModule interface and the necessary methods on RegionCombinerModule
|
| |
|
|
|
|
| |
moving NPCs
|
|
|
|
|
|
| |
and different region teleport components.
DoTeleport() now retrives IEventQueue itself rather than requiring it to be passed in.
|
|
|
|
|
|
|
|
|
|
|
| |
osNpcSay(UUID npc, string message) left untouched
New functions:-
osNpcSay(UUID npc, int channel, string message)
osNpcShout(UUID npc, int channel, string message)
osNpcWhisper(UUID npc, int channel, string message)
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
| |
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
structured
storage (dictionaries and arrays of string values) for scripts and region modules.
In addition, there are operations on the storage that enable "real" distributed
computation between scripts through operations similar to those of a tuple space.
Scripts can share task queues, implement shared locks or semaphores, etc.
The structured store is limited to the current region and is not currently
persisted. However, script operations are defined to initialize a store from a notecard
and to serialize the store to a notecard.
Documentation will be posted to the opensim wiki soon.
|
|
|
|
| |
Signed-off-by: nebadon <michael@osgrid.org>
|
|
|
|
| |
originally proposed in SL Jira (https://jira.secondlife.com/browse/SVC-244).
|
|
|
|
| |
Signed-off-by: Melanie <melanie@t-data.com>
|
|
|
|
|
|
| |
FriendsCommandsModule.
Expose required methods on IFriendsModule. Rename GetFriends() -> GetFriendsFromCache() for self-documentation
|
|
|
|
|
|
|
| |
for granting rights via a module call.
Rename IFriendsModule.GetFriendPerms() -> GetRightsGrantedByFriend() to be more self-documenting and consistent with friends module terminology.
Add some method doc.
|
| |
|
|
|
|
| |
Also ass OpenSource header
|
|
|
|
|
|
| |
purposes.
This adds a reverse lookup (name -> ID) to IUserManagement instead of hitting the UserAccountService directly.
|
|
|
|
| |
osEjectFromGroup(userID) that invite/eject users to/from groups the object containing the script is set to. These functions also work for closed groups.
|
|
|
|
| |
of methods.
|
| |
|
| |
|
| |
|
|
|
|
| |
be.
|
|
|
|
| |
can be pulled fromt he delegate so we don't need to pass them explicitly
|
|
|
|
| |
owned by the same user.
|
|
|
|
| |
This is for the top scripts report.
|
|
|
|
|
|
|
|
|
|
|
| |
measurement period and an idealised frame time.
The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute.
Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100.
The actual measurement value should be script execution time per frame but XEngine does not work this way.
Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time.
This is still not ideal but gives reasonable results and allows scripts to be compared.
This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
|
|
|
|
|
|
|
|
|
| |
from region modules. The LSL translator is extended to generate the
modInvoke format of commands for directly inlined function calls.
A region module can register a function Test() with the name "Test".
LSL code can call that function as "Test()". The compiler will translate
that invocation into modInvoke("Test", ...)
|
|
|
|
|
|
| |
status" command.
This is for diagnostic purposes.
|
| |
|
|
|
|
| |
should in theory never happen), don't add the NPC to the npc list but return UUID.Zero instead.
|