Skip to main content

nil_payload/request/cheat/
infrastructure.rs

1// Copyright (C) Call of Nil contributors
2// SPDX-License-Identifier: AGPL-3.0-only
3
4use bon::Builder;
5use nil_core::continent::Coord;
6use nil_core::infrastructure::prelude::{BuildingId, BuildingLevel};
7use nil_core::ruler::Ruler;
8use nil_core::world::config::WorldId;
9use serde::{Deserialize, Serialize};
10
11#[cfg(feature = "typescript")]
12use ts_rs::TS;
13
14#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
15#[serde(rename_all = "camelCase")]
16#[cfg_attr(feature = "typescript", derive(TS))]
17#[cfg_attr(feature = "typescript", ts(export))]
18pub struct CheatGetAcademyRecruitQueueRequest {
19  #[builder(start_fn, into)]
20  pub world: WorldId,
21  #[builder(into)]
22  pub coord: Coord,
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))]
29pub struct CheatGetAcademyRecruitQueuesRequest {
30  #[builder(start_fn, into)]
31  pub world: WorldId,
32  #[serde(default)]
33  #[builder(default, with = FromIterator::from_iter)]
34  pub coords: Vec<Coord>,
35  #[serde(default)]
36  #[builder(default)]
37  pub filter_empty: bool,
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))]
44pub struct CheatGetAllAcademyRecruitQueuesRequest {
45  #[builder(start_fn, into)]
46  pub world: WorldId,
47  #[serde(default)]
48  #[builder(default)]
49  pub filter_empty: bool,
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))]
56pub struct CheatGetAllPrefectureBuildQueuesRequest {
57  #[builder(start_fn, into)]
58  pub world: WorldId,
59  #[serde(default)]
60  #[builder(default)]
61  pub filter_empty: bool,
62}
63
64#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
65#[serde(rename_all = "camelCase")]
66#[cfg_attr(feature = "typescript", derive(TS))]
67#[cfg_attr(feature = "typescript", ts(export))]
68pub struct CheatGetAllStableRecruitQueuesRequest {
69  #[builder(start_fn, into)]
70  pub world: WorldId,
71  #[serde(default)]
72  #[builder(default)]
73  pub filter_empty: bool,
74}
75
76#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
77#[serde(rename_all = "camelCase")]
78#[cfg_attr(feature = "typescript", derive(TS))]
79#[cfg_attr(feature = "typescript", ts(export))]
80pub struct CheatGetInfrastructureRequest {
81  #[builder(start_fn, into)]
82  pub world: WorldId,
83  #[builder(into)]
84  pub coord: Coord,
85}
86
87#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
88#[serde(rename_all = "camelCase")]
89#[cfg_attr(feature = "typescript", derive(TS))]
90#[cfg_attr(feature = "typescript", ts(export))]
91pub struct CheatGetPrefectureBuildQueueRequest {
92  #[builder(start_fn, into)]
93  pub world: WorldId,
94  #[builder(into)]
95  pub coord: Coord,
96}
97
98#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
99#[serde(rename_all = "camelCase")]
100#[cfg_attr(feature = "typescript", derive(TS))]
101#[cfg_attr(feature = "typescript", ts(export))]
102pub struct CheatGetPrefectureBuildQueuesRequest {
103  #[builder(start_fn, into)]
104  pub world: WorldId,
105  #[serde(default)]
106  #[builder(default, with = FromIterator::from_iter)]
107  pub coords: Vec<Coord>,
108  #[serde(default)]
109  #[builder(default)]
110  pub filter_empty: bool,
111}
112
113#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
114#[serde(rename_all = "camelCase")]
115#[cfg_attr(feature = "typescript", derive(TS))]
116#[cfg_attr(feature = "typescript", ts(export))]
117pub struct CheatGetStableRecruitQueueRequest {
118  #[builder(start_fn, into)]
119  pub world: WorldId,
120  #[builder(into)]
121  pub coord: Coord,
122}
123
124#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
125#[serde(rename_all = "camelCase")]
126#[cfg_attr(feature = "typescript", derive(TS))]
127#[cfg_attr(feature = "typescript", ts(export))]
128pub struct CheatGetStableRecruitQueuesRequest {
129  #[builder(start_fn, into)]
130  pub world: WorldId,
131  #[serde(default)]
132  #[builder(default, with = FromIterator::from_iter)]
133  pub coords: Vec<Coord>,
134  #[serde(default)]
135  #[builder(default)]
136  pub filter_empty: bool,
137}
138
139#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
140#[serde(rename_all = "camelCase")]
141#[cfg_attr(feature = "typescript", derive(TS))]
142#[cfg_attr(feature = "typescript", ts(export, optional_fields = nullable))]
143pub struct CheatGetStorageCapacityRequest {
144  #[builder(start_fn, into)]
145  pub world: WorldId,
146  #[serde(default)]
147  #[builder(into)]
148  pub ruler: Option<Ruler>,
149}
150
151#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
152#[serde(rename_all = "camelCase")]
153#[cfg_attr(feature = "typescript", derive(TS))]
154#[cfg_attr(feature = "typescript", ts(export))]
155pub struct CheatSetBuildingLevelRequest {
156  #[builder(start_fn, into)]
157  pub world: WorldId,
158  #[builder(into)]
159  pub coord: Coord,
160  #[builder(into)]
161  pub id: BuildingId,
162  #[builder(into)]
163  pub level: BuildingLevel,
164}
165
166#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
167#[serde(rename_all = "camelCase")]
168#[cfg_attr(feature = "typescript", derive(TS))]
169#[cfg_attr(feature = "typescript", ts(export))]
170pub struct CheatSetMaxInfrastructureRequest {
171  #[builder(start_fn, into)]
172  pub world: WorldId,
173  #[builder(into)]
174  pub coord: Coord,
175}