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