// Cloned by Vedant Das on 29 Sep 2022 from World "One Cube World (Three.js)" by Starter user
// Please leave this clone trail here.
const skycolor = 'lightblue';
const boxcolor = 'maroon';
const objectsize = 300; // size of object
const startRadius = 1000; // distance from centre we start the camera at
const maxRadius = startRadius * 10; // maximum distance from camera we render things
// the object is a cube (each dimension equal):
var shape = new THREE.BoxGeometry ( objectsize, objectsize, objectsize );
var material = new THREE.MeshBasicMaterial ( { color: boxcolor.toLowerCase() } );
var theobject = new THREE.Mesh ( shape, material );
// Define what the World does at the start of a run:
AB.world.newRun = function()
{
// start a 3D scene:
ABWorld.init3d ( startRadius, maxRadius, skycolor );
// add the object to the scene:
ABWorld.scene.add ( theobject );
const texturefile = '/uploads/starter/earth.1.jpg';
var loader = new THREE.TextureLoader();
loader.load ( texturefile, function ( thetexture )
// this defines a function to be called whenever the file is loaded
{
thetexture.minFilter = THREE.LinearFilter;
theobject.material = new THREE.MeshBasicMaterial ( { map: thetexture } );
});
var goingup = true;
AB.world.nextStep = function()
{
initial_pos_x = theobject.position.x
initial_pos_y = theobject.position.y
if ( goingup )
{
theobject.position.x = theobject.position.x + 3;
theobject.position.y = theobject.position.y + 3;
}
else
{
theobject.position.x = theobject.position.x - 3;
theobject.position.y = theobject.position.y - 3;
}
console.log ( theobject.position.x );
console.log ( theobject.position.y );
if ( theobject.position.x > 100)
{
goingup = false;
theobject.position.x = theobject.position.x - 3;
theobject.position.y = theobject.position.y - 3;
}
};
};