History

expose setVoxelSphere to js

Seth Alves committed 11 years ago

Commit cdef5021 parent 1ec384a5 files · +33 −36Browse files

Showing the changes to libraries/entities/src/EntityScriptingInterface.cpp (1 of 5 files). Show all

Unified · Split

libraries/entities/src/EntityScriptingInterface.cpp+17−0
@@ -17,6 +17,7 @@ · 16 unmodified lines
1717 #include "ModelEntityItem.h"
1818 #include "ZoneEntityItem.h"
1919 #include "EntitiesLogging.h"
20+#include "PolyVoxEntityItem.h"
2021
2122
2223 EntityScriptingInterface::EntityScriptingInterface() :
@@ -380,3 +381,19 @@ void RayToEntityIntersectionResultFromScriptValue(const QScriptValue& object, Ra · 357 unmodified lines
380381 vec3FromScriptValue(intersection, value.intersection);
381382 }
382383 }
384+
385+
386+bool EntityScriptingInterface::setVoxelSphere(QUuid entityID, const glm::vec3& center, float radius, int value) const {
387+ EntityItem* entity = const_cast<EntityItem*>(_entityTree->findEntityByEntityItemID(entityID));
388+ if (!entity) {
389+ return false;
390+ }
391+ EntityTypes::EntityType entityType = entity->getType();
392+ if (entityType != EntityTypes::PolyVox) {
393+ return false;
394+ }
395+
396+ PolyVoxEntityItem* polyVoxEntity = static_cast<PolyVoxEntityItem*>(entity);
397+ polyVoxEntity->setSphere(center, radius, value);
398+ return true;
399+}