mirror of
https://github.com/JulianGro/overte.git
synced 2025-08-24 09:36:53 +02:00
working checkpoint
This commit is contained in:
parent
6c47b71356
commit
7724fc204b
7 changed files with 222 additions and 24 deletions
|
@ -94,7 +94,18 @@ EntityPropertyFlags EntityItem::getEntityProperties(EncodeBitstreamParams& param
|
|||
requestedProperties += PROP_DYNAMIC;
|
||||
requestedProperties += PROP_LOCKED;
|
||||
requestedProperties += PROP_USER_DATA;
|
||||
|
||||
// Certifiable properties
|
||||
requestedProperties += PROP_ITEM_NAME;
|
||||
requestedProperties += PROP_ITEM_DESCRIPTION;
|
||||
requestedProperties += PROP_ITEM_CATEGORIES;
|
||||
requestedProperties += PROP_ITEM_ARTIST;
|
||||
requestedProperties += PROP_ITEM_LICENSE;
|
||||
requestedProperties += PROP_LIMITED_RUN;
|
||||
requestedProperties += PROP_MARKETPLACE_ID;
|
||||
requestedProperties += PROP_EDITION_NUMBER;
|
||||
requestedProperties += PROP_CERTIFICATE_ID;
|
||||
|
||||
requestedProperties += PROP_NAME;
|
||||
requestedProperties += PROP_HREF;
|
||||
requestedProperties += PROP_DESCRIPTION;
|
||||
|
@ -239,7 +250,18 @@ OctreeElement::AppendState EntityItem::appendEntityData(OctreePacketData* packet
|
|||
APPEND_ENTITY_PROPERTY(PROP_DYNAMIC, getDynamic());
|
||||
APPEND_ENTITY_PROPERTY(PROP_LOCKED, getLocked());
|
||||
APPEND_ENTITY_PROPERTY(PROP_USER_DATA, getUserData());
|
||||
|
||||
// Certifiable Properties
|
||||
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, getMarketplaceID());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_NAME, getItemName());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_DESCRIPTION, getItemDescription());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_CATEGORIES, getItemCategories());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_ARTIST, getItemArtist());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_LICENSE, getItemLicense());
|
||||
APPEND_ENTITY_PROPERTY(PROP_LIMITED_RUN, getLimitedRun());
|
||||
APPEND_ENTITY_PROPERTY(PROP_EDITION_NUMBER, getEditionNumber());
|
||||
APPEND_ENTITY_PROPERTY(PROP_CERTIFICATE_ID, getCertificateID());
|
||||
|
||||
APPEND_ENTITY_PROPERTY(PROP_NAME, getName());
|
||||
APPEND_ENTITY_PROPERTY(PROP_COLLISION_SOUND_URL, getCollisionSoundURL());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HREF, getHref());
|
||||
|
@ -790,6 +812,16 @@ int EntityItem::readEntityDataFromBuffer(const unsigned char* data, int bytesLef
|
|||
if (args.bitstreamVersion >= VERSION_ENTITIES_HAS_MARKETPLACE_ID) {
|
||||
READ_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, QString, setMarketplaceID);
|
||||
}
|
||||
if (args.bitstreamVersion >= VERSION_ENTITIES_HAS_CERTIFICATE_PROPERTIES) {
|
||||
READ_ENTITY_PROPERTY(PROP_ITEM_NAME, QString, setItemName);
|
||||
READ_ENTITY_PROPERTY(PROP_ITEM_DESCRIPTION, QString, setItemDescription);
|
||||
READ_ENTITY_PROPERTY(PROP_ITEM_CATEGORIES, QString, setItemCategories);
|
||||
READ_ENTITY_PROPERTY(PROP_ITEM_ARTIST, QString, setItemArtist);
|
||||
READ_ENTITY_PROPERTY(PROP_ITEM_LICENSE, QString, setItemLicense);
|
||||
READ_ENTITY_PROPERTY(PROP_LIMITED_RUN, quint32, setLimitedRun);
|
||||
READ_ENTITY_PROPERTY(PROP_EDITION_NUMBER, quint32, setEditionNumber);
|
||||
READ_ENTITY_PROPERTY(PROP_CERTIFICATE_ID, QString, setCertificateID);
|
||||
}
|
||||
|
||||
READ_ENTITY_PROPERTY(PROP_NAME, QString, setName);
|
||||
READ_ENTITY_PROPERTY(PROP_COLLISION_SOUND_URL, QString, setCollisionSoundURL);
|
||||
|
@ -1207,7 +1239,18 @@ EntityItemProperties EntityItem::getProperties(EntityPropertyFlags desiredProper
|
|||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(dynamic, getDynamic);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(locked, getLocked);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(userData, getUserData);
|
||||
|
||||
// Certifiable Properties
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(itemName, getItemName);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(itemDescription, getItemDescription);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(itemCategories, getItemCategories);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(itemArtist, getItemArtist);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(itemLicense, getItemLicense);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(limitedRun, getLimitedRun);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(marketplaceID, getMarketplaceID);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(editionNumber, getEditionNumber);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(certificateID, getCertificateID);
|
||||
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(name, getName);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(href, getHref);
|
||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(description, getDescription);
|
||||
|
@ -1302,7 +1345,18 @@ bool EntityItem::setProperties(const EntityItemProperties& properties) {
|
|||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(localRenderAlpha, setLocalRenderAlpha);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(visible, setVisible);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(userData, setUserData);
|
||||
|
||||
// Certifiable properties
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(itemName, setItemName);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(itemDescription, setItemDescription);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(itemCategories, setItemCategories);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(itemArtist, setItemArtist);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(itemLicense, setItemLicense);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(limitedRun, setLimitedRun);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(marketplaceID, setMarketplaceID);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(editionNumber, setEditionNumber);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(certificateID, setCertificateID);
|
||||
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(name, setName);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(href, setHref);
|
||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(description, setDescription);
|
||||
|
@ -2757,19 +2811,32 @@ void EntityItem::setUserData(const QString& value) {
|
|||
});
|
||||
}
|
||||
|
||||
QString EntityItem::getMarketplaceID() const {
|
||||
QString result;
|
||||
withReadLock([&] {
|
||||
result = _marketplaceID;
|
||||
});
|
||||
return result;
|
||||
// Certificate Properties
|
||||
#define DEFINE_PROPERTY_GETTER(type, accessor, var) \
|
||||
type EntityItem::get##accessor() const { \
|
||||
type result; \
|
||||
withReadLock([&] { \
|
||||
result = _##var; \
|
||||
}); \
|
||||
return result; \
|
||||
}
|
||||
|
||||
void EntityItem::setMarketplaceID(const QString& value) {
|
||||
withWriteLock([&] {
|
||||
_marketplaceID = value;
|
||||
});
|
||||
#define DEFINE_PROPERTY_SETTER(type, accessor, var) \
|
||||
void EntityItem::set##accessor(const type##& value) { \
|
||||
withWriteLock([&] { \
|
||||
_##var = value; \
|
||||
}); \
|
||||
}
|
||||
#define DEFINE_PROPERTY_ACCESSOR(type, accessor, var) DEFINE_PROPERTY_GETTER(type, accessor, var) DEFINE_PROPERTY_SETTER(type, accessor, var)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, ItemName, itemName)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, ItemDescription, itemDescription)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, ItemCategories, itemCategories)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, ItemArtist, itemArtist)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, ItemLicense, itemLicense)
|
||||
DEFINE_PROPERTY_ACCESSOR(quint32, LimitedRun, limitedRun)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, MarketplaceID, marketplaceID)
|
||||
DEFINE_PROPERTY_ACCESSOR(quint32, EditionNumber, editionNumber)
|
||||
DEFINE_PROPERTY_ACCESSOR(QString, CertificateID, certificateID)
|
||||
|
||||
uint32_t EntityItem::getDirtyFlags() const {
|
||||
uint32_t result;
|
||||
|
|
|
@ -308,18 +308,18 @@ public:
|
|||
void setItemName(const QString& value);
|
||||
QString getItemDescription() const;
|
||||
void setItemDescription(const QString& value);
|
||||
QStringList getItemCategories() const;
|
||||
void setItemCategories(const QStringList& value);
|
||||
QString getItemCategories() const;
|
||||
void setItemCategories(const QString& value);
|
||||
QString getItemArtist() const;
|
||||
void setItemArtist(const QString& value);
|
||||
QString getItemLicense() const;
|
||||
void setItemLicense(const QString& value);
|
||||
int getLimitedRun() const;
|
||||
void setLimitedRun(int);
|
||||
quint32 getLimitedRun() const;
|
||||
void setLimitedRun(const quint32&);
|
||||
QString getMarketplaceID() const;
|
||||
void setMarketplaceID(const QString& value);
|
||||
int getEditionNumber() const;
|
||||
void setEditionNumber(int);
|
||||
quint32 getEditionNumber() const;
|
||||
void setEditionNumber(const quint32&);
|
||||
QString getCertificateID() const;
|
||||
void setCertificateID(const QString& value);
|
||||
QString getStaticCertificateJSON() const;
|
||||
|
@ -555,13 +555,13 @@ protected:
|
|||
// Certificate Properties
|
||||
QString _itemName { ENTITY_ITEM_DEFAULT_ITEM_NAME };
|
||||
QString _itemDescription { ENTITY_ITEM_DEFAULT_ITEM_DESCRIPTION };
|
||||
QStringList _itemCategories { ENTITY_ITEM_DEFAULT_ITEM_CATEGORIES };
|
||||
QString _itemCategories { ENTITY_ITEM_DEFAULT_ITEM_CATEGORIES };
|
||||
QString _itemArtist { ENTITY_ITEM_DEFAULT_ITEM_ARTIST };
|
||||
QString _itemLicense { ENTITY_ITEM_DEFAULT_ITEM_LICENSE };
|
||||
int _limitedRun { ENTITY_ITEM_DEFAULT_LIMITED_RUN };
|
||||
quint32 _limitedRun { ENTITY_ITEM_DEFAULT_LIMITED_RUN };
|
||||
QString _certificateID { ENTITY_ITEM_DEFAULT_CERTIFICATE_ID };
|
||||
quint32 _editionNumber { ENTITY_ITEM_DEFAULT_EDITION_NUMBER };
|
||||
QString _marketplaceID { ENTITY_ITEM_DEFAULT_MARKETPLACE_ID };
|
||||
int _editionNumber { ENTITY_ITEM_DEFAULT_EDITION_NUMBER };
|
||||
QString _marketplaceID { ENTITY_ITEM_DEFAULT_CERTIFICATE_ID };
|
||||
|
||||
|
||||
// NOTE: Damping is applied like this: v *= pow(1 - damping, dt)
|
||||
|
|
|
@ -288,7 +288,18 @@ EntityPropertyFlags EntityItemProperties::getChangedProperties() const {
|
|||
CHECK_PROPERTY_CHANGE(PROP_RADIUS_SPREAD, radiusSpread);
|
||||
CHECK_PROPERTY_CHANGE(PROP_RADIUS_START, radiusStart);
|
||||
CHECK_PROPERTY_CHANGE(PROP_RADIUS_FINISH, radiusFinish);
|
||||
|
||||
// Certifiable properties
|
||||
CHECK_PROPERTY_CHANGE(PROP_ITEM_NAME, itemName);
|
||||
CHECK_PROPERTY_CHANGE(PROP_ITEM_DESCRIPTION, itemDescription);
|
||||
CHECK_PROPERTY_CHANGE(PROP_ITEM_CATEGORIES, itemCategories);
|
||||
CHECK_PROPERTY_CHANGE(PROP_ITEM_ARTIST, itemArtist);
|
||||
CHECK_PROPERTY_CHANGE(PROP_ITEM_LICENSE, itemLicense);
|
||||
CHECK_PROPERTY_CHANGE(PROP_LIMITED_RUN, limitedRun);
|
||||
CHECK_PROPERTY_CHANGE(PROP_MARKETPLACE_ID, marketplaceID);
|
||||
CHECK_PROPERTY_CHANGE(PROP_EDITION_NUMBER, editionNumber);
|
||||
CHECK_PROPERTY_CHANGE(PROP_CERTIFICATE_ID, certificateID);
|
||||
|
||||
CHECK_PROPERTY_CHANGE(PROP_NAME, name);
|
||||
CHECK_PROPERTY_CHANGE(PROP_BACKGROUND_MODE, backgroundMode);
|
||||
CHECK_PROPERTY_CHANGE(PROP_SOURCE_URL, sourceUrl);
|
||||
|
@ -405,7 +416,18 @@ QScriptValue EntityItemProperties::copyToScriptValue(QScriptEngine* engine, bool
|
|||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ACTION_DATA, actionData);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_LOCKED, locked);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_USER_DATA, userData);
|
||||
|
||||
// Certifiable properties
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ITEM_NAME, itemName);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ITEM_DESCRIPTION, itemDescription);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ITEM_CATEGORIES, itemCategories);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ITEM_ARTIST, itemArtist);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_ITEM_LICENSE, itemLicense);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_LIMITED_RUN, limitedRun);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_MARKETPLACE_ID, marketplaceID);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_EDITION_NUMBER, editionNumber);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_CERTIFICATE_ID, certificateID);
|
||||
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_NAME, name);
|
||||
COPY_PROPERTY_TO_QSCRIPTVALUE(PROP_COLLISION_SOUND_URL, collisionSoundURL);
|
||||
|
||||
|
@ -671,7 +693,18 @@ void EntityItemProperties::copyFromScriptValue(const QScriptValue& object, bool
|
|||
COPY_PROPERTY_FROM_QSCRIPTVALUE(radiusSpread, float, setRadiusSpread);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(radiusStart, float, setRadiusStart);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(radiusFinish, float, setRadiusFinish);
|
||||
|
||||
// Certifiable properties
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(itemName, QString, setItemName);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(itemDescription, QString, setItemDescription);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(itemCategories, QString, setItemCategories);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(itemArtist, QString, setItemArtist);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(itemLicense, QString, setItemLicense);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(limitedRun, quint32, setLimitedRun);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(marketplaceID, QString, setMarketplaceID);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(editionNumber, quint32, setEditionNumber);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(certificateID, QString, setCertificateID);
|
||||
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(name, QString, setName);
|
||||
COPY_PROPERTY_FROM_QSCRIPTVALUE(collisionSoundURL, QString, setCollisionSoundURL);
|
||||
|
||||
|
@ -809,7 +842,18 @@ void EntityItemProperties::merge(const EntityItemProperties& other) {
|
|||
COPY_PROPERTY_IF_CHANGED(radiusSpread);
|
||||
COPY_PROPERTY_IF_CHANGED(radiusStart);
|
||||
COPY_PROPERTY_IF_CHANGED(radiusFinish);
|
||||
|
||||
// Certifiable properties
|
||||
COPY_PROPERTY_IF_CHANGED(itemName);
|
||||
COPY_PROPERTY_IF_CHANGED(itemDescription);
|
||||
COPY_PROPERTY_IF_CHANGED(itemCategories);
|
||||
COPY_PROPERTY_IF_CHANGED(itemArtist);
|
||||
COPY_PROPERTY_IF_CHANGED(itemLicense);
|
||||
COPY_PROPERTY_IF_CHANGED(limitedRun);
|
||||
COPY_PROPERTY_IF_CHANGED(marketplaceID);
|
||||
COPY_PROPERTY_IF_CHANGED(editionNumber);
|
||||
COPY_PROPERTY_IF_CHANGED(certificateID);
|
||||
|
||||
COPY_PROPERTY_IF_CHANGED(name);
|
||||
COPY_PROPERTY_IF_CHANGED(collisionSoundURL);
|
||||
|
||||
|
@ -981,7 +1025,18 @@ void EntityItemProperties::entityPropertyFlagsFromScriptValue(const QScriptValue
|
|||
ADD_PROPERTY_TO_MAP(PROP_RADIUS_SPREAD, RadiusSpread, radiusSpread, float);
|
||||
ADD_PROPERTY_TO_MAP(PROP_RADIUS_START, RadiusStart, radiusStart, float);
|
||||
ADD_PROPERTY_TO_MAP(PROP_RADIUS_FINISH, RadiusFinish, radiusFinish, float);
|
||||
|
||||
// Certifiable properties
|
||||
ADD_PROPERTY_TO_MAP(PROP_ITEM_NAME, ItemName, itemName, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_ITEM_DESCRIPTION, ItemDescription, itemDescription, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_ITEM_CATEGORIES, ItemCategories, itemCategories, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_ITEM_ARTIST, ItemArtist, itemArtist, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_ITEM_LICENSE, ItemLicense, itemLicense, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_LIMITED_RUN, LimitedRun, limitedRun, quint32);
|
||||
ADD_PROPERTY_TO_MAP(PROP_MARKETPLACE_ID, MarketplaceID, marketplaceID, QString);
|
||||
ADD_PROPERTY_TO_MAP(PROP_EDITION_NUMBER, EditionNumber, editionNumber, quint32);
|
||||
ADD_PROPERTY_TO_MAP(PROP_CERTIFICATE_ID, CertificateID, certificateID, QString);
|
||||
|
||||
ADD_PROPERTY_TO_MAP(PROP_KEYLIGHT_COLOR, KeyLightColor, keyLightColor, xColor);
|
||||
ADD_PROPERTY_TO_MAP(PROP_KEYLIGHT_INTENSITY, KeyLightIntensity, keyLightIntensity, float);
|
||||
ADD_PROPERTY_TO_MAP(PROP_KEYLIGHT_AMBIENT_INTENSITY, KeyLightAmbientIntensity, keyLightAmbientIntensity, float);
|
||||
|
@ -1334,7 +1389,17 @@ bool EntityItemProperties::encodeEntityEditPacket(PacketType command, EntityItem
|
|||
properties.getType() == EntityTypes::Sphere) {
|
||||
APPEND_ENTITY_PROPERTY(PROP_SHAPE, properties.getShape());
|
||||
}
|
||||
// certifiable properties
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_NAME, properties.getItemName());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_DESCRIPTION, properties.getItemDescription());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_CATEGORIES, properties.getItemCategories());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_ARTIST, properties.getItemArtist());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ITEM_LICENSE, properties.getItemLicense());
|
||||
APPEND_ENTITY_PROPERTY(PROP_LIMITED_RUN, properties.getLimitedRun());
|
||||
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, properties.getMarketplaceID());
|
||||
APPEND_ENTITY_PROPERTY(PROP_EDITION_NUMBER, properties.getEditionNumber());
|
||||
APPEND_ENTITY_PROPERTY(PROP_CERTIFICATE_ID, properties.getCertificateID());
|
||||
|
||||
APPEND_ENTITY_PROPERTY(PROP_NAME, properties.getName());
|
||||
APPEND_ENTITY_PROPERTY(PROP_COLLISION_SOUND_URL, properties.getCollisionSoundURL());
|
||||
APPEND_ENTITY_PROPERTY(PROP_ACTION_DATA, properties.getActionData());
|
||||
|
@ -1632,7 +1697,17 @@ bool EntityItemProperties::decodeEntityEditPacket(const unsigned char* data, int
|
|||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_SHAPE, QString, setShape);
|
||||
}
|
||||
|
||||
// certifiable properties
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ITEM_NAME, QString, setItemName);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ITEM_DESCRIPTION, QString, setItemDescription);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ITEM_CATEGORIES, QString, setItemCategories);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ITEM_ARTIST, QString, setItemArtist);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ITEM_LICENSE, QString, setItemLicense);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_LIMITED_RUN, quint32, setLimitedRun);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_MARKETPLACE_ID, QString, setMarketplaceID);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_EDITION_NUMBER, quint32, setEditionNumber);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_CERTIFICATE_ID, QString, setCertificateID);
|
||||
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_NAME, QString, setName);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_COLLISION_SOUND_URL, QString, setCollisionSoundURL);
|
||||
READ_ENTITY_PROPERTY_TO_PROPERTIES(PROP_ACTION_DATA, QByteArray, setActionData);
|
||||
|
@ -1746,7 +1821,16 @@ void EntityItemProperties::markAllChanged() {
|
|||
//_alphaStartChanged = true;
|
||||
//_alphaFinishChanged = true;
|
||||
|
||||
// Certifiable properties
|
||||
_itemNameChanged = true;
|
||||
_itemDescriptionChanged = true;
|
||||
_itemCategoriesChanged = true;
|
||||
_itemArtistChanged = true;
|
||||
_itemLicenseChanged = true;
|
||||
_limitedRunChanged = true;
|
||||
_marketplaceIDChanged = true;
|
||||
_editionNumberChanged = true;
|
||||
_certificateIDChanged = true;
|
||||
|
||||
_keyLight.markAllChanged();
|
||||
|
||||
|
@ -2053,9 +2137,36 @@ QList<QString> EntityItemProperties::listChangedProperties() {
|
|||
if (radiusFinishChanged()) {
|
||||
out += "radiusFinish";
|
||||
}
|
||||
|
||||
// Certifiable properties
|
||||
if (itemNameChanged()) {
|
||||
out += "itemName";
|
||||
}
|
||||
if (itemDescriptionChanged()) {
|
||||
out += "itemDescription";
|
||||
}
|
||||
if (itemCategoriesChanged()) {
|
||||
out += "itemCategories";
|
||||
}
|
||||
if (itemArtistChanged()) {
|
||||
out += "itemArtist";
|
||||
}
|
||||
if (itemLicenseChanged()) {
|
||||
out += "itemLicense";
|
||||
}
|
||||
if (limitedRunChanged()) {
|
||||
out += "limitedRun";
|
||||
}
|
||||
if (marketplaceIDChanged()) {
|
||||
out += "marketplaceID";
|
||||
}
|
||||
if (editionNumberChanged()) {
|
||||
out += "editionNumber";
|
||||
}
|
||||
if (certificateIDChanged()) {
|
||||
out += "certificateID";
|
||||
}
|
||||
|
||||
if (backgroundModeChanged()) {
|
||||
out += "backgroundMode";
|
||||
}
|
||||
|
|
|
@ -203,7 +203,15 @@ public:
|
|||
DEFINE_PROPERTY_REF(PROP_SHAPE, Shape, shape, QString, "Sphere");
|
||||
|
||||
// Certifiable Properties - related to Proof of Purchase certificates
|
||||
DEFINE_PROPERTY_REF(PROP_ITEM_NAME, ItemName, itemName, QString, ENTITY_ITEM_DEFAULT_ITEM_NAME);
|
||||
DEFINE_PROPERTY_REF(PROP_ITEM_DESCRIPTION, ItemDescription, itemDescription, QString, ENTITY_ITEM_DEFAULT_ITEM_DESCRIPTION);
|
||||
DEFINE_PROPERTY_REF(PROP_ITEM_CATEGORIES, ItemCategories, itemCategories, QString, ENTITY_ITEM_DEFAULT_ITEM_CATEGORIES);
|
||||
DEFINE_PROPERTY_REF(PROP_ITEM_ARTIST, ItemArtist, itemArtist, QString, ENTITY_ITEM_DEFAULT_ITEM_ARTIST);
|
||||
DEFINE_PROPERTY_REF(PROP_ITEM_LICENSE, ItemLicense, itemLicense, QString, ENTITY_ITEM_DEFAULT_ITEM_LICENSE);
|
||||
DEFINE_PROPERTY_REF(PROP_LIMITED_RUN, LimitedRun, limitedRun, quint32, ENTITY_ITEM_DEFAULT_LIMITED_RUN);
|
||||
DEFINE_PROPERTY_REF(PROP_MARKETPLACE_ID, MarketplaceID, marketplaceID, QString, ENTITY_ITEM_DEFAULT_MARKETPLACE_ID);
|
||||
DEFINE_PROPERTY_REF(PROP_EDITION_NUMBER, EditionNumber, editionNumber, quint32, ENTITY_ITEM_DEFAULT_EDITION_NUMBER);
|
||||
DEFINE_PROPERTY_REF(PROP_CERTIFICATE_ID, CertificateID, certificateID, QString, ENTITY_ITEM_DEFAULT_CERTIFICATE_ID);
|
||||
|
||||
// these are used when bouncing location data into and out of scripts
|
||||
DEFINE_PROPERTY_REF(PROP_LOCAL_POSITION, LocalPosition, localPosition, glmVec3, ENTITY_ITEM_ZERO_VEC3);
|
||||
|
@ -428,7 +436,18 @@ inline QDebug operator<<(QDebug debug, const EntityItemProperties& properties) {
|
|||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, RadiusSpread, radiusSpread, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, RadiusStart, radiusStart, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, RadiusFinish, radiusFinish, "");
|
||||
|
||||
// Certifiable Properties
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, ItemName, itemName, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, ItemDescription, itemDescription, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, ItemCategories, itemCategories, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, ItemArtist, itemArtist, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, ItemLicense, itemLicense, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, LimitedRun, limitedRun, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, MarketplaceID, marketplaceID, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, EditionNumber, editionNumber, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, CertificateID, certificateID, "");
|
||||
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, BackgroundMode, backgroundMode, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, VoxelVolumeSize, voxelVolumeSize, "");
|
||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, VoxelData, voxelData, "");
|
||||
|
|
|
@ -31,12 +31,12 @@ const QUuid ENTITY_ITEM_DEFAULT_SIMULATOR_ID = QUuid();
|
|||
// Certificate Properties
|
||||
const QString ENTITY_ITEM_DEFAULT_ITEM_NAME = QString("");
|
||||
const QString ENTITY_ITEM_DEFAULT_ITEM_DESCRIPTION = QString("");
|
||||
const QStringList ENTITY_ITEM_DEFAULT_ITEM_CATEGORIES = QStringList();
|
||||
const QString ENTITY_ITEM_DEFAULT_ITEM_CATEGORIES = QString("");
|
||||
const QString ENTITY_ITEM_DEFAULT_ITEM_ARTIST = QString("");
|
||||
const QString ENTITY_ITEM_DEFAULT_ITEM_LICENSE = QString("");
|
||||
const int ENTITY_ITEM_DEFAULT_LIMITED_RUN = -1;
|
||||
const quint32 ENTITY_ITEM_DEFAULT_LIMITED_RUN = -1;
|
||||
const QString ENTITY_ITEM_DEFAULT_MARKETPLACE_ID = QString("");
|
||||
const int ENTITY_ITEM_DEFAULT_EDITION_NUMBER = -1;
|
||||
const quint32 ENTITY_ITEM_DEFAULT_EDITION_NUMBER = -1;
|
||||
const QString ENTITY_ITEM_DEFAULT_CERTIFICATE_ID = QString("");
|
||||
|
||||
const float ENTITY_ITEM_DEFAULT_ALPHA = 1.0f;
|
||||
|
|
|
@ -30,7 +30,7 @@ PacketVersion versionForPacketType(PacketType packetType) {
|
|||
case PacketType::EntityEdit:
|
||||
case PacketType::EntityData:
|
||||
case PacketType::EntityPhysics:
|
||||
return VERSION_ENTITIES_ANIMATION_ALLOW_TRANSLATION_PROPERTIES;
|
||||
return VERSION_ENTITIES_HAS_CERTIFICATE_PROPERTIES;
|
||||
case PacketType::EntityQuery:
|
||||
return static_cast<PacketVersion>(EntityQueryPacketVersion::JSONFilterWithFamilyTree);
|
||||
case PacketType::AvatarIdentity:
|
||||
|
|
|
@ -266,6 +266,7 @@ const PacketVersion VERSION_ENTITIES_BULLET_DYNAMICS = 70;
|
|||
const PacketVersion VERSION_ENTITIES_HAS_SHOULD_HIGHLIGHT = 71;
|
||||
const PacketVersion VERSION_ENTITIES_HAS_HIGHLIGHT_SCRIPTING_INTERFACE = 72;
|
||||
const PacketVersion VERSION_ENTITIES_ANIMATION_ALLOW_TRANSLATION_PROPERTIES = 73;
|
||||
const PacketVersion VERSION_ENTITIES_HAS_CERTIFICATE_PROPERTIES = 74;
|
||||
|
||||
enum class EntityQueryPacketVersion: PacketVersion {
|
||||
JSONFilter = 18,
|
||||
|
|
Loading…
Reference in a new issue