mirror of
https://git.leinelab.org/Mal/mr-crocs-adventures.git
synced 2025-09-11 02:57:36 +02:00
Architecture implemented.
This commit is contained in:
15
js/module.js
15
js/module.js
@@ -1,6 +1,7 @@
|
||||
import RetroSprite from "./retro/RetroSprite.js";
|
||||
import Key from "./Key.js";
|
||||
import MrCroc from "./MrCroc.js";
|
||||
import RetroArchitecture from "./retro/RetroArchitecture.js";
|
||||
|
||||
const MEDIA_READY_EVENT = 'mediaready';
|
||||
const IMAGE_READY_EVENT = 'imgready';
|
||||
@@ -56,6 +57,7 @@ function MainLoop(timestamp)
|
||||
|
||||
ground.draw(context);
|
||||
mrCroc.draw(context);
|
||||
architecture.draw(context);
|
||||
lastRendered = timestamp;
|
||||
}
|
||||
|
||||
@@ -68,10 +70,12 @@ const FPS = 60;
|
||||
const FRAME_DURATION = 1000 / FPS;
|
||||
const GAME_SPEED = 1;
|
||||
|
||||
const LEVEL = '{"tileset": "graphics/tileset.png", "tiles": 1, "scale": 3, "rows": 9, "columns": 16, "matrix": [[0, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 0], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 0], [null, null, null, null, null, 0, 0, 0, 0, 0, null, null, null, null, null, 0], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 0], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], [0, 0, 0, 0, 0, null, null, null, null, null, null, null, null, null, null, null], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]]}';
|
||||
|
||||
let lastRendered = undefined;
|
||||
let lastTimestamp = undefined;
|
||||
let context;
|
||||
let ground, mrCroc;
|
||||
let ground, mrCroc, architecture;
|
||||
|
||||
let KeyLeft = new Key('ArrowLeft');
|
||||
let KeyRight = new Key('ArrowRight');
|
||||
@@ -94,10 +98,13 @@ let imgBackground = new Image();
|
||||
imgBackground.src = 'graphics/ground.jpg';
|
||||
loader.addImage(imgBackground);
|
||||
|
||||
let imgArch = new Image();
|
||||
imgArch.src = 'graphics/tileset.png';
|
||||
loader.addImage(imgArch);
|
||||
|
||||
window.addEventListener(
|
||||
'imagesloaded',
|
||||
() => {
|
||||
console.log('Loaded');
|
||||
ground = new RetroSprite('graphics/ground.jpg', 4);
|
||||
ground.position.y = window.innerHeight - ground.getRect().height;
|
||||
|
||||
@@ -107,9 +114,11 @@ window.addEventListener(
|
||||
|
||||
context = canvas.getContext('2d');
|
||||
|
||||
architecture = RetroArchitecture.createFromJson(LEVEL);
|
||||
|
||||
mrCroc = new MrCroc();
|
||||
mrCroc.position.x = 100;
|
||||
mrCroc.position.y = window.innerHeight - ground.getHeight();
|
||||
mrCroc.position.y = 480;
|
||||
ground.draw(context);
|
||||
|
||||
window.requestAnimationFrame(MainLoop);
|
||||
|
||||
Reference in New Issue
Block a user