From 2dc7107953e32ef90bc8e2c4c6233b3f351dd4ae Mon Sep 17 00:00:00 2001 From: Masonlet Date: Tue, 14 Jul 2026 19:53:46 -0400 Subject: [PATCH 1/2] feat: add bootstrapGame and transition helpers --- src/bootstrap.ts | 12 ++++++++++++ src/transition.ts | 10 ++++++++++ 2 files changed, 22 insertions(+) create mode 100644 src/bootstrap.ts create mode 100644 src/transition.ts diff --git a/src/bootstrap.ts b/src/bootstrap.ts new file mode 100644 index 0000000..a45c6a9 --- /dev/null +++ b/src/bootstrap.ts @@ -0,0 +1,12 @@ +import { createGameCanvas } from "./canvas.js"; +import { initKeyboard } from "./input/keyboard.js"; +import { initPointer } from "./input/pointer.js"; + +export function bootstrapGame() { + const { canvas, ctx, size } = createGameCanvas(); + + initKeyboard(); + initPointer(canvas); + + return { canvas, ctx, size }; +} diff --git a/src/transition.ts b/src/transition.ts new file mode 100644 index 0000000..2e6d721 --- /dev/null +++ b/src/transition.ts @@ -0,0 +1,10 @@ +import { flushPointer } from "./input/pointer.js"; +import { flushKeyboard } from "./input/keyboard.js"; + +export function transition(frame: T, audio: { playSound(name: string): void }, fn?: () => void): T { + audio.playSound("button"); + fn?.(); + flushPointer(); + flushKeyboard(); + return frame; +} From 0aab91341029ad2d5e9f52ca27f9e7d3c3a65352 Mon Sep 17 00:00:00 2001 From: Masonlet Date: Tue, 14 Jul 2026 19:54:36 -0400 Subject: [PATCH 2/2] chore: bump v0.0.4 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 34fe79a..a78bfba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@starweb-libs/engine", - "version": "0.0.3", + "version": "0.0.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@starweb-libs/engine", - "version": "0.0.3", + "version": "0.0.4", "license": "MIT", "devDependencies": { "tsdown": "^0.22.0", diff --git a/package.json b/package.json index 842f022..616d7a4 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@starweb-libs/engine", "description": "A lightweight 2D game engine for the browser", "author": "Mason L'Etoile", - "version": "0.0.3", + "version": "0.0.4", "license": "MIT", "repository": { "type": "git",