more correct volunteer ownership priority promotion

This commit is contained in:
Andrew Meadows 2018-01-04 12:06:26 -08:00
parent 9e8e15d620
commit 7e01f97f8f

View file

@ -354,13 +354,11 @@ bool EntityTree::updateEntity(EntityItemPointer entity, const EntityItemProperti
// else: We assume the sender really did believe it was the simulation owner when it sent
} else if (submittedID == senderID) {
// the sender is trying to take or continue ownership
if (entity->getSimulatorID().isNull()) {
// the sender it taking ownership
if (entity->getSimulatorID().isNull() || entity->getSimulatorID() == senderID) {
// the sender is taking or asserting ownership
// but we never grant priorities lower than RECRUIT
properties.promoteSimulationPriority(RECRUIT_SIMULATION_PRIORITY);
simulationBlocked = false;
} else if (entity->getSimulatorID() == senderID) {
// the sender is asserting ownership
simulationBlocked = false;
} else {
// the sender is trying to steal ownership from another simulator
// so we apply the rules for ownership change: