mod animation; mod audio; mod boot; mod deck; mod menu; mod play; mod setup; mod view; #[cfg(debug_assertions)] mod debug; use bevy::prelude::*; fn main() { let primary_window = Some(Window { // web: fill the window fit_canvas_to_parent: true, ..default() }); App::new() .add_plugins( DefaultPlugins .set(ImagePlugin::default_nearest()) .set(WindowPlugin { primary_window, ..default() }), ) .add_plugins(( animation::AnimationPlugin, audio::AudioPlugin, boot::BootPlugin, menu::MenuPlugin, play::PlayPlugin, setup::SetupPlugin, view::ViewPlugin, deck::DeckPlugin, { #[cfg(debug_assertions)] debug::DebugPlugin }, )) .init_state::() .run(); } #[derive(States, Default, Debug, Clone, PartialEq, Eq, Hash)] pub(crate) enum GameState { #[default] Boot, Setup, NewGame, Main, }