Showing the changes to libraries/entities/src/EntityScriptingInterface.cpp (1 of 11 files). Show all
Unified · Split
| @@ -146,7 +146,17 @@ QUuid EntityScriptingInterface::editEntity(QUuid id, const EntityItemProperties& · 145 unmodified lines | |||
| 146 | EntityItemProperties modifiedProperties = properties; | 146 | EntityItemProperties modifiedProperties = properties; |
| 147 | entity->setLastBroadcast(usecTimestampNow()); | 147 | entity->setLastBroadcast(usecTimestampNow()); |
| 148 | modifiedProperties.setType(entity->getType()); | 148 | modifiedProperties.setType(entity->getType()); |
| 149 | bidForSimulationOwnership(modifiedProperties); | 149 | if (modifiedProperties.hasTerseUpdateChanges()) { |
| 150 | // we make a bid for (or assert) our simulation ownership | ||
| 151 | auto nodeList = DependencyManager::get<NodeList>(); | ||
| 152 | const QUuid myNodeID = nodeList->getSessionUUID(); | ||
| 153 | modifiedProperties.setSimulatorID(myNodeID); | ||
| 154 | |||
| 155 | if (entity->getSimulatorID() == myNodeID) { | ||
| 156 | // we think we already own simulation, so make sure we send ALL TerseUpdate properties | ||
| 157 | entity->getAllTerseUpdateProperties(modifiedProperties); | ||
| 158 | } | ||
| 159 | } | ||
| 150 | queueEntityMessage(PacketTypeEntityEdit, entityID, modifiedProperties); | 160 | queueEntityMessage(PacketTypeEntityEdit, entityID, modifiedProperties); |
| 151 | return id; | 161 | return id; |
| 152 | } | 162 | } |