diff options
author | Dave Parks <davep@lindenlab.com> | 2010-04-14 12:12:03 -0500 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2010-04-14 12:12:03 -0500 |
commit | a7e1745bed2e8c22843b946700b4ae9c8fbf8ac9 (patch) | |
tree | 40d0b8bc9c5715f55e2870c5e2e4b534e01a774b /indra/llcharacter | |
parent | 6b72149cf7ad90c0036d9b037594b0a8e86dc483 (diff) | |
parent | 168ef83bcfae2a03c385a91a70e12a6fc773e3c5 (diff) |
Merge
Diffstat (limited to 'indra/llcharacter')
-rw-r--r-- | indra/llcharacter/llkeyframemotion.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/llcharacter/llkeyframemotion.cpp b/indra/llcharacter/llkeyframemotion.cpp index 5a2e3f73f9..f4dc3b927b 100644 --- a/indra/llcharacter/llkeyframemotion.cpp +++ b/indra/llcharacter/llkeyframemotion.cpp @@ -658,7 +658,12 @@ BOOL LLKeyframeMotion::onActivate() // If the keyframe anim has an associated emote, trigger it. if( mJointMotionList->mEmoteName.length() > 0 ) { - mCharacter->startMotion( gAnimLibrary.stringToAnimState(mJointMotionList->mEmoteName) ); + LLUUID emote_anim_id = gAnimLibrary.stringToAnimState(mJointMotionList->mEmoteName); + // don't start emote if already active to avoid recursion + if (!mCharacter->isMotionActive(emote_anim_id)) + { + mCharacter->startMotion( emote_anim_id ); + } } mLastLoopedTime = 0.f; |