Files
junisaber/src/components/pauser.js

30 lines
751 B
JavaScript
Raw Normal View History

/**
* Tell app to pause game if playing.
*/
AFRAME.registerComponent('pauser', {
schema: {
enabled: {default: true}
},
init: function () {
this.pauseGame = this.pauseGame.bind(this);
2018-10-10 03:43:49 -07:00
this.el.sceneEl.addEventListener('controllerconnected', evt => {
if (evt.detail.name === 'vive-controls') {
this.el.addEventListener('menudown', this.pauseGame);
} else {
this.el.addEventListener('thumbstickdown', this.pauseGame);
}
});
2018-10-10 04:23:07 -07:00
document.addEventListener('visibilitychange', () => {
if (document.visibilityState === 'hidden') { this.pauseGame(); }
});
},
pauseGame: function () {
if (!this.data.enabled) { return; }
this.el.sceneEl.emit('pausegame', null, false);
}
});