diff options
Diffstat (limited to 'src/worldmessages.rs')
| -rw-r--r-- | src/worldmessages.rs | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/worldmessages.rs b/src/worldmessages.rs index 34b6a6b..8feb29f 100644 --- a/src/worldmessages.rs +++ b/src/worldmessages.rs @@ -1,13 +1,11 @@ use serde_json::{Value, json}; use super::util::ToJson; -// use serde::Serialize; +use super::pos::Pos; -// #[derive(Serialize)] #[derive(Clone)] pub struct WorldMessage { pub updates: Vec<WorldUpdate> - } impl ToJson for WorldMessage { @@ -19,13 +17,15 @@ impl ToJson for WorldMessage { #[derive(Clone)] pub enum WorldUpdate { - Field(FieldMessage) + Field(FieldMessage), + Pos(Pos) } impl ToJson for WorldUpdate { fn to_json(&self) -> Value { match self { - WorldUpdate::Field(msg) => Value::Array(vec![Value::String("field".to_string()), msg.to_json()]) + WorldUpdate::Field(msg) => Value::Array(vec![Value::String("field".to_string()), msg.to_json()]), + WorldUpdate::Pos(pos) => Value::Array(vec![Value::String("playerpos".to_string()), pos.to_json()]) } } } @@ -37,8 +37,6 @@ pub struct FieldMessage { pub field: Vec<usize>, pub mapping: Vec<Vec<String>> } - - impl ToJson for FieldMessage { fn to_json(&self) -> Value { json!({ @@ -51,3 +49,4 @@ impl ToJson for FieldMessage { } + |
