From e21c451815bb89d34f7ac5889ab78f4773108fd0 Mon Sep 17 00:00:00 2001 From: David Back Date: Mon, 23 Apr 2018 16:56:18 -0700 Subject: [PATCH 1/2] ensure deleted or cleared entities properly unequipped --- .../controllerModules/equipEntity.js | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/scripts/system/controllers/controllerModules/equipEntity.js b/scripts/system/controllers/controllerModules/equipEntity.js index 6f3169f5cf..7a13925519 100644 --- a/scripts/system/controllers/controllerModules/equipEntity.js +++ b/scripts/system/controllers/controllerModules/equipEntity.js @@ -838,11 +838,31 @@ EquipHotspotBuddy.prototype.update = function(deltaTime, timestamp, controllerDa } }; + var deleteEntity = function(entityID) { + if (rightEquipEntity.targetEntityID === entityID) { + rightEquipEntity.endEquipEntity(); + } + if (leftEquipEntity.targetEntityID === entityID) { + leftEquipEntity.endEquipEntity(); + } + }; + + var clearEntities = function() { + if (rightEquipEntity.targetEntityID) { + rightEquipEntity.endEquipEntity(); + } + if (leftEquipEntity.targetEntityID) { + leftEquipEntity.endEquipEntity(); + } + }; + Messages.subscribe('Hifi-Hand-Grab'); Messages.subscribe('Hifi-Hand-Drop'); Messages.messageReceived.connect(handleMessage); Controller.mousePressEvent.connect(onMousePress); Controller.keyPressEvent.connect(onKeyPress); + Entities.deletingEntity.connect(deleteEntity); + Entities.clearingEntities.connect(clearEntities); var leftEquipEntity = new EquipEntity(LEFT_HAND); var rightEquipEntity = new EquipEntity(RIGHT_HAND); @@ -859,6 +879,8 @@ EquipHotspotBuddy.prototype.update = function(deltaTime, timestamp, controllerDa Messages.messageReceived.disconnect(handleMessage); Controller.mousePressEvent.disconnect(onMousePress); Controller.keyPressEvent.disconnect(onKeyPress); + Entities.deletingEntity.disconnect(deleteEntity); + Entities.deletingEntity.disconnect(clearEntities); } Script.scriptEnding.connect(cleanup); }()); From 71dc75b2081b26de1d969727b00d4d63766fe533 Mon Sep 17 00:00:00 2001 From: David Back Date: Tue, 24 Apr 2018 14:25:33 -0700 Subject: [PATCH 2/2] fix disconnect clear entities --- scripts/system/controllers/controllerModules/equipEntity.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/system/controllers/controllerModules/equipEntity.js b/scripts/system/controllers/controllerModules/equipEntity.js index 7a13925519..53dbee829d 100644 --- a/scripts/system/controllers/controllerModules/equipEntity.js +++ b/scripts/system/controllers/controllerModules/equipEntity.js @@ -880,7 +880,7 @@ EquipHotspotBuddy.prototype.update = function(deltaTime, timestamp, controllerDa Controller.mousePressEvent.disconnect(onMousePress); Controller.keyPressEvent.disconnect(onKeyPress); Entities.deletingEntity.disconnect(deleteEntity); - Entities.deletingEntity.disconnect(clearEntities); + Entities.clearingEntities.disconnect(clearEntities); } Script.scriptEnding.connect(cleanup); }());