From f24ad292ca3b0956ed35c4ced5a0719cd568b510 Mon Sep 17 00:00:00 2001
From: troytt <47798984@qq.com>
Date: Tue, 22 Sep 2026 02:38:22 +0000
Subject: [PATCH] feat(char): pack and render all 7 hero classes with R8
atlases and tests
---
acts.html | 10 +
scripts/pack-characters.ts | 186 +++++
scripts/verify-controlbar-browser.ts | 296 ++++++++
scripts/verify-exp-bar-m1.ts | 205 ++++++
src/game/character.ts | 8 +-
src/scene/act-scene.ts | 279 +++++++-
tests/challenger-m1-controlbar-stress.test.ts | 652 ++++++++++++++++++
tests/exp-bar-m1-stress.test.ts | 297 ++++++++
tests/hero-classes-art.test.ts | 143 ++++
9 files changed, 2048 insertions(+), 28 deletions(-)
create mode 100644 scripts/pack-characters.ts
create mode 100644 scripts/verify-controlbar-browser.ts
create mode 100644 scripts/verify-exp-bar-m1.ts
create mode 100644 tests/challenger-m1-controlbar-stress.test.ts
create mode 100644 tests/exp-bar-m1-stress.test.ts
create mode 100644 tests/hero-classes-art.test.ts
diff --git a/acts.html b/acts.html
index c928151..e0afa56 100644
--- a/acts.html
+++ b/acts.html
@@ -27,6 +27,7 @@
optgroup { background: #1c1813; color: #c8a15a; }
option { background: #1c1813; }
#status { left: 12px; top: 34px; padding: 3px 8px; max-width: 55vw; color: #9c8d78; font-size: 11px; opacity: 0.85; pointer-events: none; z-index: 3; }
+ #status:empty { display: none; }
#dialog { right: 12px; top: 42px; padding: 8px 12px; min-width: 240px; color: #e8dcc8; white-space: pre-wrap; font-size: 14px; background: rgba(30, 26, 21, .9); border-color: #c8a15a; z-index: 5; }
#d2-hud-canvas { position: fixed; inset: 0; width: 100%; height: 100%; display: block; z-index: 6; pointer-events: none; image-rendering: pixelated; }
.hint { color: #6d5a34; }
@@ -38,6 +39,15 @@
—
+