diff options
Diffstat (limited to 'server/registry/src')
| -rw-r--r-- | server/registry/src/lobby.rs | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/server/registry/src/lobby.rs b/server/registry/src/lobby.rs index acbb69bd..eb6ae1f0 100644 --- a/server/registry/src/lobby.rs +++ b/server/registry/src/lobby.rs @@ -1,7 +1,7 @@ use crate::Registry; use anyhow::Result; use hurrycurry_protocol::{ - Gamedata, PacketC, PacketS, PlayerClass, PlayerID, TileIndex, VERSION, + Gamedata, PacketC, PacketS, PlayerClass, PlayerID, Serverdata, TileIndex, VERSION, glam::{IVec2, Vec2, ivec2, vec2}, movement::MovementBase, registry::Entry, @@ -23,7 +23,9 @@ use tokio::{ use tokio_tungstenite::tungstenite::Message; pub(crate) async fn lobby_wrapper(registry: Arc<RwLock<Registry>>, saddr: SocketAddr) { - let Err(e) = lobby(registry, saddr).await else { unreachable!() }; + let Err(e) = lobby(registry, saddr).await else { + unreachable!() + }; error!("lobby crashed: {e}"); } @@ -73,7 +75,15 @@ async fn handle_conn(sock: TcpStream, addr: SocketAddr, entries: &[Entry]) -> Re minor: VERSION.1, supports_bincode: false, }); - out.push(PacketC::Data { + out.push(PacketC::ServerData { + data: Box::new(Serverdata { + bot_algos: vec![], + maps: vec![], + motd: None, + name: "Registry".to_string(), + }), + }); + out.push(PacketC::GameData { data: Box::new(Gamedata { tile_collide: (0..TILES.len()).map(TileIndex).collect(), tile_placeable_items: BTreeMap::new(), |