nil_client/client/
player.rs1use super::Client;
5use crate::error::Result;
6use crate::http;
7use nil_core::continent::Coord;
8use nil_core::infrastructure::storage::OverallStorageCapacity;
9use nil_core::military::Military;
10use nil_core::player::{Player, PlayerStatus, PublicPlayer};
11use nil_core::report::ReportId;
12use nil_core::resources::maintenance::Maintenance;
13use nil_core::world::config::WorldId;
14use nil_payload::player::*;
15
16impl Client {
17 pub async fn get_player(&self, req: GetPlayerRequest) -> Result<Player> {
18 http::json_post("get-player")
19 .body(req)
20 .server(self.server)
21 .maybe_authorization(self.authorization.as_ref())
22 .user_agent(&self.user_agent)
23 .send()
24 .await
25 }
26
27 pub async fn get_player_coords(&self, req: GetPlayerCoordsRequest) -> Result<Vec<Coord>> {
28 http::json_post("get-player-coords")
29 .body(req)
30 .server(self.server)
31 .maybe_authorization(self.authorization.as_ref())
32 .user_agent(&self.user_agent)
33 .send()
34 .await
35 }
36
37 pub async fn get_player_maintenance(
38 &self,
39 req: GetPlayerMaintenanceRequest,
40 ) -> Result<Maintenance> {
41 http::json_post("get-player-maintenance")
42 .body(req)
43 .server(self.server)
44 .maybe_authorization(self.authorization.as_ref())
45 .user_agent(&self.user_agent)
46 .send()
47 .await
48 }
49
50 pub async fn get_player_military(&self, req: GetPlayerMilitaryRequest) -> Result<Military> {
51 http::json_post("get-player-military")
52 .body(req)
53 .server(self.server)
54 .maybe_authorization(self.authorization.as_ref())
55 .user_agent(&self.user_agent)
56 .send()
57 .await
58 }
59
60 pub async fn get_player_reports(&self, req: GetPlayerReportsRequest) -> Result<Vec<ReportId>> {
61 http::json_post("get-player-reports")
62 .body(req)
63 .server(self.server)
64 .maybe_authorization(self.authorization.as_ref())
65 .user_agent(&self.user_agent)
66 .send()
67 .await
68 }
69
70 pub async fn get_player_status(&self, req: GetPlayerStatusRequest) -> Result<PlayerStatus> {
71 http::json_post("get-player-status")
72 .body(req)
73 .server(self.server)
74 .user_agent(&self.user_agent)
75 .send()
76 .await
77 }
78
79 pub async fn get_player_storage_capacity(
80 &self,
81 req: GetPlayerStorageCapacityRequest,
82 ) -> Result<OverallStorageCapacity> {
83 http::json_post("get-player-storage-capacity")
84 .body(req)
85 .server(self.server)
86 .maybe_authorization(self.authorization.as_ref())
87 .user_agent(&self.user_agent)
88 .send()
89 .await
90 }
91
92 pub async fn get_player_worlds(&self, req: GetPlayerWorldsRequest) -> Result<Vec<WorldId>> {
93 http::json_post("get-player-worlds")
94 .body(req)
95 .server(self.server)
96 .user_agent(&self.user_agent)
97 .send()
98 .await
99 }
100
101 pub async fn get_public_player(&self, req: GetPublicPlayerRequest) -> Result<PublicPlayer> {
102 http::json_post("get-public-player")
103 .body(req)
104 .server(self.server)
105 .user_agent(&self.user_agent)
106 .send()
107 .await
108 }
109
110 pub async fn get_public_players(
111 &self,
112 req: GetPublicPlayersRequest,
113 ) -> Result<Vec<PublicPlayer>> {
114 http::json_post("get-public-players")
115 .body(req)
116 .server(self.server)
117 .user_agent(&self.user_agent)
118 .send()
119 .await
120 }
121
122 pub async fn player_exists(&self, req: PlayerExistsRequest) -> Result<bool> {
123 http::json_post("player-exists")
124 .body(req)
125 .server(self.server)
126 .user_agent(&self.user_agent)
127 .send()
128 .await
129 }
130
131 pub async fn set_player_status(&self, req: SetPlayerStatusRequest) -> Result<()> {
132 http::post("set-player-status")
133 .body(req)
134 .server(self.server)
135 .maybe_authorization(self.authorization.as_ref())
136 .user_agent(&self.user_agent)
137 .send()
138 .await
139 }
140
141 pub async fn spawn_player(&self, req: SpawnPlayerRequest) -> Result<()> {
142 http::post("spawn-player")
143 .body(req)
144 .server(self.server)
145 .maybe_authorization(self.authorization.as_ref())
146 .user_agent(&self.user_agent)
147 .send()
148 .await
149 }
150}