From 45fee92eea0ec740a835267a972f21149c23f9e5 Mon Sep 17 00:00:00 2001 From: Rendo Date: Sat, 15 Nov 2025 10:32:49 +0500 Subject: [PATCH] refactor --- src/damagable/mod.rs | 87 ------------------------------ src/main.rs | 5 +- src/movable.rs | 31 +++++++++++ src/{damagable => ships}/enemy.rs | 0 src/ships/mod.rs | 2 + src/{damagable => ships}/player.rs | 2 +- 6 files changed, 37 insertions(+), 90 deletions(-) delete mode 100644 src/damagable/mod.rs create mode 100644 src/movable.rs rename src/{damagable => ships}/enemy.rs (100%) create mode 100644 src/ships/mod.rs rename src/{damagable => ships}/player.rs (96%) diff --git a/src/damagable/mod.rs b/src/damagable/mod.rs deleted file mode 100644 index deb9cf6..0000000 --- a/src/damagable/mod.rs +++ /dev/null @@ -1,87 +0,0 @@ -use bevy::prelude::*; - -use crate::{ - collision::{Collided, Collider}, - damagable::{ - enemy::Enemy, - player::{Player, player_movement_system}, - }, -}; - -pub mod enemy; -pub mod player; - -pub struct DamagablePlugin; - -impl Plugin for DamagablePlugin { - fn build(&self, app: &mut App) { - app.insert_resource(Time::::from_hz(60.0)) - .add_systems(Startup, setup) - .add_systems( - FixedUpdate, - (player_movement_system, movement_system).chain(), - ); - } -} - -#[derive(Component)] -pub struct Damagable { - hp: u32, -} - -#[derive(Component)] -pub struct Movable { - linear_speed: f32, - rotation_speed: f32, - max_linear_speed: f32, - max_rotation_speed: f32, -} - -fn setup(mut commands: Commands, asset_server: Res) { - let player_sprite: Handle = asset_server.load("player.png"); - let enemy_sprite: Handle = asset_server.load("enemy.png"); - - commands.spawn(Camera2d); - - //Create player - commands.spawn(( - Player { acceleration: 100. }, - Movable { - linear_speed: 0., - rotation_speed: 0., - max_linear_speed: 500., - max_rotation_speed: f32::to_radians(360.), - }, - Damagable { hp: 10 }, - Sprite::from_image(player_sprite), - Transform::from_xyz(20., 20., 0.), - Collider::new(8.), - )); - - commands.spawn(( - Enemy, - Movable { - linear_speed: 0., - rotation_speed: 0., - max_linear_speed: 500., - max_rotation_speed: f32::to_radians(360.), - }, - Damagable { hp: 10 }, - Sprite::from_image(enemy_sprite), - Transform::from_xyz(0., 0., 0.), - Collider::new(8.), - )); -} - -fn movement_system(time: Res