use crate::models::locations::LocationType; use crate::models::parameters::CommandRequest; use crate::models::player::UserID; use crate::models::{Position, Tunnel}; use serde::{Deserialize, Serialize}; #[derive(Debug, Serialize, Deserialize, Clone)] pub struct AddLocationParams { pub token: String, pub user_id: UserID, pub name: String, pub position: Position, pub loc_type: LocationType, pub tunnel: Option, } impl CommandRequest for AddLocationParams { fn token(&self) -> String { self.token.clone() } fn user_id(&self) -> Option { Some(self.user_id.clone()) } }