////// Created by The Content Team 4/10/216// Copyright 2016 High Fidelity, Inc.//////// Distributed under the Apache License, Version 2.0.// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html////(function() { var _this; function BaseBox() { _this = this; return this; } BaseBox.prototype = { lid:null, startNearGrab: function(myID, params) { print('START GRAB ON BASE') _this.hand = params[0]; _this.disableHand(); var myProps = Entities.getEntityProperties(_this.entityID) var results = Entities.findEntities(myProps.position, 2); var lid = null; results.forEach(function(result) { var resultProps = Entities.getEntityProperties(result); if (resultProps.name.indexOf('music_box_lid') > -1) { _this.lid = result; } }); }, preload: function(entityID) { this.entityID = entityID; print('PRELOAD BASE!!') }, continueNearGrab: function() { print('GRAB ON DE BASE!') var myProps = Entities.getEntityProperties(_this.entityID) var results = Entities.findEntities(myProps.position, 2); results.forEach(function(result) { var resultProps = Entities.getEntityProperties(result); if (resultProps.name.indexOf('music_box_lid') > -1) { _this.lid = result; } }); if (_this.lid === null) { return; } else { Entities.callEntityMethod(_this.lid, 'updateHatRotation'); Entities.callEntityMethod(_this.lid, 'updateKeyRotation'); } }, disableHand: function() { print('DISABLE HAND BASE') //disable the off hand in the grab script. var handToDisable = _this.hand === 'right' ? 'left' : 'right'; print("disabling hand: " + handToDisable); Messages.sendLocalMessage('Hifi-Hand-Disabler', handToDisable); //tell the lid which hand it should use. //the lid should use the hand that is disabled. if (handToDisable === 'right') { Entities.callEntityMethod(_this.lid, 'setRightHand'); } if (handToDisable === 'left') { Entities.callEntityMethod(_this.lid, 'setLeftHand'); } print('DISABLED BASE HAND:: ' + handToDisable) }, enableHand: function() { print('SHOULD ENABLE HAND FROM BASE') Messages.sendLocalMessage('Hifi-Hand-Disabler', "none") Entities.callEntityMethod(_this.lid, 'clearHand'); }, releaseGrab: function() { print('RELEASE GRAB ON BASE') _this.enableHand(); }, unload: function() { _this.enableHand(); } } return new BaseBox})
//
//
// Created by The Content Team 4/10/216
// Copyright 2016 High Fidelity, Inc.
//
//
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
//
(function() {
var _this;
function BaseBox() {
_this = this;
return this;
}
BaseBox.prototype = {
lid:null,
startNearGrab: function(myID, params) {
print('START GRAB ON BASE')
_this.hand = params[0];
_this.disableHand();
var myProps = Entities.getEntityProperties(_this.entityID)
var results = Entities.findEntities(myProps.position, 2);
var lid = null;
results.forEach(function(result) {
var resultProps = Entities.getEntityProperties(result);
if (resultProps.name.indexOf('music_box_lid') > -1) {
_this.lid = result;
}
});
},
preload: function(entityID) {
this.entityID = entityID;
print('PRELOAD BASE!!')
},
continueNearGrab: function() {
print('GRAB ON DE BASE!')
var myProps = Entities.getEntityProperties(_this.entityID)
var results = Entities.findEntities(myProps.position, 2);
results.forEach(function(result) {
var resultProps = Entities.getEntityProperties(result);
if (resultProps.name.indexOf('music_box_lid') > -1) {
_this.lid = result;
}
});
if (_this.lid === null) {
return;
} else {
Entities.callEntityMethod(_this.lid, 'updateHatRotation');
Entities.callEntityMethod(_this.lid, 'updateKeyRotation');
}
},
disableHand: function() {
print('DISABLE HAND BASE')
//disable the off hand in the grab script.
var handToDisable = _this.hand === 'right' ? 'left' : 'right';
print("disabling hand: " + handToDisable);
Messages.sendLocalMessage('Hifi-Hand-Disabler', handToDisable);
//tell the lid which hand it should use.
//the lid should use the hand that is disabled.
if (handToDisable === 'right') {
Entities.callEntityMethod(_this.lid, 'setRightHand');
}
if (handToDisable === 'left') {
Entities.callEntityMethod(_this.lid, 'setLeftHand');
}
print('DISABLED BASE HAND:: ' + handToDisable)
},
enableHand: function() {
print('SHOULD ENABLE HAND FROM BASE')
Messages.sendLocalMessage('Hifi-Hand-Disabler', "none")
Entities.callEntityMethod(_this.lid, 'clearHand');
},
releaseGrab: function() {
print('RELEASE GRAB ON BASE')
_this.enableHand();
},
unload: function() {
_this.enableHand();
}
}
return new BaseBox
})