Testing cutscenes
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
var PHASE_LEFT = 0;
|
||||
var PHASE_RIGHT = 1;
|
||||
|
||||
var SPEED = 3.0;
|
||||
var DURATION = 2.0;
|
||||
|
||||
function MoveCubeCutscene(params) {
|
||||
Cutscene.call(this);
|
||||
this.cube = params.cube;
|
||||
this.phase = PHASE_LEFT;
|
||||
this.timer = 0.0;
|
||||
}
|
||||
|
||||
MoveCubeCutscene.prototype = Object.create(Cutscene.prototype);
|
||||
MoveCubeCutscene.prototype.constructor = MoveCubeCutscene;
|
||||
|
||||
MoveCubeCutscene.prototype.update = function() {
|
||||
this.timer += TIME.delta;
|
||||
|
||||
if(this.phase === PHASE_LEFT) {
|
||||
this.cube.position.position.x -= SPEED * TIME.delta;
|
||||
if(this.timer >= DURATION) {
|
||||
this.phase = PHASE_RIGHT;
|
||||
this.timer = 0.0;
|
||||
}
|
||||
} else if(this.phase === PHASE_RIGHT) {
|
||||
this.cube.position.position.x += SPEED * TIME.delta;
|
||||
if(this.timer >= DURATION) {
|
||||
Cutscene.finish();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
module = MoveCubeCutscene;
|
||||
+12
-2
@@ -1,4 +1,5 @@
|
||||
var CubeEntity = include('entities/CubeEntity.js');
|
||||
var MoveCubeCutscene = include('cutscenes/MoveCubeCutscene.js');
|
||||
|
||||
function CubeScene() {
|
||||
this.cam = new Entity();
|
||||
@@ -13,17 +14,26 @@ function CubeScene() {
|
||||
this.spriteEnt = new Entity();
|
||||
this.spriteEnt.add(POSITION);
|
||||
this.spriteEnt.position.position = new Vec3(16, 16, 0);
|
||||
// this.spriteEnt.sprite.setTexture('ui/minogram.png');
|
||||
|
||||
this.inputEnabled = false;
|
||||
|
||||
var scene = this;
|
||||
Cutscene.play(new MoveCubeCutscene({ cube: this.cube })).then(function() {
|
||||
scene.inputEnabled = true;
|
||||
});
|
||||
}
|
||||
|
||||
CubeScene.prototype = Object.create(Scene.prototype);
|
||||
CubeScene.prototype.constructor = CubeScene;
|
||||
|
||||
CubeScene.prototype.update = function() {
|
||||
this.cube.update();
|
||||
if(this.inputEnabled) {
|
||||
this.cube.update();
|
||||
}
|
||||
};
|
||||
|
||||
CubeScene.prototype.dispose = function() {
|
||||
Cutscene.stop();
|
||||
this.cam.dispose();
|
||||
this.cube.dispose();
|
||||
this.spriteEnt.dispose();
|
||||
|
||||
Reference in New Issue
Block a user