bevy client connexion ok

This commit is contained in:
Henri Bourcereau 2023-10-31 16:29:05 +01:00
parent b48ab964d8
commit 12f9b843ff
2 changed files with 7 additions and 10 deletions

View file

@ -1,14 +1,12 @@
use bevy::prelude::*; use bevy::prelude::*;
use bevy_renet::RenetClientPlugin;
use std::{net::UdpSocket, time::SystemTime}; use std::{net::UdpSocket, time::SystemTime};
use renet::{ use bevy_renet::{
transport::{ renet::{transport::ClientAuthentication, ConnectionConfig, RenetClient},
ClientAuthentication, NetcodeClientTransport, NetcodeTransportError, transport::NetcodeClientPlugin,
NETCODE_USER_DATA_BYTES, RenetClientPlugin,
},
ConnectionConfig, RenetClient,
}; };
use renet::transport::{NetcodeClientTransport, NetcodeTransportError, NETCODE_USER_DATA_BYTES};
// This id needs to be the same as the server is using // This id needs to be the same as the server is using
const PROTOCOL_ID: u64 = 2878; const PROTOCOL_ID: u64 = 2878;
@ -33,6 +31,7 @@ fn main() {
})) }))
// Renet setup // Renet setup
.add_plugins(RenetClientPlugin) .add_plugins(RenetClientPlugin)
.add_plugins(NetcodeClientPlugin)
.insert_resource(client) .insert_resource(client)
.insert_resource(transport) .insert_resource(transport)
.add_systems(Update, panic_on_error_system) .add_systems(Update, panic_on_error_system)

View file

@ -58,11 +58,9 @@ fn main() {
// Receive connection events from clients // Receive connection events from clients
while let Some(event) = server.get_event() { while let Some(event) = server.get_event() {
trace!("event received");
match event { match event {
ServerEvent::ClientConnected { client_id } => { ServerEvent::ClientConnected { client_id } => {
let user_data = transport.user_data(client_id).unwrap(); let user_data = transport.user_data(client_id).unwrap();
info!("🎉 Client {} connected.", client_id);
// Tell the recently joined player about the other player // Tell the recently joined player about the other player
for (player_id, player) in game_state.players.iter() { for (player_id, player) in game_state.players.iter() {
@ -83,7 +81,7 @@ fn main() {
// Tell all players that a new player has joined // Tell all players that a new player has joined
server.broadcast_message(0, bincode::serialize(&event).unwrap()); server.broadcast_message(0, bincode::serialize(&event).unwrap());
info!("Client {} connected.", client_id); info!("🎉 Client {} connected.", client_id);
// In TicTacTussle the game can begin once two players has joined // In TicTacTussle the game can begin once two players has joined
if game_state.players.len() == 2 { if game_state.players.len() == 2 {
let event = store::GameEvent::BeginGame { let event = store::GameEvent::BeginGame {