diff options
Diffstat (limited to 'games/rstnode/rst-client/src/main.rs')
-rw-r--r-- | games/rstnode/rst-client/src/main.rs | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/games/rstnode/rst-client/src/main.rs b/games/rstnode/rst-client/src/main.rs index 57a686a19d74..b86ee341075e 100644 --- a/games/rstnode/rst-client/src/main.rs +++ b/games/rstnode/rst-client/src/main.rs @@ -1,10 +1,15 @@ //! RST Node game client +#[macro_use] +extern crate tracing; + mod assets; mod cli; mod constants; mod ctx; +mod error; mod graphics; +mod log; mod settings; mod state; mod window; @@ -14,8 +19,22 @@ pub(crate) use settings::{GameSettings, GraphicsSettings, WindowSettings}; pub(crate) use state::*; fn main() { - let settings = settings::default(); + // Initialise logging mechanism + log::initialise(); + + // Initialise default game settings + let mut settings = settings::default(); + + // Parse commandline arguments + cli::parse(&mut settings); + + // Initialise window context + let mut window = window::create(&settings); + + // Load assets tree + let assets = + assets::load_tree(window.ctx(), &settings).unwrap_or_else(|e| fatal!("LoadError: {}!", e)); + let state = ClientState::new(settings, assets); - let state = ClientState::new(&settings); - window::run(&settings, state) + window.run(state) } |