"use strict"; // Created by Jason C. Najera on 3/7/2019// Copyright 2019 High Fidelity, Inc.//// Handles Push-to-Talk functionality for HMD mode.//// Distributed under the Apache License, Version 2.0.// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html Script.include("/~/system/libraries/controllerDispatcherUtils.js");Script.include("/~/system/libraries/controllers.js"); (function() { // BEGIN LOCAL_SCOPE function PushToTalkHandler() { var _this = this; this.active = false; this.shouldTalk = function (controllerData) { // Set up test against controllerData here... var gripVal = controllerData.secondaryValues[LEFT_HAND] && controllerData.secondaryValues[RIGHT_HAND]; return (gripVal) ? true : false; }; this.shouldStopTalking = function (controllerData) { var gripVal = controllerData.secondaryValues[LEFT_HAND] && controllerData.secondaryValues[RIGHT_HAND]; return (gripVal) ? false : true; }; this.isReady = function (controllerData, deltaTime) { if (HMD.active && Audio.pushToTalk && this.shouldTalk(controllerData)) { Audio.pushingToTalk = true; return makeRunningValues(true, [], []); } return makeRunningValues(false, [], []); }; this.run = function (controllerData, deltaTime) { if (this.shouldStopTalking(controllerData) || !Audio.pushToTalk) { Audio.pushingToTalk = false; print("Stop pushing to talk."); return makeRunningValues(false, [], []); } return makeRunningValues(true, [], []); }; this.parameters = makeDispatcherModuleParameters( 950, ["head"], [], 100); } var pushToTalk = new PushToTalkHandler(); enableDispatcherModule("PushToTalk", pushToTalk); function cleanup() { disableDispatcherModule("PushToTalk"); }; Script.scriptEnding.connect(cleanup);}()); // END LOCAL_SCOPE
"use strict";
// Created by Jason C. Najera on 3/7/2019
// Copyright 2019 High Fidelity, Inc.
//
// Handles Push-to-Talk functionality for HMD mode.
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
Script.include("/~/system/libraries/controllerDispatcherUtils.js");
Script.include("/~/system/libraries/controllers.js");
(function() { // BEGIN LOCAL_SCOPE
function PushToTalkHandler() {
var _this = this;
this.active = false;
this.shouldTalk = function (controllerData) {
// Set up test against controllerData here...
var gripVal = controllerData.secondaryValues[LEFT_HAND] && controllerData.secondaryValues[RIGHT_HAND];
return (gripVal) ? true : false;
};
this.shouldStopTalking = function (controllerData) {
var gripVal = controllerData.secondaryValues[LEFT_HAND] && controllerData.secondaryValues[RIGHT_HAND];
return (gripVal) ? false : true;
};
this.isReady = function (controllerData, deltaTime) {
if (HMD.active && Audio.pushToTalk && this.shouldTalk(controllerData)) {
Audio.pushingToTalk = true;
return makeRunningValues(true, [], []);
}
return makeRunningValues(false, [], []);
};
this.run = function (controllerData, deltaTime) {
if (this.shouldStopTalking(controllerData) || !Audio.pushToTalk) {
Audio.pushingToTalk = false;
print("Stop pushing to talk.");
return makeRunningValues(false, [], []);
}
return makeRunningValues(true, [], []);
};
this.parameters = makeDispatcherModuleParameters(
950,
["head"],
[],
100);
}
var pushToTalk = new PushToTalkHandler();
enableDispatcherModule("PushToTalk", pushToTalk);
function cleanup() {
disableDispatcherModule("PushToTalk");
};
Script.scriptEnding.connect(cleanup);
}()); // END LOCAL_SCOPE