good structure

This commit is contained in:
2025-03-13 21:58:48 +01:00
parent c750dbd8f1
commit 663f395c6e
5 changed files with 59 additions and 1 deletions
+3
View File
@@ -1,3 +1,4 @@
mod player;
mod set_cloak;
use std::{
@@ -66,6 +67,8 @@ impl Session {
"set_cloak" => set_cloak::set_cloak(self, params.parse_param("cloak")?),
"player" => player::player(self, params.parse_param("uuid")?),
_ => Err(crate::response::Error::InvalidRequest),
}
}
+21
View File
@@ -0,0 +1,21 @@
use mongodb::bson::doc;
use crate::response::{Response, Result};
use super::Session;
pub fn player(session: &Session, uuid: String) -> Result {
let player = session
.database
.players
.find(doc! {
"uuid": uuid.clone(),
})
.run()?
.deserialize_current()
.unwrap();
Ok(Response::Player {
cloak: player.cloak,
})
}
+20
View File
@@ -0,0 +1,20 @@
use mongodb::bson::doc;
use crate::response::{Response, Result};
use super::Session;
pub fn set_cloak(session: &Session, cloak: String) -> Result {
session.database.players.update_one(
doc! {
"uuid": session.player.id.clone(),
},
doc! {
"$set": {
"cloak": cloak,
},
},
).run()?;
Ok(Response::Success)
}