code quality

This commit is contained in:
James B. Pollack 2015-10-06 17:08:51 -07:00
parent 4788480186
commit 7aab34975f
2 changed files with 14 additions and 11 deletions

View file

@ -20,7 +20,7 @@ var rackCollisionHullURL = HIFI_PUBLIC_BUCKET + "models/basketball_hoop/rack_col
var NUMBER_OF_BALLS = 4; var NUMBER_OF_BALLS = 4;
var DIAMETER = 0.30; var DIAMETER = 0.30;
var RESET_DISTANCE = 1; var RESET_DISTANCE = 1;
var MINIMUM_MOVE_LENGTH = 0.05;
var GRABBABLE_DATA_KEY = "grabbableKey"; var GRABBABLE_DATA_KEY = "grabbableKey";
@ -74,7 +74,8 @@ function createCollidingBalls() {
x: position.x, x: position.x,
y: position.y + DIAMETER * 2, y: position.y + DIAMETER * 2,
z: position.z + (DIAMETER) - (DIAMETER * i) z: position.z + (DIAMETER) - (DIAMETER * i)
} };
var collidingBall = Entities.addEntity({ var collidingBall = Entities.addEntity({
type: "Model", type: "Model",
name: 'Colliding Basketball', name: 'Colliding Basketball',
@ -96,11 +97,10 @@ function createCollidingBalls() {
ignoreForCollisions: false, ignoreForCollisions: false,
modelURL: basketballURL, modelURL: basketballURL,
}); });
collidingBalls.push(collidingBall); collidingBalls.push(collidingBall);
originalBallPositions.push(position); originalBallPositions.push(position);
} }
} }
function testBallDistanceFromStart() { function testBallDistanceFromStart() {
@ -114,7 +114,7 @@ function testBallDistanceFromStart() {
Script.setTimeout(function() { Script.setTimeout(function() {
var newPosition = Entities.getEntityProperties(ball, "position").position; var newPosition = Entities.getEntityProperties(ball, "position").position;
var moving = Vec3.length(Vec3.subtract(currentPosition, newPosition)); var moving = Vec3.length(Vec3.subtract(currentPosition, newPosition));
if (moving < 0.05) { if (moving < MINIMUM_MOVE_LENGTH) {
resetCount++; resetCount++;
if (resetCount === NUMBER_OF_BALLS) { if (resetCount === NUMBER_OF_BALLS) {
deleteCollidingBalls(); deleteCollidingBalls();

View file

@ -527,7 +527,7 @@ function createBasketballRack() {
var NUMBER_OF_BALLS = 4; var NUMBER_OF_BALLS = 4;
var DIAMETER = 0.30; var DIAMETER = 0.30;
var RESET_DISTANCE = 1; var RESET_DISTANCE = 1;
var MINIMUM_MOVE_LENGTH = 0.05;
var basketballURL = HIFI_PUBLIC_BUCKET + "models/content/basketball2.fbx"; var basketballURL = HIFI_PUBLIC_BUCKET + "models/content/basketball2.fbx";
var basketballCollisionSoundURL = HIFI_PUBLIC_BUCKET + "sounds/basketball/basketball.wav"; var basketballCollisionSoundURL = HIFI_PUBLIC_BUCKET + "sounds/basketball/basketball.wav";
var rackURL = HIFI_PUBLIC_BUCKET + "models/basketball_hoop/basketball_rack.fbx"; var rackURL = HIFI_PUBLIC_BUCKET + "models/basketball_hoop/basketball_rack.fbx";
@ -576,13 +576,15 @@ function createBasketballRack() {
function createCollidingBalls() { function createCollidingBalls() {
var position = rackStartPosition; var position = rackStartPosition;
var i; var i;
for (i = 0; i < NUMBER_OF_BALLS; i++) { for (i = 0; i < NUMBER_OF_BALLS; i++) {
var ballPosition = { var ballPosition = {
x: position.x, x: position.x,
y: position.y + DIAMETER * 2, y: position.y + DIAMETER * 2,
z: position.z + (DIAMETER) - (DIAMETER * i) z: position.z + (DIAMETER) - (DIAMETER * i)
} };
var collidingBall = Entities.addEntity({ var collidingBall = Entities.addEntity({
type: "Model", type: "Model",
name: 'Colliding Basketball', name: 'Colliding Basketball',
@ -608,32 +610,33 @@ function createBasketballRack() {
ignoreForCollisions: false, ignoreForCollisions: false,
modelURL: basketballURL, modelURL: basketballURL,
}); });
collidingBalls.push(collidingBall); collidingBalls.push(collidingBall);
originalBallPositions.push(position); originalBallPositions.push(position);
} }
} }
function testBallDistanceFromStart() { function testBallDistanceFromStart() {
var resetCount = 0; var resetCount = 0;
collidingBalls.forEach(function(ball, index) { collidingBalls.forEach(function(ball, index) {
var currentPosition = Entities.getEntityProperties(ball, "position").position; var currentPosition = Entities.getEntityProperties(ball, "position").position;
var originalPosition = originalBallPositions[index]; var originalPosition = originalBallPositions[index];
var distance = Vec3.subtract(originalPosition, currentPosition); var distance = Vec3.subtract(originalPosition, currentPosition);
var length = Vec3.length(distance); var length = Vec3.length(distance);
if (length > RESET_DISTANCE) { if (length > RESET_DISTANCE) {
Script.setTimeout(function() { Script.setTimeout(function() {
var newPosition = Entities.getEntityProperties(ball, "position").position; var newPosition = Entities.getEntityProperties(ball, "position").position;
var moving = Vec3.length(Vec3.subtract(currentPosition, newPosition)); var moving = Vec3.length(Vec3.subtract(currentPosition, newPosition));
if (moving < 0.05) { if (moving < MINIMUM_MOVE_LENGTH) {
resetCount++; resetCount++;
if (resetCount === NUMBER_OF_BALLS) { if (resetCount === NUMBER_OF_BALLS) {
deleteCollidingBalls(); deleteCollidingBalls();
createCollidingBalls(); createCollidingBalls();
} }
} }
}, 200) }, 200);
} }
}); });
} }