summaryrefslogtreecommitdiff
path: root/indra/newview/llselectmgr.cpp
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2008-02-01 02:23:35 +0000
committerSteven Bennetts <steve@lindenlab.com>2008-02-01 02:23:35 +0000
commitb302f15deea0f4f7f5de75bfd3776c17021b6444 (patch)
tree7a2842445c8dd6c8537bd9f8d4d171e95b85a845 /indra/newview/llselectmgr.cpp
parent6ae0a9e2c1ac51385c341ff4a93384950e2e7e40 (diff)
EFFECTIVE MERGE: maint-viewer-3 -r 77368:77381 -> release
ACTUAL MERGE: merge maint-viewer-3-merge -r 79051 -> release
Diffstat (limited to 'indra/newview/llselectmgr.cpp')
-rw-r--r--indra/newview/llselectmgr.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp
index ddd73fc0df..511fd73ef7 100644
--- a/indra/newview/llselectmgr.cpp
+++ b/indra/newview/llselectmgr.cpp
@@ -612,6 +612,10 @@ void LLSelectMgr::deselectObjectAndFamily(LLViewerObject* object, BOOL send_to_s
msg->addU32Fast(_PREHASH_ObjectLocalID, (objects[i])->getLocalID());
select_count++;
+ // Zap the angular velocity, as the sim will set it to zero
+ objects[i]->setAngularVelocity( 0,0,0 );
+ objects[i]->setVelocity( 0,0,0 );
+
if(msg->isSendFull(NULL) || select_count >= MAX_OBJECTS_PER_PACKET)
{
msg->sendReliable(regionp->getHost() );
@@ -635,6 +639,10 @@ void LLSelectMgr::deselectObjectOnly(LLViewerObject* object, BOOL send_to_sim)
if (!object) return;
if (!object->isSelected() ) return;
+ // Zap the angular velocity, as the sim will set it to zero
+ object->setAngularVelocity( 0,0,0 );
+ object->setVelocity( 0,0,0 );
+
if (send_to_sim)
{
LLViewerRegion* region = object->getRegion();
@@ -3276,6 +3284,15 @@ void LLSelectMgr::deselectAll()
return;
}
+ // Zap the angular velocity, as the sim will set it to zero
+ for (LLObjectSelection::iterator iter = mSelectedObjects->begin();
+ iter != mSelectedObjects->end(); iter++ )
+ {
+ LLViewerObject *objectp = (*iter)->getObject();
+ objectp->setAngularVelocity( 0,0,0 );
+ objectp->setVelocity( 0,0,0 );
+ }
+
sendListToRegions(
"ObjectDeselect",
packAgentAndSessionID,
@@ -3429,7 +3446,7 @@ void LLSelectMgr::sendAttach(U8 attachment_point)
BOOL build_mode = gToolMgr->inEdit();
// Special case: Attach to default location for this object.
if (0 == attachment_point ||
- gAgent.getAvatarObject()->mAttachmentPoints.getIfThere(attachment_point))
+ get_if_there(gAgent.getAvatarObject()->mAttachmentPoints, (S32)attachment_point, (LLViewerJointAttachment*)NULL))
{
sendListToRegions(
"ObjectAttach",