#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct MoveResponse { #[serde(rename = "move")] pub move_field: String, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct StartResponse { pub color: String, #[serde(rename = "HeadType")] pub head_type: String, #[serde(rename = "TailType")] pub tail_type: String, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct SnakeRequest { pub game: Game, pub turn: i64, pub board: Board, pub you: Snake, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct Game { pub id: String, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct Board { pub height: usize, pub width: usize, pub food: Vec, pub snakes: Vec, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct Coord { pub x: usize, pub y: usize, } #[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)] pub struct Snake { pub id: String, pub name: String, pub health: usize, pub body: Vec, }