Skip to content

Commit

Permalink
Merge pull request #7 from de-grote/main
Browse files Browse the repository at this point in the history
update to bevy version 0.12
  • Loading branch information
aggyomfg authored Jan 13, 2024
2 parents 2707b3d + 32d0f7a commit 114c990
Show file tree
Hide file tree
Showing 10 changed files with 43 additions and 44 deletions.
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "bevy_slinet"
version = "0.7.0"
version = "0.8.0"
authors = ["Sliman4 <[email protected]>"]
edition = "2021"
license = "Apache-2.0 OR MIT"
Expand All @@ -22,7 +22,7 @@ features = [
]

[dependencies]
bevy = { version = "0.11.*", default-features = false }
bevy = { version = "0.12.*", default-features = false }
serde = "1"
byteorder = "1"
bincode = { version = "1", optional = true }
Expand Down
21 changes: 10 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,20 +46,19 @@ enum ServerPacket {
fn main() {
App::new()
.add_plugins(MinimalPlugins)
.add_plugin(ClientPlugin::<Config>::connect("127.0.0.1:3000"))
.add_system(connection_establish_system)
.add_system(packet_receive_system)
.add_plugins(ClientPlugin::<Config>::connect("127.0.0.1:3000"))
.add_systems(Update, (connection_establish_system, packet_receive_system))
.run()
}

fn connection_establish_system(mut events: EventReader<ConnectionEstablishEvent<Config>>) {
for _event in events.iter() {
for _event in events.read() {
println!("Connected!");
}
}

fn packet_receive_system(mut events: EventReader<PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ServerPacket::String(s) => println!("Got a message: {}", s),
}
Expand Down Expand Up @@ -105,22 +104,21 @@ enum ServerPacket {
fn main() {
App::new()
.add_plugins(MinimalPlugins)
.add_plugin(ServerPlugin::<Config>::bind("127.0.0.1:3000").unwrap())
.add_system(new_connection_system)
.add_system(packet_receive_system)
.add_plugins(ServerPlugin::<Config>::bind("127.0.0.1:3000").unwrap())
.add_systems(Update, (new_connection_system, packet_receive_system))
.run()
}

fn new_connection_system(mut events: EventReader<NewConnectionEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
event
.connection
.send(ServerPacket::String("Hello, Client!".to_string())).unwrap();
}
}

fn packet_receive_system(mut events: EventReader<PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ClientPacket::String(s) => println!("Got a message from a client: {}", s),
}
Expand All @@ -146,4 +144,5 @@ Note: you should implement keep-alive and disconnection systems yourself, or loo
| `0.5` | `0.9` |
| `0.6` | `0.10.1` |
| `0.7` | `0.11` |
| `main` | `0.11` |
| `0.8` | `0.12` |
| `main` | `0.12` |
6 changes: 3 additions & 3 deletions examples/hello_world_tcp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ fn main() {
}

fn server_new_connection_system(mut events: EventReader<NewConnectionEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
event
.connection
.send(ServerPacket::String("Hello, World!".to_string()))
Expand All @@ -75,7 +75,7 @@ fn server_new_connection_system(mut events: EventReader<NewConnectionEvent<Confi
}

fn client_packet_receive_system(mut events: EventReader<client::PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ServerPacket::String(s) => println!("Server -> Client: {s}"),
}
Expand All @@ -87,7 +87,7 @@ fn client_packet_receive_system(mut events: EventReader<client::PacketReceiveEve
}

fn server_packet_receive_system(mut events: EventReader<server::PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ClientPacket::String(s) => println!("Server <- Client: {s}"),
}
Expand Down
6 changes: 3 additions & 3 deletions examples/hello_world_udp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ fn main() {
}

fn server_new_connection_system(mut events: EventReader<NewConnectionEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
event
.connection
.send(ServerPacket::String("Hello, World!".to_string()))
Expand All @@ -75,7 +75,7 @@ fn server_new_connection_system(mut events: EventReader<NewConnectionEvent<Confi
}

fn client_packet_receive_system(mut events: EventReader<client::PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ServerPacket::String(s) => println!("Server -> Client: {s}"),
}
Expand All @@ -87,7 +87,7 @@ fn client_packet_receive_system(mut events: EventReader<client::PacketReceiveEve
}

fn server_packet_receive_system(mut events: EventReader<server::PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ClientPacket::String(s) => println!("Server <- Client: {s}"),
}
Expand Down
28 changes: 14 additions & 14 deletions examples/lobby_and_battle_servers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@ fn main() {
fn lobby_server_packet_handler(
mut event_reader: EventReader<server::PacketReceiveEvent<LobbyConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
log::info!("Client -> Lobby: {:?}", event.packet);
match event.packet {
LobbyClientPacket::Hello => {
Expand All @@ -228,7 +228,7 @@ fn lobby_server_accept_new_connections(
mut event_reader: EventReader<NewConnectionEvent<LobbyConfig>>,
mut keep_alive_map: ResMut<ServerKeepAliveMap<LobbyConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
keep_alive_map.map.insert(
event.connection.id(),
Timer::from_seconds(1.0, TimerMode::Once),
Expand All @@ -241,7 +241,7 @@ fn battle_server_accept_new_connections(
mut keep_alive_map: ResMut<ServerKeepAliveMap<BattleConfig>>,
connections: Res<ServerConnections<BattleConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
log::info!("[Battle] We have a new player!");
keep_alive_map.map.insert(
event.connection.id(),
Expand All @@ -265,7 +265,7 @@ fn battle_server_accept_new_connections(
fn battle_server_packet_handler(
mut event_reader: EventReader<server::PacketReceiveEvent<BattleConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
log::info!("Client -> Battle: {:?}", event.packet);
#[allow(clippy::single_match)]
match event.packet {
Expand All @@ -282,7 +282,7 @@ fn lobby_client_packet_handler(
mut event_reader: EventReader<client::PacketReceiveEvent<LobbyConfig>>,
mut event_writer: EventWriter<ConnectionRequestEvent<BattleConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
log::info!(
"Lobby -> Client{:?}: {:?}",
event.connection.id(),
Expand All @@ -309,7 +309,7 @@ fn battle_client_packet_handler(
mut event_reader: EventReader<client::PacketReceiveEvent<BattleConfig>>,
mut event_writer: EventWriter<ConnectionRequestEvent<LobbyConfig>>,
) {
for event in event_reader.iter() {
for event in event_reader.read() {
if event.packet != BattleServerPacket::KeepAlive {
log::info!(
"Battle -> Client{:?}: {:?}",
Expand Down Expand Up @@ -357,7 +357,7 @@ fn lobby_client_connect_handler(
mut events: EventReader<ConnectionEstablishEvent<LobbyConfig>>,
mut timeout: ResMut<ClientKeepAliveTimeout>,
) {
for event in events.iter() {
for event in events.read() {
event.connection.send(LobbyClientPacket::Hello).unwrap();
timeout.0.reset();
}
Expand All @@ -367,7 +367,7 @@ fn battle_client_connect_handler(
mut events: EventReader<ConnectionEstablishEvent<BattleConfig>>,
mut timeout: ResMut<ClientKeepAliveTimeout>,
) {
for _ in events.iter() {
for _ in events.read() {
timeout.0.reset();
}
}
Expand Down Expand Up @@ -410,12 +410,12 @@ fn client_reconnect_if_timeout(

mut timeout: ResMut<ClientKeepAliveTimeout>,
) {
for packet in lobby_packets.iter() {
for packet in lobby_packets.read() {
if packet.packet == LobbyServerPacket::KeepAlive {
timeout.0.reset();
}
}
for packet in battle_packets.iter() {
for packet in battle_packets.read() {
if packet.packet == BattleServerPacket::KeepAlive {
timeout.0.reset();
}
Expand Down Expand Up @@ -443,13 +443,13 @@ fn client_reconnect_if_error(
mut battle_disconnect: EventReader<client::DisconnectionEvent<BattleConfig>>,
mut battle_reconnect: EventWriter<ConnectionRequestEvent<BattleConfig>>,
) {
for event in lobby_disconnect.iter() {
for event in lobby_disconnect.read() {
if !matches!(event.error, ReceiveError::IntentionalDisconnection) {
log::error!("Lobby disconnect. Reconnecting. Error: {:?}", event.error);
lobby_reconnect.send(ConnectionRequestEvent::new(event.address));
}
}
for event in battle_disconnect.iter() {
for event in battle_disconnect.read() {
if !matches!(event.error, ReceiveError::IntentionalDisconnection) {
log::error!("Battle disconnect. Reconnecting. Error: {:?}", event.error);
battle_reconnect.send(ConnectionRequestEvent::new(event.address));
Expand All @@ -468,7 +468,7 @@ fn server_remove_timed_out_clients(
mut battle_map: ResMut<ServerKeepAliveMap<BattleConfig>>,
mut battle_events: EventReader<server::PacketReceiveEvent<BattleConfig>>,
) {
for event in lobby_events.iter() {
for event in lobby_events.read() {
if event.packet == LobbyClientPacket::KeepAlive {
lobby_map
.map
Expand All @@ -489,7 +489,7 @@ fn server_remove_timed_out_clients(
}
}

for event in battle_events.iter() {
for event in battle_events.read() {
if event.packet == BattleClientPacket::KeepAlive {
battle_map
.map
Expand Down
6 changes: 3 additions & 3 deletions examples/multiple_connections.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ fn main() {
}

fn server_new_connection_system(mut events: EventReader<NewConnectionEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
println!("Connection");
event.connection.send(ServerPacket::Hello).unwrap();
}
Expand All @@ -85,7 +85,7 @@ fn client_packet_receive_system(
mut events: EventReader<client::PacketReceiveEvent<Config>>,
client_number: Res<ClientId>,
) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ServerPacket::Hello => {
println!("Server -> Client: Hello (client #{})", client_number.0);
Expand All @@ -100,7 +100,7 @@ fn client_packet_receive_system(
}

fn server_packet_receive_system(mut events: EventReader<server::PacketReceiveEvent<Config>>) {
for event in events.iter() {
for event in events.read() {
match &event.packet {
ClientPacket::Hello => {
println!("Server <- Client {:04?}: Hello", event.connection.id());
Expand Down
2 changes: 1 addition & 1 deletion src/client.rs
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ fn connection_request_system<Config: ClientConfig>(
requests: Res<ConnectionRequestSender<Config>>,
mut events: EventReader<ConnectionRequestEvent<Config>>,
) {
for event in events.iter() {
for event in events.read() {
requests.0.send(event.address).unwrap();
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ pub mod serializers;
pub mod server;

// Tests work fine on my pc but fail on CI, idk how to make them pass, networking speed depends on machine
// #[cfg(test)]
// mod tests;
#[cfg(test)]
mod tests;

/// [`SystemSets`](bevy::ecs::schedule::SystemSet) in [`bevy`] are used for system ordering.
/// See [System Order of Execution][cheatbook_order] on unofficial bevy cheatbook for details.
Expand Down
2 changes: 1 addition & 1 deletion src/server.rs
Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,7 @@ fn connection_add_system<Config: ServerConfig>(
mut connections: ResMut<ServerConnections<Config>>,
mut events: EventReader<NewConnectionEvent<Config>>,
) {
for event in events.iter() {
for event in events.read() {
connections.push(event.connection.clone());
}
}
8 changes: 4 additions & 4 deletions src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ fn tcp_packets() {
app_server.add_systems(
Update,
move |mut events: EventReader<NewConnectionEvent<TcpConfig>>| {
for event in events.iter() {
for event in events.read() {
event
.connection
.send(server_to_client_packet)
Expand All @@ -88,7 +88,7 @@ fn tcp_packets() {
app_client.add_systems(
Update,
move |mut events: EventReader<ConnectionEstablishEvent<TcpConfig>>| {
for event in events.iter() {
for event in events.read() {
event
.connection
.send(client_to_server_packet)
Expand All @@ -110,7 +110,7 @@ fn tcp_packets() {
.world
.resource::<Events<server::PacketReceiveEvent<TcpConfig>>>();
let mut server_reader = server_events.get_reader();
let mut server_events_iter = server_reader.iter(server_events);
let mut server_events_iter = server_reader.read(server_events);
assert_eq!(
server_events_iter.next().map(|event| event.packet),
Some(client_to_server_packet),
Expand All @@ -121,7 +121,7 @@ fn tcp_packets() {
.world
.resource::<Events<client::PacketReceiveEvent<TcpConfig>>>();
let mut client_reader = client_events.get_reader();
let mut client_events_iter = client_reader.iter(client_events);
let mut client_events_iter = client_reader.read(client_events);
assert_eq!(
client_events_iter.next().map(|event| event.packet),
Some(server_to_client_packet),
Expand Down

0 comments on commit 114c990

Please sign in to comment.