History

treat ModelEntityItem-s with relayParentJoints as wearables

Alexander Ivash committed 8 years ago

Commit 0a283611 parent 56194bb2 files · +5 −4Browse files

Showing the changes to interface/src/AvatarBookmarks.cpp (1 of 2 files). Show all

Unified · Split

interface/src/AvatarBookmarks.cpp+4−3
@@ -25,6 +25,7 @@ · 24 unmodified lines
2525 #include <avatar/AvatarManager.h>
2626 #include <EntityItemID.h>
2727 #include <EntityTree.h>
28+#include <ModelEntityItem.h>
2829 #include <PhysicalEntitySimulation.h>
2930 #include <EntityEditPacketSender.h>
3031 #include <VariantMapToScriptValue.h>
@@ -35,7 +36,7 @@ · 4 unmodified lines
3536 #include "QVariantGLM.h"
3637
3738 #include <QtQuick/QQuickWindow>
38−
39+#include <memory>
3940
4041 void addAvatarEntities(const QVariantList& avatarEntities) {
4142 auto nodeList = DependencyManager::get<NodeList>();
@@ -145,8 +146,8 @@ void AvatarBookmarks::removeBookmark(const QString& bookmarkName) { · 103 unmodified lines
145146 }
146147
147148 bool isWearableEntity(const EntityItemPointer& entity) {
148− return entity->isVisible() && entity->getParentJointIndex() != INVALID_JOINT_INDEX &&
149− (entity->getParentID() == DependencyManager::get<NodeList>()->getSessionUUID() || entity->getParentID() == DependencyManager::get<AvatarManager>()->getMyAvatar()->getSelfID());
149+ return entity->isVisible() && (entity->getParentJointIndex() != INVALID_JOINT_INDEX || (entity->getType() == EntityTypes::Model && (std::static_pointer_cast<ModelEntityItem>(entity))->getRelayParentJoints()))
150+ && (entity->getParentID() == DependencyManager::get<NodeList>()->getSessionUUID() || entity->getParentID() == DependencyManager::get<AvatarManager>()->getMyAvatar()->getSelfID());
150151 }
151152
152153 void AvatarBookmarks::updateAvatarEntities(const QVariantList &avatarEntities) {