Justin Clark-Casey (justincc)
8ebad90800
Actually use the SP.AgentControlStopSlowWhilstMoving parameter intoroduced for slow walk/run in 4cfe02a rather than the magic number
2013-11-30 01:56:46 +00:00
Justin Clark-Casey (justincc)
96018afab4
Remove unused SP.Updated flag, which appears unused for many years and was only set true once and never reset
2013-11-30 01:52:45 +00:00
Justin Clark-Casey (justincc)
4cde02a2a3
Implement most effects of AGENT_CONTROL_STOP
...
AGENT_CONTROL_STOP is specified to SP.HandleAgentUpdate if the user holds down the space bar on a viewer.
For a stopped avatar, this prevents fly or walk/run (though not rotate) until released.
For a walking/running avatar, this reduces movement to half speed.
For a flying avatar, this stops the avatar.
These are observed behaviours on the LL grid - there was no previous OpenSimulator implementation
This commit introduces an optional parameter to SP.AddNewMovement(), which means that it will no longer compile on .NET 3.5 or earlier versions of Mono than 2.8
Currently, this does not work for jumping, and if used whilst flying the avatar continues the fly animation even though it does not move
2013-11-30 01:44:30 +00:00
Justin Clark-Casey (justincc)
4bd4f1cd83
Remove nudgehack from SP.HandleAgentUpdate by making MovementFlag a uint rather than a byte
2013-11-30 01:14:12 +00:00
Justin Clark-Casey (justincc)
5f0e763062
Remove unused sp.ParentPosition, which has not been used for some time
2013-11-29 02:48:59 +00:00
Justin Clark-Casey (justincc)
84bfde3bdf
Comment out debug sit message accidently left active
2013-11-29 02:45:14 +00:00
Justin Clark-Casey (justincc)
868c0c2746
Fix regression where sitting on ground stopped working.
...
This was due to the PhysicsActor no longer being recreated on stand from ground.
2013-11-29 01:56:49 +00:00
Justin Clark-Casey (justincc)
f9193e3c51
Restore SP.AbsolutePosition to properly return actual absolute position when sitting
2013-11-29 01:50:12 +00:00
Justin Clark-Casey (justincc)
0785210e29
Fix stand positions rather than having the stand jump to the root prim.
2013-11-27 02:08:22 +00:00
Justin Clark-Casey (justincc)
a3c72dafe6
Only translate linked prim specified offset pos by the link prim rotation, not any specified avatar rotation as well.
...
Don't translate root prim position by avatar rotation.
2013-11-26 01:40:55 +00:00
Justin Clark-Casey (justincc)
36d146bf27
fix position changes when sitting on a prim with position and/or orientation explicitly specified
2013-11-26 00:43:35 +00:00
Justin Clark-Casey (justincc)
65304260af
fix avatar rotation when sitting on a linked part
...
Need to take into account rotation of linked prim now that we are always specifying sits wrt the root prim
2013-11-23 02:09:03 +00:00
Justin Clark-Casey (justincc)
78649eb099
Refix fix for sitting on non-root linked prims with explicit sit targets.
...
I forgot that m_post is being set inconsistently between non-explicit and explicit ragets
2013-11-23 01:35:08 +00:00
Justin Clark-Casey (justincc)
70e651a8d1
Fix non-root prim sit positions for prims where a sit target has been specified as well.
2013-11-23 01:32:29 +00:00
Justin Clark-Casey (justincc)
ed1029712a
Add line accidentally left out of recent non-root prim sit fix
...
Original commit is ff4e7de7
2013-11-23 01:18:07 +00:00
Justin Clark-Casey (justincc)
ff4e7de776
Fix issue where sitting on non-root linked prims would send camera to wrong position in third-person and mouselook
...
We now specify sits as offsets from the root prim, as the viewer expects.
2013-11-23 00:53:09 +00:00
Justin Clark-Casey (justincc)
7cab41f422
refactor: replace verbose checks with String.IsNullOrEmpty where applicable.
...
Thanks to Kira for this patch from http://opensimulator.org/mantis/view.php?id=6845
2013-11-15 21:45:08 +00:00
Justin Clark-Casey (justincc)
7da10850b0
Fix bug where removing a physical linkset would only decrement the Active Objects statistic by 1 instead of by the number of prims removed.
...
Unlike LL, OpenSimulator currently uses this stat to record the number of prims in the physics simulation, even when they are at rest.
Added regression test for this case.
2013-11-13 23:25:54 +00:00
Oren Hurvitz
0094971186
After finishing to edit an attachment, let other avatars see the changes. (The changes weren't visible before because updates to attachments aren't sent while the attachment is selected.)
2013-10-17 23:10:16 +01:00
Oren Hurvitz
d0c1780839
Fixed rezzing coalesced objects from a prim's inventory
...
Previously only the first object in the Coalesced Object was rezzed. Now all the objects are rezzed.
2013-10-15 23:59:16 +01:00
Justin Clark-Casey (justincc)
8996ac1a9c
minor: Disable logging left active on regression test TestSameSimulatorIsolatedRegionsV2()
2013-09-27 22:33:42 +01:00
Justin Clark-Casey (justincc)
2cd95fac73
refactor: Rename Scene.AddNewClient() to AddNewAgent() to make it obvious in the code that this is symmetric with CloseAgent()
2013-09-27 22:27:39 +01:00
Justin Clark-Casey (justincc)
b16bc7b01c
refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make it clear that all non-clientstack callers should be using this rather than RemoveClient() in order to step through the ScenePresence state machine properly.
...
Adds IScene.CloseAgent() to replace RemoveClient()
2013-09-27 19:14:21 +01:00
Justin Clark-Casey (justincc)
253f8de8cd
minor: Add scene name to baked textures in cache log message
2013-09-26 00:33:50 +01:00
Justin Clark-Casey (justincc)
32ddfc2740
Reinsert client.SceneAgent checks into LLUDPServer.HandleCompleteMovementIntoRegion() to fix race condition regression in commit 7dbc93c (Wed Sep 18 21:41:51 2013 +0100)
...
This check is necessary to close a race condition where the CompleteAgentMovement processing could proceed when the UseCircuitCode thread had added the client to the client manager but before the ScenePresence had registered to process the CompleteAgentMovement message.
This is most probably why the message appeared to get lost on a proportion of entity transfers.
A better long term solution may be to set the IClientAPI.SceneAgent property before the client is added to the manager.
2013-09-25 18:45:56 +01:00
Aleric Inglewood
2dc92e7de1
Preserve attachment point & position when attachment is rezzed in world
...
Patch taken from
http://opensimulator.org/mantis/view.php?id=4905
originally by Greg C.
Fixed to apply to r/23314 commit
ba9daf849e
(cherry picked from commit 4ff9fbca441110cc2b93edc7286e0e9339e61cbe)
2013-09-22 21:10:01 -05:00
Justin Clark-Casey (justincc)
c01db5fbdd
Lock around read/write of ScenePresence.m_originRegionID to make sure that all threads are seeing the latest value and not a cached one.
...
There is a possibilty that some V2 teleport failures are due to the viewer triggered CompleteMovement thread not seeing the change of m_originRegionID by the UpdateAgent thread.
2013-09-20 22:41:53 +01:00
Justin Clark-Casey (justincc)
c6dea6ee78
Change some message log levels in Scene.IncomingUpdateChildAgent() for debugging purposes
2013-09-20 20:19:44 +01:00
Oren Hurvitz
f1267730ef
UUID Gatherer: find assets used in Light Projection, Particle Systems, and Collision Sounds.
2013-09-19 23:01:06 +01:00
Justin Clark-Casey (justincc)
979b17165b
For debug purposes, allow simulators to force use of earlier SIMULATION/0.1 teleport protocol even if SIMULATION/0.2 is available.
...
This is specified in the MaxOutgoingTransferVersion attribute of [EntityTransfer] in OpenSim.ini, see OpenSimDefaults.ini for more details.
Default remains "SIMULATION/0.2"
Primarily for http://opensimulator.org/mantis/view.php?id=6755
2013-09-19 22:45:50 +01:00
Justin Clark-Casey (justincc)
b6f10780c2
minor: Make SP.MakeRootAgent() private - no external code has any business calling this method
2013-09-19 21:44:30 +01:00
Justin Clark-Casey (justincc)
03b2b5b77b
minor: Make log message at top of ScenePresence.CompleteMovement info level and comment out later log message in ScenePresence.MakeRootAgent()
...
Need an info message since this is currently important in detecting teleport issue when not at debug log level.
CompleteMovement message occurs before MakeRootAgent() one did
2013-09-19 20:59:27 +01:00
Justin Clark-Casey (justincc)
3a9a8d2113
Revert "Also check user authorization if looking to upgrade from a child to a root agent."
...
This reverts commit c7ded0618c .
This proves not to be necessary - the necessary checks are already being done via QueryAccess() before cross or teleport
2013-09-19 20:26:26 +01:00
Justin Clark-Casey (justincc)
83c113896e
Create regression TestCrossOnSameSimulatorNoRootDestPerm() to check that avatars are not allowed to cross into a neighbour where they are not authorized, even if a child agent was allowed.
2013-09-19 20:26:08 +01:00
Justin Clark-Casey (justincc)
8999f06025
minor: correct method name in comment
2013-09-18 23:13:31 +01:00
Justin Clark-Casey (justincc)
ddcbd4bb7d
refactor: rename *ChildAgentDataUpdate() methods to *UpdateChildAgent()
...
verb-noun is consistent with other similar methods
2013-09-18 23:09:38 +01:00
Justin Clark-Casey (justincc)
3ce46adb2a
minor: Make log message when Scene.IncomingChildAgentDateUpdate() more explicit that there is a problem if it still finds the agent to be a child if the sender wanted to wait till it became root
...
Add some comments about the mssage sequence, though much more data is at
http://opensimulator.org/wiki/Teleports
2013-09-18 22:56:00 +01:00
Justin Clark-Casey (justincc)
2603a2891b
Reinsert comments about possible race conditions when sending bulk inventory updates on non-flag clothing editing
2013-09-16 23:26:13 +01:00
Robert Adams
3dbf4a1002
BulletSim: remove chatty debug message from previous commit.
2013-09-11 09:12:09 -07:00
Robert Adams
e0b457d3c3
BulletSim: add position and rotation update for child prim physics update events. Normally, physics engines do not return updates for child prims so, under normal operation, this code should never execute. Will only be used when using flexible linkset linkages.
2013-09-11 09:12:07 -07:00
Robert Adams
b05cb3b2bf
Change collision logic in SceneObjectPart so land_collision will happen.
...
The previous logic would generate land_collision_start and land_collision_end
but would not generate the land_collision itself.
2013-09-09 14:50:33 -07:00
Diva Canto
04619a9b13
Restore group membership check for HG users in QueryAccess.
2013-09-05 07:44:27 -07:00
Justin Clark-Casey (justincc)
c7ded0618c
Also check user authorization if looking to upgrade from a child to a root agent.
...
Relevant if a child agent has been allowed into the region which should not be upgraded to a root agent.
2013-09-04 00:44:17 +01:00
Justin Clark-Casey (justincc)
5f0d54c209
For a Hypergrid user, delay estate access checks until NewUserConnection() so that they work.
...
This is necessary because the hypergrid groups checks (as referenced by estates) require an agent circuit to be present to construct the hypergrid ID.
However, this is not around until Scene.NewUserConnection(), as called by CreateAgent() in EntityTransferModule.
Therefore, if we're dealing with a hypergrid user, delay the check until NewUserConnection()/CreateAgent()
The entity transfer impact should be minimal since CreateAgent() is the next significant call after NewUserConnection()
However, to preserve the accuracy of query access we will only relax the check for HG users.
2013-09-04 00:42:23 +01:00
Justin Clark-Casey (justincc)
857f24a5e2
Fix bug where users teleporting to non-neighbour regions could continue to hear chat from their source region for some time after teleport completion.
...
This occurs on v2 teleport since the source region now waits 15 secs before closing the old child agent, which could still receive chat.
This commit introduces a ScenePresenceState.PreClose which is set before the wait, so that ChatModule can check for ScenePresenceState.Running.
This was theoretically also an issue on v1 teleport but since the pause before close was only 2 secs there, it was not noticed.
2013-09-02 19:15:10 +01:00
Justin Clark-Casey (justincc)
5ce5ce6edb
Comment out warning about agent updating without valid session ID for now.
...
This causes extreme console spam if a simulator running latest master and one running 0.7.5 have adjacent regions occupied by avatars.
2013-09-02 17:45:38 +01:00
Diva Canto
f0c0376660
Potential fix for access control bug on login introduced with SeeIntoRegion commit.
2013-08-24 08:42:41 -07:00
Justin Clark-Casey (justincc)
61c20bd06a
Remove old and unused ScenePresence.RestoreInCurrentScene()
2013-08-23 00:53:42 +01:00
Justin Clark-Casey (justincc)
065c5839b5
Refactor: merge SceneGraph.AddScenePresence() into CreateAndAddChildScenePresence() since the former was only ever called from the latter
...
This allows us to remove dead code relating to adding root agents directly to the scenegraph, which never happens.
2013-08-23 00:49:13 +01:00
Justin Clark-Casey (justincc)
416bbe9583
Stop error messages being misleadingly generated when on client connection activity timeout, a root connection triggers a CloseAgent to a neighbour region which has already closed the agent due to inactivity.
...
Also separates out log messages to distinguish between close not finding an agent and wrong auth token, and downgrades former to debug and latter to warn
2013-08-22 22:46:40 +01:00