pub mod condition; pub mod interface; pub mod protocol; use crossbeam_channel::{Receiver, Sender}; use interface::network_loop; use protocol::{ClientboundPacket, ServerboundPacket}; use std::time::Duration; fn main() { let (s, r) = crossbeam_channel::unbounded(); std::thread::spawn(move || network_loop(s)); main_loop(r) } fn main_loop(packets: Receiver<(u32, ServerboundPacket, Sender)>) { loop { for (client_id, packet, responder) in packets.try_iter() { println!("{:?}, {:?}, {:?}", client_id, packet, responder); } std::thread::sleep(Duration::from_secs_f64(10.0 / 30.0)); } }