2025-03-08 13:58:24 -05:00
|
|
|
use kawari::packet::parse_packet;
|
2025-03-08 13:51:50 -05:00
|
|
|
use tokio::io::AsyncReadExt;
|
|
|
|
use tokio::net::TcpListener;
|
|
|
|
|
|
|
|
#[tokio::main]
|
|
|
|
async fn main() {
|
|
|
|
tracing_subscriber::fmt::init();
|
|
|
|
|
|
|
|
let listener = TcpListener::bind("127.0.0.1:7000").await.unwrap();
|
|
|
|
|
|
|
|
tracing::info!("Lobby server started on 7000");
|
|
|
|
|
|
|
|
loop {
|
|
|
|
let (socket, _) = listener.accept().await.unwrap();
|
2025-03-08 15:27:28 -05:00
|
|
|
let (mut read, mut write) = tokio::io::split(socket);
|
2025-03-08 13:51:50 -05:00
|
|
|
|
|
|
|
tokio::spawn(async move {
|
|
|
|
let mut buf = [0; 2056];
|
|
|
|
loop {
|
2025-03-08 14:38:31 -05:00
|
|
|
let n = read.read(&mut buf).await.expect("Failed to read data!");
|
2025-03-08 13:51:50 -05:00
|
|
|
|
2025-03-08 14:38:31 -05:00
|
|
|
if n != 0 {
|
2025-03-08 15:27:28 -05:00
|
|
|
parse_packet(&mut write, &buf[..n]).await;
|
2025-03-08 14:38:31 -05:00
|
|
|
}
|
2025-03-08 13:51:50 -05:00
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|