Commit Graph

8 Commits

Author SHA1 Message Date
e911413d84 feat(scene): add credits scene and UI 2026-07-14 16:28:26 +08:00
618d3f1294 feat(ui): add HUD visibility toggle and image fill features 2026-07-14 15:27:55 +08:00
969c78ce5e refactor(scene): dispatch events via typed handlers and move pause toggle to WorldScene 2026-07-14 11:55:01 +08:00
03f539eb9f feat(scene): implement pause menu with UI manager and escape key toggling
Add PauseMenuUIManager class and integrate pause state into WorldScene.
Escape key toggles pause in ClientPlayer and PauseMenuUIManager.
Refactor Window mouse and imgui control to support pause state.
2026-07-14 11:27:39 +08:00
d1db165ca3 refactor: move server logic to WorldScene and refactor UI methods 2026-07-14 09:44:52 +08:00
01c9f61d1c ui: add main menu scene and interactive button widget
- Implement MainMenuScene with a "Start Game" button that pushes the WorldScene.
- Extend Button class with background/foreground, hover detection, and size queries.
- Add virtual width/height and event handlers to Widget base class.
- Update WorldUIManager to propagate mouse move events.
- Adjust Window mouse mode based on game running state.
2026-07-13 10:38:30 +08:00
cb1eb25e7b refactor: add framebuffer resize event and separate UI management 2026-07-12 18:38:42 +08:00
5712ba0600 refactor(core): add event system and scene management
- Introduce Event variant and Overloaded helper for input handling
- Move game state (camera, client_world, dev_panel) from App to WorldScene
- Add SceneManager with push/pop/change operations for scene stack
- Refactor input callbacks to dispatch events through scene hierarchy
- Extract Argument struct to separate header
- Update Renderer and WorldRenderer to accept world reference
- Replace global input state with event-driven processing in ClientPlayer, Camera, etc.
2026-07-12 16:05:59 +08:00