summaryrefslogtreecommitdiff
path: root/client/lib/config
diff options
context:
space:
mode:
authorElizabeth Hunt <elizabeth.hunt@simponic.xyz>2023-07-20 20:47:32 -0700
committerElizabeth Hunt <elizabeth.hunt@simponic.xyz>2023-07-20 20:47:32 -0700
commit72c6c7de12e9833f52bf2d0718d70f044f8ab57e (patch)
tree152f5f31d59011bb8c617bfbcfc44cc8f47ecad5 /client/lib/config
parent0fd9fb097552686f2257c1aa689d797e80057bd1 (diff)
downloadjumpstorm-72c6c7de12e9833f52bf2d0718d70f044f8ab57e.tar.gz
jumpstorm-72c6c7de12e9833f52bf2d0718d70f044f8ab57e.zip
a bit of refactoring; importing engine into bun for server
Diffstat (limited to 'client/lib/config')
-rw-r--r--client/lib/config/assets.ts40
-rw-r--r--client/lib/config/constants.ts34
-rw-r--r--client/lib/config/index.ts3
-rw-r--r--client/lib/config/sprites.ts49
4 files changed, 0 insertions, 126 deletions
diff --git a/client/lib/config/assets.ts b/client/lib/config/assets.ts
deleted file mode 100644
index 51a5303..0000000
--- a/client/lib/config/assets.ts
+++ /dev/null
@@ -1,40 +0,0 @@
-import type { SpriteSpec } from "./sprites";
-import { SPRITE_SPECS } from "./sprites";
-
-export const IMAGES = new Map<string, HTMLImageElement>();
-
-export const loadSpritesIntoImageElements = (
- spriteSpecs: Partial<SpriteSpec>[]
-): Promise<void>[] => {
- const spritePromises: Promise<void>[] = [];
-
- for (const spriteSpec of spriteSpecs) {
- if (spriteSpec.sheet) {
- const img = new Image();
- img.src = spriteSpec.sheet;
- IMAGES.set(spriteSpec.sheet, img);
-
- spritePromises.push(
- new Promise((resolve) => {
- img.onload = () => resolve();
- })
- );
- }
-
- if (spriteSpec.states) {
- spritePromises.push(
- ...loadSpritesIntoImageElements(Object.values(spriteSpec.states))
- );
- }
- }
-
- return spritePromises;
-};
-
-export const loadAssets = () =>
- Promise.all([
- ...loadSpritesIntoImageElements(
- Array.from(SPRITE_SPECS.keys()).map((key) => SPRITE_SPECS.get(key))
- ),
- // TODO: Sound
- ]);
diff --git a/client/lib/config/constants.ts b/client/lib/config/constants.ts
deleted file mode 100644
index 27c8160..0000000
--- a/client/lib/config/constants.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { Action } from "../interfaces";
-
-export namespace KeyConstants {
- export const KeyActions: Record<string, Action> = {
- a: Action.MOVE_LEFT,
- ArrowLeft: Action.MOVE_LEFT,
- d: Action.MOVE_RIGHT,
- ArrowRight: Action.MOVE_RIGHT,
- w: Action.JUMP,
- ArrowUp: Action.JUMP,
- };
-
- export const ActionKeys: Map<Action, string[]> = Object.keys(
- KeyActions
- ).reduce((acc: Map<Action, string[]>, key) => {
- const action = KeyActions[key];
-
- if (acc.has(action)) {
- acc.get(action).push(key);
- return acc;
- }
-
- acc.set(action, [key]);
- return acc;
- }, new Map<Action, string[]>());
-}
-
-export namespace PhysicsConstants {
- export const MAX_JUMP_TIME_MS = 150;
- export const GRAVITY = 0.0075;
- export const PLAYER_MOVE_VEL = 1;
- export const PLAYER_JUMP_ACC = -0.01;
- export const PLAYER_JUMP_INITIAL_VEL = -0.9;
-}
diff --git a/client/lib/config/index.ts b/client/lib/config/index.ts
deleted file mode 100644
index 7a1052a..0000000
--- a/client/lib/config/index.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export * from "./constants";
-export * from "./assets.ts";
-export * from "./sprites.ts";
diff --git a/client/lib/config/sprites.ts b/client/lib/config/sprites.ts
deleted file mode 100644
index 18bec73..0000000
--- a/client/lib/config/sprites.ts
+++ /dev/null
@@ -1,49 +0,0 @@
-export enum Sprites {
- FLOOR,
- TRAMPOLINE,
- COFFEE,
-}
-
-export interface SpriteSpec {
- sheet: string;
- width: number;
- height: number;
- frames: number;
- msPerFrame: number;
- states?: Record<string | number, Partial<SpriteSpec>>;
-}
-
-export const SPRITE_SPECS: Map<Sprites, Partial<SpriteSpec>> = new Map<
- Sprites,
- SpriteSpec
->();
-
-const floorSpriteSpec = {
- height: 40,
- frames: 3,
- msPerFrame: 125,
- states: {},
-};
-floorSpriteSpec.states = [40, 80, 120, 160].reduce((acc, cur) => {
- acc[cur] = {
- width: cur,
- sheet: `/assets/floor_tile_${cur}.png`,
- };
- return acc;
-}, {});
-SPRITE_SPECS.set(Sprites.FLOOR, floorSpriteSpec);
-
-SPRITE_SPECS.set(Sprites.COFFEE, {
- msPerFrame: 100,
- width: 60,
- height: 45,
- frames: 3,
- states: {
- LEFT: {
- sheet: "/assets/coffee_left.png",
- },
- RIGHT: {
- sheet: "/assets/coffee_right.png",
- },
- },
-});