feat(gameplay): add starting base module and refine galaxy/character creation systems

Co-Authored-By: Oz <oz-agent@warp.dev>
This commit is contained in:
2026-06-12 23:40:33 -04:00
parent 71c6d18817
commit d139dc08d9
20 changed files with 1789 additions and 310 deletions

View File

@@ -5,8 +5,8 @@
//! spawn / despawn lifecycle, and handles the Escape → Galaxy shortcut.
//!
//! Persistence is not yet wired up — on Confirm, the current draft is logged
//! and the app transitions to [`AppState::InGame`]. The TODO is to persist it
//! to SpacetimeDB once the Rust SDK is integrated.
//! and the app transitions to [`AppState::StartingBaseSelection`]. The TODO is
//! to persist it to SpacetimeDB once the Rust SDK is integrated.
mod params;
mod ui;
@@ -39,6 +39,7 @@ impl Plugin for CharacterCreationPlugin {
Update,
(
escape_to_galaxy,
ui::scroll_character_creation_form,
ui::picker_button_handler,
ui::refresh_picker_values,
ui::action_button_handler,
@@ -78,10 +79,7 @@ fn despawn_character_creation(
// ── Input ───────────────────────────────────────────────────────────────────
fn escape_to_galaxy(
keys: Res<ButtonInput<KeyCode>>,
mut next_state: ResMut<NextState<AppState>>,
) {
fn escape_to_galaxy(keys: Res<ButtonInput<KeyCode>>, mut next_state: ResMut<NextState<AppState>>) {
if keys.just_pressed(KeyCode::Escape) {
next_state.set(AppState::Galaxy);
}