- 19 TypeScript modules under src/ (constants, entities, room, game, render) - Canvas 2D rendering with dark fantasy palette - Room-based navigation, random 7x7 map generation - Two combat modes: ranged (pistol) and melee (knife) - Wall collision with door opening support - Minimap, HP bar, enemy AI - Bun build pipeline: src/main.ts -> dist/main.js + dist/index.html
18 lines
350 B
TypeScript
18 lines
350 B
TypeScript
export type RoomType = 'spawn' | 'normal' | 'treasure' | 'boss';
|
|
export type Dir = 'up' | 'down' | 'left' | 'right';
|
|
export type CombatMode = 0 | 1; // MODE_RANGED | MODE_MELEE
|
|
|
|
export interface Box {
|
|
x: number;
|
|
y: number;
|
|
w: number;
|
|
h: number;
|
|
}
|
|
|
|
export interface Doors {
|
|
up: boolean;
|
|
down: boolean;
|
|
left: boolean;
|
|
right: boolean;
|
|
}
|