mirror of
https://github.com/isledecomp/isle.pizza.git
synced 2026-02-28 05:47:39 +00:00
|
Some checks are pending
Build / build (push) Waiting to run
* WIP * stuff * WIP: Interactive 3D score cube for save editor * Conditionally render ScoreCube to properly clean up WebGL canvas Only mount the ScoreCube component when on the save-editor page. This ensures onDestroy is called when navigating away, properly disposing of the WebGL renderer and removing the canvas from DOM. * Refactor: Consolidate formats and genericize WDB rendering - Move parsing/serialization code to src/core/formats/: - BinaryReader.js, BinaryWriter.js (shared utilities) - SaveGameParser.js, SaveGameSerializer.js - PlayersParser.js, PlayersSerializer.js - Create formats/index.js as barrel export - Extract generic WdbModelRenderer from ScoreCubeRenderer: - WdbModelRenderer handles D3DRM geometry and paletted textures - ScoreCubeRenderer extends it with score-specific logic - Prepares for rendering other WDB models in the future - Keep savegame/constants.js for domain-specific constants - savegame/index.js remains as high-level API facade * Save editor UI improvements - Make save slot cards fixed width (85px) to prevent resizing with name length - Make save slot cards more compact (smaller icons, padding, font) - Remove Act selection from Character section - Remove box-shadow from selected character to fix collapsed section bleed * Improve score cube lighting to match in-game appearance - Use flat, even lighting (high ambient + soft front light) - Remove harsh directional shadows from edges - Adjust camera position slightly for better framing * Add spacing below score cube canvas * Add spinning loader while loading score cube * Update three.js to 0.182.0 and fix npm audit issues - Update three.js from 0.170.0 to 0.182.0 - Fix npm audit vulnerabilities (devalue, lodash, svelte) - Remaining vulns are in dev dependencies (vite, workbox-cli) * Fix score cube overflow on mobile Add max-width constraints to prevent the score cube from expanding its container on narrow viewports while preserving its natural 200x200 size on desktop. * Add save slot carousel and improve empty states - Add reusable Carousel component with arrow navigation, drag-to-scroll, and click-to-scroll-into-view functionality - Replace static save slot list with horizontal carousel - Add empty state with image when no save files exist - Add prompt state when saves exist but none is selected - Reset selected slot when entering Save Editor page * Add February 2026 changelog entry for Save Editor * Add missing January 2026 changelog entries for Safari and mobile fixes * Remove unused mission images * Refactor opfs.js to reduce code duplication - Consolidate getFileHandle to use getOpfsRoot internally - Add writeTextFile helper that uses writeBinaryFile - Extract showToast helper for toast notifications - Simplify saveConfig to use writeTextFile instead of duplicate worker - Simplify fileExists and readBinaryFile to use getFileHandle * Remove unused ScoreColorButton component * Remove unused UI components |
||
|---|---|---|
| .. | ||
| workbox | ||
| bonus.webp | ||
| callfail.webp | ||
| cancel_off.webp | ||
| cancel_on.webp | ||
| cdspin.gif | ||
| comic.pdf | ||
| configure_off.webp | ||
| configure_on.webp | ||
| congrats.webp | ||
| downloader.js | ||
| favicon.png | ||
| favicon.svg | ||
| free_stuff_off.webp | ||
| free_stuff_on.webp | ||
| getinfo.webp | ||
| install_off.webp | ||
| install_on.webp | ||
| install.mp3 | ||
| install.webp | ||
| island.webp | ||
| later.webp | ||
| laura-selected.webp | ||
| laura.webp | ||
| mama-selected.webp | ||
| mama.webp | ||
| manifest.json | ||
| nick-selected.webp | ||
| nick.webp | ||
| ogel.webp | ||
| papa-selected.webp | ||
| papa.webp | ||
| pepper-selected.webp | ||
| pepper.webp | ||
| poster.pdf | ||
| read_me_off.webp | ||
| read_me_on.webp | ||
| register.webp | ||
| run_game_off.webp | ||
| run_game_on.webp | ||
| save.webp | ||
| send.webp | ||
| shark.webp | ||
| sysinfo.webp | ||
| uninstall_off.webp | ||
| uninstall_on.webp | ||