diff --git a/examples/editModels.js b/examples/editModels.js index fc9c8617ef..9f73b30682 100644 --- a/examples/editModels.js +++ b/examples/editModels.js @@ -2862,7 +2862,7 @@ function handeMenuEvent(menuItem) { properties.gravity.z = array[index++].value; properties.lifetime = array[index++].value; // give ourselves that many more seconds - if (properties.type == "Box") { + if (properties.type == "Box" || properties.type == "Sphere") { properties.color.red = array[index++].value; properties.color.green = array[index++].value; properties.color.blue = array[index++].value; diff --git a/libraries/entities/src/EntityItemID.h b/libraries/entities/src/EntityItemID.h index 61df01aaf6..7a3f822c7c 100644 --- a/libraries/entities/src/EntityItemID.h +++ b/libraries/entities/src/EntityItemID.h @@ -50,8 +50,6 @@ public: EntityItemID convertToCreatorTokenVersion() const; // these methods allow you to create models, and later edit them. - //static uint32_t getIDfromCreatorTokenID(uint32_t creatorTokenID); - static EntityItemID getIDfromCreatorTokenID(uint32_t creatorTokenID); static uint32_t getNextCreatorTokenID(); static void handleAddEntityResponse(const QByteArray& packet); diff --git a/libraries/entities/src/EntityTypes.cpp b/libraries/entities/src/EntityTypes.cpp index b89ff66eed..51890ad7d6 100644 --- a/libraries/entities/src/EntityTypes.cpp +++ b/libraries/entities/src/EntityTypes.cpp @@ -24,7 +24,7 @@ QMap EntityTypes::_typeToNameMap; QMap EntityTypes::_nameToTypeMap; -EntityTypeFactory EntityTypes::_factories[EntityTypes::LAST]; +EntityTypeFactory EntityTypes::_factories[EntityTypes::LAST + 1]; bool EntityTypes::_factoriesInitialized = false; const QString ENTITY_TYPE_NAME_UNKNOWN = "Unknown"; @@ -58,8 +58,11 @@ bool EntityTypes::registerEntityType(EntityType entityType, const char* name, En memset(&_factories,0,sizeof(_factories)); _factoriesInitialized = true; } - _factories[entityType] = factoryMethod; - return true; + if (entityType >= 0 && entityType <= LAST) { + _factories[entityType] = factoryMethod; + return true; + } + return false; } EntityItem* EntityTypes::constructEntityItem(EntityType entityType, const EntityItemID& entityID, const EntityItemProperties& properties) { diff --git a/libraries/entities/src/EntityTypes.h b/libraries/entities/src/EntityTypes.h index 541aeada4f..f6e78275d3 100644 --- a/libraries/entities/src/EntityTypes.h +++ b/libraries/entities/src/EntityTypes.h @@ -45,7 +45,7 @@ public: private: static QMap _typeToNameMap; static QMap _nameToTypeMap; - static EntityTypeFactory _factories[LAST]; + static EntityTypeFactory _factories[LAST + 1]; static bool _factoriesInitialized; };