From d87d0db8b547eb622da4258760037849b3daf98d Mon Sep 17 00:00:00 2001
From: joni <johnfshaughnessy@gmail.com>
Date: Fri, 10 Nov 2017 11:14:51 -0800
Subject: [PATCH] Respond to pr comments

---
 src/components/character-controller.js     | 42 ++++++++--------------
 src/components/virtual-gamepad-controls.js | 10 +++---
 2 files changed, 19 insertions(+), 33 deletions(-)

diff --git a/src/components/character-controller.js b/src/components/character-controller.js
index 82f2237c2..34e12a9dd 100644
--- a/src/components/character-controller.js
+++ b/src/components/character-controller.js
@@ -1,7 +1,6 @@
 import AFRAME from "aframe";
 var CLAMP_VELOCITY = 0.01;
 var MAX_DELTA = 0.2;
-var TAU = Math.PI * 2;
 
 // Does not have any type of collisions yet.
 AFRAME.registerComponent("character-controller", {
@@ -9,7 +8,9 @@ AFRAME.registerComponent("character-controller", {
     groundAcc: { default: 10 },
     easing: { default: 8 },
     pivot: { type: "selector" },
-    snapRotationRadian: { default: TAU / 8 }
+    snapRotationRadian: { default: THREE.Math.DEG2RAD * 45 },
+    wasdSpeed: { default: 0.8 },
+    rotationSpeed: { default: -3 }
   },
 
   init: function() {
@@ -115,27 +116,19 @@ AFRAME.registerComponent("character-controller", {
   },
 
   onTranslateX: function(event) {
-    // The type check here is because the last axismove event that is captured here sends
-    // the el as the event.detail. This should probably be caught earlier.
-    this.accelerationInput.setX(
-      typeof event.detail === "number" ? event.detail : 0
-    );
+    this.accelerationInput.setX(event.detail);
   },
 
   onTranslateY: function(event) {
-    this.accelerationInput.setY(
-      typeof event.detail === "number" ? event.detail : 0
-    );
+    this.accelerationInput.setY(event.detail);
   },
 
   onTranslateZ: function(event) {
-    this.accelerationInput.setZ(
-      typeof event.detail === "number" ? event.detail : 0
-    );
+    this.accelerationInput.setZ(event.detail);
   },
 
   onMoveForward: function(event) {
-    this.accelerationInput.z = 0.8;
+    this.accelerationInput.z = this.data.wasdSpeed;
   },
 
   onDontMoveForward: function(event) {
@@ -143,7 +136,7 @@ AFRAME.registerComponent("character-controller", {
   },
 
   onMoveBackward: function(event) {
-    this.accelerationInput.z = -0.8;
+    this.accelerationInput.z = -this.data.wasdSpeed;
   },
 
   onDontMoveBackward: function(event) {
@@ -151,7 +144,7 @@ AFRAME.registerComponent("character-controller", {
   },
 
   onMoveLeft: function(event) {
-    this.accelerationInput.x = -0.8;
+    this.accelerationInput.x = -this.data.wasdSpeed;
   },
 
   onDontMoveLeft: function(event) {
@@ -159,7 +152,7 @@ AFRAME.registerComponent("character-controller", {
   },
 
   onMoveRight: function(event) {
-    this.accelerationInput.x = 0.8;
+    this.accelerationInput.x = this.data.wasdSpeed;
   },
 
   onDontMoveRight: function(event) {
@@ -167,11 +160,7 @@ AFRAME.registerComponent("character-controller", {
   },
 
   onRotateY: function(event) {
-    if (typeof event.detail === "number") {
-      this.angularVelocity = event.detail;
-    } else {
-      this.angularVelocity = 0;
-    }
+    this.angularVelocity = event.detail;
   },
 
   onSnapRotateLeft: function(event) {
@@ -203,10 +192,11 @@ AFRAME.registerComponent("character-controller", {
 
     return function(t, dt) {
       const deltaSeconds = dt / 1000;
-      const rotationSpeed = -3;
       const root = this.el.object3D;
       const pivot = this.data.pivot.object3D;
       const distance = this.data.groundAcc * deltaSeconds;
+      const rotationDelta =
+        this.data.rotationSpeed * this.angularVelocity * deltaSeconds;
 
       pivotPos.copy(pivot.position);
       pivotPos.applyMatrix4(root.matrix);
@@ -222,11 +212,7 @@ AFRAME.registerComponent("character-controller", {
         this.velocity.y * distance,
         this.velocity.z * distance
       );
-
-      yawMatrix.makeRotationAxis(
-        rotationAxis,
-        rotationSpeed * this.angularVelocity * deltaSeconds
-      );
+      yawMatrix.makeRotationAxis(rotationAxis, rotationDelta);
 
       // Translate to middle of playspace (player rig)
       root.applyMatrix(transInv);
diff --git a/src/components/virtual-gamepad-controls.js b/src/components/virtual-gamepad-controls.js
index 0553e7a8e..686075574 100644
--- a/src/components/virtual-gamepad-controls.js
+++ b/src/components/virtual-gamepad-controls.js
@@ -50,11 +50,11 @@ AFRAME.registerComponent("virtual-gamepad-controls", {
     this.el.sceneEl.addEventListener("exit-vr", this.onExitVr);
   },
 
-  onJoystickChanged(event, data) {
+  onJoystickChanged(event, joystick) {
     if (event.target.id === this.leftStick.id) {
       if (event.type === "move") {
-        var angle = data.angle.radian;
-        var force = data.force < 1 ? data.force : 1;
+        var angle = joystick.angle.radian;
+        var force = joystick.force < 1 ? joystick.force : 1;
         var x = Math.cos(angle) * force;
         var z = Math.sin(angle) * force;
         this.el.sceneEl.emit("translateX", x);
@@ -66,8 +66,8 @@ AFRAME.registerComponent("virtual-gamepad-controls", {
     } else {
       if (event.type === "move") {
         // Set pitch and yaw angles on right stick move
-        var angle = data.angle.radian;
-        var force = data.force < 1 ? data.force : 1;
+        var angle = joystick.angle.radian;
+        var force = joystick.force < 1 ? joystick.force : 1;
         this.yaw = Math.cos(angle) * force;
         this.el.sceneEl.emit("rotateY", this.yaw);
       } else {
-- 
GitLab