From 8a796be785562db948ca2f900a3c65c8ea80c456 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 25 Mar 2014 11:10:28 -0700 Subject: [PATCH] only fade avatars if they have ever been initialized --- interface/src/avatar/AvatarManager.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/interface/src/avatar/AvatarManager.cpp b/interface/src/avatar/AvatarManager.cpp index bc1f826606..c2ba28ac7b 100644 --- a/interface/src/avatar/AvatarManager.cpp +++ b/interface/src/avatar/AvatarManager.cpp @@ -101,14 +101,12 @@ void AvatarManager::simulateAvatarFades(float deltaTime) { while (fadingIterator != _avatarFades.end()) { Avatar* avatar = static_cast(fadingIterator->data()); - if (avatar->isInitialized()) { - avatar->setTargetScale(avatar->getScale() * SHRINK_RATE); - if (avatar->getTargetScale() < MIN_FADE_SCALE) { - fadingIterator = _avatarFades.erase(fadingIterator); - } else { - avatar->simulate(deltaTime); - ++fadingIterator; - } + avatar->setTargetScale(avatar->getScale() * SHRINK_RATE); + if (avatar->getTargetScale() < MIN_FADE_SCALE) { + fadingIterator = _avatarFades.erase(fadingIterator); + } else { + avatar->simulate(deltaTime); + ++fadingIterator; } } } @@ -246,7 +244,9 @@ void AvatarManager::processKillAvatar(const QByteArray& datagram) { AvatarHash::iterator AvatarManager::erase(const AvatarHash::iterator& iterator) { if (iterator.key() != MY_AVATAR_KEY) { qDebug() << "Removing Avatar with UUID" << iterator.key() << "from AvatarManager hash."; - _avatarFades.push_back(iterator.value()); + if (reinterpret_cast(iterator.value().data())->isInitialized()) { + _avatarFades.push_back(iterator.value()); + } return AvatarHashMap::erase(iterator); } else { // never remove _myAvatar from the list