fix merge conflics

This commit is contained in:
ericrius1 2016-03-21 10:14:19 -07:00
commit 16baeb9955
6 changed files with 157 additions and 199 deletions

View file

@ -17,7 +17,7 @@
_this.TIME_CHECK_REFRACTORY_PERIOD = 5000; _this.TIME_CHECK_REFRACTORY_PERIOD = 5000;
_this.checkTime = true; _this.checkTime = true;
_this.cuckooSound = SoundCache.getSound(CUCKOO_SOUND_URL); _this.cuckooSound = SoundCache.getSound(CUCKOO_SOUND_URL);
_this.CUCKOO_SOUND_VOLUME = 0.7; _this.CUCKOO_SOUND_VOLUME = 0.0;
}; };

View file

@ -19,7 +19,7 @@ MyCuckooClock = function(spawnPosition, spawnRotation) {
var clockBody, clockFace, clockMinuteHand, clockHourHand, clockSecondHand; var clockBody, clockFace, clockMinuteHand, clockHourHand, clockSecondHand;
function createClock() { function createClock() {
var clockRotation = Quat.fromPitchYawRollDegrees(spawnRotation.x, spawnRotation.y, spawnRotation.z);
clockBody = Entities.addEntity({ clockBody = Entities.addEntity({
type: "Model", type: "Model",
modelURL: CLOCK_BODY_URL, modelURL: CLOCK_BODY_URL,
@ -33,6 +33,7 @@ MyCuckooClock = function(spawnPosition, spawnRotation) {
loop: false loop: false
}, },
position: spawnPosition, position: spawnPosition,
rotation: clockRotation,
dimensions: { dimensions: {
x: 0.8181, x: 0.8181,
y: 1.3662, y: 1.3662,

View file

@ -12,7 +12,7 @@
// //
(function() { (function() {
Script.include('../utils.js');
Script.include('../../../../examples/libraries/virtualBaton.js'); Script.include('../../../../examples/libraries/virtualBaton.js');
//only one person should simulate the tank at a time -- we pass around a virtual baton //only one person should simulate the tank at a time -- we pass around a virtual baton
@ -32,30 +32,11 @@
blue: 255 blue: 255
} }
var TANK_DIMENSIONS = {
x: 0.8212,
y: 0.8116,
z: 2.1404
};
var LOWER_CORNER_VERTICAL_OFFSET = -TANK_DIMENSIONS.y / 2;
var LOWER_CORNER_FORWARD_OFFSET = TANK_DIMENSIONS.x;
var LOWER_CORNER_LATERAL_OFFSET = -TANK_DIMENSIONS.z / 8;
var UPPER_CORNER_VERTICAL_OFFSET = TANK_DIMENSIONS.y / 2;;
var UPPER_CORNER_FORWARD_OFFSET = -TANK_DIMENSIONS.x;
var UPPER_CORNER_LATERAL_OFFSET = TANK_DIMENSIONS.z / 8;
var upperCorner, lowerCorner;
function FishTank() { function FishTank() {
_this = this; _this = this;
} }
function startUpdate() { function startUpdate() {
upperCorner = getOffsetFromTankCenter(LOWER_CORNER_VERTICAL_OFFSET, LOWER_CORNER_FORWARD_OFFSET, LOWER_CORNER_LATERAL_OFFSET);
lowerCorner = getOffsetFromTankCenter(UPPER_CORNER_VERTICAL_OFFSET, UPPER_CORNER_FORWARD_OFFSET, UPPER_CORNER_LATERAL_OFFSET);
//when the baton is claimed; //when the baton is claimed;
// print('trying to claim the object' + _entityID) // print('trying to claim the object' + _entityID)
iOwn = true; iOwn = true;
@ -77,6 +58,25 @@
} }
function getOffsetFromTankCenter(VERTICAL_OFFSET, FORWARD_OFFSET, LATERAL_OFFSET) {
var tankProperties = Entities.getEntityProperties(_this.entityID);
var upVector = Quat.getUp(tankProperties.rotation);
var frontVector = Quat.getFront(tankProperties.rotation);
var rightVector = Quat.getRight(tankProperties.rotation);
var upOffset = Vec3.multiply(upVector, VERTICAL_OFFSET);
var frontOffset = Vec3.multiply(frontVector, FORWARD_OFFSET);
var rightOffset = Vec3.multiply(rightVector, LATERAL_OFFSET);
var finalOffset = Vec3.sum(tankProperties.position, upOffset);
finalOffset = Vec3.sum(finalOffset, frontOffset);
finalOffset = Vec3.sum(finalOffset, rightOffset);
return finalOffset
}
FishTank.prototype = { FishTank.prototype = {
fish: null, fish: null,
tankLocked: false, tankLocked: false,
@ -140,7 +140,6 @@
preload: function(entityID) { preload: function(entityID) {
// print("preload"); // print("preload");
this.entityID = entityID; this.entityID = entityID;
_entityID = entityID; _entityID = entityID;
this.initialize(entityID); this.initialize(entityID);
@ -192,12 +191,7 @@
}, },
color: INTERSECT_COLOR, color: INTERSECT_COLOR,
position: position, position: position,
collisionless: true, collisionless: true
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
_this.debugSphere = Entities.addEntity(sphereProperties); _this.debugSphere = Entities.addEntity(sphereProperties);
}, },
@ -263,7 +257,8 @@
_this.overlayLineOn(pickRay.origin, Vec3.sum(pickRay.origin, Vec3.multiply(front, _this.overlayLineDistance)), INTERSECT_COLOR); _this.overlayLineOn(pickRay.origin, Vec3.sum(pickRay.origin, Vec3.multiply(front, _this.overlayLineDistance)), INTERSECT_COLOR);
}; };
// var brn = _this.userData['hifi-home-fishtank']['corners'].brn;
// var tfl = _this.userData['hifi-home-fishtank']['corners'].tfl;
var innerContainer = _this.userData['hifi-home-fishtank'].innerContainer; var innerContainer = _this.userData['hifi-home-fishtank'].innerContainer;
var intersection = Entities.findRayIntersection(pickRay, true, [innerContainer], [_this.entityID]); var intersection = Entities.findRayIntersection(pickRay, true, [innerContainer], [_this.entityID]);
@ -346,9 +341,9 @@
var LIFETIME = 300; // Fish live for 5 minutes var LIFETIME = 300; // Fish live for 5 minutes
var NUM_FISH = 8; var NUM_FISH = 8;
var TANK_DIMENSIONS = { var TANK_DIMENSIONS = {
x: 1.3393, x: 0.8212,
y: 1.3515, y: 0.8116,
z: 3.5914 z: 2.1404
}; };
var TANK_WIDTH = TANK_DIMENSIONS.z / 2; var TANK_WIDTH = TANK_DIMENSIONS.z / 2;
@ -376,6 +371,16 @@
var THROTTLE_RATE = 100; var THROTTLE_RATE = 100;
var sinceLastUpdate = 0; var sinceLastUpdate = 0;
var LOWER_CORNER_VERTICAL_OFFSET = (-TANK_DIMENSIONS.y / 2) + 0.3;
var LOWER_CORNER_FORWARD_OFFSET = TANK_DIMENSIONS.x;
var LOWER_CORNER_LATERAL_OFFSET = -TANK_DIMENSIONS.z / 8;
var UPPER_CORNER_VERTICAL_OFFSET = (TANK_DIMENSIONS.y / 2)-0.3;
var UPPER_CORNER_FORWARD_OFFSET = -TANK_DIMENSIONS.x;
var UPPER_CORNER_LATERAL_OFFSET = TANK_DIMENSIONS.z / 8;
// var FISH_MODEL_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/Fish-1.fbx"; // var FISH_MODEL_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/Fish-1.fbx";
// var FISH_MODEL_TWO_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/Fish-2.fbx"; // var FISH_MODEL_TWO_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/Fish-2.fbx";
@ -383,8 +388,6 @@
var FISH_MODEL_TWO_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/goodfish5.fbx"; var FISH_MODEL_TWO_URL = "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/goodfish5.fbx";
var fishLoaded = false; var fishLoaded = false;
var lowerCorner, upperCorner;
function randomVector(scale) { function randomVector(scale) {
return { return {
x: Math.random() * scale - scale / 2.0, x: Math.random() * scale - scale / 2.0,
@ -403,6 +406,7 @@
return; return;
} }
if (THROTTLE === true) { if (THROTTLE === true) {
sinceLastUpdate = sinceLastUpdate + deltaTime * 100; sinceLastUpdate = sinceLastUpdate + deltaTime * 100;
if (sinceLastUpdate > THROTTLE_RATE) { if (sinceLastUpdate > THROTTLE_RATE) {
@ -413,6 +417,8 @@
} }
// print('has userdata fish??' + _this.userData['hifi-home-fishtank'].fishLoaded)
if (_this.userData['hifi-home-fishtank'].fishLoaded === false) { if (_this.userData['hifi-home-fishtank'].fishLoaded === false) {
//no fish in the user data //no fish in the user data
_this.tankLocked = true; _this.tankLocked = true;
@ -421,7 +427,13 @@
var data = { var data = {
fishLoaded: true, fishLoaded: true,
bubbleSystem: _this.userData['hifi-home-fishtank'].bubbleSystem, bubbleSystem: _this.userData['hifi-home-fishtank'].bubbleSystem,
// bubbleSound: _this.userData['hifi-home-fishtank'].bubbleSound,
// corners: {
// brn: _this.userData['hifi-home-fishtank'].lowerCorner,
// tfl: _this.userData['hifi-home-fishtank'].upperCorner
// },
innerContainer: _this.userData['hifi-home-fishtank'].innerContainer, innerContainer: _this.userData['hifi-home-fishtank'].innerContainer,
} }
setEntityCustomData(FISHTANK_USERDATA_KEY, _this.entityID, data); setEntityCustomData(FISHTANK_USERDATA_KEY, _this.entityID, data);
_this.userData['hifi-home-fishtank'].fishLoaded = true; _this.userData['hifi-home-fishtank'].fishLoaded = true;
@ -438,6 +450,7 @@
} }
var fish = _this.fish; var fish = _this.fish;
// print('how many fish do i find?' + fish.length) // print('how many fish do i find?' + fish.length)
@ -458,6 +471,14 @@
z: 0 z: 0
}; };
var userData = JSON.parse(_this.currentProperties.userData);
var innerContainer = userData['hifi-home-fishtank']['innerContainer'];
// var bounds = Entities.getEntityProperties(innerContainer, "boundingBox").boundingBox;
lowerCorner = getOffsetFromTankCenter(LOWER_CORNER_VERTICAL_OFFSET, LOWER_CORNER_FORWARD_OFFSET, LOWER_CORNER_LATERAL_OFFSET);
upperCorner = getOffsetFromTankCenter(UPPER_CORNER_VERTICAL_OFFSET, UPPER_CORNER_FORWARD_OFFSET, UPPER_CORNER_LATERAL_OFFSET);
// First pre-load an array with properties on all the other fish so our per-fish loop // First pre-load an array with properties on all the other fish so our per-fish loop
// isn't doing it. // isn't doing it.
var flockProperties = []; var flockProperties = [];
@ -498,7 +519,6 @@
z: 0 z: 0
}; };
var othersCounted = 0; var othersCounted = 0;
for (var j = 0; j < fish.length; j++) { for (var j = 0; j < fish.length; j++) {
if (i != j) { if (i != j) {
@ -529,6 +549,8 @@
//attractors //attractors
//[position, radius, force] //[position, radius, force]
} }
if (_this.hasLookAttractor === true) { if (_this.hasLookAttractor === true) {
@ -602,22 +624,21 @@
var STARTING_FRACTION = 0.25; var STARTING_FRACTION = 0.25;
function loadFish(howMany) { function loadFish(howMany) {
print('LOADING FISH: ' + howMany) // print('LOADING FISH: ' + howMany)
var center = _this.currentProperties.position; var center = _this.currentProperties.position;
var lowerCorner = { lowerCorner = {
x: center.x - (_this.currentProperties.dimensions.z / 2), x: center.x - (_this.currentProperties.dimensions.z / 2),
y: center.y, y: center.y,
z: center.z - (_this.currentProperties.dimensions.z / 2) z: center.z - (_this.currentProperties.dimensions.z / 2)
}; };
var upperCorner = { upperCorner = {
x: center.x + (_this.currentProperties.dimensions.z / 2), x: center.x + (_this.currentProperties.dimensions.z / 2),
y: center.y + _this.currentProperties.dimensions.y, y: center.y + _this.currentProperties.dimensions.y,
z: center.z + (_this.currentProperties.dimensions.z / 2) z: center.z + (_this.currentProperties.dimensions.z / 2)
}; };
var fish = []; var fish = [];
for (var i = 0; i < howMany; i++) { for (var i = 0; i < howMany; i++) {
@ -656,12 +677,7 @@
red: 0, red: 0,
green: 255, green: 255,
blue: 255 blue: 255
}, }
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
}) })
); );
@ -676,24 +692,6 @@
}) })
function getOffsetFromTankCenter(VERTICAL_OFFSET, FORWARD_OFFSET, LATERAL_OFFSET) {
var tankProperties = Entities.getEntityProperties(_this.entityID);
var upVector = Quat.getUp(tankProperties.rotation);
var frontVector = Quat.getFront(tankProperties.rotation);
var rightVector = Quat.getRight(tankProperties.rotation);
var upOffset = Vec3.multiply(upVector, VERTICAL_OFFSET);
var frontOffset = Vec3.multiply(frontVector, FORWARD_OFFSET);
var rightOffset = Vec3.multiply(rightVector, LATERAL_OFFSET);
var finalOffset = Vec3.sum(tankProperties.position, upOffset);
finalOffset = Vec3.sum(finalOffset, frontOffset);
finalOffset = Vec3.sum(finalOffset, rightOffset);
return finalOffset
}
function setEntityUserData(id, data) { function setEntityUserData(id, data) {
var json = JSON.stringify(data) var json = JSON.stringify(data)
Entities.editEntity(id, { Entities.editEntity(id, {

View file

@ -1,22 +1,19 @@
// //
// createTank.js // createTank.js
// //
// //
// created by James b. Pollack @imgntn on 3/9/2016 // created by James b. Pollack @imgntn on 3/9/2016
// Copyright 2016 High Fidelity, Inc. // Copyright 2016 High Fidelity, Inc.
// //
// Adds a fish tank and base, decorations, particle bubble systems, and a bubble sound. Attaches a script that does fish swimming. // Adds a fish tank and base, decorations, particle bubble systems, and a bubble sound. Attaches a script that does fish swimming.
// //
// Distributed under the Apache License, Version 2.0. // Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
// //
var TANK_SCRIPT = Script.resolvePath('tank.js?' + Math.random()); var TANK_SCRIPT = Script.resolvePath('tank.js?' + Math.random());
FishTank = function(spawnPosition, spawnRotation) { FishTank = function(spawnPosition, spawnRotation) {
var fishTank, tankBase, bubbleSystem, secondBubbleSystem, thirdBubbleSystem, innerContainer, bubbleInjector, lowerCorner, upperCorner, urchin, treasure, rocks; var fishTank, tankBase, bubbleSystem, secondBubbleSystem, thirdBubbleSystem, innerContainer, bubbleInjector, lowerCorner, upperCorner, anemone, treasure, rocks;
var CLEANUP = true; var CLEANUP = true;
var TANK_DIMENSIONS = { var TANK_DIMENSIONS = {
@ -52,7 +49,7 @@ FishTank = function(spawnPosition, spawnRotation) {
z: 2.1936 z: 2.1936
}; };
var BASE_VERTICAL_OFFSET = 0.42; var BASE_VERTICAL_OFFSET = 0.47;
var BUBBLE_SYSTEM_FORWARD_OFFSET = TANK_DIMENSIONS.x + 0.06; var BUBBLE_SYSTEM_FORWARD_OFFSET = TANK_DIMENSIONS.x + 0.06;
var BUBBLE_SYSTEM_LATERAL_OFFSET = 0.025; var BUBBLE_SYSTEM_LATERAL_OFFSET = 0.025;
@ -68,14 +65,14 @@ FishTank = function(spawnPosition, spawnRotation) {
var bubbleSound = SoundCache.getSound(BUBBLE_SOUND_URL); var bubbleSound = SoundCache.getSound(BUBBLE_SOUND_URL);
var URCHIN_FORWARD_OFFSET = TANK_DIMENSIONS.x - 0.35; var ANEMONE_FORWARD_OFFSET = TANK_DIMENSIONS.x - 0.35;
var URCHIN_LATERAL_OFFSET = -0.05; var ANEMONE_LATERAL_OFFSET = -0.05;
var URCHIN_VERTICAL_OFFSET = -0.12; var ANEMONE_VERTICAL_OFFSET = -0.12;
var URCHIN_MODEL_URL = 'http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/Urchin.fbx'; var ANEMONE_MODEL_URL = 'http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/anemone.fbx';
var ANEMONE_ANIMATION_URL = 'http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/anemone.fbx';
var URCHIN_DIMENSIONS = { var ANEMONE_DIMENSIONS = {
x: 0.4, x: 0.4,
y: 0.4, y: 0.4,
z: 0.4 z: 0.4
@ -105,11 +102,11 @@ FishTank = function(spawnPosition, spawnRotation) {
z: 0.1020 z: 0.1020
} }
var LOWER_CORNER_VERTICAL_OFFSET = -TANK_DIMENSIONS.y / 2; var LOWER_CORNER_VERTICAL_OFFSET = (-TANK_DIMENSIONS.y / 2) + 0.3;
var LOWER_CORNER_FORWARD_OFFSET = TANK_DIMENSIONS.x; var LOWER_CORNER_FORWARD_OFFSET = TANK_DIMENSIONS.x;
var LOWER_CORNER_LATERAL_OFFSET = -TANK_DIMENSIONS.z / 8; var LOWER_CORNER_LATERAL_OFFSET = -TANK_DIMENSIONS.z / 8;
var UPPER_CORNER_VERTICAL_OFFSET = TANK_DIMENSIONS.y / 2;; var UPPER_CORNER_VERTICAL_OFFSET = (TANK_DIMENSIONS.y / 2) - 0.3;
var UPPER_CORNER_FORWARD_OFFSET = -TANK_DIMENSIONS.x; var UPPER_CORNER_FORWARD_OFFSET = -TANK_DIMENSIONS.x;
var UPPER_CORNER_LATERAL_OFFSET = TANK_DIMENSIONS.z / 8; var UPPER_CORNER_LATERAL_OFFSET = TANK_DIMENSIONS.z / 8;
@ -120,17 +117,13 @@ FishTank = function(spawnPosition, spawnRotation) {
modelURL: TANK_MODEL_URL, modelURL: TANK_MODEL_URL,
dimensions: TANK_DIMENSIONS, dimensions: TANK_DIMENSIONS,
position: TANK_POSITION, position: TANK_POSITION,
rotation: spawnRotation, rotation: Quat.fromPitchYawRollDegrees(spawnRotation.x,spawnRotation.y,spawnRotation.z),
color: DEBUG_COLOR, color: DEBUG_COLOR,
collisionless: true, collisionless: true,
script: TANK_SCRIPT, script: TANK_SCRIPT,
visible: true visible: true
} }
if (spawnRotation !== undefined) {
tankProperties.rotation = Quat.fromPitchYawRollDegrees(spawnRotation.x, spawnRotation.y, spawnRotation.z)
}
fishTank = Entities.addEntity(tankProperties); fishTank = Entities.addEntity(tankProperties);
} }
@ -179,20 +172,13 @@ FishTank = function(spawnPosition, spawnRotation) {
"alphaStart": 0.3, "alphaStart": 0.3,
"alphaFinish": 0, "alphaFinish": 0,
"emitterShouldTrail": 0, "emitterShouldTrail": 0,
"textures": "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/bubble-white.png", "textures": "http://hifi-content.s3.amazonaws.com/DomainContent/Home/fishTank/bubble-white.png"
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
}; };
bubbleProperties.type = "ParticleEffect"; bubbleProperties.type = "ParticleEffect";
bubbleProperties.parentID = fishTank; bubbleProperties.parentID = fishTank;
bubbleProperties.dimensions = BUBBLE_SYSTEM_DIMENSIONS; bubbleProperties.dimensions = BUBBLE_SYSTEM_DIMENSIONS;
var finalOffset = getOffsetFromTankCenter(BUBBLE_SYSTEM_VERTICAL_OFFSET, BUBBLE_SYSTEM_FORWARD_OFFSET, BUBBLE_SYSTEM_LATERAL_OFFSET); var finalOffset = getOffsetFromTankCenter(BUBBLE_SYSTEM_VERTICAL_OFFSET, BUBBLE_SYSTEM_FORWARD_OFFSET, BUBBLE_SYSTEM_LATERAL_OFFSET);
bubbleProperties.position = finalOffset; bubbleProperties.position = finalOffset;
@ -253,12 +239,7 @@ FishTank = function(spawnPosition, spawnRotation) {
position: tankProperties.position, position: tankProperties.position,
visible: false, visible: false,
collisionless: true, collisionless: true,
dynamic: false, dynamic: false
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
}; };
innerContainer = Entities.addEntity(containerProps); innerContainer = Entities.addEntity(containerProps);
@ -266,6 +247,7 @@ FishTank = function(spawnPosition, spawnRotation) {
function createEntitiesAtCorners() { function createEntitiesAtCorners() {
var bounds = Entities.getEntityProperties(innerContainer, "boundingBox").boundingBox;
var lowerProps = { var lowerProps = {
name: 'hifi-home-fishtank-lower-corner', name: 'hifi-home-fishtank-lower-corner',
@ -283,12 +265,7 @@ FishTank = function(spawnPosition, spawnRotation) {
}, },
collisionless: true, collisionless: true,
position: getOffsetFromTankCenter(LOWER_CORNER_VERTICAL_OFFSET, LOWER_CORNER_FORWARD_OFFSET, LOWER_CORNER_LATERAL_OFFSET), position: getOffsetFromTankCenter(LOWER_CORNER_VERTICAL_OFFSET, LOWER_CORNER_FORWARD_OFFSET, LOWER_CORNER_LATERAL_OFFSET),
visible: true, visible: true
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
var upperProps = { var upperProps = {
@ -307,12 +284,7 @@ FishTank = function(spawnPosition, spawnRotation) {
}, },
collisionless: true, collisionless: true,
position: getOffsetFromTankCenter(UPPER_CORNER_VERTICAL_OFFSET, UPPER_CORNER_FORWARD_OFFSET, UPPER_CORNER_LATERAL_OFFSET), position: getOffsetFromTankCenter(UPPER_CORNER_VERTICAL_OFFSET, UPPER_CORNER_FORWARD_OFFSET, UPPER_CORNER_LATERAL_OFFSET),
visible: true, visible: true
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
lowerCorner = Entities.addEntity(lowerProps); lowerCorner = Entities.addEntity(lowerProps);
@ -329,36 +301,36 @@ FishTank = function(spawnPosition, spawnRotation) {
parentID: fishTank, parentID: fishTank,
modelURL: ROCK_MODEL_URL, modelURL: ROCK_MODEL_URL,
position: finalPosition, position: finalPosition,
dimensions: ROCK_DIMENSIONS, dimensions: ROCK_DIMENSIONS
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
rocks = Entities.addEntity(properties); rocks = Entities.addEntity(properties);
} }
function createUrchin() { function createAnenome() {
var finalPosition = getOffsetFromTankCenter(URCHIN_VERTICAL_OFFSET, URCHIN_FORWARD_OFFSET, URCHIN_LATERAL_OFFSET); var finalPosition = getOffsetFromTankCenter(ANEMONE_VERTICAL_OFFSET, ANEMONE_FORWARD_OFFSET, ANEMONE_LATERAL_OFFSET);
var properties = { var properties = {
name: 'hifi-home-fishtank-urchin', name: 'hifi-home-fishtank-anemone',
type: 'Model', type: 'Model',
animationURL: ANEMONE_ANIMATION_URL,
animationIsPlaying: true,
animationFPS: 15,
animationSettings: JSON.stringify({
hold: false,
loop: true,
running: true,
startAutomatically: true
}),
parentID: fishTank, parentID: fishTank,
modelURL: URCHIN_MODEL_URL, modelURL: ANEMONE_MODEL_URL,
position: finalPosition, position: finalPosition,
shapeType: 'Sphere', shapeType: 'Sphere',
dimensions: URCHIN_DIMENSIONS, rotation: Quat.fromPitchYawRollDegrees(0, 90, 0),
userData: JSON.stringify({ dimensions: ANEMONE_DIMENSIONS
'hifiHomeKey': {
'reset': true
}
}),
} }
urchin = Entities.addEntity(properties); anemone = Entities.addEntity(properties);
} }
@ -372,12 +344,7 @@ FishTank = function(spawnPosition, spawnRotation) {
modelURL: TREASURE_MODEL_URL, modelURL: TREASURE_MODEL_URL,
position: finalPosition, position: finalPosition,
dimensions: TREASURE_DIMENSIONS, dimensions: TREASURE_DIMENSIONS,
rotation: Quat.fromPitchYawRollDegrees(10, -45, 10), rotation: Quat.fromPitchYawRollDegrees(10, -45, 10)
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
treasure = Entities.addEntity(properties); treasure = Entities.addEntity(properties);
@ -396,12 +363,7 @@ FishTank = function(spawnPosition, spawnRotation) {
y: TANK_POSITION.y - BASE_VERTICAL_OFFSET, y: TANK_POSITION.y - BASE_VERTICAL_OFFSET,
z: TANK_POSITION.z z: TANK_POSITION.z
}, },
dimensions: TANK_BASE_DIMENSIONS, dimensions: TANK_BASE_DIMENSIONS
userData: JSON.stringify({
'hifiHomeKey': {
'reset': true
}
}),
} }
tankBase = Entities.addEntity(properties); tankBase = Entities.addEntity(properties);
@ -415,7 +377,7 @@ FishTank = function(spawnPosition, spawnRotation) {
createEntitiesAtCorners(); createEntitiesAtCorners();
createUrchin(); createAnenome();
createRocks(); createRocks();
@ -430,13 +392,13 @@ FishTank = function(spawnPosition, spawnRotation) {
bubbleSystem: bubbleSystem, bubbleSystem: bubbleSystem,
innerContainer: innerContainer, innerContainer: innerContainer,
} }
var resetKey = 'hifiHomeKey'; var resetKey = 'hifiHomeKey';
var resetData = { var resetData = {
'reset': true 'reset': true
}; };
Script.setTimeout(function() { Script.setTimeout(function() {
setEntityCustomData(customKey, fishTank, data); setEntityCustomData(customKey, fishTank, data);
setEntityCustomData(resetKey, fishTank, resetData); setEntityCustomData(resetKey, fishTank, resetData);
@ -444,7 +406,6 @@ FishTank = function(spawnPosition, spawnRotation) {
function cleanup() { function cleanup() {
print('TANK CLEANUP!')
Entities.deleteEntity(fishTank); Entities.deleteEntity(fishTank);
Entities.deleteEntity(tankBase); Entities.deleteEntity(tankBase);
Entities.deleteEntity(bubbleSystem); Entities.deleteEntity(bubbleSystem);
@ -453,14 +414,10 @@ FishTank = function(spawnPosition, spawnRotation) {
Entities.deleteEntity(innerContainer); Entities.deleteEntity(innerContainer);
Entities.deleteEntity(lowerCorner); Entities.deleteEntity(lowerCorner);
Entities.deleteEntity(upperCorner); Entities.deleteEntity(upperCorner);
Entities.deleteEntity(urchin); Entities.deleteEntity(anemone);
Entities.deleteEntity(rocks); Entities.deleteEntity(rocks);
// bubbleInjector.stop();
// bubbleInjector = null;
} }
function setEntityUserData(id, data) { function setEntityUserData(id, data) {
var json = JSON.stringify(data) var json = JSON.stringify(data)
Entities.editEntity(id, { Entities.editEntity(id, {
@ -502,7 +459,4 @@ FishTank = function(spawnPosition, spawnRotation) {
return defaultValue; return defaultValue;
} }
} }
this.cleanup = cleanup;
print('CREATED FISH!');
} }

View file

@ -109,7 +109,7 @@
flower.userData = { flower.userData = {
'hifiHomeKey': { 'hifiHomeKey': {
'reset': true 'reset': true
} },
ProceduralEntity: { ProceduralEntity: {
shaderUrl: _this.SHADER_URL, shaderUrl: _this.SHADER_URL,
uniforms: { uniforms: {

View file

@ -43,7 +43,7 @@
Script.include(whiteboardPath); Script.include(whiteboardPath);
Script.include(plantPath); Script.include(plantPath);
Script.include(cuckooClockPath); Script.include(cuckooClockPath);
Script.include(pingPongGunPath); Script.include(pingPongGunPath);
var center = Vec3.sum(Vec3.sum(MyAvatar.position, { var center = Vec3.sum(Vec3.sum(MyAvatar.position, {
@ -119,59 +119,64 @@
createDynamicEntities: function() { createDynamicEntities: function() {
// var fishTank = new FishTank({ var fishTank = new FishTank({
// x: 1098.9254, x: 1098.9254,
// y: 460.5814, y: 460.5814,
// z: -79.1103 z: -79.1103
// }, { }, {
// x: 0, x: 0,
// y: 152, y: 152,
// z: 0 z: 0
// }); });
var tiltMaze = new TiltMaze({
x: 1105.5768,
y: 460.3298,
z: -80.4891
});
var whiteboard = new Whiteboard({
x: 1104,
y: 460.5,
z: -77
}, {
x: 0,
y: -133,
z: 0
});
var myPlant = new Plant({
x: 1099.8785,
y: 460.3115,
z: -84.7736
});
// var tiltMaze = new TiltMaze({ var pingPongGun = new _PingPongGun({
// x: 1105.5768, x: 1101.2123,
// y: 460.3298, y: 460.2328,
// z: -80.4891 z: -65.8513
// }); }, {
x: 97.3683,
// var whiteboard = new Whiteboard({ y: 179.0293,
// x: 1104, z: 89.9698
// y: 460.5, });
// z: -77
// }, {
// x: 0,
// y: -133,
// z: 0
// });
// var myPlant = new Plant({
// x: 1099.8785,
// y: 460.3115,
// z: -84.7736
// });
// var pingPongGun = new _PingPongGun({
// x: 1101.2123,
// y: 460.2328,
// z: -65.8513
// }, {
// x: 97.3683,
// y: 179.0293,
// z: 89.9698
// });
//v2.0 //v2.0
// var musicBox = new MusicBox(); // var musicBox = new MusicBox();
var cuckooClock = new MyCuckooClock(center); //var cuckooClock = new MyCuckooClock(center);
var cuckooClock = new MyCuckooClock({
x: 1104.6,
y: 461.3,
z: -82.6
}, {
x: 0,
y: 0,
z: 0
});
// var doppelganger = new Doppelganger(); // var doppelganger = new Doppelganger();
}, },
createKineticEntities: function() { createKineticEntities: function() {
var fruitBowl = new FruitBowl({ var fruitBowl = new FruitBowl({