diff options
author | Henauxg <19689618+Henauxg@users.noreply.github.com> | 2022-10-24 19:02:09 +0200 |
---|---|---|
committer | Henauxg <19689618+Henauxg@users.noreply.github.com> | 2022-10-24 19:02:09 +0200 |
commit | 7dbe997184de08ee2b0a3f12ae2f7cda12df36e2 (patch) | |
tree | a4da8ef980c2092d71ab815d1b49dfabdab853a7 /examples/chat_protocol/lib.rs | |
parent | 18824de20941bdbc3bfc1985f6cd98bd583e1f51 (diff) |
[examples] Add a terminal chat example
Diffstat (limited to 'examples/chat_protocol/lib.rs')
-rw-r--r-- | examples/chat_protocol/lib.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/chat_protocol/lib.rs b/examples/chat_protocol/lib.rs new file mode 100644 index 0000000..6a51e50 --- /dev/null +++ b/examples/chat_protocol/lib.rs @@ -0,0 +1,32 @@ +use std::collections::HashMap; + +use bevy_quinnet::ClientId; +use serde::{Deserialize, Serialize}; + +// Messages from clients +#[derive(Debug, Clone, Serialize, Deserialize)] +pub enum ClientMessage { + Join { name: String }, + Disconnect {}, + ChatMessage { message: String }, +} + +// Messages from the server +#[derive(Debug, Clone, Serialize, Deserialize)] +pub enum ServerMessage { + ClientConnected { + client_id: ClientId, + username: String, + }, + ClientDisconnected { + client_id: ClientId, + }, + ChatMessage { + client_id: ClientId, + message: String, + }, + InitClient { + client_id: ClientId, + usernames: HashMap<ClientId, String>, + }, +} |