From 1edbee505f2f026ab78603fcb0a38f3acbd0dad1 Mon Sep 17 00:00:00 2001 From: tom barrett Date: Wed, 28 Feb 2018 06:33:25 -0600 Subject: -moved server modules into their respecive modules --- src/engines.rs | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'src/engines.rs') diff --git a/src/engines.rs b/src/engines.rs index b50a6ae..64d80bc 100644 --- a/src/engines.rs +++ b/src/engines.rs @@ -4,8 +4,13 @@ use termion::async_stdin; use std::thread::sleep; use std::io::{Read, Write, stdout}; use std::time::Duration; +use std::io::BufReader; +use std::io::BufRead; -pub fn Engines(mut stream : TcpStream) { +use ship::Ship; +use mass::Mass; + +pub fn client_engines(mut stream : TcpStream) { let stdout = stdout(); let mut stdout = stdout.lock().into_raw_mode().unwrap(); let mut stdin = async_stdin().bytes(); @@ -29,3 +34,27 @@ pub fn Engines(mut stream : TcpStream) { sleep(Duration::from_millis(100)); } } + +pub fn server_engines(buff_r : &mut BufReader, ship : &mut Box) -> bool { + let mut acceleration = (0.0, 0.0, 0.0); + let mut data = String::new(); + match buff_r.read_line(&mut data) { + Ok(result) => match data.as_bytes() { + b"5\n" => acceleration.0 += 0.1, + b"0\n" => acceleration.0 -= 0.1, + b"8\n" => acceleration.1 += 0.1, + b"2\n" => acceleration.1 -= 0.1, + b"4\n" => acceleration.2 += 0.1, + b"6\n" => acceleration.2 -= 0.1, + b"-\n" => ship.slow(), + _ => { + if result == 0 { + return false + } + }, + }, + Err(_error) => (), + } + ship.give_acceleration(acceleration); + true +} -- cgit v1.2.3