// // elevator.js // // Copyright 2017 High Fidelity, Inc. // // Distributed under the Apache License, Version 2.0. // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html /* globals Script Entities Vec3 */ (function() { var POINT_A = {x: 86.5248, y: -6.1959, z: 38.0987}; var POINT_B = {x: 86.5248, y: -14.5854, z: 38.0987}; var PAUSE_TIME = 4; // seconds var MOVE_TIME = 5; var goingUp = false; var _entityID; this.preload = function(entityID) { _entityID = entityID; Script.setInterval(function() { movePlatform(goingUp); goingUp = !goingUp; }, (PAUSE_TIME + MOVE_TIME) * 1000); }; var movePlatform = function(isGoingUp) { var from = isGoingUp ? POINT_A : POINT_B; var to = isGoingUp ? POINT_B : POINT_A; var moveTime = MOVE_TIME; var moveDirection = Vec3.subtract(to , from); var moveVelocity = Vec3.multiply(moveDirection, 1 / moveTime); Entities.editEntity(_entityID, { velocity: moveVelocity, position: from, damping: 0 }); Script.setTimeout(function() { Entities.editEntity(_entityID, { velocity: {x: 0, y: 0, z: 0}, position: to }); }, moveTime * 1000); }; });