add scene manager
This commit is contained in:
parent
747d1434f7
commit
6413a682d6
|
@ -49,5 +49,12 @@ export class Cat {
|
||||||
this.sprite.position.y = y;
|
this.sprite.position.y = y;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
remove() {
|
||||||
|
if (!this.sprite) return;
|
||||||
|
|
||||||
|
this.sprite.remove();
|
||||||
|
this.sprite = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,3 @@
|
||||||
console.log("start fresh :)");
|
|
||||||
|
|
||||||
import { colors } from './theme.js';
|
import { colors } from './theme.js';
|
||||||
import StartScene from './scenes/startScene.js';
|
import StartScene from './scenes/startScene.js';
|
||||||
import GameScene from './scenes/gameScene.js';
|
import GameScene from './scenes/gameScene.js';
|
||||||
|
@ -15,7 +13,6 @@ function setup(){
|
||||||
mgr = new SceneManager();
|
mgr = new SceneManager();
|
||||||
mgr.addScene(StartScene);
|
mgr.addScene(StartScene);
|
||||||
mgr.addScene(GameScene);
|
mgr.addScene(GameScene);
|
||||||
|
|
||||||
mgr.showScene(StartScene);
|
mgr.showScene(StartScene);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,16 +2,18 @@ import { colors } from '../theme.js';
|
||||||
import { draw as drawWorld, groundHeight } from '../world.js';
|
import { draw as drawWorld, groundHeight } from '../world.js';
|
||||||
import { Cat } from '../cat.js';
|
import { Cat } from '../cat.js';
|
||||||
|
|
||||||
export default function GameScene(p) {
|
export default function GameScene() {
|
||||||
let cat;
|
let cat;
|
||||||
|
this.name = "GameScene";
|
||||||
|
|
||||||
this.setup = () => {
|
this.setup = () => {
|
||||||
cat = new Cat(width / 2, height - 200, 200);
|
// cat = new Cat(width / 2, height - 200, 200);
|
||||||
};
|
};
|
||||||
|
|
||||||
this.draw = () => {
|
this.draw = () => {
|
||||||
// drawWorld(p, groundHeight);
|
// drawWorld(p, groundHeight);
|
||||||
cat.update();
|
// cat.update();
|
||||||
cat.draw();
|
// cat.draw();
|
||||||
|
text('dan yap', width / 2, height / 2 - 100);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { colors } from '../theme.js';
|
import { colors } from '../theme.js';
|
||||||
import { Cat } from '../cat.js';
|
import { Cat } from '../cat.js';
|
||||||
|
import GameScene from './gameScene.js';
|
||||||
|
|
||||||
export default function StartScene() {
|
export default function StartScene() {
|
||||||
let cat;
|
let cat;
|
||||||
|
@ -10,6 +11,8 @@ export default function StartScene() {
|
||||||
height: 0,
|
height: 0,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// this.name = "StartScene";
|
||||||
|
|
||||||
this.setup = () => {
|
this.setup = () => {
|
||||||
cat = new Cat(width / 2, height - 200, 200);
|
cat = new Cat(width / 2, height - 200, 200);
|
||||||
};
|
};
|
||||||
|
@ -64,7 +67,14 @@ export default function StartScene() {
|
||||||
if (x < button.x || x > button.x + button.width) return;
|
if (x < button.x || x > button.x + button.width) return;
|
||||||
if (y < button.y || y > button.y + button.height) return;
|
if (y < button.y || y > button.y + button.height) return;
|
||||||
|
|
||||||
this.sceneManager.showNextScene();
|
this.sceneManager.showScene(GameScene);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.exit = function () {
|
||||||
|
if (cat) {
|
||||||
|
cat.remove()
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user