Showing the changes to libraries/entities/src/EntityScriptingInterface.cpp (1 of 2 files). Show all
Unified · Split
| @@ -482,6 +482,10 @@ QUuid EntityScriptingInterface::addEntity(const EntityItemProperties& properties · 481 unmodified lines | ||
| 482 | 482 | propertiesWithSimID.setEntityHostFromString(entityHostString); |
| 483 | 483 | if (propertiesWithSimID.getEntityHost() == EntityHost::AVATAR_ENTITY) { |
| 484 | 484 | propertiesWithSimID.setOwningAvatarID(sessionID); |
| 485 | + } else if (propertiesWithSimID.getEntityHost() == EntityHost::LOCAL_ENTITY) { | |
| 486 | + // For now, local entities are always collisionless | |
| 487 | + // TODO: create a separate, local physics simulation that just handles local entities (and MyAvatar?) | |
| 488 | + propertiesWithSimID.setCollisionless(true); | |
| 485 | 489 | } |
| 486 | 490 | |
| 487 | 491 | propertiesWithSimID.setLastEditedBy(sessionID); |
| @@ -834,7 +838,11 @@ QUuid EntityScriptingInterface::editEntity(QUuid id, const EntityItemProperties& · 346 unmodified lines | ||
| 834 | 838 | } |
| 835 | 839 | |
| 836 | 840 | // set these to make EntityItemProperties::getScalesWithParent() work correctly |
| 837 | − properties.setEntityHost(entity->getEntityHost()); | |
| 841 | + EntityHost entityHost = entity->getEntityHost(); | |
| 842 | + properties.setEntityHost(entityHost); | |
| 843 | + if (entityHost == EntityHost::LOCAL_ENTITY) { | |
| 844 | + properties.setCollisionless(true); | |
| 845 | + } | |
| 838 | 846 | properties.setOwningAvatarID(entity->getOwningAvatarID()); |
| 839 | 847 | |
| 840 | 848 | // make sure the properties has a type, so that the encode can know which properties to include |