aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Interfaces (follow)
Commit message (Collapse)AuthorAgeFilesLines
* On a new client circuit, send the initial reply ack to let the client know ↵Justin Clark-Casey (justincc)2011-12-081-21/+1
| | | | | | | | | it's live before sending other data. This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before. This may stop some avatars appearing grey on login. This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
* Add test for removing a friendship.Justin Clark-Casey (justincc)2011-11-141-0/+11
|
* Merge branch 'remove-scene-viewer'Dan Lake2011-11-141-50/+0
|\
| * Remove SceneViewer from ScenePresence to reduce quadruple queueing ofDan Lake2011-11-111-50/+0
| | | | | | | | | | | | | | | | | | | | | | | | prim update to only triple queuing. Existing method was: 1. Schedule prim for update, adding to scene update list 2. Update on SOGs during heartbeat queues update onto each SceneViewer 3. Update on SPs during heartbeat queues update onto each IClientAPI 4. ProcessEntityUpdates queues updates into UDP send stack Now the SceneViewer has been eliminated so updates are scheduled at any time and then put onto the IClientAPI priority queues immediately during SceneGraph.UpdateObjectGroups.
* | Improved method doc for AddFriend() - it actually does set up a two-way ↵Justin Clark-Casey (justincc)2011-11-141-5/+2
| | | | | | | | | | | | relationship. Rename IFriendsModule.AddFriend() to AddFriendship()
* | Add test for adding a friend whilst onlineJustin Clark-Casey (justincc)2011-11-141-0/+14
|/
* Moved HaveNeighbor utility function from ScenePresence to Scene. Fixed line ↵Dan Lake2011-10-191-2/+2
| | | | endings from previous commit.
* Merge branch 'master' of git://opensimulator.org/git/opensimDan Lake2011-10-191-5/+9
|\
| * Extend scripts stop/start/suspend/resume console commands to allow action on ↵Justin Clark-Casey (justincc)2011-10-191-5/+9
| | | | | | | | | | | | a single script by giving the script item id (which can be found via scripts show). Not an ideal way to do this on a region with many scripts. Needs refinement later.
* | Renamed and rearranged AvatarFactoryModule to eliminate redundant lookups of ↵Dan Lake2011-10-191-3/+6
|/ | | | scene presence by client ID.
* Implement osNpcStand(<npc-id>)Justin Clark-Casey (justincc)2011-10-171-0/+8
| | | | Allows you to stand an NPC that has sat.
* Implement osNpcSit(). This is still in development so don't trust itJustin Clark-Casey (justincc)2011-10-171-0/+9
| | | | | | | | | Format is osNpcSit(<npc-uuid>, <target-uuid>, OS_NPC_SIT_IMMEDIATE) e.g. osNpcSit(npc, llGetKey(), OS_NPC_SIT_IMMEDIATE); At the moment, sit only succeeds if the part has a sit target set. NPC immediately sits on the target even if miles away - they do not walk up to it. This method is in development - it may change so please don't trust it yet. Standing will follow shortly since that's kind of important once you're sitting :)
* Removed all refs to IClientAPI from IAttachmentsModule. Separated client ↵Dan Lake2011-10-041-22/+9
| | | | handlers for attachments to call public interface and rearranged module file into sections
* Removed redundant code in AttachmentsModule and simplified interfaces which ↵Dan Lake2011-10-031-29/+6
| | | | converted back and forth between ScenePresence and IClientAPI. More to be done still.
* Remove usage of Linden packet types from inside Attachments Module and interfaceDan Lake2011-10-031-2/+2
|
* minor: remove clutter null check from pass in config to ↵Justin Clark-Casey (justincc)2011-10-011-0/+9
| | | | | | AvatarFactoryModule.Initialize() This is never null
* Reattaching a region was failing if the estate name had not changed (issue ↵Kevin Houlihan2011-09-162-1/+17
| | | | | | 5035). Using the RemoteAdmin API to close then recreate a region would fail if the estate name had not changed. If the estate name /was/ changed then the existing estate would be renamed rather than a new one being created. The problem really arose from a lack of distinction in the data storage layer between creating new estates and loading existing ones.
* Remove UpdateKnownItem() from IAttachmentsModule.Justin Clark-Casey (justincc)2011-09-131-9/+0
| | | | It's not appropriate for code outside the attachments module to call this.
* comment out some recent terrain texture loggingJustin Clark-Casey (justincc)2011-09-121-1/+1
|
* Start locking entire add/remove operations on an ↵Justin Clark-Casey (justincc)2011-09-122-0/+17
| | | | | | | | | IScenePresence.AttachmentsSyncLock object Attach and detach packets are processed asynchronously when received from a viewer. Bugs like http://opensimulator.org/mantis/view.php?id=5644 indicate that in some situations (such as attaching/detaching entire folders of objects at once), there are race conditions between these threads. Since multiple data structures need to be updated on attach/detach, it's not enough to lock the individual collections. Therefore, this commit introduces a new IScenePresence.AttachmentsSyncLock which add/remove operations lock on.
* When creating an OAR, optionally exclude objects according to their permissionsOren Hurvitz2011-09-121-0/+54
|
* Delay loading scripts until the scene has finished loadingOren Hurvitz2011-09-091-0/+5
|
* Comment out unused ISceneViewer.Reset() to reduce code complexityJustin Clark-Casey (justincc)2011-09-061-1/+1
|
* In SceneViewer, introduce an IsEnabled flag and perform Close() under an ↵Justin Clark-Casey (justincc)2011-09-061-1/+10
| | | | m_pendingObjects lock in order to avoid the race condition seen by danbanner in http://opensimulator.org/mantis/view.php?id=5669
* Get rid of the confusing version of ↵Justin Clark-Casey (justincc)2011-09-061-14/+0
| | | | IAttachmentsModule.RezSingleAttachmentFromInventory() with the updateInventoryStatus switch, since this is never called with false
* Stop NPCs losing attachments when the source avatar takes them off.Justin Clark-Casey (justincc)2011-09-032-4/+57
| | | | | | | This was happening because we were using the source avatar's item IDs in the clone appearance. Switch to using the asset IDs of attachments instead for NPCs. The InventoryAccessModule and AttachmentModule had to be changed to allow rezzing of an object without an associated inventory item. Hopefully goes some way towards resolving http://opensimulator.org/mantis/view.php?id=5653
* move common code into AttachmentsModule.DeleteAttachmentsFromScene()Justin Clark-Casey (justincc)2011-08-312-2/+24
|
* Make SP.Attachments available as sp.GetAttachments() instead.Justin Clark-Casey (justincc)2011-08-311-2/+5
| | | | | | | The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase. It also improves liveness. This might improve attachment anomolies when performing region crossings.
* refactor: move SP.SaveChangedAttachments() fully into AttachmentsModuleJustin Clark-Casey (justincc)2011-08-302-0/+17
|
* refactor: Move ScenePresence.RezAttachments() into AttachmentsModuleJustin Clark-Casey (justincc)2011-08-302-0/+62
| | | | This adds an incomplete IScenePresence to match ISceneEntity
* refactor: migrate DropObject handling fully into AttachmentsModule from SceneJustin Clark-Casey (justincc)2011-08-301-4/+4
|
* Fix bug in persisting saved appearances for npcsJustin Clark-Casey (justincc)2011-08-301-0/+17
| | | | | Assets have to be marked non-local as well as non-temporary to persist. This is now done. Hopefully addresses http://opensimulator.org/mantis/view.php?id=5660
* refactor: simplify DetachSingleAttachmentToGround() by retrieving the scene ↵Justin Clark-Casey (justincc)2011-08-261-2/+2
| | | | object group direct
* rename AttachmentsModule.ShowDetachInUserInventory() to ↵Justin Clark-Casey (justincc)2011-08-231-15/+7
| | | | DetachSingleAttachmentToInv() for consistency and to reflect it's actual behaviour
* If an attachment fails, then start logging the exception for now, in order ↵Justin Clark-Casey (justincc)2011-08-221-5/+3
| | | | | | to help with the inconsistent state bug. This also refactors AttachmentsModules to stop pointlessly refetching the ScenePresence in various methods. However, more of this is required.
* Add ISimulatorFeaturesModule so that other modules can register features in ↵Justin Clark-Casey (justincc)2011-08-221-0/+43
| | | | addition to the hardcoded ones.
* Add avatar and attachments to llRegionSayBlueWall2011-08-201-1/+1
| | | | | | | | | | | | llRegionSay will now message avatars on chan 0 and will message attachments on the avatar that listen on channels other than 0. This behavior is consistant with the LL implementation as tested on regions in Agni with one exception: this implementation does not include issue: https://jira.secondlife.com/browse/SCR-66?
* Add llRegionSayToBlueWall2011-08-191-0/+20
| | | | | | | llRegionSayTo(key target, integer channel, string messasge) Allows messages to be sent region-wide to a particular prim.
* Stop NPC's getting hypergrid like names in some circumstances.Justin Clark-Casey (justincc)2011-08-191-1/+36
| | | | | This meant punching in another AddUser() method in IUserManagement to do a direct name to UUID associated without the account check (since NPCs don't have accounts). May address http://opensimulator.org/mantis/view.php?id=5645
* Fix issue where loading a new appearance onto an NPC would not remove the ↵Justin Clark-Casey (justincc)2011-08-171-1/+2
| | | | | | previous attachments from the scene. Addresses http://opensimulator.org/mantis/view.php?id=5636
* add regression test for osNpcCreate when cloning an in-region avatarJustin Clark-Casey (justincc)2011-08-111-2/+2
|
* Add a OS_NPC_LAND_AT_TARGET option to osMoveToTarget()Justin Clark-Casey (justincc)2011-08-101-1/+4
| | | | | | | Default for this function is now not to automatically land. This allows better control by scripts when an avatar is going to be landing on a prim rather than the ground. Stopping the avatar involves faking a collision, to avoid the pid controller making it overshoot. A better approach would be to gradually slow the avatar as we near the target
* early code to allow scripts to force npcs not to fly when moving to targetJustin Clark-Casey (justincc)2011-08-101-1/+5
| | | | | this is to allow walking on prims. it will be up to the script writer to be sure that there is a continuous path. currently implemented in osNpcMoveToTarget(), but none of this is final.
* implement osNpcStopMoveTo() to cancel any current move targetJustin Clark-Casey (justincc)2011-08-101-4/+15
|
* Implement first draft functions for saving and loading NPC appearance from ↵Justin Clark-Casey (justincc)2011-08-092-1/+26
| | | | | | | | | | storage. This works by serializing and deserializing NPC AvatarAppearance to a notecard in the prim inventory and making the required baked textures permanent. By using notecards, we avoid lots of awkward, technical and user-unfriendly issues concerning retaining asset references and creating a new asset type. Notecards also allow different appearances to be swapped and manipulated easily. This also allows stored NPC appearances to work transparently with OARs/IARs since the UUID scan will pick up and store the necessary references from the notecard text. This works in my basic test but is not at all ready for user use or bug reporting yet.
* rename NPC.Autopilot to NPC.MoveToTarget internally. Add method doc to ↵Justin Clark-Casey (justincc)2011-08-031-1/+31
| | | | INPCModule
* refactor: rename bool returning GetAgentInventoryItem() to ↵Justin Clark-Casey (justincc)2011-07-081-1/+9
| | | | CanGetAgentInventoryItem() to improve code readability
* Create a very basic initial test which just creates an 'npc' and tests that ↵Justin Clark-Casey (justincc)2011-07-021-0/+40
| | | | the scene presence exists
* Hack around with the NPC module to get osNpcCreate() partially working again.Justin Clark-Casey (justincc)2011-06-291-1/+1
| | | | | | This now creates an avatar but appearance is always cloudy. Move doesn't work. Really, creating an NPC should only involve a ScenePresence rather than doing anything with IClientAPI, since an NPC has no viewer to communicate with!
* Fixed "Unknown User" listed as creator/owner on prims created with the Build ↵Diva Canto2011-06-081-0/+1
| | | | button by foreign visitors. Added command to the UserManagementModule to list all the known bindings between user UUIDs and their names: show user-names.