| Commit message (Collapse) | Author | Files | Lines |
|
avatar to sit in the position given if no sit target was set.
Previous behave was that the second avatar could not sit.
This matches behaviour observed on the LL grid.
|
|
and SOP.RemoveSittingAvatar()
|
|
This reverts commit c8f0d476d2f775ba4d7afca12eeff527b46bb8e2.
On reconsideration, I think this is less readable since immediately following code still sets SitTargetAvatar directly
|
|
|
|
rather than creating a new copy
There are no issues with side-effects since this is a struct.
|
|
property rather than being repeated in SP.
This also makes the detection in SP.FindNextAvailableSitTarget() and SendSitResponse() identical.
Previously they varied slightly (SendSitResponse didn't check for an older type of invalid quaternion) but the practical effect is most probably zero.
|
|
|
|
|
|
This prevents a stack overflow where a get position on the avatar will refer to the attachment which will in turn refer back to the avatar.
This required recording of all sitting avatars on a prim which is done separately from recording the sit target avatar.
Recording HashSet is null if there are no sitting avatars in order to save memory.
|
|
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.
|
|
|
|
ETM.DoTeleport() if an agent needs closing.
This is always done as part of Scene.RemoveClient()
Also refactors try/catching in Scene.RemoveClient() to log NREs instead of silently discarding, since these are useful symptoms of problems.
|
|
for the tip.
|
|
Setting to allow use of landmarks to override telehub routing. Default is off.
|
|
agents
From sl docs such as http://community.secondlife.com/t5/English-Knowledge-Base/Managing-Private-Regions/ta-p/700115
agent should apply to avatars only.
This makes sense from a user perspective, and also from a code perspective since child agents with no physics or actions take up a fraction of root agent resources.
As such, the check is now only performed in Scene.QueryAccess() - cross and teleport check this before allowing an agent to translocate.
This also removes an off-by-one error that could occur in certain circumstances on teleport when a new child agent was double counted when a pre-teleport agent update was performed.
This does not affect an existing bug where limits or other QueryAccess() checks are not applied to avatars logging directly into a region.
|
|
|
|
Will use one of three selected methods to route avatar landing
points when using Telehubs. The setting is in [Startup] using
SpawnPointRouting = closest/random/sequence
closest: The default setting. Routes avatar to the nearest SpawnPoint
to the location.
random: Picks random SpawnPoints to land the avatar.
sequence: Follows a sequence to place the avatar on the next available
SpawnPoint location
Conflicts:
OpenSim/Region/Framework/Scenes/Scene.cs
|
|
|
|
Region to region was fixed some time ago in EntityTransferModule.
This applies the same fix for same region teleports.
|
|
this patch - Deletes any objects that have damage set > 0 that deliver that damage to an avatar Stops Gods receiving damage, Stops volume detect objects causing damage Deletes NPCS when their helth reduces to zero Gradually "heals" damage to an avatar Resets health on going to a non damage area
|
|
source region after teleport to resolve Imprudence teleport problems.
Viewers 1 and 3 are fine with doing this immediately. However, Imprudence has a small delay (<200ms, >500ms) after receiving the AgentCompleteMovement reply packet on the destination region before regarding that region as the currnet region.
If Imprudence receives a DisableSimulator in this period, it quits.
We are not restoring the full 5000ms delay since this brings back a bug where teleports permanently fail if an avatar tries to teleport back too quickly.
This commit also sends the AgentCompleteMovement packet to the client before telling the source region to release its old agent, in order to further cut down any possibility of the DisableSimulator being recieved before the AgentMovementComplete.
|
|
simulator
This adds a non-advertised wait_for_callback option in [EntityTransfer]. Default is always true.
Teleport tests disable the wait for callback from the destination region in order to run within a single thread.
|
|
into SendControlsToScripts() (instead of SendControlToScripts()).
|
|
This fixes a bug introduced in 6473674bbf6ce006512083902e8ff1796d8c8b22
|
|
This happened because the scripts were notified about control changes (e.g., the user stopped pressing the Forward key) when the animation was still WALK, so the script didn't stop the walking animation. Fixing this required: a) Update the movement animation *before* notifying the script; b) Add locking to prevent clashes with the Heartbeat thread (which also updates the animations); c) Handle the case of a user who stops walking just as the avatar is in the air: the avatar should STAND in that case, not WALK.
This reverts commit feef1dd73243cfdd5322632fb67e64cabc1ad4bc.
|
|
problem resolution.
|
|
|
|
|
|
These are identical apart from setting Velocity = zero, which has no practical effect anyway since this is zeroed when the avatar is added back to the physics scene.
|
|
|
|
EstateSettings.IsEstateManagerOrOwner() to reflect what it actually does.
This makes it consistent with other parts of OpenSimulator that are treating ESTATE_MANAGER and ESTATE_OWNER as different entities.
As per opensim-dev mailing list.
|
|
Signed-off-by: nebadon <michael@osgrid.org>
|
|
Signed-off-by: Melanie <melanie@t-data.com>
|
|
As per http://lslwiki.net/lslwiki/wakka.php?wakka=llGetMass
This is the mass as used by the physics engine (ODE or Bullet).
|
|
hack away from ScenePresence. This is better but it still doesn't restore the inventory upon arrival.
|
|
|
|
true|false" command
|
|
|
|
absurd 3m vertical jump to better match what you would see in Second
Life and be more in line with what users would expect.
|
|
this is handled by the necessary ParentPart check
|
|
(saving extra null checks, etc.)
However, it looks like we should retain SP.ParentID since it's much easier to use that in places where another thread could change ParentPart to null.
Otherwise one has to clumsily put ParentPart in a reference, etc. to avoid a race.
|
|
(part != null), rather than having unnecessary multiple checks
|
|
ParentPart is still not null if the ParentID != 0
Another thread could come in and stand the avatar between those two instructions.
|
|
the check for significant is carried out. Prevents a deadlock condition.
|
|
|
|
parameters. They were only used by the get/set and make code harder to refactor.
|
|
banlines or freezing on the banline.
This involves
1) On forcible teleport, call m_scene.RequestTeleportLocation() rather than ScenePresence.Teleport() - only EntityTransferModule now should call SP.Teleport()
2) When avatar is being forcibly moved due to banlines, use a 'stop movement' tolerance of 0.2 to requested position rather than 1
This prevents the avatar sometimes being stuck to banlines until they teleport somewhere else.
This aims to fix some problems in http://opensimulator.org/mantis/view.php?id=5822
|
|
potential bad update that places an object at the opposite side of the
origin sim for a moment before actually crossing it. Especially important in
grids like OSG where lag between sims is high.
|
|
|