diff options
Diffstat (limited to 'src/modules/engines.rs')
-rw-r--r-- | src/modules/engines.rs | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/modules/engines.rs b/src/modules/engines.rs index fa16bf9..ab6335a 100644 --- a/src/modules/engines.rs +++ b/src/modules/engines.rs @@ -30,27 +30,15 @@ impl Engines { } } - pub fn recv_acceleration(&mut self) -> Vector { - let acceleration = self.acceleration.clone(); - self.acceleration = Vector::default(); - - if self.fuel - acceleration.magnitude() >= 0.0 { - self.fuel -= acceleration.magnitude(); - acceleration - } else { - Vector::default() - } - } - - pub fn give_client_data( + pub fn give_recv( &mut self, + recv: String, position: Vector, velocity: Vector, target: Option<&Mass>, - data: String, ) { let mut acceleration = Vector::default(); - match data.as_str() { + match recv.as_str() { "5" => acceleration.x += 0.1, "0" => acceleration.x -= 0.1, "8" => acceleration.y += 0.1, @@ -78,4 +66,16 @@ impl Engines { } self.acceleration = acceleration; } + + pub fn take_acceleration(&mut self) -> Vector { + let acceleration = self.acceleration.clone(); + self.acceleration = Vector::default(); + + if self.fuel - acceleration.magnitude() >= 0.0 { + self.fuel -= acceleration.magnitude(); + acceleration + } else { + Vector::default() + } + } } |