diff --git a/src/main.rs b/src/main.rs index cb9d5de..f2efb27 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,7 @@ use bevy::{prelude::*, window::PresentMode}; +use crate::player::PlayerPlugin; + mod player; fn main() { @@ -15,6 +17,7 @@ fn main() { })) .insert_resource(ClearColor(Color::srgb(0.0, 0.0, 0.0))) .add_systems(Startup, setup) + .add_plugins(PlayerPlugin) .run(); } diff --git a/src/player.rs b/src/player.rs index d50f150..60e0eed 100644 --- a/src/player.rs +++ b/src/player.rs @@ -12,11 +12,53 @@ struct Player; #[derive(Component)] struct Velocity(Vec2); -// Spawn player -fn spawn_player(mut command: Commands) { - command.spawn(( +// Spawn entity player +fn spawn_player(mut commands: Commands) { + commands.spawn(( Player, Velocity(Vec2::ZERO), - Sprite::from_color(Color::srgb(128.0, 0.0, 128.0), Vec2::new(20.0, 40.0)), + Sprite::from_color(Color::srgb(0.5, 0.5, 0.5), Vec2::new(20.0, 40.0)), + Transform::from_xyz(0.0, 350.0, 0.0), // Top of the screen )); } + +// Input + movement system for the player +fn move_player( + input: Res>, + time: Res