diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 23beaec..dd3b8aa 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -2609,6 +2609,34 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
2609 | } | 2609 | } |
2610 | } | 2610 | } |
2611 | 2611 | ||
2612 | public void SendPartPhysicsProprieties(ISceneEntity entity) | ||
2613 | { | ||
2614 | SceneObjectPart part = (SceneObjectPart)entity; | ||
2615 | if (part != null && AgentId != UUID.Zero) | ||
2616 | { | ||
2617 | try | ||
2618 | { | ||
2619 | IEventQueue eq = Scene.RequestModuleInterface<IEventQueue>(); | ||
2620 | if (eq != null) | ||
2621 | { | ||
2622 | uint localid = part.LocalId; | ||
2623 | byte physshapetype = part.PhysicsShapeType; | ||
2624 | float density = part.Density; | ||
2625 | float friction = part.Friction; | ||
2626 | float bounce = part.Bounciness; | ||
2627 | float gravmod = part.GravityModifier; | ||
2628 | |||
2629 | eq.partPhysicsProperties(localid, physshapetype, density, friction, bounce, gravmod,AgentId); | ||
2630 | } | ||
2631 | } | ||
2632 | catch (Exception ex) | ||
2633 | { | ||
2634 | m_log.Error("Unable to send part Physics Proprieties - exception: " + ex.ToString()); | ||
2635 | } | ||
2636 | } | ||
2637 | } | ||
2638 | |||
2639 | |||
2612 | 2640 | ||
2613 | public void SendGroupNameReply(UUID groupLLUID, string GroupName) | 2641 | public void SendGroupNameReply(UUID groupLLUID, string GroupName) |
2614 | { | 2642 | { |
@@ -7029,7 +7057,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
7029 | physdata.Bounce = phsblock.Restitution; | 7057 | physdata.Bounce = phsblock.Restitution; |
7030 | physdata.Density = phsblock.Density; | 7058 | physdata.Density = phsblock.Density; |
7031 | physdata.Friction = phsblock.Friction; | 7059 | physdata.Friction = phsblock.Friction; |
7060 | physdata.GravitationModifier = phsblock.GravityMultiplier; | ||
7032 | } | 7061 | } |
7062 | |||
7033 | handlerUpdatePrimFlags(flags.AgentData.ObjectLocalID, UsePhysics, IsTemporary, IsPhantom, physdata, this); | 7063 | handlerUpdatePrimFlags(flags.AgentData.ObjectLocalID, UsePhysics, IsTemporary, IsPhantom, physdata, this); |
7034 | } | 7064 | } |
7035 | return true; | 7065 | return true; |