summaryrefslogtreecommitdiff
path: root/engine/config
diff options
context:
space:
mode:
Diffstat (limited to 'engine/config')
-rw-r--r--engine/config/assets.ts16
-rw-r--r--engine/config/constants.ts26
-rw-r--r--engine/config/index.ts6
-rw-r--r--engine/config/sprites.ts16
4 files changed, 36 insertions, 28 deletions
diff --git a/engine/config/assets.ts b/engine/config/assets.ts
index 173bab3..289f181 100644
--- a/engine/config/assets.ts
+++ b/engine/config/assets.ts
@@ -1,10 +1,10 @@
-import type { SpriteSpec } from "./sprites";
-import { SPRITE_SPECS } from "./sprites";
+import type { SpriteSpec } from './sprites';
+import { SPRITE_SPECS } from './sprites';
export const IMAGES = new Map<string, HTMLImageElement>();
export const loadSpritesIntoImageElements = (
- spriteSpecs: Partial<SpriteSpec>[],
+ spriteSpecs: Partial<SpriteSpec>[]
): Promise<void>[] => {
const spritePromises: Promise<void>[] = [];
@@ -17,13 +17,13 @@ export const loadSpritesIntoImageElements = (
spritePromises.push(
new Promise((resolve) => {
img.onload = () => resolve();
- }),
+ })
);
}
if (spriteSpec.states) {
spritePromises.push(
- ...loadSpritesIntoImageElements(Array.from(spriteSpec.states.values())),
+ ...loadSpritesIntoImageElements(Array.from(spriteSpec.states.values()))
);
}
}
@@ -35,8 +35,8 @@ export const loadAssets = () =>
Promise.all([
...loadSpritesIntoImageElements(
Array.from(SPRITE_SPECS.keys()).map(
- (key) => SPRITE_SPECS.get(key) as SpriteSpec,
- ),
- ),
+ (key) => SPRITE_SPECS.get(key) as SpriteSpec
+ )
+ )
// TODO: Sound
]);
diff --git a/engine/config/constants.ts b/engine/config/constants.ts
index 3d536d3..dc98ad0 100644
--- a/engine/config/constants.ts
+++ b/engine/config/constants.ts
@@ -1,34 +1,39 @@
-import { Action } from "../interfaces";
+import { Action } from '../interfaces';
export namespace KeyConstants {
export const KeyActions: Record<string, Action> = {
a: Action.MOVE_LEFT,
- ArrowLeft: Action.MOVE_LEFT,
+ arrowleft: Action.MOVE_LEFT,
+
d: Action.MOVE_RIGHT,
- ArrowRight: Action.MOVE_RIGHT,
+ arrowright: Action.MOVE_RIGHT,
+
w: Action.JUMP,
- ArrowUp: Action.JUMP,
+ arrowup: Action.JUMP,
+
+ ' ': Action.JUMP
};
+ // value -> [key] from KeyActions
export const ActionKeys: Map<Action, string[]> = Object.keys(
- KeyActions,
+ KeyActions
).reduce((acc: Map<Action, string[]>, key) => {
- const action = KeyActions[key];
+ const action = KeyActions[key.toLowerCase()];
if (acc.has(action)) {
- acc.get(action)?.push(key);
+ acc.get(action)!.push(key);
return acc;
}
acc.set(action, [key]);
return acc;
- }, new Map<Action, string[]>());
+ }, new Map());
}
export namespace PhysicsConstants {
export const MAX_JUMP_TIME_MS = 150;
export const GRAVITY = 0.0075;
- export const PLAYER_MOVE_VEL = 1;
+ export const PLAYER_MOVE_VEL = 0.8;
export const PLAYER_JUMP_ACC = -0.008;
export const PLAYER_JUMP_INITIAL_VEL = -1;
}
@@ -36,4 +41,7 @@ export namespace PhysicsConstants {
export namespace Miscellaneous {
export const WIDTH = 600;
export const HEIGHT = 800;
+
+ export const DEFAULT_GRID_WIDTH = 30;
+ export const DEFAULT_GRID_HEIGHT = 30;
}
diff --git a/engine/config/index.ts b/engine/config/index.ts
index 7a1052a..03b2246 100644
--- a/engine/config/index.ts
+++ b/engine/config/index.ts
@@ -1,3 +1,3 @@
-export * from "./constants";
-export * from "./assets.ts";
-export * from "./sprites.ts";
+export * from './constants';
+export * from './assets.ts';
+export * from './sprites.ts';
diff --git a/engine/config/sprites.ts b/engine/config/sprites.ts
index 1f65c18..e5fcd31 100644
--- a/engine/config/sprites.ts
+++ b/engine/config/sprites.ts
@@ -1,7 +1,7 @@
export enum Sprites {
FLOOR,
TRAMPOLINE,
- COFFEE,
+ COFFEE
}
export interface SpriteSpec {
@@ -22,12 +22,12 @@ const floorSpriteSpec = {
height: 40,
frames: 3,
msPerFrame: 125,
- states: new Map<number, Partial<SpriteSpec>>(),
+ states: new Map<number, Partial<SpriteSpec>>()
};
[40, 80, 120, 160].forEach((width) => {
floorSpriteSpec.states.set(width, {
width,
- sheet: `/assets/floor_tile_${width}.png`,
+ sheet: `/assets/floor_tile_${width}.png`
});
});
SPRITE_SPECS.set(Sprites.FLOOR, floorSpriteSpec);
@@ -37,12 +37,12 @@ const coffeeSpriteSpec = {
width: 60,
height: 45,
frames: 3,
- states: new Map<string, Partial<SpriteSpec>>(),
+ states: new Map<string, Partial<SpriteSpec>>()
};
-coffeeSpriteSpec.states.set("LEFT", {
- sheet: "/assets/coffee_left.png",
+coffeeSpriteSpec.states.set('LEFT', {
+ sheet: '/assets/coffee_left.png'
});
-coffeeSpriteSpec.states.set("RIGHT", {
- sheet: "/assets/coffee_right.png",
+coffeeSpriteSpec.states.set('RIGHT', {
+ sheet: '/assets/coffee_right.png'
});
SPRITE_SPECS.set(Sprites.COFFEE, coffeeSpriteSpec);