aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/OptionalModules (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix NPC sitting for prims without a sit target.Justin Clark-Casey (justincc)2011-11-052-3/+40
| | | | | | | | This is to partially address http://opensimulator.org/mantis/view.php?id=5769 We don't need to call SP.HandleAgentSit() again if we are within 10m since the autopilot won't trigger. By calling it twice, the position of the sitting NPC was wrongly adjusted, ending up near <0,0,0>. However, this change does mean that NPCs further than 10m away will not attempt to autopilot to the prim, though this code was broken anyway (is actually a different mechanism to normal NPC movmeent). Hopefully this can be addressed soon.
* Rename ForEachAvatar back to ForEachScenePresence. The other changesDan Lake2011-11-032-3/+3
| | | | | | from previous commit which sort out which iterator is used are left intact. A discussion is needed as to what constitutes an avatar vs a ScenePresence.
* Renamed ForEachRootScenePresence to ForEachAvatar. Cleaned up calls toDan Lake2011-11-032-9/+6
| | | | | | | | | | | | | | the 3 iteration functions so more of them are using the correct iteration for the action they are performing. The 3 iterators that seem to fit all actions within OpenSim at this time are: ForEachAvatar: Perform an action on all avatars (root presences) ForEachClient: Perform an action on all clients (root or child clients) ForEachRootClient: Perform an action on all clients that have an avatar There are still a dozen places or so calling the old ForEachScenePresence that will take a little more refactoring to eliminate.
* Port the Avination offline messaging system to CoreMelanie2011-11-021-1/+1
|
* Add "appearance send" command to allow manual sending of appearance.Justin Clark-Casey (justincc)2011-11-011-1/+18
|
* Removed use of 'is' operator and casting to find the root ScenePresence in ↵Dan Lake2011-10-272-14/+12
| | | | MessageTransfer modules and Groups module.
* Added new ForEachRootScenePresence to Scene since almost every delegate ↵Dan Lake2011-10-271-4/+1
| | | | passed to ForEachScenePresence checks for !IsChildAgent first. It consolidates child and root handling for coming refactors.
* Make OpenSim.Framework.Servers.HttpServer rely on OpenSim.Framework instead ↵Justin Clark-Casey (justincc)2011-10-254-1/+4
| | | | | | | | | of the other way around. This is necessary so that code in HttpServer can use framework facilities such as the thread watchdog for monitoring purposes. Doing this shuffle meant that MainServer was moved into OpenSim/Framework/Servers Also had to make OpenSim.Framework.Console rely on OpenSim.Framework rather than the other way around since it in turn relies on HttpServer MainConsole and some new interfaces had to be moved into OpenSim/Framework to allow this. This can be reverted if parts of OpenSim.Framework stop relying on console presence (cheifly RegionInfo)
* refactor: rename some AssetHelpers.CreateAsset() methods to ↵Justin Clark-Casey (justincc)2011-10-221-1/+1
| | | | CreateNotecardAsset()
* Get OdeScene to use passed in time step rather than hard-coded 0.089Justin Clark-Casey (justincc)2011-10-201-1/+1
| | | | However, I still don't recommend changing MinFrameTime from 0.089, high values do not work well and lower values don't seem to make much difference
* Renamed and rearranged AvatarFactoryModule to eliminate redundant lookups of ↵Dan Lake2011-10-193-8/+8
| | | | scene presence by client ID.
* refactor: Make IClientAPI.DebugPacketFormat a property rather than a setter ↵Justin Clark-Casey (justincc)2011-10-172-7/+2
| | | | without a getter
* Implement osNpcStand(<npc-id>)Justin Clark-Casey (justincc)2011-10-172-2/+23
| | | | 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-172-0/+42
| | | | | | | | | 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 :)
* refactor: rename IClientAPI.SendPrimUpdate() to SendEntityUpdate() since it ↵Justin Clark-Casey (justincc)2011-10-142-2/+2
| | | | sends entity updates (including presence ones), not just prims.
* Change default groups messaging module in hardcode to the empty string.Melanie2011-10-121-1/+1
| | | | | Modules should not assume thet they are the one and only, but only be enabled when explicitly configured.
* Removed redundant IClientAPI calls from TreePopulatorModule. Removing tree ↵Dan Lake2011-10-041-14/+2
| | | | objects already triggers objectkill packet to client. No need to send again.
* Removed redundant code in AttachmentsModule and simplified interfaces which ↵Dan Lake2011-10-031-4/+2
| | | | converted back and forth between ScenePresence and IClientAPI. More to be done still.
* Reinstate option to land an npc when it reaches a target.Justin Clark-Casey (justincc)2011-09-223-76/+5
| | | | This is moved into ScenePresence for now as a general facility
* Move code which handles NPC movement into Scene so that this can also be ↵Justin Clark-Casey (justincc)2011-09-211-1/+1
| | | | | | | | used by Autopilot coming from the client side. I thought that I had implemented this but must have accidentally removed it. Adds a regression test to detect if this happens again. Temporarily disables automatic landing of NPC at a target. Will be fixed presently.
* When calling osNpcMoveTo(), rotate the avatar in the direction of travel.Justin Clark-Casey (justincc)2011-09-211-4/+12
| | | | | | | This stops the npc walking backwards if the target is directly behind. This means that the npc no longer returns to its original rotation once movement has finished. If you want this behaviour, please store and reset the original rotation after movement. This is somewhat to address http://opensimulator.org/mantis/view.php?id=5678
* Fix test failure. Oversight in setting up the tests themselves.Justin Clark-Casey (justincc)2011-09-081-1/+2
|
* Centralize module setup for NPC tests.Justin Clark-Casey (justincc)2011-09-081-41/+21
| | | | This is overkill for some tests since they dont' need all the modules, but I think the gain in code readability is worth it
* Remember to set and unset the fire and forget method at the top of the ↵Justin Clark-Casey (justincc)2011-09-081-2/+10
| | | | attachment and npc tests
* Use scene presence agent id for rezzed object ownership rather than item owner.Justin Clark-Casey (justincc)2011-09-081-0/+77
| | | | These should be identical. However, the item isn't available when rezzing npc attachments.
* Eliminate pointless checks of SOG.RootPart != nullJustin Clark-Casey (justincc)2011-09-011-1/+0
| | | | It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
* move common code into AttachmentsModule.DeleteAttachmentsFromScene()Justin Clark-Casey (justincc)2011-08-311-5/+1
|
* Make SP.Attachments available as sp.GetAttachments() instead.Justin Clark-Casey (justincc)2011-08-311-7/+3
| | | | | | | 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 ScenePresence.RezAttachments() into AttachmentsModuleJustin Clark-Casey (justincc)2011-08-301-1/+1
| | | | This adds an incomplete IScenePresence to match ISceneEntity
* Merge branch 'master' into bulletsimMic Bowman2011-08-196-79/+148
|\ | | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneManager.cs
| * Stop NPC's getting hypergrid like names in some circumstances.Justin Clark-Casey (justincc)2011-08-191-1/+5
| | | | | | | | | | 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
| * Don't try to save changed attachment states when an NPC with attachments is ↵Justin Clark-Casey (justincc)2011-08-182-2/+2
| | | | | | | | | | | | | | removed from the scene. This is done by introducing a PresenceType enum into ScenePresence which currently has two values, User and Npc. This seems better than a SaveAttachments flag in terms of code comprehension, though I'm still slightly uneasy about introducing these semantics to core objects
| * Fix issue where loading a new appearance onto an NPC would not remove the ↵Justin Clark-Casey (justincc)2011-08-171-0/+10
| | | | | | | | | | | | previous attachments from the scene. Addresses http://opensimulator.org/mantis/view.php?id=5636
| * Add "shutdown" message to RegionReadyBlueWall2011-08-151-0/+5
| | | | | | | | | | | | Add "shutdown" message when removing region. From a patch submitted by Michelle Argus. Thanks Michelle
| * minor: On "login disable/enable" always tell the user the final login ↵Justin Clark-Casey (justincc)2011-08-121-3/+3
| | | | | | | | status, rather than remaining silent if it was already on/off
| * When saving appearance, only save the baked textures, not the other face ↵Justin Clark-Casey (justincc)2011-08-121-1/+1
| | | | | | | | textures (which are already stored permanently)
| * Fix kicking of NPCs via "kick user" console command.Justin Clark-Casey (justincc)2011-08-121-0/+2
| | | | | | | | Needed to hook up the Close() function in the NPCAvatar IClientAPI implementation, which [unfortunately] is still needed
| * add regression test for osNpcCreate when cloning an in-region avatarJustin Clark-Casey (justincc)2011-08-112-31/+8
| |
| * eliminate the rotation parameter from SP.HandleMoveToTargetUpdate(). This ↵Justin Clark-Casey (justincc)2011-08-111-1/+6
| | | | | | | | | | | | can just use the currently set Rotation looks like I spoke to soon about eliminating jerkiness on "go here"/autopilot. It's still there.
| * instead of setting avatar rotation twice in SP.HandleAgentUpdate(), ↵Justin Clark-Casey (justincc)2011-08-111-1/+1
| | | | | | | | eliminate the second setting in AddNewMovement()
| * Get NPCs to revert to the correct 'resting' animation (e.g. stand or hover) ↵Justin Clark-Casey (justincc)2011-08-112-5/+4
| | | | | | | | | | | | after finishing their movement. This also fixes judder after an avatar has finished "go here"/autopilot movement in a viewer. This meant reseting the SP.AgentControlFlags since the Animator uses these to determine the correct default animation.
| * Add a OS_NPC_LAND_AT_TARGET option to osMoveToTarget()Justin Clark-Casey (justincc)2011-08-103-13/+29
| | | | | | | | | | | | | | 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-104-6/+6
| | | | | | | | | | 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.
| * Stop trying to deregister caps or close child agents when an NPC is removedJustin Clark-Casey (justincc)2011-08-101-1/+1
| |
| * implement osNpcStopMoveTo() to cancel any current move targetJustin Clark-Casey (justincc)2011-08-101-3/+34
| |
| * When an NPC appearance is loaded, rez the attachments tooJustin Clark-Casey (justincc)2011-08-091-0/+1
| |
| * When an NPC is created, stop telling neighbouring regions to expect a child ↵Justin Clark-Casey (justincc)2011-08-093-15/+5
| | | | | | | | agent
| * Implement first draft functions for saving and loading NPC appearance from ↵Justin Clark-Casey (justincc)2011-08-092-1/+30
| | | | | | | | | | | | | | | | | | | | 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.
| * refactor: Change SceneHelpers.AddClient() to AddScenePresence().Justin Clark-Casey (justincc)2011-08-061-2/+2
| | | | | | | | This seems to make more sense as we can get SP.ControllingClient
| * rename TestHelper => TestHelpers for consistencyJustin Clark-Casey (justincc)2011-08-062-6/+6
| |