Initialize skirmish board and refactor states

- Create `GameStates` from a `&Cli` and initialize the skirmish board in
  `App::new`.
- Move map dimensions to `SkirmishState` and add a `board_cells` vector
  populated by `CellWidget`s.
- Refactor `SettingsState` to store only user‑specific settings (fields
  are cloned).
- Update `BoardWidget` to hold a reference to the cell vector and use
  the new dimensions.
- Adjust CLI defaults: map width to 50 and map height to 25.
This commit is contained in:
2026-03-27 19:25:20 +01:00
parent a0186ea0cb
commit 9300eef906
7 changed files with 62 additions and 31 deletions
-2
View File
@@ -4,8 +4,6 @@ use crate::app::states::{GameMode, PerkDecks};
pub struct SettingsState {
pub username: String,
pub game_mode: GameMode,
pub map_width: u8,
pub map_height: u8,
pub perk_deck: PerkDecks,
pub starting_wood: u16,
pub starting_iron: u16,