📝 update CHANGELOG for Issue #5 zoom-to-mouse

This commit is contained in:
2026-03-21 12:01:38 +00:00
parent 3fdf621966
commit 71aee058b5

View File

@@ -20,8 +20,12 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Villagers are now called **Nisse** throughout the UI (panel, controls hint, stockpile display, context menu, spawn message) - Villagers are now called **Nisse** throughout the UI (panel, controls hint, stockpile display, context menu, spawn message)
### Added ### Added
- Scroll wheel now zooms toward the mouse cursor position instead of the screen center - Scroll wheel zooms toward the mouse cursor position (zoom-to-mouse), correctly accounting for Phaser's center-based zoom model
- Middle mouse button held: pan the camera by dragging - Middle mouse button held: pan the camera by dragging
- Test environment at `/test.html` with `ZoomTestScene` (Phaser default) and `ZoomMouseScene` (zoom-to-mouse) for camera behaviour analysis; file-logging via Vite middleware to `game-test.log`
### Fixed
- `getCenterWorld()` in `CameraSystem` returned wrong world coordinates at zoom ≠ 1; corrected from `scrollX + width/(2·zoom)` to `scrollX + width/2`
- Right-click context menu: suppresses browser default, shows Build and Nisse actions in the game world - Right-click context menu: suppresses browser default, shows Build and Nisse actions in the game world
- Initial project setup: Phaser 3 + TypeScript + Vite - Initial project setup: Phaser 3 + TypeScript + Vite
- Core scenes: `BootScene`, `GameScene`, `UIScene` - Core scenes: `BootScene`, `GameScene`, `UIScene`