No description
- LiveScript 52.9%
- TypeScript 32.2%
- JavaScript 14.7%
- CSS 0.1%
Bitmap members showed only "Bitmap data stored in BITD chunk" — the extension had no decoder, even though packages/director-format already had one the player runs the real client with. src/media/ ports that decoder (BITD PackBits + per-depth decode, the built-in system palettes, CASt bitmap geometry) and adds the glue the extension needs: resolving a member's palette from its CLUT member or a built-in, applying the separate ALFA alpha chunk, and a small RGBA PNG encoder so previews are a data URI and extraction writes real .png. - Bitmap members render with zoom, checkerboard and a reg-point overlay, plus depth, palette name, alpha source and stored/decoded sizes - Palette members render their colour table as swatches - Extract to Folder writes .png per bitmap (raw .bitd only when a member cannot be decoded) and .palette.png per palette - New: export one member on its own — "Export..." in the member view or the save icon on any tree row. Bitmap -> .png, palette -> .palette.png, text -> .txt, script -> .ls (or .lscr), anything else -> its raw chunk The player ignores ALFA chunks, so previews here can show transparency the client currently draws opaque (e.g. catalogue "deal" corner badges). Verified: 14,671 bitmaps and 1,245 palette members across dcr/ decode without error (depths 1/2/4/8/16/32, 89 with ALFA alpha), and 2,898 bitmaps in hh_interface, hh_pets_50, hh_cat_gfx_all_v24 and hh_people_1 are pixel-identical to what packages/director-format produces. 19 new tests; 217 of 228 pass (the 11 failures are the pre-existing ProjectorRays suite, which spawns a Windows .exe). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| .planning | ||
| dcr | ||
| decompiled | ||
| deploy | ||
| docs | ||
| packages | ||
| resources | ||
| skills/habbo-architecture | ||
| tools | ||
| .gitignore | ||
| CLAUDE.md | ||
| external_texts.txt | ||
| external_variables.txt | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.base.json | ||
| vitest.config.ts | ||