From 20f0072c81383bd219056b34c984ccbd2abd58eb Mon Sep 17 00:00:00 2001 From: ghostlyzsh Date: Tue, 12 Dec 2023 22:13:20 -0600 Subject: [PATCH] more modules --- server/src/component.rs | 13 ++++++++++ server/src/main.rs | 56 +++++++++++++++++++++++++---------------- 2 files changed, 47 insertions(+), 22 deletions(-) diff --git a/server/src/component.rs b/server/src/component.rs index 835b9bb36b5ddae8ae49895873bc9d3f6e4c8c3f..570886a9cb2f36f667cf922a369589d18dc53c48 100644 --- a/server/src/component.rs +++ b/server/src/component.rs @@ -69,3 +69,16 @@ pub struct PlayerBundle { pub player: Player, pub attach: Attach, } + +#[derive(Resource)] +pub struct ModuleTimer(pub Timer); +impl ModuleTimer { + pub fn new() -> Self { + Self(Timer::from_seconds(3.0, TimerMode::Repeating)) + } +} +impl Default for ModuleTimer { + fn default() -> Self { + Self::new() + } +} diff --git a/server/src/main.rs b/server/src/main.rs index 630d79b5d77aa621d45816c9f0806deebd088957..fbef3cfd2577919ecd616ea94e835789e8131e65 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -54,11 +54,12 @@ fn main() { gravity: Vect { x: 0.0, y: 0.0 }, ..Default::default() }) + .init_resource::() .add_plugins(RapierPhysicsPlugin::::pixels_per_meter(SCALE)) .add_plugins(TwiteServerPlugin) .add_systems(Startup, setup_integration_parameters) .add_systems(Startup, spawn_planets) - .add_systems(Startup, module_spawn) + .add_systems(FixedUpdate, module_spawn) .add_systems(Update, on_message) .add_systems(Update, on_close) .add_systems(FixedUpdate, on_position_change) @@ -89,27 +90,38 @@ fn spawn_planets(mut commands: Commands) { .insert(ReadMassProperties::default()) .insert(RigidBody::Fixed); } -fn module_spawn(mut commands: Commands) { - commands - .spawn(PartBundle { - part_type: PartType::Cargo, - transform: TransformBundle::from(Transform::from_xyz(1100. / SCALE, 0., 0.)), - }) - //.insert(Collider::cuboid(18.75 / SCALE, 23.4375 / SCALE)) - .insert(RigidBody::Dynamic) - .with_children(|children| { - children - .spawn(Collider::cuboid(18.75 / SCALE, 23.4375 / SCALE)) - .insert(TransformBundle::from(Transform::from_xyz( - 0., - 1.5625 / SCALE, - 0., - ))); - }) - .insert(ExternalForce::default()) - .insert(ExternalImpulse::default()) - .insert(Velocity::default()) - .insert(ReadMassProperties::default()); +fn module_spawn(mut commands: Commands, time: Res