mirror of
https://github.com/overte-org/overte.git
synced 2025-07-23 13:24:02 +02:00
Add new Avatar.getAvatarEntityData() method for API
This commit is contained in:
parent
c7f82a8264
commit
9d3e9f6a78
2 changed files with 15 additions and 1 deletions
|
@ -279,7 +279,18 @@ void ScriptableAvatar::setJointMappingsFromNetworkReply() {
|
||||||
networkReply->deleteLater();
|
networkReply->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AvatarEntityMap ScriptableAvatar::getAvatarEntityData() const {
|
||||||
|
auto data = getAvatarEntityDataInternal(true);
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
AvatarEntityMap ScriptableAvatar::getAvatarEntityDataNonDefault() const {
|
AvatarEntityMap ScriptableAvatar::getAvatarEntityDataNonDefault() const {
|
||||||
|
auto data = getAvatarEntityDataInternal(false);
|
||||||
|
return data;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
AvatarEntityMap ScriptableAvatar::getAvatarEntityDataInternal(bool allProperties) const {
|
||||||
// DANGER: Now that we store the AvatarEntityData in packed format this call is potentially Very Expensive!
|
// DANGER: Now that we store the AvatarEntityData in packed format this call is potentially Very Expensive!
|
||||||
// Avoid calling this method if possible.
|
// Avoid calling this method if possible.
|
||||||
AvatarEntityMap data;
|
AvatarEntityMap data;
|
||||||
|
@ -290,7 +301,7 @@ AvatarEntityMap ScriptableAvatar::getAvatarEntityDataNonDefault() const {
|
||||||
EntityItemPointer entity = itr.second;
|
EntityItemPointer entity = itr.second;
|
||||||
EntityItemProperties properties = entity->getProperties();
|
EntityItemProperties properties = entity->getProperties();
|
||||||
QByteArray blob;
|
QByteArray blob;
|
||||||
EntityItemProperties::propertiesToBlob(_scriptEngine, sessionID, properties, blob);
|
EntityItemProperties::propertiesToBlob(_scriptEngine, sessionID, properties, blob, allProperties);
|
||||||
data[id] = blob;
|
data[id] = blob;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -178,9 +178,12 @@ public:
|
||||||
* var avatarEntityData = Avatar.getAvatarEntityData();
|
* var avatarEntityData = Avatar.getAvatarEntityData();
|
||||||
* print("Avatar entities: " + JSON.stringify(avatarEntityData));
|
* print("Avatar entities: " + JSON.stringify(avatarEntityData));
|
||||||
*/
|
*/
|
||||||
|
Q_INVOKABLE AvatarEntityMap getAvatarEntityData() const override;
|
||||||
|
|
||||||
AvatarEntityMap getAvatarEntityDataNonDefault() const override;
|
AvatarEntityMap getAvatarEntityDataNonDefault() const override;
|
||||||
|
|
||||||
|
AvatarEntityMap getAvatarEntityDataInternal(bool allProperties) const;
|
||||||
|
|
||||||
/**jsdoc
|
/**jsdoc
|
||||||
* Sets all avatar entities from an object.
|
* Sets all avatar entities from an object.
|
||||||
* <p><strong>Warning:</strong> Potentially an expensive call. Do not use if possible.</p>
|
* <p><strong>Warning:</strong> Potentially an expensive call. Do not use if possible.</p>
|
||||||
|
|
Loading…
Reference in a new issue