This commit is contained in:
Ronan 2022-12-12 18:19:21 +01:00
commit 0c9ef72177
2 changed files with 15 additions and 8 deletions

View file

@ -11,6 +11,7 @@ export const selectLevel = (ctx, gameState, id) => {
gameState.timer.setTime(levelsBlueprint[id].time); gameState.timer.setTime(levelsBlueprint[id].time);
gameState.playable = true; gameState.playable = true;
gameState.tutorial.hide(); gameState.tutorial.hide();
gameState.timer.start();
gameState.playground.draw(ctx, gameState.width, gameState.height); gameState.playground.draw(ctx, gameState.width, gameState.height);
} }
@ -34,16 +35,20 @@ export class LevelManager {
self.CurrentLevelId = StartingLevelId; self.CurrentLevelId = StartingLevelId;
self.Completed = levelsBlueprint.map(() => { return false; }); self.Completed = levelsBlueprint.map(() => { return false; });
self.winFunction = winFunction; self.winFunction = winFunction;
} self.getFirstUncompleted = () => {
for( let i = 0; i < self.Completed.length; i++ ) {
getFirstUncompleted() {
for( let i = 0; i < self.Completed.size; i++ ) {
if (!self.Completed[i]) { if (!self.Completed[i]) {
return i; return i;
} }
} }
return -1;
};
} }
// getFirstUncompleted() {
// self.getFirstUncompleted();
// }
next(ctx, gameState) { next(ctx, gameState) {
self.Completed[self.CurrentLevelId] = true; self.Completed[self.CurrentLevelId] = true;
let allLevelsFinished = self.Completed.reduce((a, b) => { let allLevelsFinished = self.Completed.reduce((a, b) => {
@ -52,7 +57,8 @@ export class LevelManager {
if (allLevelsFinished) { if (allLevelsFinished) {
self.winFunction(); self.winFunction();
} }
self.CurrentLevelId = getFirstUncompleted(); self.CurrentLevelId = self.getFirstUncompleted();
console.log(self.CurrentLevelId);
selectLevel(ctx, gameState, self.CurrentLevelId); selectLevel(ctx, gameState, self.CurrentLevelId);
} }
} }

View file

@ -80,5 +80,6 @@ window.addEventListener("keydown", (event) => {
//let table = document.getElementById("scoreTable"); //let table = document.getElementById("scoreTable");
Scoreboard(); Scoreboard();
window.gamestate = gameState;
gameState.playground.draw(ctx); gameState.playground.draw(ctx);