Animesh test changes. Also stop screwing with my commit messages, github.
This commit is contained in:
@@ -56,6 +56,7 @@
|
||||
#include "llagent.h"
|
||||
#include "llagentcamera.h"
|
||||
#include "llcallingcard.h"
|
||||
#include "llcontrolavatar.h"
|
||||
#include "llfirstuse.h"
|
||||
#include "llfloaterbump.h"
|
||||
#include "llfloaterbuycurrency.h"
|
||||
@@ -4523,6 +4524,8 @@ void process_teleport_finish(LLMessageSystem* msg, void**)
|
||||
// Teleport is finished; it can't be cancelled now.
|
||||
gViewerWindow->setProgressCancelButtonVisible(FALSE);
|
||||
|
||||
//gPipeline.doResetVertexBuffers(true); // Animesh+
|
||||
|
||||
// Do teleport effect for where you're leaving
|
||||
// VEFFECT: TeleportStart
|
||||
LLHUDEffectSpiral *effectp = (LLHUDEffectSpiral *)LLHUDManager::getInstance()->createViewerEffect(LLHUDObject::LL_HUD_EFFECT_POINT, TRUE);
|
||||
@@ -5745,7 +5748,7 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
|
||||
LLUUID animation_id;
|
||||
LLUUID uuid;
|
||||
S32 anim_sequence_id;
|
||||
|
||||
|
||||
mesgsys->getUUIDFast(_PREHASH_Sender, _PREHASH_ID, uuid);
|
||||
|
||||
//clear animation flags
|
||||
@@ -5831,6 +5834,72 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void process_object_animation(LLMessageSystem *mesgsys, void **user_data)
|
||||
{
|
||||
LLUUID animation_id;
|
||||
LLUUID uuid;
|
||||
S32 anim_sequence_id;
|
||||
|
||||
mesgsys->getUUIDFast(_PREHASH_Sender, _PREHASH_ID, uuid);
|
||||
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "Received animation state for object " << uuid << LL_ENDL;
|
||||
|
||||
signaled_animation_map_t signaled_anims;
|
||||
S32 num_blocks = mesgsys->getNumberOfBlocksFast(_PREHASH_AnimationList);
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "processing object animation requests, num_blocks " << num_blocks << " uuid " << uuid << LL_ENDL;
|
||||
for( S32 i = 0; i < num_blocks; i++ )
|
||||
{
|
||||
mesgsys->getUUIDFast(_PREHASH_AnimationList, _PREHASH_AnimID, animation_id, i);
|
||||
mesgsys->getS32Fast(_PREHASH_AnimationList, _PREHASH_AnimSequenceID, anim_sequence_id, i);
|
||||
signaled_anims[animation_id] = anim_sequence_id;
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "added signaled_anims animation request for object "
|
||||
<< uuid << " animation id " << animation_id << LL_ENDL;
|
||||
}
|
||||
LLObjectSignaledAnimationMap::instance().getMap()[uuid] = signaled_anims;
|
||||
|
||||
LLViewerObject *objp = gObjectList.findObject(uuid);
|
||||
if (!objp)
|
||||
{
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "Received animation state for unknown object " << uuid << LL_ENDL;
|
||||
return;
|
||||
}
|
||||
|
||||
LLVOVolume *volp = dynamic_cast<LLVOVolume*>(objp);
|
||||
if (!volp)
|
||||
{
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "Received animation state for non-volume object " << uuid << LL_ENDL;
|
||||
return;
|
||||
}
|
||||
|
||||
if (!volp->isAnimatedObject())
|
||||
{
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "Received animation state for non-animated object " << uuid << LL_ENDL;
|
||||
return;
|
||||
}
|
||||
|
||||
volp->updateControlAvatar();
|
||||
LLControlAvatar *avatarp = volp->getControlAvatar();
|
||||
if (!avatarp)
|
||||
{
|
||||
LL_DEBUGS("AnimatedObjectsNotify") << "Received animation request for object with no control avatar, ignoring " << uuid << LL_ENDL;
|
||||
return;
|
||||
}
|
||||
|
||||
if (!avatarp->mPlaying)
|
||||
{
|
||||
avatarp->mPlaying = true;
|
||||
//if (!avatarp->mRootVolp->isAnySelected())
|
||||
{
|
||||
avatarp->updateVolumeGeom();
|
||||
avatarp->mRootVolp->recursiveMarkForUpdate(TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
avatarp->updateAnimations();
|
||||
}
|
||||
|
||||
|
||||
void process_avatar_appearance(LLMessageSystem *mesgsys, void **user_data)
|
||||
{
|
||||
LLUUID uuid;
|
||||
|
||||
Reference in New Issue
Block a user