nil_payload/request/cheat/
resources.rs1use bon::Builder;
5use nil_core::resources::{Food, Iron, Resources, Stone, Wood};
6use nil_core::ruler::Ruler;
7use nil_core::world::config::WorldId;
8use serde::{Deserialize, Serialize};
9
10#[cfg(feature = "typescript")]
11use ts_rs::TS;
12
13#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
14#[serde(rename_all = "camelCase")]
15#[cfg_attr(feature = "typescript", derive(TS))]
16#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
17pub struct CheatGetResourcesRequest {
18 #[builder(start_fn, into)]
19 pub world: WorldId,
20 #[serde(default)]
21 #[builder(into)]
22 pub ruler: Option<Ruler>,
23}
24
25#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
26#[serde(rename_all = "camelCase")]
27#[cfg_attr(feature = "typescript", derive(TS))]
28#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
29pub struct CheatSetFoodRequest {
30 #[builder(start_fn, into)]
31 pub world: WorldId,
32 #[serde(default)]
33 #[builder(into)]
34 pub ruler: Option<Ruler>,
35 #[serde(default)]
36 #[builder(default, into)]
37 pub food: Food,
38}
39
40#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
41#[serde(rename_all = "camelCase")]
42#[cfg_attr(feature = "typescript", derive(TS))]
43#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
44pub struct CheatSetIronRequest {
45 #[builder(start_fn, into)]
46 pub world: WorldId,
47 #[serde(default)]
48 #[builder(into)]
49 pub ruler: Option<Ruler>,
50 #[serde(default)]
51 #[builder(default, into)]
52 pub iron: Iron,
53}
54
55#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
56#[serde(rename_all = "camelCase")]
57#[cfg_attr(feature = "typescript", derive(TS))]
58#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
59pub struct CheatSetMaxFoodRequest {
60 pub world: WorldId,
61 #[serde(default)]
62 #[builder(into)]
63 pub ruler: Option<Ruler>,
64}
65
66#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
67#[serde(rename_all = "camelCase")]
68#[cfg_attr(feature = "typescript", derive(TS))]
69#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
70pub struct CheatSetMaxIronRequest {
71 #[builder(start_fn, into)]
72 pub world: WorldId,
73 #[serde(default)]
74 #[builder(into)]
75 pub ruler: Option<Ruler>,
76}
77
78#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
79#[serde(rename_all = "camelCase")]
80#[cfg_attr(feature = "typescript", derive(TS))]
81#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
82pub struct CheatSetMaxResourcesRequest {
83 #[builder(start_fn, into)]
84 pub world: WorldId,
85 #[serde(default)]
86 #[builder(into)]
87 pub ruler: Option<Ruler>,
88}
89
90#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
91#[serde(rename_all = "camelCase")]
92#[cfg_attr(feature = "typescript", derive(TS))]
93#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
94pub struct CheatSetMaxSiloResourcesRequest {
95 #[builder(start_fn, into)]
96 pub world: WorldId,
97 #[serde(default)]
98 #[builder(into)]
99 pub ruler: Option<Ruler>,
100}
101
102#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
103#[serde(rename_all = "camelCase")]
104#[cfg_attr(feature = "typescript", derive(TS))]
105#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
106pub struct CheatSetMaxStoneRequest {
107 #[builder(start_fn, into)]
108 pub world: WorldId,
109 #[serde(default)]
110 #[builder(into)]
111 pub ruler: Option<Ruler>,
112}
113
114#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
115#[serde(rename_all = "camelCase")]
116#[cfg_attr(feature = "typescript", derive(TS))]
117#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
118pub struct CheatSetMaxWarehouseResourcesRequest {
119 #[builder(start_fn, into)]
120 pub world: WorldId,
121 #[serde(default)]
122 #[builder(into)]
123 pub ruler: Option<Ruler>,
124}
125
126#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
127#[serde(rename_all = "camelCase")]
128#[cfg_attr(feature = "typescript", derive(TS))]
129#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
130pub struct CheatSetMaxWoodRequest {
131 #[builder(start_fn, into)]
132 pub world: WorldId,
133 #[serde(default)]
134 #[builder(into)]
135 pub ruler: Option<Ruler>,
136}
137
138#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
139#[serde(rename_all = "camelCase")]
140#[cfg_attr(feature = "typescript", derive(TS))]
141#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
142pub struct CheatSetResourcesRequest {
143 #[builder(start_fn, into)]
144 pub world: WorldId,
145 #[serde(default)]
146 #[builder(into)]
147 pub ruler: Option<Ruler>,
148 #[serde(default)]
149 #[builder(default)]
150 pub resources: Resources,
151}
152
153#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
154#[serde(rename_all = "camelCase")]
155#[cfg_attr(feature = "typescript", derive(TS))]
156#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
157pub struct CheatSetStoneRequest {
158 #[builder(start_fn, into)]
159 pub world: WorldId,
160 #[serde(default)]
161 #[builder(into)]
162 pub ruler: Option<Ruler>,
163 #[serde(default)]
164 #[builder(default, into)]
165 pub stone: Stone,
166}
167
168#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
169#[serde(rename_all = "camelCase")]
170#[cfg_attr(feature = "typescript", derive(TS))]
171#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
172pub struct CheatSetWoodRequest {
173 #[builder(start_fn, into)]
174 pub world: WorldId,
175 #[serde(default)]
176 #[builder(into)]
177 pub ruler: Option<Ruler>,
178 #[serde(default)]
179 #[builder(default, into)]
180 pub wood: Wood,
181}