History

set lastEditedBy in local tree whenever a script adds or edits an entity

Seth Alves committed 8 years ago

Commit 2545e671 parent cba307f1 file · +15 −3Browse files

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

Unified · Split

libraries/entities/src/EntityScriptingInterface.cpp+15−3
@@ -241,14 +241,18 @@ QUuid EntityScriptingInterface::addEntity(const EntityItemProperties& properties · 240 unmodified lines
241 241
242 _activityTracking.addedEntityCount++;242 _activityTracking.addedEntityCount++;
243 243
244 auto nodeList = DependencyManager::get<NodeList>();
245 auto sessionID = nodeList->getSessionUUID();
246
244 EntityItemProperties propertiesWithSimID = properties;247 EntityItemProperties propertiesWithSimID = properties;
245 if (clientOnly) {248 if (clientOnly) {
246 auto nodeList = DependencyManager::get<NodeList>();249 const QUuid myNodeID = sessionID;
247 const QUuid myNodeID = nodeList->getSessionUUID();
248 propertiesWithSimID.setClientOnly(clientOnly);250 propertiesWithSimID.setClientOnly(clientOnly);
249 propertiesWithSimID.setOwningAvatarID(myNodeID);251 propertiesWithSimID.setOwningAvatarID(myNodeID);
250 }252 }
251 253
254 propertiesWithSimID.setLastEditedBy(sessionID);
255
252 bool scalesWithParent = propertiesWithSimID.getScalesWithParent();256 bool scalesWithParent = propertiesWithSimID.getScalesWithParent();
253 257
254 propertiesWithSimID = convertPropertiesFromScriptSemantics(propertiesWithSimID, scalesWithParent);258 propertiesWithSimID = convertPropertiesFromScriptSemantics(propertiesWithSimID, scalesWithParent);
@@ -308,6 +312,11 @@ QUuid EntityScriptingInterface::addModelEntity(const QString& name, const QStrin · 53 unmodified lines
308 if (!textures.isEmpty()) {312 if (!textures.isEmpty()) {
309 properties.setTextures(textures);313 properties.setTextures(textures);
310 }314 }
315
316 auto nodeList = DependencyManager::get<NodeList>();
317 auto sessionID = nodeList->getSessionUUID();
318 properties.setLastEditedBy(sessionID);
319
311 return addEntity(properties);320 return addEntity(properties);
312}321}
313 322
@@ -363,7 +372,11 @@ QUuid EntityScriptingInterface::editEntity(QUuid id, const EntityItemProperties& · 49 unmodified lines
363 372
364 _activityTracking.editedEntityCount++;373 _activityTracking.editedEntityCount++;
365 374
375 auto nodeList = DependencyManager::get<NodeList>();
376 auto sessionID = nodeList->getSessionUUID();
377
366 EntityItemProperties properties = scriptSideProperties;378 EntityItemProperties properties = scriptSideProperties;
379 properties.setLastEditedBy(sessionID);
367 380
368 EntityItemID entityID(id);381 EntityItemID entityID(id);
369 if (!_entityTree) {382 if (!_entityTree) {
@@ -379,7 +392,6 @@ QUuid EntityScriptingInterface::editEntity(QUuid id, const EntityItemProperties& · 9 unmodified lines
379 return;392 return;
380 }393 }
381 394
382 auto nodeList = DependencyManager::get<NodeList>();
383 if (entity->getClientOnly() && entity->getOwningAvatarID() != nodeList->getSessionUUID()) {395 if (entity->getClientOnly() && entity->getOwningAvatarID() != nodeList->getSessionUUID()) {
384 // don't edit other avatar's avatarEntities396 // don't edit other avatar's avatarEntities
385 return;397 return;