From f94a0d88da44c1c3c3de7a2913305d906ef60cf7 Mon Sep 17 00:00:00 2001 From: Kevin Ngo Date: Tue, 23 Oct 2018 03:29:01 -0700 Subject: [PATCH] differentiate play/pause vs. resume for beat generate --- src/components/beat-loader.js | 1 + src/components/beat.js | 22 ++++++++++++++-------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/components/beat-loader.js b/src/components/beat-loader.js index f812aaa..be61600 100644 --- a/src/components/beat-loader.js +++ b/src/components/beat-loader.js @@ -228,6 +228,7 @@ AFRAME.registerComponent('beat-loader', { this.orientations[noteInfo._cutDirection]); beatEl.play(); + beatEl.components.beat.onGenerate(); }; })(), diff --git a/src/components/beat.js b/src/components/beat.js index 33690cc..7e57d38 100644 --- a/src/components/beat.js +++ b/src/components/beat.js @@ -85,12 +85,16 @@ AFRAME.registerComponent('beat', { } }, + pause: function () { + this.el.object3D.visible = false; + this.partLeftEl.object3D.visible = false; + this.partRightEl.object3D.visible = false; + }, + play: function () { this.blockEl.object3D.visible = true; this.destroyed = false; this.el.object3D.visible = true; - this.startPositionZ = this.el.object3D.position.z; - this.el.object3D.position.z -= BEAT_WARMUP_OFFSET; }, tock: function (time, timeDelta) { @@ -120,6 +124,14 @@ AFRAME.registerComponent('beat', { this.returnToPool(); }, + /** + * Called when summoned by beat-loader. + */ + onGenerate: function () { + this.startPositionZ = this.el.object3D.position.z; + this.el.object3D.position.z -= BEAT_WARMUP_OFFSET; + }, + initBlock: function () { var el = this.el; var blockEl = this.blockEl = document.createElement('a-entity'); @@ -381,12 +393,6 @@ AFRAME.registerComponent('beat', { }; })(), - pause: function () { - this.el.object3D.visible = false; - this.partLeftEl.object3D.visible = false; - this.partRightEl.object3D.visible = false; - }, - initCuttingClippingPlanes: function () { this.leftCutPlanePointsWorld = [ new THREE.Vector3(),