Skip to main content

dfhack_proto/generated/messages/
dfproto.rs

1// This file is @generated by prost-build.
2#[derive(serde::Serialize)]
3#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
4pub struct EnumItemName {
5    #[prost(int32, required, tag = "1")]
6    pub value: i32,
7    #[prost(string, optional, tag = "2")]
8    pub name: ::core::option::Option<::prost::alloc::string::String>,
9    /// For bitfield members
10    #[prost(int32, optional, tag = "3", default = "1")]
11    pub bit_size: ::core::option::Option<i32>,
12}
13impl ::prost::Name for EnumItemName {
14    const NAME: &'static str = "EnumItemName";
15    const PACKAGE: &'static str = "dfproto";
16    fn full_name() -> ::prost::alloc::string::String {
17        "dfproto.EnumItemName".into()
18    }
19    fn type_url() -> ::prost::alloc::string::String {
20        "/dfproto.EnumItemName".into()
21    }
22}
23#[derive(serde::Serialize)]
24#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
25pub struct BasicMaterialId {
26    #[prost(int32, required, tag = "1")]
27    pub r#type: i32,
28    #[prost(sint32, required, tag = "2")]
29    pub index: i32,
30}
31impl ::prost::Name for BasicMaterialId {
32    const NAME: &'static str = "BasicMaterialId";
33    const PACKAGE: &'static str = "dfproto";
34    fn full_name() -> ::prost::alloc::string::String {
35        "dfproto.BasicMaterialId".into()
36    }
37    fn type_url() -> ::prost::alloc::string::String {
38        "/dfproto.BasicMaterialId".into()
39    }
40}
41#[derive(serde::Serialize)]
42#[derive(Clone, PartialEq, ::prost::Message)]
43pub struct BasicMaterialInfo {
44    #[prost(int32, required, tag = "1")]
45    pub r#type: i32,
46    #[prost(sint32, required, tag = "2")]
47    pub index: i32,
48    /// The raw token
49    #[prost(string, required, tag = "3")]
50    pub token: ::prost::alloc::string::String,
51    /// IF mask.flags:
52    /// List of material_flags indices
53    #[prost(int32, repeated, packed = "false", tag = "4")]
54    pub flags: ::prost::alloc::vec::Vec<i32>,
55    /// Material type/index expanded:
56    #[prost(int32, optional, tag = "5", default = "-1")]
57    pub subtype: ::core::option::Option<i32>,
58    #[prost(int32, optional, tag = "6", default = "-1")]
59    pub creature_id: ::core::option::Option<i32>,
60    #[prost(int32, optional, tag = "7", default = "-1")]
61    pub plant_id: ::core::option::Option<i32>,
62    #[prost(int32, optional, tag = "8", default = "-1")]
63    pub histfig_id: ::core::option::Option<i32>,
64    #[prost(string, optional, tag = "9", default = "")]
65    pub name_prefix: ::core::option::Option<::prost::alloc::string::String>,
66    /// IF mask.states: in listed order;
67    /// ELSE: one state matching mask.temperature
68    #[prost(fixed32, repeated, packed = "false", tag = "10")]
69    pub state_color: ::prost::alloc::vec::Vec<u32>,
70    #[prost(string, repeated, tag = "11")]
71    pub state_name: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
72    #[prost(string, repeated, tag = "12")]
73    pub state_adj: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
74    #[prost(string, repeated, tag = "13")]
75    pub reaction_class: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
76    #[prost(message, repeated, tag = "14")]
77    pub reaction_product: ::prost::alloc::vec::Vec<basic_material_info::Product>,
78    /// IF mask.flags:
79    #[prost(int32, repeated, packed = "false", tag = "15")]
80    pub inorganic_flags: ::prost::alloc::vec::Vec<i32>,
81}
82/// Nested message and enum types in `BasicMaterialInfo`.
83pub mod basic_material_info {
84    /// IF mask.reaction:
85    #[derive(serde::Serialize)]
86    #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
87    pub struct Product {
88        #[prost(string, required, tag = "1")]
89        pub id: ::prost::alloc::string::String,
90        #[prost(int32, required, tag = "2")]
91        pub r#type: i32,
92        #[prost(sint32, required, tag = "3")]
93        pub index: i32,
94    }
95    impl ::prost::Name for Product {
96        const NAME: &'static str = "Product";
97        const PACKAGE: &'static str = "dfproto";
98        fn full_name() -> ::prost::alloc::string::String {
99            "dfproto.BasicMaterialInfo.Product".into()
100        }
101        fn type_url() -> ::prost::alloc::string::String {
102            "/dfproto.BasicMaterialInfo.Product".into()
103        }
104    }
105}
106impl ::prost::Name for BasicMaterialInfo {
107    const NAME: &'static str = "BasicMaterialInfo";
108    const PACKAGE: &'static str = "dfproto";
109    fn full_name() -> ::prost::alloc::string::String {
110        "dfproto.BasicMaterialInfo".into()
111    }
112    fn type_url() -> ::prost::alloc::string::String {
113        "/dfproto.BasicMaterialInfo".into()
114    }
115}
116#[derive(serde::Serialize)]
117#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
118pub struct BasicMaterialInfoMask {
119    #[prost(
120        enumeration = "basic_material_info_mask::StateType",
121        repeated,
122        packed = "false",
123        tag = "1"
124    )]
125    pub states: ::prost::alloc::vec::Vec<i32>,
126    #[prost(int32, optional, tag = "4", default = "10015")]
127    pub temperature: ::core::option::Option<i32>,
128    #[prost(bool, optional, tag = "2", default = "false")]
129    pub flags: ::core::option::Option<bool>,
130    #[prost(bool, optional, tag = "3", default = "false")]
131    pub reaction: ::core::option::Option<bool>,
132}
133/// Nested message and enum types in `BasicMaterialInfoMask`.
134pub mod basic_material_info_mask {
135    #[derive(serde::Serialize)]
136    #[derive(
137        Clone,
138        Copy,
139        Debug,
140        PartialEq,
141        Eq,
142        Hash,
143        PartialOrd,
144        Ord,
145        ::prost::Enumeration
146    )]
147    #[repr(i32)]
148    pub enum StateType {
149        Solid = 0,
150        Liquid = 1,
151        Gas = 2,
152        Powder = 3,
153        Paste = 4,
154        Pressed = 5,
155    }
156    impl StateType {
157        /// String value of the enum field names used in the ProtoBuf definition.
158        ///
159        /// The values are not transformed in any way and thus are considered stable
160        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
161        pub fn as_str_name(&self) -> &'static str {
162            match self {
163                Self::Solid => "Solid",
164                Self::Liquid => "Liquid",
165                Self::Gas => "Gas",
166                Self::Powder => "Powder",
167                Self::Paste => "Paste",
168                Self::Pressed => "Pressed",
169            }
170        }
171        /// Creates an enum from field names used in the ProtoBuf definition.
172        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
173            match value {
174                "Solid" => Some(Self::Solid),
175                "Liquid" => Some(Self::Liquid),
176                "Gas" => Some(Self::Gas),
177                "Powder" => Some(Self::Powder),
178                "Paste" => Some(Self::Paste),
179                "Pressed" => Some(Self::Pressed),
180                _ => None,
181            }
182        }
183    }
184}
185impl ::prost::Name for BasicMaterialInfoMask {
186    const NAME: &'static str = "BasicMaterialInfoMask";
187    const PACKAGE: &'static str = "dfproto";
188    fn full_name() -> ::prost::alloc::string::String {
189        "dfproto.BasicMaterialInfoMask".into()
190    }
191    fn type_url() -> ::prost::alloc::string::String {
192        "/dfproto.BasicMaterialInfoMask".into()
193    }
194}
195#[derive(serde::Serialize)]
196#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
197pub struct JobSkillAttr {
198    #[prost(int32, required, tag = "1")]
199    pub id: i32,
200    #[prost(string, required, tag = "2")]
201    pub key: ::prost::alloc::string::String,
202    #[prost(string, optional, tag = "3")]
203    pub caption: ::core::option::Option<::prost::alloc::string::String>,
204    #[prost(string, optional, tag = "4")]
205    pub caption_noun: ::core::option::Option<::prost::alloc::string::String>,
206    #[prost(int32, optional, tag = "5")]
207    pub profession: ::core::option::Option<i32>,
208    #[prost(int32, optional, tag = "6")]
209    pub labor: ::core::option::Option<i32>,
210    #[prost(string, optional, tag = "7")]
211    pub r#type: ::core::option::Option<::prost::alloc::string::String>,
212}
213impl ::prost::Name for JobSkillAttr {
214    const NAME: &'static str = "JobSkillAttr";
215    const PACKAGE: &'static str = "dfproto";
216    fn full_name() -> ::prost::alloc::string::String {
217        "dfproto.JobSkillAttr".into()
218    }
219    fn type_url() -> ::prost::alloc::string::String {
220        "/dfproto.JobSkillAttr".into()
221    }
222}
223#[derive(serde::Serialize)]
224#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
225pub struct ProfessionAttr {
226    #[prost(int32, required, tag = "1")]
227    pub id: i32,
228    #[prost(string, required, tag = "2")]
229    pub key: ::prost::alloc::string::String,
230    #[prost(string, optional, tag = "3")]
231    pub caption: ::core::option::Option<::prost::alloc::string::String>,
232    #[prost(bool, optional, tag = "4")]
233    pub military: ::core::option::Option<bool>,
234    #[prost(bool, optional, tag = "5")]
235    pub can_assign_labor: ::core::option::Option<bool>,
236    #[prost(int32, optional, tag = "6")]
237    pub parent: ::core::option::Option<i32>,
238}
239impl ::prost::Name for ProfessionAttr {
240    const NAME: &'static str = "ProfessionAttr";
241    const PACKAGE: &'static str = "dfproto";
242    fn full_name() -> ::prost::alloc::string::String {
243        "dfproto.ProfessionAttr".into()
244    }
245    fn type_url() -> ::prost::alloc::string::String {
246        "/dfproto.ProfessionAttr".into()
247    }
248}
249#[derive(serde::Serialize)]
250#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
251pub struct UnitLaborAttr {
252    #[prost(int32, required, tag = "1")]
253    pub id: i32,
254    #[prost(string, required, tag = "2")]
255    pub key: ::prost::alloc::string::String,
256    #[prost(string, optional, tag = "3")]
257    pub caption: ::core::option::Option<::prost::alloc::string::String>,
258}
259impl ::prost::Name for UnitLaborAttr {
260    const NAME: &'static str = "UnitLaborAttr";
261    const PACKAGE: &'static str = "dfproto";
262    fn full_name() -> ::prost::alloc::string::String {
263        "dfproto.UnitLaborAttr".into()
264    }
265    fn type_url() -> ::prost::alloc::string::String {
266        "/dfproto.UnitLaborAttr".into()
267    }
268}
269#[derive(serde::Serialize)]
270#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
271pub struct NameInfo {
272    #[prost(string, optional, tag = "1")]
273    pub first_name: ::core::option::Option<::prost::alloc::string::String>,
274    #[prost(string, optional, tag = "2")]
275    pub nickname: ::core::option::Option<::prost::alloc::string::String>,
276    #[prost(int32, optional, tag = "3", default = "-1")]
277    pub language_id: ::core::option::Option<i32>,
278    #[prost(string, optional, tag = "4")]
279    pub last_name: ::core::option::Option<::prost::alloc::string::String>,
280    #[prost(string, optional, tag = "5")]
281    pub english_name: ::core::option::Option<::prost::alloc::string::String>,
282}
283impl ::prost::Name for NameInfo {
284    const NAME: &'static str = "NameInfo";
285    const PACKAGE: &'static str = "dfproto";
286    fn full_name() -> ::prost::alloc::string::String {
287        "dfproto.NameInfo".into()
288    }
289    fn type_url() -> ::prost::alloc::string::String {
290        "/dfproto.NameInfo".into()
291    }
292}
293#[derive(serde::Serialize)]
294#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
295pub struct NameTriple {
296    #[prost(string, required, tag = "1")]
297    pub normal: ::prost::alloc::string::String,
298    #[prost(string, optional, tag = "2")]
299    pub plural: ::core::option::Option<::prost::alloc::string::String>,
300    #[prost(string, optional, tag = "3")]
301    pub adjective: ::core::option::Option<::prost::alloc::string::String>,
302}
303impl ::prost::Name for NameTriple {
304    const NAME: &'static str = "NameTriple";
305    const PACKAGE: &'static str = "dfproto";
306    fn full_name() -> ::prost::alloc::string::String {
307        "dfproto.NameTriple".into()
308    }
309    fn type_url() -> ::prost::alloc::string::String {
310        "/dfproto.NameTriple".into()
311    }
312}
313#[derive(serde::Serialize)]
314#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
315pub struct UnitCurseInfo {
316    #[prost(fixed32, required, tag = "1")]
317    pub add_tags1: u32,
318    #[prost(fixed32, required, tag = "2")]
319    pub rem_tags1: u32,
320    #[prost(fixed32, required, tag = "3")]
321    pub add_tags2: u32,
322    #[prost(fixed32, required, tag = "4")]
323    pub rem_tags2: u32,
324    #[prost(message, optional, tag = "5")]
325    pub name: ::core::option::Option<NameTriple>,
326}
327impl ::prost::Name for UnitCurseInfo {
328    const NAME: &'static str = "UnitCurseInfo";
329    const PACKAGE: &'static str = "dfproto";
330    fn full_name() -> ::prost::alloc::string::String {
331        "dfproto.UnitCurseInfo".into()
332    }
333    fn type_url() -> ::prost::alloc::string::String {
334        "/dfproto.UnitCurseInfo".into()
335    }
336}
337#[derive(serde::Serialize)]
338#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
339pub struct SkillInfo {
340    #[prost(int32, required, tag = "1")]
341    pub id: i32,
342    #[prost(int32, required, tag = "2")]
343    pub level: i32,
344    #[prost(int32, required, tag = "3")]
345    pub experience: i32,
346}
347impl ::prost::Name for SkillInfo {
348    const NAME: &'static str = "SkillInfo";
349    const PACKAGE: &'static str = "dfproto";
350    fn full_name() -> ::prost::alloc::string::String {
351        "dfproto.SkillInfo".into()
352    }
353    fn type_url() -> ::prost::alloc::string::String {
354        "/dfproto.SkillInfo".into()
355    }
356}
357#[derive(serde::Serialize)]
358#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
359pub struct UnitMiscTrait {
360    #[prost(int32, required, tag = "1")]
361    pub id: i32,
362    #[prost(int32, required, tag = "2")]
363    pub value: i32,
364}
365impl ::prost::Name for UnitMiscTrait {
366    const NAME: &'static str = "UnitMiscTrait";
367    const PACKAGE: &'static str = "dfproto";
368    fn full_name() -> ::prost::alloc::string::String {
369        "dfproto.UnitMiscTrait".into()
370    }
371    fn type_url() -> ::prost::alloc::string::String {
372        "/dfproto.UnitMiscTrait".into()
373    }
374}
375#[derive(serde::Serialize)]
376#[derive(Clone, PartialEq, ::prost::Message)]
377pub struct BasicUnitInfo {
378    #[prost(int32, required, tag = "1")]
379    pub unit_id: i32,
380    #[prost(int32, required, tag = "13")]
381    pub pos_x: i32,
382    #[prost(int32, required, tag = "14")]
383    pub pos_y: i32,
384    #[prost(int32, required, tag = "15")]
385    pub pos_z: i32,
386    #[prost(message, optional, tag = "2")]
387    pub name: ::core::option::Option<NameInfo>,
388    #[prost(fixed32, required, tag = "3")]
389    pub flags1: u32,
390    #[prost(fixed32, required, tag = "4")]
391    pub flags2: u32,
392    #[prost(fixed32, required, tag = "5")]
393    pub flags3: u32,
394    #[prost(int32, required, tag = "6")]
395    pub race: i32,
396    #[prost(int32, required, tag = "7")]
397    pub caste: i32,
398    #[prost(int32, optional, tag = "8", default = "-1")]
399    pub gender: ::core::option::Option<i32>,
400    #[prost(int32, optional, tag = "9", default = "-1")]
401    pub civ_id: ::core::option::Option<i32>,
402    #[prost(int32, optional, tag = "10", default = "-1")]
403    pub histfig_id: ::core::option::Option<i32>,
404    #[prost(int32, optional, tag = "17", default = "-1")]
405    pub death_id: ::core::option::Option<i32>,
406    #[prost(uint32, optional, tag = "18")]
407    pub death_flags: ::core::option::Option<u32>,
408    /// IF mask.profession:
409    #[prost(int32, optional, tag = "19", default = "-1")]
410    pub squad_id: ::core::option::Option<i32>,
411    #[prost(int32, optional, tag = "20", default = "-1")]
412    pub squad_position: ::core::option::Option<i32>,
413    #[prost(int32, optional, tag = "22", default = "-1")]
414    pub profession: ::core::option::Option<i32>,
415    #[prost(string, optional, tag = "23")]
416    pub custom_profession: ::core::option::Option<::prost::alloc::string::String>,
417    /// IF mask.labors:
418    #[prost(int32, repeated, packed = "false", tag = "11")]
419    pub labors: ::prost::alloc::vec::Vec<i32>,
420    /// IF mask.skills:
421    #[prost(message, repeated, tag = "12")]
422    pub skills: ::prost::alloc::vec::Vec<SkillInfo>,
423    /// IF mask.misc_traits:
424    #[prost(message, repeated, tag = "24")]
425    pub misc_traits: ::prost::alloc::vec::Vec<UnitMiscTrait>,
426    #[prost(message, optional, tag = "16")]
427    pub curse: ::core::option::Option<UnitCurseInfo>,
428    #[prost(int32, repeated, packed = "false", tag = "21")]
429    pub burrows: ::prost::alloc::vec::Vec<i32>,
430}
431impl ::prost::Name for BasicUnitInfo {
432    const NAME: &'static str = "BasicUnitInfo";
433    const PACKAGE: &'static str = "dfproto";
434    fn full_name() -> ::prost::alloc::string::String {
435        "dfproto.BasicUnitInfo".into()
436    }
437    fn type_url() -> ::prost::alloc::string::String {
438        "/dfproto.BasicUnitInfo".into()
439    }
440}
441#[derive(serde::Serialize)]
442#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
443pub struct BasicUnitInfoMask {
444    #[prost(bool, optional, tag = "1", default = "false")]
445    pub labors: ::core::option::Option<bool>,
446    #[prost(bool, optional, tag = "2", default = "false")]
447    pub skills: ::core::option::Option<bool>,
448    #[prost(bool, optional, tag = "3", default = "false")]
449    pub profession: ::core::option::Option<bool>,
450    #[prost(bool, optional, tag = "4", default = "false")]
451    pub misc_traits: ::core::option::Option<bool>,
452}
453impl ::prost::Name for BasicUnitInfoMask {
454    const NAME: &'static str = "BasicUnitInfoMask";
455    const PACKAGE: &'static str = "dfproto";
456    fn full_name() -> ::prost::alloc::string::String {
457        "dfproto.BasicUnitInfoMask".into()
458    }
459    fn type_url() -> ::prost::alloc::string::String {
460        "/dfproto.BasicUnitInfoMask".into()
461    }
462}
463#[derive(serde::Serialize)]
464#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
465pub struct BasicSquadInfo {
466    #[prost(int32, required, tag = "1")]
467    pub squad_id: i32,
468    #[prost(message, optional, tag = "2")]
469    pub name: ::core::option::Option<NameInfo>,
470    /// A special field completely overriding the name:
471    #[prost(string, optional, tag = "3")]
472    pub alias: ::core::option::Option<::prost::alloc::string::String>,
473    /// Member histfig ids:
474    #[prost(sint32, repeated, packed = "false", tag = "4")]
475    pub members: ::prost::alloc::vec::Vec<i32>,
476}
477impl ::prost::Name for BasicSquadInfo {
478    const NAME: &'static str = "BasicSquadInfo";
479    const PACKAGE: &'static str = "dfproto";
480    fn full_name() -> ::prost::alloc::string::String {
481        "dfproto.BasicSquadInfo".into()
482    }
483    fn type_url() -> ::prost::alloc::string::String {
484        "/dfproto.BasicSquadInfo".into()
485    }
486}
487#[derive(serde::Serialize)]
488#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
489pub struct UnitLaborState {
490    #[prost(int32, required, tag = "1")]
491    pub unit_id: i32,
492    #[prost(int32, required, tag = "2")]
493    pub labor: i32,
494    #[prost(bool, required, tag = "3")]
495    pub value: bool,
496}
497impl ::prost::Name for UnitLaborState {
498    const NAME: &'static str = "UnitLaborState";
499    const PACKAGE: &'static str = "dfproto";
500    fn full_name() -> ::prost::alloc::string::String {
501        "dfproto.UnitLaborState".into()
502    }
503    fn type_url() -> ::prost::alloc::string::String {
504        "/dfproto.UnitLaborState".into()
505    }
506}
507/// RPC GetWorldInfo : EmptyMessage -> GetWorldInfoOut
508#[derive(serde::Serialize)]
509#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
510pub struct GetWorldInfoOut {
511    #[prost(enumeration = "get_world_info_out::Mode", required, tag = "1")]
512    pub mode: i32,
513    #[prost(string, required, tag = "2")]
514    pub save_dir: ::prost::alloc::string::String,
515    #[prost(message, optional, tag = "3")]
516    pub world_name: ::core::option::Option<NameInfo>,
517    /// Dwarf mode
518    #[prost(int32, optional, tag = "4")]
519    pub civ_id: ::core::option::Option<i32>,
520    #[prost(int32, optional, tag = "5")]
521    pub site_id: ::core::option::Option<i32>,
522    #[prost(int32, optional, tag = "6")]
523    pub group_id: ::core::option::Option<i32>,
524    #[prost(int32, optional, tag = "7")]
525    pub race_id: ::core::option::Option<i32>,
526    /// Adventure mode
527    #[prost(int32, optional, tag = "8")]
528    pub player_unit_id: ::core::option::Option<i32>,
529    #[prost(int32, optional, tag = "9")]
530    pub player_histfig_id: ::core::option::Option<i32>,
531    #[prost(int32, repeated, packed = "false", tag = "10")]
532    pub companion_histfig_ids: ::prost::alloc::vec::Vec<i32>,
533}
534/// Nested message and enum types in `GetWorldInfoOut`.
535pub mod get_world_info_out {
536    #[derive(serde::Serialize)]
537    #[derive(
538        Clone,
539        Copy,
540        Debug,
541        PartialEq,
542        Eq,
543        Hash,
544        PartialOrd,
545        Ord,
546        ::prost::Enumeration
547    )]
548    #[repr(i32)]
549    pub enum Mode {
550        Dwarf = 1,
551        Adventure = 2,
552        Legends = 3,
553    }
554    impl Mode {
555        /// String value of the enum field names used in the ProtoBuf definition.
556        ///
557        /// The values are not transformed in any way and thus are considered stable
558        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
559        pub fn as_str_name(&self) -> &'static str {
560            match self {
561                Self::Dwarf => "MODE_DWARF",
562                Self::Adventure => "MODE_ADVENTURE",
563                Self::Legends => "MODE_LEGENDS",
564            }
565        }
566        /// Creates an enum from field names used in the ProtoBuf definition.
567        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
568            match value {
569                "MODE_DWARF" => Some(Self::Dwarf),
570                "MODE_ADVENTURE" => Some(Self::Adventure),
571                "MODE_LEGENDS" => Some(Self::Legends),
572                _ => None,
573            }
574        }
575    }
576}
577impl ::prost::Name for GetWorldInfoOut {
578    const NAME: &'static str = "GetWorldInfoOut";
579    const PACKAGE: &'static str = "dfproto";
580    fn full_name() -> ::prost::alloc::string::String {
581        "dfproto.GetWorldInfoOut".into()
582    }
583    fn type_url() -> ::prost::alloc::string::String {
584        "/dfproto.GetWorldInfoOut".into()
585    }
586}
587/// RPC ListEnums : EmptyMessage -> ListEnumsOut
588#[derive(serde::Serialize)]
589#[derive(Clone, PartialEq, ::prost::Message)]
590pub struct ListEnumsOut {
591    #[prost(message, repeated, tag = "1")]
592    pub material_flags: ::prost::alloc::vec::Vec<EnumItemName>,
593    #[prost(message, repeated, tag = "2")]
594    pub inorganic_flags: ::prost::alloc::vec::Vec<EnumItemName>,
595    #[prost(message, repeated, tag = "3")]
596    pub unit_flags1: ::prost::alloc::vec::Vec<EnumItemName>,
597    #[prost(message, repeated, tag = "4")]
598    pub unit_flags2: ::prost::alloc::vec::Vec<EnumItemName>,
599    #[prost(message, repeated, tag = "5")]
600    pub unit_flags3: ::prost::alloc::vec::Vec<EnumItemName>,
601    #[prost(message, repeated, tag = "6")]
602    pub unit_labor: ::prost::alloc::vec::Vec<EnumItemName>,
603    #[prost(message, repeated, tag = "7")]
604    pub job_skill: ::prost::alloc::vec::Vec<EnumItemName>,
605    #[prost(message, repeated, tag = "8")]
606    pub cie_add_tag_mask1: ::prost::alloc::vec::Vec<EnumItemName>,
607    #[prost(message, repeated, tag = "9")]
608    pub cie_add_tag_mask2: ::prost::alloc::vec::Vec<EnumItemName>,
609    #[prost(message, repeated, tag = "10")]
610    pub death_info_flags: ::prost::alloc::vec::Vec<EnumItemName>,
611    #[prost(message, repeated, tag = "11")]
612    pub profession: ::prost::alloc::vec::Vec<EnumItemName>,
613}
614impl ::prost::Name for ListEnumsOut {
615    const NAME: &'static str = "ListEnumsOut";
616    const PACKAGE: &'static str = "dfproto";
617    fn full_name() -> ::prost::alloc::string::String {
618        "dfproto.ListEnumsOut".into()
619    }
620    fn type_url() -> ::prost::alloc::string::String {
621        "/dfproto.ListEnumsOut".into()
622    }
623}
624/// RPC ListJobSkills : EmptyMessage -> ListJobSkillsOut
625#[derive(serde::Serialize)]
626#[derive(Clone, PartialEq, ::prost::Message)]
627pub struct ListJobSkillsOut {
628    #[prost(message, repeated, tag = "1")]
629    pub skill: ::prost::alloc::vec::Vec<JobSkillAttr>,
630    #[prost(message, repeated, tag = "2")]
631    pub profession: ::prost::alloc::vec::Vec<ProfessionAttr>,
632    #[prost(message, repeated, tag = "3")]
633    pub labor: ::prost::alloc::vec::Vec<UnitLaborAttr>,
634}
635impl ::prost::Name for ListJobSkillsOut {
636    const NAME: &'static str = "ListJobSkillsOut";
637    const PACKAGE: &'static str = "dfproto";
638    fn full_name() -> ::prost::alloc::string::String {
639        "dfproto.ListJobSkillsOut".into()
640    }
641    fn type_url() -> ::prost::alloc::string::String {
642        "/dfproto.ListJobSkillsOut".into()
643    }
644}
645/// RPC ListMaterials : ListMaterialsIn -> ListMaterialsOut
646#[derive(serde::Serialize)]
647#[derive(Clone, PartialEq, ::prost::Message)]
648pub struct ListMaterialsIn {
649    #[prost(message, optional, tag = "1")]
650    pub mask: ::core::option::Option<BasicMaterialInfoMask>,
651    /// Specific materials:
652    #[prost(message, repeated, tag = "2")]
653    pub id_list: ::prost::alloc::vec::Vec<BasicMaterialId>,
654    /// Complete list by type:
655    #[prost(bool, optional, tag = "3")]
656    pub builtin: ::core::option::Option<bool>,
657    #[prost(bool, optional, tag = "4")]
658    pub inorganic: ::core::option::Option<bool>,
659    #[prost(bool, optional, tag = "5")]
660    pub creatures: ::core::option::Option<bool>,
661    #[prost(bool, optional, tag = "6")]
662    pub plants: ::core::option::Option<bool>,
663}
664impl ::prost::Name for ListMaterialsIn {
665    const NAME: &'static str = "ListMaterialsIn";
666    const PACKAGE: &'static str = "dfproto";
667    fn full_name() -> ::prost::alloc::string::String {
668        "dfproto.ListMaterialsIn".into()
669    }
670    fn type_url() -> ::prost::alloc::string::String {
671        "/dfproto.ListMaterialsIn".into()
672    }
673}
674#[derive(serde::Serialize)]
675#[derive(Clone, PartialEq, ::prost::Message)]
676pub struct ListMaterialsOut {
677    #[prost(message, repeated, tag = "1")]
678    pub value: ::prost::alloc::vec::Vec<BasicMaterialInfo>,
679}
680impl ::prost::Name for ListMaterialsOut {
681    const NAME: &'static str = "ListMaterialsOut";
682    const PACKAGE: &'static str = "dfproto";
683    fn full_name() -> ::prost::alloc::string::String {
684        "dfproto.ListMaterialsOut".into()
685    }
686    fn type_url() -> ::prost::alloc::string::String {
687        "/dfproto.ListMaterialsOut".into()
688    }
689}
690/// RPC ListUnits : ListUnitsIn -> ListUnitsOut
691#[derive(serde::Serialize)]
692#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
693pub struct ListUnitsIn {
694    #[prost(message, optional, tag = "1")]
695    pub mask: ::core::option::Option<BasicUnitInfoMask>,
696    /// Specific units:
697    #[prost(int32, repeated, packed = "false", tag = "2")]
698    pub id_list: ::prost::alloc::vec::Vec<i32>,
699    /// All units matching:
700    #[prost(bool, optional, tag = "5")]
701    pub scan_all: ::core::option::Option<bool>,
702    #[prost(int32, optional, tag = "3")]
703    pub race: ::core::option::Option<i32>,
704    #[prost(int32, optional, tag = "4")]
705    pub civ_id: ::core::option::Option<i32>,
706    /// i.e. passive corpse
707    #[prost(bool, optional, tag = "6")]
708    pub dead: ::core::option::Option<bool>,
709    /// i.e. not dead or undead
710    #[prost(bool, optional, tag = "7")]
711    pub alive: ::core::option::Option<bool>,
712    /// not dead, ghost, zombie, or insane
713    #[prost(bool, optional, tag = "8")]
714    pub sane: ::core::option::Option<bool>,
715}
716impl ::prost::Name for ListUnitsIn {
717    const NAME: &'static str = "ListUnitsIn";
718    const PACKAGE: &'static str = "dfproto";
719    fn full_name() -> ::prost::alloc::string::String {
720        "dfproto.ListUnitsIn".into()
721    }
722    fn type_url() -> ::prost::alloc::string::String {
723        "/dfproto.ListUnitsIn".into()
724    }
725}
726#[derive(serde::Serialize)]
727#[derive(Clone, PartialEq, ::prost::Message)]
728pub struct ListUnitsOut {
729    #[prost(message, repeated, tag = "1")]
730    pub value: ::prost::alloc::vec::Vec<BasicUnitInfo>,
731}
732impl ::prost::Name for ListUnitsOut {
733    const NAME: &'static str = "ListUnitsOut";
734    const PACKAGE: &'static str = "dfproto";
735    fn full_name() -> ::prost::alloc::string::String {
736        "dfproto.ListUnitsOut".into()
737    }
738    fn type_url() -> ::prost::alloc::string::String {
739        "/dfproto.ListUnitsOut".into()
740    }
741}
742/// RPC ListSquads : ListSquadsIn -> ListSquadsOut
743#[derive(serde::Serialize)]
744#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
745pub struct ListSquadsIn {}
746impl ::prost::Name for ListSquadsIn {
747    const NAME: &'static str = "ListSquadsIn";
748    const PACKAGE: &'static str = "dfproto";
749    fn full_name() -> ::prost::alloc::string::String {
750        "dfproto.ListSquadsIn".into()
751    }
752    fn type_url() -> ::prost::alloc::string::String {
753        "/dfproto.ListSquadsIn".into()
754    }
755}
756#[derive(serde::Serialize)]
757#[derive(Clone, PartialEq, ::prost::Message)]
758pub struct ListSquadsOut {
759    #[prost(message, repeated, tag = "1")]
760    pub value: ::prost::alloc::vec::Vec<BasicSquadInfo>,
761}
762impl ::prost::Name for ListSquadsOut {
763    const NAME: &'static str = "ListSquadsOut";
764    const PACKAGE: &'static str = "dfproto";
765    fn full_name() -> ::prost::alloc::string::String {
766        "dfproto.ListSquadsOut".into()
767    }
768    fn type_url() -> ::prost::alloc::string::String {
769        "/dfproto.ListSquadsOut".into()
770    }
771}
772/// RPC SetUnitLabors : SetUnitLaborsIn -> EmptyMessage
773#[derive(serde::Serialize)]
774#[derive(Clone, PartialEq, ::prost::Message)]
775pub struct SetUnitLaborsIn {
776    #[prost(message, repeated, tag = "1")]
777    pub change: ::prost::alloc::vec::Vec<UnitLaborState>,
778}
779impl ::prost::Name for SetUnitLaborsIn {
780    const NAME: &'static str = "SetUnitLaborsIn";
781    const PACKAGE: &'static str = "dfproto";
782    fn full_name() -> ::prost::alloc::string::String {
783        "dfproto.SetUnitLaborsIn".into()
784    }
785    fn type_url() -> ::prost::alloc::string::String {
786        "/dfproto.SetUnitLaborsIn".into()
787    }
788}
789#[derive(serde::Serialize)]
790#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
791pub struct CoreTextFragment {
792    #[prost(string, required, tag = "1")]
793    pub text: ::prost::alloc::string::String,
794    #[prost(enumeration = "core_text_fragment::Color", optional, tag = "2")]
795    pub color: ::core::option::Option<i32>,
796}
797/// Nested message and enum types in `CoreTextFragment`.
798pub mod core_text_fragment {
799    #[derive(serde::Serialize)]
800    #[derive(
801        Clone,
802        Copy,
803        Debug,
804        PartialEq,
805        Eq,
806        Hash,
807        PartialOrd,
808        Ord,
809        ::prost::Enumeration
810    )]
811    #[repr(i32)]
812    pub enum Color {
813        Black = 0,
814        Blue = 1,
815        Green = 2,
816        Cyan = 3,
817        Red = 4,
818        Magenta = 5,
819        Brown = 6,
820        Grey = 7,
821        Darkgrey = 8,
822        Lightblue = 9,
823        Lightgreen = 10,
824        Lightcyan = 11,
825        Lightred = 12,
826        Lightmagenta = 13,
827        Yellow = 14,
828        White = 15,
829    }
830    impl Color {
831        /// String value of the enum field names used in the ProtoBuf definition.
832        ///
833        /// The values are not transformed in any way and thus are considered stable
834        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
835        pub fn as_str_name(&self) -> &'static str {
836            match self {
837                Self::Black => "COLOR_BLACK",
838                Self::Blue => "COLOR_BLUE",
839                Self::Green => "COLOR_GREEN",
840                Self::Cyan => "COLOR_CYAN",
841                Self::Red => "COLOR_RED",
842                Self::Magenta => "COLOR_MAGENTA",
843                Self::Brown => "COLOR_BROWN",
844                Self::Grey => "COLOR_GREY",
845                Self::Darkgrey => "COLOR_DARKGREY",
846                Self::Lightblue => "COLOR_LIGHTBLUE",
847                Self::Lightgreen => "COLOR_LIGHTGREEN",
848                Self::Lightcyan => "COLOR_LIGHTCYAN",
849                Self::Lightred => "COLOR_LIGHTRED",
850                Self::Lightmagenta => "COLOR_LIGHTMAGENTA",
851                Self::Yellow => "COLOR_YELLOW",
852                Self::White => "COLOR_WHITE",
853            }
854        }
855        /// Creates an enum from field names used in the ProtoBuf definition.
856        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
857            match value {
858                "COLOR_BLACK" => Some(Self::Black),
859                "COLOR_BLUE" => Some(Self::Blue),
860                "COLOR_GREEN" => Some(Self::Green),
861                "COLOR_CYAN" => Some(Self::Cyan),
862                "COLOR_RED" => Some(Self::Red),
863                "COLOR_MAGENTA" => Some(Self::Magenta),
864                "COLOR_BROWN" => Some(Self::Brown),
865                "COLOR_GREY" => Some(Self::Grey),
866                "COLOR_DARKGREY" => Some(Self::Darkgrey),
867                "COLOR_LIGHTBLUE" => Some(Self::Lightblue),
868                "COLOR_LIGHTGREEN" => Some(Self::Lightgreen),
869                "COLOR_LIGHTCYAN" => Some(Self::Lightcyan),
870                "COLOR_LIGHTRED" => Some(Self::Lightred),
871                "COLOR_LIGHTMAGENTA" => Some(Self::Lightmagenta),
872                "COLOR_YELLOW" => Some(Self::Yellow),
873                "COLOR_WHITE" => Some(Self::White),
874                _ => None,
875            }
876        }
877    }
878}
879impl ::prost::Name for CoreTextFragment {
880    const NAME: &'static str = "CoreTextFragment";
881    const PACKAGE: &'static str = "dfproto";
882    fn full_name() -> ::prost::alloc::string::String {
883        "dfproto.CoreTextFragment".into()
884    }
885    fn type_url() -> ::prost::alloc::string::String {
886        "/dfproto.CoreTextFragment".into()
887    }
888}
889#[derive(serde::Serialize)]
890#[derive(Clone, PartialEq, ::prost::Message)]
891pub struct CoreTextNotification {
892    #[prost(message, repeated, tag = "1")]
893    pub fragments: ::prost::alloc::vec::Vec<CoreTextFragment>,
894}
895impl ::prost::Name for CoreTextNotification {
896    const NAME: &'static str = "CoreTextNotification";
897    const PACKAGE: &'static str = "dfproto";
898    fn full_name() -> ::prost::alloc::string::String {
899        "dfproto.CoreTextNotification".into()
900    }
901    fn type_url() -> ::prost::alloc::string::String {
902        "/dfproto.CoreTextNotification".into()
903    }
904}
905#[derive(serde::Serialize)]
906#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
907pub struct CoreErrorNotification {
908    #[prost(enumeration = "core_error_notification::ErrorCode", required, tag = "1")]
909    pub code: i32,
910}
911/// Nested message and enum types in `CoreErrorNotification`.
912pub mod core_error_notification {
913    #[derive(serde::Serialize)]
914    #[derive(
915        Clone,
916        Copy,
917        Debug,
918        PartialEq,
919        Eq,
920        Hash,
921        PartialOrd,
922        Ord,
923        ::prost::Enumeration
924    )]
925    #[repr(i32)]
926    pub enum ErrorCode {
927        CrLinkFailure = -3,
928        CrWouldBreak = -2,
929        CrNotImplemented = -1,
930        CrOk = 0,
931        CrFailure = 1,
932        CrWrongUsage = 2,
933        CrNotFound = 3,
934    }
935    impl ErrorCode {
936        /// String value of the enum field names used in the ProtoBuf definition.
937        ///
938        /// The values are not transformed in any way and thus are considered stable
939        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
940        pub fn as_str_name(&self) -> &'static str {
941            match self {
942                Self::CrLinkFailure => "CR_LINK_FAILURE",
943                Self::CrWouldBreak => "CR_WOULD_BREAK",
944                Self::CrNotImplemented => "CR_NOT_IMPLEMENTED",
945                Self::CrOk => "CR_OK",
946                Self::CrFailure => "CR_FAILURE",
947                Self::CrWrongUsage => "CR_WRONG_USAGE",
948                Self::CrNotFound => "CR_NOT_FOUND",
949            }
950        }
951        /// Creates an enum from field names used in the ProtoBuf definition.
952        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
953            match value {
954                "CR_LINK_FAILURE" => Some(Self::CrLinkFailure),
955                "CR_WOULD_BREAK" => Some(Self::CrWouldBreak),
956                "CR_NOT_IMPLEMENTED" => Some(Self::CrNotImplemented),
957                "CR_OK" => Some(Self::CrOk),
958                "CR_FAILURE" => Some(Self::CrFailure),
959                "CR_WRONG_USAGE" => Some(Self::CrWrongUsage),
960                "CR_NOT_FOUND" => Some(Self::CrNotFound),
961                _ => None,
962            }
963        }
964    }
965}
966impl ::prost::Name for CoreErrorNotification {
967    const NAME: &'static str = "CoreErrorNotification";
968    const PACKAGE: &'static str = "dfproto";
969    fn full_name() -> ::prost::alloc::string::String {
970        "dfproto.CoreErrorNotification".into()
971    }
972    fn type_url() -> ::prost::alloc::string::String {
973        "/dfproto.CoreErrorNotification".into()
974    }
975}
976#[derive(serde::Serialize)]
977#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
978pub struct EmptyMessage {}
979impl ::prost::Name for EmptyMessage {
980    const NAME: &'static str = "EmptyMessage";
981    const PACKAGE: &'static str = "dfproto";
982    fn full_name() -> ::prost::alloc::string::String {
983        "dfproto.EmptyMessage".into()
984    }
985    fn type_url() -> ::prost::alloc::string::String {
986        "/dfproto.EmptyMessage".into()
987    }
988}
989#[derive(serde::Serialize)]
990#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
991pub struct IntMessage {
992    #[prost(int32, required, tag = "1")]
993    pub value: i32,
994}
995impl ::prost::Name for IntMessage {
996    const NAME: &'static str = "IntMessage";
997    const PACKAGE: &'static str = "dfproto";
998    fn full_name() -> ::prost::alloc::string::String {
999        "dfproto.IntMessage".into()
1000    }
1001    fn type_url() -> ::prost::alloc::string::String {
1002        "/dfproto.IntMessage".into()
1003    }
1004}
1005#[derive(serde::Serialize)]
1006#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1007pub struct IntListMessage {
1008    #[prost(int32, repeated, packed = "false", tag = "1")]
1009    pub value: ::prost::alloc::vec::Vec<i32>,
1010}
1011impl ::prost::Name for IntListMessage {
1012    const NAME: &'static str = "IntListMessage";
1013    const PACKAGE: &'static str = "dfproto";
1014    fn full_name() -> ::prost::alloc::string::String {
1015        "dfproto.IntListMessage".into()
1016    }
1017    fn type_url() -> ::prost::alloc::string::String {
1018        "/dfproto.IntListMessage".into()
1019    }
1020}
1021#[derive(serde::Serialize)]
1022#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1023pub struct StringMessage {
1024    #[prost(string, required, tag = "1")]
1025    pub value: ::prost::alloc::string::String,
1026}
1027impl ::prost::Name for StringMessage {
1028    const NAME: &'static str = "StringMessage";
1029    const PACKAGE: &'static str = "dfproto";
1030    fn full_name() -> ::prost::alloc::string::String {
1031        "dfproto.StringMessage".into()
1032    }
1033    fn type_url() -> ::prost::alloc::string::String {
1034        "/dfproto.StringMessage".into()
1035    }
1036}
1037#[derive(serde::Serialize)]
1038#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1039pub struct StringListMessage {
1040    #[prost(string, repeated, tag = "1")]
1041    pub value: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1042}
1043impl ::prost::Name for StringListMessage {
1044    const NAME: &'static str = "StringListMessage";
1045    const PACKAGE: &'static str = "dfproto";
1046    fn full_name() -> ::prost::alloc::string::String {
1047        "dfproto.StringListMessage".into()
1048    }
1049    fn type_url() -> ::prost::alloc::string::String {
1050        "/dfproto.StringListMessage".into()
1051    }
1052}
1053/// RPC BindMethod : CoreBindRequest -> CoreBindReply
1054#[derive(serde::Serialize)]
1055#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1056pub struct CoreBindRequest {
1057    #[prost(string, required, tag = "1")]
1058    pub method: ::prost::alloc::string::String,
1059    #[prost(string, required, tag = "2")]
1060    pub input_msg: ::prost::alloc::string::String,
1061    #[prost(string, required, tag = "3")]
1062    pub output_msg: ::prost::alloc::string::String,
1063    #[prost(string, optional, tag = "4")]
1064    pub plugin: ::core::option::Option<::prost::alloc::string::String>,
1065}
1066impl ::prost::Name for CoreBindRequest {
1067    const NAME: &'static str = "CoreBindRequest";
1068    const PACKAGE: &'static str = "dfproto";
1069    fn full_name() -> ::prost::alloc::string::String {
1070        "dfproto.CoreBindRequest".into()
1071    }
1072    fn type_url() -> ::prost::alloc::string::String {
1073        "/dfproto.CoreBindRequest".into()
1074    }
1075}
1076#[derive(serde::Serialize)]
1077#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1078pub struct CoreBindReply {
1079    #[prost(int32, required, tag = "1")]
1080    pub assigned_id: i32,
1081}
1082impl ::prost::Name for CoreBindReply {
1083    const NAME: &'static str = "CoreBindReply";
1084    const PACKAGE: &'static str = "dfproto";
1085    fn full_name() -> ::prost::alloc::string::String {
1086        "dfproto.CoreBindReply".into()
1087    }
1088    fn type_url() -> ::prost::alloc::string::String {
1089        "/dfproto.CoreBindReply".into()
1090    }
1091}
1092/// RPC RunCommand : CoreRunCommandRequest -> EmptyMessage
1093#[derive(serde::Serialize)]
1094#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1095pub struct CoreRunCommandRequest {
1096    #[prost(string, required, tag = "1")]
1097    pub command: ::prost::alloc::string::String,
1098    #[prost(string, repeated, tag = "2")]
1099    pub arguments: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1100}
1101impl ::prost::Name for CoreRunCommandRequest {
1102    const NAME: &'static str = "CoreRunCommandRequest";
1103    const PACKAGE: &'static str = "dfproto";
1104    fn full_name() -> ::prost::alloc::string::String {
1105        "dfproto.CoreRunCommandRequest".into()
1106    }
1107    fn type_url() -> ::prost::alloc::string::String {
1108        "/dfproto.CoreRunCommandRequest".into()
1109    }
1110}
1111/// RPC RunLua : CoreRunLuaRequest -> StringListMessage
1112#[derive(serde::Serialize)]
1113#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1114pub struct CoreRunLuaRequest {
1115    #[prost(string, required, tag = "1")]
1116    pub module: ::prost::alloc::string::String,
1117    #[prost(string, required, tag = "2")]
1118    pub function: ::prost::alloc::string::String,
1119    #[prost(string, repeated, tag = "3")]
1120    pub arguments: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1121}
1122impl ::prost::Name for CoreRunLuaRequest {
1123    const NAME: &'static str = "CoreRunLuaRequest";
1124    const PACKAGE: &'static str = "dfproto";
1125    fn full_name() -> ::prost::alloc::string::String {
1126        "dfproto.CoreRunLuaRequest".into()
1127    }
1128    fn type_url() -> ::prost::alloc::string::String {
1129        "/dfproto.CoreRunLuaRequest".into()
1130    }
1131}
1132/// RPC RenameSquad : RenameSquadIn -> EmptyMessage
1133#[derive(serde::Serialize)]
1134#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1135pub struct RenameSquadIn {
1136    #[prost(int32, required, tag = "1")]
1137    pub squad_id: i32,
1138    #[prost(string, optional, tag = "2")]
1139    pub nickname: ::core::option::Option<::prost::alloc::string::String>,
1140    #[prost(string, optional, tag = "3")]
1141    pub alias: ::core::option::Option<::prost::alloc::string::String>,
1142}
1143impl ::prost::Name for RenameSquadIn {
1144    const NAME: &'static str = "RenameSquadIn";
1145    const PACKAGE: &'static str = "dfproto";
1146    fn full_name() -> ::prost::alloc::string::String {
1147        "dfproto.RenameSquadIn".into()
1148    }
1149    fn type_url() -> ::prost::alloc::string::String {
1150        "/dfproto.RenameSquadIn".into()
1151    }
1152}
1153/// RPC RenameUnit : RenameUnitIn -> EmptyMessage
1154#[derive(serde::Serialize)]
1155#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1156pub struct RenameUnitIn {
1157    #[prost(int32, required, tag = "1")]
1158    pub unit_id: i32,
1159    #[prost(string, optional, tag = "2")]
1160    pub nickname: ::core::option::Option<::prost::alloc::string::String>,
1161    #[prost(string, optional, tag = "3")]
1162    pub profession: ::core::option::Option<::prost::alloc::string::String>,
1163}
1164impl ::prost::Name for RenameUnitIn {
1165    const NAME: &'static str = "RenameUnitIn";
1166    const PACKAGE: &'static str = "dfproto";
1167    fn full_name() -> ::prost::alloc::string::String {
1168        "dfproto.RenameUnitIn".into()
1169    }
1170    fn type_url() -> ::prost::alloc::string::String {
1171        "/dfproto.RenameUnitIn".into()
1172    }
1173}
1174/// RPC RenameBuilding : RenameBuildingIn -> EmptyMessage
1175#[derive(serde::Serialize)]
1176#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1177pub struct RenameBuildingIn {
1178    #[prost(int32, required, tag = "1")]
1179    pub building_id: i32,
1180    #[prost(string, optional, tag = "2")]
1181    pub name: ::core::option::Option<::prost::alloc::string::String>,
1182}
1183impl ::prost::Name for RenameBuildingIn {
1184    const NAME: &'static str = "RenameBuildingIn";
1185    const PACKAGE: &'static str = "dfproto";
1186    fn full_name() -> ::prost::alloc::string::String {
1187        "dfproto.RenameBuildingIn".into()
1188    }
1189    fn type_url() -> ::prost::alloc::string::String {
1190        "/dfproto.RenameBuildingIn".into()
1191    }
1192}