mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 13:58:51 +02:00
end of day
This commit is contained in:
parent
41b2f82be5
commit
6cc3077d67
1 changed files with 15 additions and 21 deletions
|
@ -1,7 +1,7 @@
|
||||||
//
|
//
|
||||||
// createRack.js
|
// createRack.js
|
||||||
//
|
//
|
||||||
// Created by James B. Pollack on10/5/2015
|
// Created by James B. Pollack @imgntn on 10/5/2015
|
||||||
// Copyright 2015 High Fidelity, Inc.
|
// Copyright 2015 High Fidelity, Inc.
|
||||||
//
|
//
|
||||||
// This is a script that creates a persistent basketball rack.
|
// This is a script that creates a persistent basketball rack.
|
||||||
|
@ -15,6 +15,8 @@ var basketballURL = HIFI_PUBLIC_BUCKET + "models/content/basketball2.fbx";
|
||||||
var collisionSoundURL = HIFI_PUBLIC_BUCKET + "sounds/basketball/basketball.wav";
|
var collisionSoundURL = 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";
|
||||||
var rackCollisionHullURL = HIFI_PUBLIC_BUCKET + "models/basketball_hoop/basketball_hoop_collision_hull.obj";
|
var rackCollisionHullURL = HIFI_PUBLIC_BUCKET + "models/basketball_hoop/basketball_hoop_collision_hull.obj";
|
||||||
|
var basketballSwitcherURL= Script.resolvePath('basketballSwitcher.js');
|
||||||
|
|
||||||
var DIAMETER = 0.30;
|
var DIAMETER = 0.30;
|
||||||
|
|
||||||
var rackStartPosition =
|
var rackStartPosition =
|
||||||
|
@ -41,7 +43,7 @@ var rack = Entities.addEntity({
|
||||||
z: 1.73
|
z: 1.73
|
||||||
},
|
},
|
||||||
collisionsWillMove: false,
|
collisionsWillMove: false,
|
||||||
ignoreForCollisions: true,
|
ignoreForCollisions: false,
|
||||||
compoundShapeURL: rackCollisionHullURL
|
compoundShapeURL: rackCollisionHullURL
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -50,8 +52,8 @@ var collidingBalls = [];
|
||||||
|
|
||||||
function createNonCollidingBalls() {
|
function createNonCollidingBalls() {
|
||||||
var i;
|
var i;
|
||||||
var j;
|
|
||||||
var position = rackStartPosition;
|
var position = rackStartPosition;
|
||||||
|
|
||||||
for (i = 0; i < 4; i++) {
|
for (i = 0; i < 4; i++) {
|
||||||
var nonCollidingBall = Entities.addEntity({
|
var nonCollidingBall = Entities.addEntity({
|
||||||
type: "Model",
|
type: "Model",
|
||||||
|
@ -66,12 +68,13 @@ function createNonCollidingBalls() {
|
||||||
y: DIAMETER,
|
y: DIAMETER,
|
||||||
z: DIAMETER
|
z: DIAMETER
|
||||||
},
|
},
|
||||||
collisionsWillMove: true,
|
collisionsWillMove: false,
|
||||||
ignoreForCollisions: false,
|
ignoreForCollisions: true,
|
||||||
modelURL: basketballURL
|
modelURL: basketballURL
|
||||||
});
|
});
|
||||||
nonCollidingBalls.push(nonCollidingBall);
|
nonCollidingBalls.push(nonCollidingBall);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < 4; i++) {
|
for (i = 0; i < 4; i++) {
|
||||||
var nonCollidingBall = Entities.addEntity({
|
var nonCollidingBall = Entities.addEntity({
|
||||||
type: "Model",
|
type: "Model",
|
||||||
|
@ -86,7 +89,7 @@ function createNonCollidingBalls() {
|
||||||
y: DIAMETER,
|
y: DIAMETER,
|
||||||
z: DIAMETER
|
z: DIAMETER
|
||||||
},
|
},
|
||||||
collisionsWillMove: true,
|
collisionsWillMove: false,
|
||||||
ignoreForCollisions: false,
|
ignoreForCollisions: false,
|
||||||
modelURL: basketballURL
|
modelURL: basketballURL
|
||||||
});
|
});
|
||||||
|
@ -96,10 +99,12 @@ function createNonCollidingBalls() {
|
||||||
|
|
||||||
function createCollidingBalls() {
|
function createCollidingBalls() {
|
||||||
var position = rackStartPosition;
|
var position = rackStartPosition;
|
||||||
|
var i;
|
||||||
for (i = 0; i < 4; i++) {
|
for (i = 0; i < 4; i++) {
|
||||||
var collidingBall = Entities.addEntity({
|
var collidingBall = Entities.addEntity({
|
||||||
type: "Model",
|
type: "Model",
|
||||||
name: 'Colliding Basketball',
|
name: 'Colliding Basketball',
|
||||||
|
shapeType:'Sphere',
|
||||||
position: {
|
position: {
|
||||||
x: position.x,
|
x: position.x,
|
||||||
y: position.y + DIAMETER * 2,
|
y: position.y + DIAMETER * 2,
|
||||||
|
@ -110,27 +115,16 @@ function createCollidingBalls() {
|
||||||
y: DIAMETER,
|
y: DIAMETER,
|
||||||
z: DIAMETER
|
z: DIAMETER
|
||||||
},
|
},
|
||||||
// restitution: 1.0,
|
restitution: 1.0,
|
||||||
// linearDamping: 0.00001,
|
linearDamping: 1,
|
||||||
gravity: {
|
|
||||||
x: 0,
|
|
||||||
y: -9.8,
|
|
||||||
z: 0
|
|
||||||
},
|
|
||||||
collisionsWillMove: true,
|
collisionsWillMove: true,
|
||||||
ignoreForCollisions: false,
|
ignoreForCollisions: false,
|
||||||
modelURL: basketballURL
|
modelURL: basketballURL,
|
||||||
|
script:basketballSwitcherURL
|
||||||
});
|
});
|
||||||
collidingBalls.push(collidingBall);
|
collidingBalls.push(collidingBall);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function adjustBallPositions() {
|
|
||||||
var i;
|
|
||||||
for (i = 0; i < nonCollidingBalls.length; i++) {
|
|
||||||
Entities.editEntity(nonCollidingBalls[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
createNonCollidingBalls();
|
createNonCollidingBalls();
|
||||||
createCollidingBalls();
|
createCollidingBalls();
|
Loading…
Reference in a new issue