1#![allow(unknown_lints)]
7#![allow(clippy::all)]
8
9#![allow(unused_attributes)]
10#![cfg_attr(rustfmt, rustfmt::skip)]
11
12#![allow(dead_code)]
13#![allow(missing_docs)]
14#![allow(non_camel_case_types)]
15#![allow(non_snake_case)]
16#![allow(non_upper_case_globals)]
17#![allow(trivial_casts)]
18#![allow(unused_results)]
19#![allow(unused_mut)]
20
21const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_3_7_2;
26
27#[derive(Hash, Eq)]
28#[derive(PartialEq,Clone,Default,Debug)]
30pub struct Coord {
31 pub x: ::std::option::Option<i32>,
34 pub y: ::std::option::Option<i32>,
36 pub z: ::std::option::Option<i32>,
38 pub special_fields: ::protobuf::SpecialFields,
41}
42
43impl<'a> ::std::default::Default for &'a Coord {
44 fn default() -> &'a Coord {
45 <Coord as ::protobuf::Message>::default_instance()
46 }
47}
48
49impl Coord {
50 pub fn new() -> Coord {
51 ::std::default::Default::default()
52 }
53
54 pub fn x(&self) -> i32 {
57 self.x.unwrap_or(0)
58 }
59
60 pub fn clear_x(&mut self) {
61 self.x = ::std::option::Option::None;
62 }
63
64 pub fn has_x(&self) -> bool {
65 self.x.is_some()
66 }
67
68 pub fn set_x(&mut self, v: i32) {
70 self.x = ::std::option::Option::Some(v);
71 }
72
73 pub fn y(&self) -> i32 {
76 self.y.unwrap_or(0)
77 }
78
79 pub fn clear_y(&mut self) {
80 self.y = ::std::option::Option::None;
81 }
82
83 pub fn has_y(&self) -> bool {
84 self.y.is_some()
85 }
86
87 pub fn set_y(&mut self, v: i32) {
89 self.y = ::std::option::Option::Some(v);
90 }
91
92 pub fn z(&self) -> i32 {
95 self.z.unwrap_or(0)
96 }
97
98 pub fn clear_z(&mut self) {
99 self.z = ::std::option::Option::None;
100 }
101
102 pub fn has_z(&self) -> bool {
103 self.z.is_some()
104 }
105
106 pub fn set_z(&mut self, v: i32) {
108 self.z = ::std::option::Option::Some(v);
109 }
110
111 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
112 let mut fields = ::std::vec::Vec::with_capacity(3);
113 let mut oneofs = ::std::vec::Vec::with_capacity(0);
114 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
115 "x",
116 |m: &Coord| { &m.x },
117 |m: &mut Coord| { &mut m.x },
118 ));
119 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
120 "y",
121 |m: &Coord| { &m.y },
122 |m: &mut Coord| { &mut m.y },
123 ));
124 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
125 "z",
126 |m: &Coord| { &m.z },
127 |m: &mut Coord| { &mut m.z },
128 ));
129 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Coord>(
130 "Coord",
131 fields,
132 oneofs,
133 )
134 }
135}
136
137impl ::protobuf::Message for Coord {
138 const NAME: &'static str = "Coord";
139
140 fn is_initialized(&self) -> bool {
141 true
142 }
143
144 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
145 while let Some(tag) = is.read_raw_tag_or_eof()? {
146 match tag {
147 8 => {
148 self.x = ::std::option::Option::Some(is.read_int32()?);
149 },
150 16 => {
151 self.y = ::std::option::Option::Some(is.read_int32()?);
152 },
153 24 => {
154 self.z = ::std::option::Option::Some(is.read_int32()?);
155 },
156 tag => {
157 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
158 },
159 };
160 }
161 ::std::result::Result::Ok(())
162 }
163
164 #[allow(unused_variables)]
166 fn compute_size(&self) -> u64 {
167 let mut my_size = 0;
168 if let Some(v) = self.x {
169 my_size += ::protobuf::rt::int32_size(1, v);
170 }
171 if let Some(v) = self.y {
172 my_size += ::protobuf::rt::int32_size(2, v);
173 }
174 if let Some(v) = self.z {
175 my_size += ::protobuf::rt::int32_size(3, v);
176 }
177 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
178 self.special_fields.cached_size().set(my_size as u32);
179 my_size
180 }
181
182 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
183 if let Some(v) = self.x {
184 os.write_int32(1, v)?;
185 }
186 if let Some(v) = self.y {
187 os.write_int32(2, v)?;
188 }
189 if let Some(v) = self.z {
190 os.write_int32(3, v)?;
191 }
192 os.write_unknown_fields(self.special_fields.unknown_fields())?;
193 ::std::result::Result::Ok(())
194 }
195
196 fn special_fields(&self) -> &::protobuf::SpecialFields {
197 &self.special_fields
198 }
199
200 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
201 &mut self.special_fields
202 }
203
204 fn new() -> Coord {
205 Coord::new()
206 }
207
208 fn clear(&mut self) {
209 self.x = ::std::option::Option::None;
210 self.y = ::std::option::Option::None;
211 self.z = ::std::option::Option::None;
212 self.special_fields.clear();
213 }
214
215 fn default_instance() -> &'static Coord {
216 static instance: Coord = Coord {
217 x: ::std::option::Option::None,
218 y: ::std::option::Option::None,
219 z: ::std::option::Option::None,
220 special_fields: ::protobuf::SpecialFields::new(),
221 };
222 &instance
223 }
224}
225
226impl ::protobuf::MessageFull for Coord {
227 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
228 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
229 descriptor.get(|| file_descriptor().message_by_package_relative_name("Coord").unwrap()).clone()
230 }
231}
232
233impl ::std::fmt::Display for Coord {
234 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
235 ::protobuf::text_format::fmt(self, f)
236 }
237}
238
239impl ::protobuf::reflect::ProtobufValue for Coord {
240 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
241}
242
243#[derive(PartialEq,Clone,Default,Debug)]
245pub struct Tiletype {
246 pub id: ::std::option::Option<i32>,
249 pub name: ::std::option::Option<::std::string::String>,
251 pub caption: ::std::option::Option<::std::string::String>,
253 pub shape: ::std::option::Option<::protobuf::EnumOrUnknown<TiletypeShape>>,
255 pub special: ::std::option::Option<::protobuf::EnumOrUnknown<TiletypeSpecial>>,
257 pub material: ::std::option::Option<::protobuf::EnumOrUnknown<TiletypeMaterial>>,
259 pub variant: ::std::option::Option<::protobuf::EnumOrUnknown<TiletypeVariant>>,
261 pub direction: ::std::option::Option<::std::string::String>,
263 pub special_fields: ::protobuf::SpecialFields,
266}
267
268impl<'a> ::std::default::Default for &'a Tiletype {
269 fn default() -> &'a Tiletype {
270 <Tiletype as ::protobuf::Message>::default_instance()
271 }
272}
273
274impl Tiletype {
275 pub fn new() -> Tiletype {
276 ::std::default::Default::default()
277 }
278
279 pub fn id(&self) -> i32 {
282 self.id.unwrap_or(0)
283 }
284
285 pub fn clear_id(&mut self) {
286 self.id = ::std::option::Option::None;
287 }
288
289 pub fn has_id(&self) -> bool {
290 self.id.is_some()
291 }
292
293 pub fn set_id(&mut self, v: i32) {
295 self.id = ::std::option::Option::Some(v);
296 }
297
298 pub fn name(&self) -> &str {
301 match self.name.as_ref() {
302 Some(v) => v,
303 None => "",
304 }
305 }
306
307 pub fn clear_name(&mut self) {
308 self.name = ::std::option::Option::None;
309 }
310
311 pub fn has_name(&self) -> bool {
312 self.name.is_some()
313 }
314
315 pub fn set_name(&mut self, v: ::std::string::String) {
317 self.name = ::std::option::Option::Some(v);
318 }
319
320 pub fn mut_name(&mut self) -> &mut ::std::string::String {
323 if self.name.is_none() {
324 self.name = ::std::option::Option::Some(::std::string::String::new());
325 }
326 self.name.as_mut().unwrap()
327 }
328
329 pub fn take_name(&mut self) -> ::std::string::String {
331 self.name.take().unwrap_or_else(|| ::std::string::String::new())
332 }
333
334 pub fn caption(&self) -> &str {
337 match self.caption.as_ref() {
338 Some(v) => v,
339 None => "",
340 }
341 }
342
343 pub fn clear_caption(&mut self) {
344 self.caption = ::std::option::Option::None;
345 }
346
347 pub fn has_caption(&self) -> bool {
348 self.caption.is_some()
349 }
350
351 pub fn set_caption(&mut self, v: ::std::string::String) {
353 self.caption = ::std::option::Option::Some(v);
354 }
355
356 pub fn mut_caption(&mut self) -> &mut ::std::string::String {
359 if self.caption.is_none() {
360 self.caption = ::std::option::Option::Some(::std::string::String::new());
361 }
362 self.caption.as_mut().unwrap()
363 }
364
365 pub fn take_caption(&mut self) -> ::std::string::String {
367 self.caption.take().unwrap_or_else(|| ::std::string::String::new())
368 }
369
370 pub fn shape(&self) -> TiletypeShape {
373 match self.shape {
374 Some(e) => e.enum_value_or(TiletypeShape::NO_SHAPE),
375 None => TiletypeShape::NO_SHAPE,
376 }
377 }
378
379 pub fn clear_shape(&mut self) {
380 self.shape = ::std::option::Option::None;
381 }
382
383 pub fn has_shape(&self) -> bool {
384 self.shape.is_some()
385 }
386
387 pub fn set_shape(&mut self, v: TiletypeShape) {
389 self.shape = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
390 }
391
392 pub fn special(&self) -> TiletypeSpecial {
395 match self.special {
396 Some(e) => e.enum_value_or(TiletypeSpecial::NO_SPECIAL),
397 None => TiletypeSpecial::NO_SPECIAL,
398 }
399 }
400
401 pub fn clear_special(&mut self) {
402 self.special = ::std::option::Option::None;
403 }
404
405 pub fn has_special(&self) -> bool {
406 self.special.is_some()
407 }
408
409 pub fn set_special(&mut self, v: TiletypeSpecial) {
411 self.special = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
412 }
413
414 pub fn material(&self) -> TiletypeMaterial {
417 match self.material {
418 Some(e) => e.enum_value_or(TiletypeMaterial::NO_MATERIAL),
419 None => TiletypeMaterial::NO_MATERIAL,
420 }
421 }
422
423 pub fn clear_material(&mut self) {
424 self.material = ::std::option::Option::None;
425 }
426
427 pub fn has_material(&self) -> bool {
428 self.material.is_some()
429 }
430
431 pub fn set_material(&mut self, v: TiletypeMaterial) {
433 self.material = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
434 }
435
436 pub fn variant(&self) -> TiletypeVariant {
439 match self.variant {
440 Some(e) => e.enum_value_or(TiletypeVariant::NO_VARIANT),
441 None => TiletypeVariant::NO_VARIANT,
442 }
443 }
444
445 pub fn clear_variant(&mut self) {
446 self.variant = ::std::option::Option::None;
447 }
448
449 pub fn has_variant(&self) -> bool {
450 self.variant.is_some()
451 }
452
453 pub fn set_variant(&mut self, v: TiletypeVariant) {
455 self.variant = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
456 }
457
458 pub fn direction(&self) -> &str {
461 match self.direction.as_ref() {
462 Some(v) => v,
463 None => "",
464 }
465 }
466
467 pub fn clear_direction(&mut self) {
468 self.direction = ::std::option::Option::None;
469 }
470
471 pub fn has_direction(&self) -> bool {
472 self.direction.is_some()
473 }
474
475 pub fn set_direction(&mut self, v: ::std::string::String) {
477 self.direction = ::std::option::Option::Some(v);
478 }
479
480 pub fn mut_direction(&mut self) -> &mut ::std::string::String {
483 if self.direction.is_none() {
484 self.direction = ::std::option::Option::Some(::std::string::String::new());
485 }
486 self.direction.as_mut().unwrap()
487 }
488
489 pub fn take_direction(&mut self) -> ::std::string::String {
491 self.direction.take().unwrap_or_else(|| ::std::string::String::new())
492 }
493
494 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
495 let mut fields = ::std::vec::Vec::with_capacity(8);
496 let mut oneofs = ::std::vec::Vec::with_capacity(0);
497 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
498 "id",
499 |m: &Tiletype| { &m.id },
500 |m: &mut Tiletype| { &mut m.id },
501 ));
502 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
503 "name",
504 |m: &Tiletype| { &m.name },
505 |m: &mut Tiletype| { &mut m.name },
506 ));
507 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
508 "caption",
509 |m: &Tiletype| { &m.caption },
510 |m: &mut Tiletype| { &mut m.caption },
511 ));
512 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
513 "shape",
514 |m: &Tiletype| { &m.shape },
515 |m: &mut Tiletype| { &mut m.shape },
516 ));
517 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
518 "special",
519 |m: &Tiletype| { &m.special },
520 |m: &mut Tiletype| { &mut m.special },
521 ));
522 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
523 "material",
524 |m: &Tiletype| { &m.material },
525 |m: &mut Tiletype| { &mut m.material },
526 ));
527 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
528 "variant",
529 |m: &Tiletype| { &m.variant },
530 |m: &mut Tiletype| { &mut m.variant },
531 ));
532 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
533 "direction",
534 |m: &Tiletype| { &m.direction },
535 |m: &mut Tiletype| { &mut m.direction },
536 ));
537 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Tiletype>(
538 "Tiletype",
539 fields,
540 oneofs,
541 )
542 }
543}
544
545impl ::protobuf::Message for Tiletype {
546 const NAME: &'static str = "Tiletype";
547
548 fn is_initialized(&self) -> bool {
549 if self.id.is_none() {
550 return false;
551 }
552 true
553 }
554
555 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
556 while let Some(tag) = is.read_raw_tag_or_eof()? {
557 match tag {
558 8 => {
559 self.id = ::std::option::Option::Some(is.read_int32()?);
560 },
561 18 => {
562 self.name = ::std::option::Option::Some(is.read_string()?);
563 },
564 26 => {
565 self.caption = ::std::option::Option::Some(is.read_string()?);
566 },
567 32 => {
568 self.shape = ::std::option::Option::Some(is.read_enum_or_unknown()?);
569 },
570 40 => {
571 self.special = ::std::option::Option::Some(is.read_enum_or_unknown()?);
572 },
573 48 => {
574 self.material = ::std::option::Option::Some(is.read_enum_or_unknown()?);
575 },
576 56 => {
577 self.variant = ::std::option::Option::Some(is.read_enum_or_unknown()?);
578 },
579 66 => {
580 self.direction = ::std::option::Option::Some(is.read_string()?);
581 },
582 tag => {
583 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
584 },
585 };
586 }
587 ::std::result::Result::Ok(())
588 }
589
590 #[allow(unused_variables)]
592 fn compute_size(&self) -> u64 {
593 let mut my_size = 0;
594 if let Some(v) = self.id {
595 my_size += ::protobuf::rt::int32_size(1, v);
596 }
597 if let Some(v) = self.name.as_ref() {
598 my_size += ::protobuf::rt::string_size(2, &v);
599 }
600 if let Some(v) = self.caption.as_ref() {
601 my_size += ::protobuf::rt::string_size(3, &v);
602 }
603 if let Some(v) = self.shape {
604 my_size += ::protobuf::rt::int32_size(4, v.value());
605 }
606 if let Some(v) = self.special {
607 my_size += ::protobuf::rt::int32_size(5, v.value());
608 }
609 if let Some(v) = self.material {
610 my_size += ::protobuf::rt::int32_size(6, v.value());
611 }
612 if let Some(v) = self.variant {
613 my_size += ::protobuf::rt::int32_size(7, v.value());
614 }
615 if let Some(v) = self.direction.as_ref() {
616 my_size += ::protobuf::rt::string_size(8, &v);
617 }
618 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
619 self.special_fields.cached_size().set(my_size as u32);
620 my_size
621 }
622
623 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
624 if let Some(v) = self.id {
625 os.write_int32(1, v)?;
626 }
627 if let Some(v) = self.name.as_ref() {
628 os.write_string(2, v)?;
629 }
630 if let Some(v) = self.caption.as_ref() {
631 os.write_string(3, v)?;
632 }
633 if let Some(v) = self.shape {
634 os.write_enum(4, ::protobuf::EnumOrUnknown::value(&v))?;
635 }
636 if let Some(v) = self.special {
637 os.write_enum(5, ::protobuf::EnumOrUnknown::value(&v))?;
638 }
639 if let Some(v) = self.material {
640 os.write_enum(6, ::protobuf::EnumOrUnknown::value(&v))?;
641 }
642 if let Some(v) = self.variant {
643 os.write_enum(7, ::protobuf::EnumOrUnknown::value(&v))?;
644 }
645 if let Some(v) = self.direction.as_ref() {
646 os.write_string(8, v)?;
647 }
648 os.write_unknown_fields(self.special_fields.unknown_fields())?;
649 ::std::result::Result::Ok(())
650 }
651
652 fn special_fields(&self) -> &::protobuf::SpecialFields {
653 &self.special_fields
654 }
655
656 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
657 &mut self.special_fields
658 }
659
660 fn new() -> Tiletype {
661 Tiletype::new()
662 }
663
664 fn clear(&mut self) {
665 self.id = ::std::option::Option::None;
666 self.name = ::std::option::Option::None;
667 self.caption = ::std::option::Option::None;
668 self.shape = ::std::option::Option::None;
669 self.special = ::std::option::Option::None;
670 self.material = ::std::option::Option::None;
671 self.variant = ::std::option::Option::None;
672 self.direction = ::std::option::Option::None;
673 self.special_fields.clear();
674 }
675
676 fn default_instance() -> &'static Tiletype {
677 static instance: Tiletype = Tiletype {
678 id: ::std::option::Option::None,
679 name: ::std::option::Option::None,
680 caption: ::std::option::Option::None,
681 shape: ::std::option::Option::None,
682 special: ::std::option::Option::None,
683 material: ::std::option::Option::None,
684 variant: ::std::option::Option::None,
685 direction: ::std::option::Option::None,
686 special_fields: ::protobuf::SpecialFields::new(),
687 };
688 &instance
689 }
690}
691
692impl ::protobuf::MessageFull for Tiletype {
693 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
694 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
695 descriptor.get(|| file_descriptor().message_by_package_relative_name("Tiletype").unwrap()).clone()
696 }
697}
698
699impl ::std::fmt::Display for Tiletype {
700 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
701 ::protobuf::text_format::fmt(self, f)
702 }
703}
704
705impl ::protobuf::reflect::ProtobufValue for Tiletype {
706 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
707}
708
709#[derive(PartialEq,Clone,Default,Debug)]
711pub struct TiletypeList {
712 pub tiletype_list: ::std::vec::Vec<Tiletype>,
715 pub special_fields: ::protobuf::SpecialFields,
718}
719
720impl<'a> ::std::default::Default for &'a TiletypeList {
721 fn default() -> &'a TiletypeList {
722 <TiletypeList as ::protobuf::Message>::default_instance()
723 }
724}
725
726impl TiletypeList {
727 pub fn new() -> TiletypeList {
728 ::std::default::Default::default()
729 }
730
731 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
732 let mut fields = ::std::vec::Vec::with_capacity(1);
733 let mut oneofs = ::std::vec::Vec::with_capacity(0);
734 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
735 "tiletype_list",
736 |m: &TiletypeList| { &m.tiletype_list },
737 |m: &mut TiletypeList| { &mut m.tiletype_list },
738 ));
739 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TiletypeList>(
740 "TiletypeList",
741 fields,
742 oneofs,
743 )
744 }
745}
746
747impl ::protobuf::Message for TiletypeList {
748 const NAME: &'static str = "TiletypeList";
749
750 fn is_initialized(&self) -> bool {
751 for v in &self.tiletype_list {
752 if !v.is_initialized() {
753 return false;
754 }
755 };
756 true
757 }
758
759 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
760 while let Some(tag) = is.read_raw_tag_or_eof()? {
761 match tag {
762 10 => {
763 self.tiletype_list.push(is.read_message()?);
764 },
765 tag => {
766 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
767 },
768 };
769 }
770 ::std::result::Result::Ok(())
771 }
772
773 #[allow(unused_variables)]
775 fn compute_size(&self) -> u64 {
776 let mut my_size = 0;
777 for value in &self.tiletype_list {
778 let len = value.compute_size();
779 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
780 };
781 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
782 self.special_fields.cached_size().set(my_size as u32);
783 my_size
784 }
785
786 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
787 for v in &self.tiletype_list {
788 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
789 };
790 os.write_unknown_fields(self.special_fields.unknown_fields())?;
791 ::std::result::Result::Ok(())
792 }
793
794 fn special_fields(&self) -> &::protobuf::SpecialFields {
795 &self.special_fields
796 }
797
798 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
799 &mut self.special_fields
800 }
801
802 fn new() -> TiletypeList {
803 TiletypeList::new()
804 }
805
806 fn clear(&mut self) {
807 self.tiletype_list.clear();
808 self.special_fields.clear();
809 }
810
811 fn default_instance() -> &'static TiletypeList {
812 static instance: TiletypeList = TiletypeList {
813 tiletype_list: ::std::vec::Vec::new(),
814 special_fields: ::protobuf::SpecialFields::new(),
815 };
816 &instance
817 }
818}
819
820impl ::protobuf::MessageFull for TiletypeList {
821 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
822 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
823 descriptor.get(|| file_descriptor().message_by_package_relative_name("TiletypeList").unwrap()).clone()
824 }
825}
826
827impl ::std::fmt::Display for TiletypeList {
828 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
829 ::protobuf::text_format::fmt(self, f)
830 }
831}
832
833impl ::protobuf::reflect::ProtobufValue for TiletypeList {
834 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
835}
836
837#[derive(PartialEq,Clone,Default,Debug)]
839pub struct BuildingExtents {
840 pub pos_x: ::std::option::Option<i32>,
843 pub pos_y: ::std::option::Option<i32>,
845 pub width: ::std::option::Option<i32>,
847 pub height: ::std::option::Option<i32>,
849 pub extents: ::std::vec::Vec<i32>,
851 pub special_fields: ::protobuf::SpecialFields,
854}
855
856impl<'a> ::std::default::Default for &'a BuildingExtents {
857 fn default() -> &'a BuildingExtents {
858 <BuildingExtents as ::protobuf::Message>::default_instance()
859 }
860}
861
862impl BuildingExtents {
863 pub fn new() -> BuildingExtents {
864 ::std::default::Default::default()
865 }
866
867 pub fn pos_x(&self) -> i32 {
870 self.pos_x.unwrap_or(0)
871 }
872
873 pub fn clear_pos_x(&mut self) {
874 self.pos_x = ::std::option::Option::None;
875 }
876
877 pub fn has_pos_x(&self) -> bool {
878 self.pos_x.is_some()
879 }
880
881 pub fn set_pos_x(&mut self, v: i32) {
883 self.pos_x = ::std::option::Option::Some(v);
884 }
885
886 pub fn pos_y(&self) -> i32 {
889 self.pos_y.unwrap_or(0)
890 }
891
892 pub fn clear_pos_y(&mut self) {
893 self.pos_y = ::std::option::Option::None;
894 }
895
896 pub fn has_pos_y(&self) -> bool {
897 self.pos_y.is_some()
898 }
899
900 pub fn set_pos_y(&mut self, v: i32) {
902 self.pos_y = ::std::option::Option::Some(v);
903 }
904
905 pub fn width(&self) -> i32 {
908 self.width.unwrap_or(0)
909 }
910
911 pub fn clear_width(&mut self) {
912 self.width = ::std::option::Option::None;
913 }
914
915 pub fn has_width(&self) -> bool {
916 self.width.is_some()
917 }
918
919 pub fn set_width(&mut self, v: i32) {
921 self.width = ::std::option::Option::Some(v);
922 }
923
924 pub fn height(&self) -> i32 {
927 self.height.unwrap_or(0)
928 }
929
930 pub fn clear_height(&mut self) {
931 self.height = ::std::option::Option::None;
932 }
933
934 pub fn has_height(&self) -> bool {
935 self.height.is_some()
936 }
937
938 pub fn set_height(&mut self, v: i32) {
940 self.height = ::std::option::Option::Some(v);
941 }
942
943 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
944 let mut fields = ::std::vec::Vec::with_capacity(5);
945 let mut oneofs = ::std::vec::Vec::with_capacity(0);
946 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
947 "pos_x",
948 |m: &BuildingExtents| { &m.pos_x },
949 |m: &mut BuildingExtents| { &mut m.pos_x },
950 ));
951 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
952 "pos_y",
953 |m: &BuildingExtents| { &m.pos_y },
954 |m: &mut BuildingExtents| { &mut m.pos_y },
955 ));
956 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
957 "width",
958 |m: &BuildingExtents| { &m.width },
959 |m: &mut BuildingExtents| { &mut m.width },
960 ));
961 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
962 "height",
963 |m: &BuildingExtents| { &m.height },
964 |m: &mut BuildingExtents| { &mut m.height },
965 ));
966 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
967 "extents",
968 |m: &BuildingExtents| { &m.extents },
969 |m: &mut BuildingExtents| { &mut m.extents },
970 ));
971 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingExtents>(
972 "BuildingExtents",
973 fields,
974 oneofs,
975 )
976 }
977}
978
979impl ::protobuf::Message for BuildingExtents {
980 const NAME: &'static str = "BuildingExtents";
981
982 fn is_initialized(&self) -> bool {
983 if self.pos_x.is_none() {
984 return false;
985 }
986 if self.pos_y.is_none() {
987 return false;
988 }
989 if self.width.is_none() {
990 return false;
991 }
992 if self.height.is_none() {
993 return false;
994 }
995 true
996 }
997
998 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
999 while let Some(tag) = is.read_raw_tag_or_eof()? {
1000 match tag {
1001 8 => {
1002 self.pos_x = ::std::option::Option::Some(is.read_int32()?);
1003 },
1004 16 => {
1005 self.pos_y = ::std::option::Option::Some(is.read_int32()?);
1006 },
1007 24 => {
1008 self.width = ::std::option::Option::Some(is.read_int32()?);
1009 },
1010 32 => {
1011 self.height = ::std::option::Option::Some(is.read_int32()?);
1012 },
1013 42 => {
1014 is.read_repeated_packed_int32_into(&mut self.extents)?;
1015 },
1016 40 => {
1017 self.extents.push(is.read_int32()?);
1018 },
1019 tag => {
1020 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
1021 },
1022 };
1023 }
1024 ::std::result::Result::Ok(())
1025 }
1026
1027 #[allow(unused_variables)]
1029 fn compute_size(&self) -> u64 {
1030 let mut my_size = 0;
1031 if let Some(v) = self.pos_x {
1032 my_size += ::protobuf::rt::int32_size(1, v);
1033 }
1034 if let Some(v) = self.pos_y {
1035 my_size += ::protobuf::rt::int32_size(2, v);
1036 }
1037 if let Some(v) = self.width {
1038 my_size += ::protobuf::rt::int32_size(3, v);
1039 }
1040 if let Some(v) = self.height {
1041 my_size += ::protobuf::rt::int32_size(4, v);
1042 }
1043 for value in &self.extents {
1044 my_size += ::protobuf::rt::int32_size(5, *value);
1045 };
1046 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
1047 self.special_fields.cached_size().set(my_size as u32);
1048 my_size
1049 }
1050
1051 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
1052 if let Some(v) = self.pos_x {
1053 os.write_int32(1, v)?;
1054 }
1055 if let Some(v) = self.pos_y {
1056 os.write_int32(2, v)?;
1057 }
1058 if let Some(v) = self.width {
1059 os.write_int32(3, v)?;
1060 }
1061 if let Some(v) = self.height {
1062 os.write_int32(4, v)?;
1063 }
1064 for v in &self.extents {
1065 os.write_int32(5, *v)?;
1066 };
1067 os.write_unknown_fields(self.special_fields.unknown_fields())?;
1068 ::std::result::Result::Ok(())
1069 }
1070
1071 fn special_fields(&self) -> &::protobuf::SpecialFields {
1072 &self.special_fields
1073 }
1074
1075 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
1076 &mut self.special_fields
1077 }
1078
1079 fn new() -> BuildingExtents {
1080 BuildingExtents::new()
1081 }
1082
1083 fn clear(&mut self) {
1084 self.pos_x = ::std::option::Option::None;
1085 self.pos_y = ::std::option::Option::None;
1086 self.width = ::std::option::Option::None;
1087 self.height = ::std::option::Option::None;
1088 self.extents.clear();
1089 self.special_fields.clear();
1090 }
1091
1092 fn default_instance() -> &'static BuildingExtents {
1093 static instance: BuildingExtents = BuildingExtents {
1094 pos_x: ::std::option::Option::None,
1095 pos_y: ::std::option::Option::None,
1096 width: ::std::option::Option::None,
1097 height: ::std::option::Option::None,
1098 extents: ::std::vec::Vec::new(),
1099 special_fields: ::protobuf::SpecialFields::new(),
1100 };
1101 &instance
1102 }
1103}
1104
1105impl ::protobuf::MessageFull for BuildingExtents {
1106 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
1107 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
1108 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingExtents").unwrap()).clone()
1109 }
1110}
1111
1112impl ::std::fmt::Display for BuildingExtents {
1113 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1114 ::protobuf::text_format::fmt(self, f)
1115 }
1116}
1117
1118impl ::protobuf::reflect::ProtobufValue for BuildingExtents {
1119 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
1120}
1121
1122#[derive(PartialEq,Clone,Default,Debug)]
1124pub struct BuildingItem {
1125 pub item: ::protobuf::MessageField<Item>,
1128 pub mode: ::std::option::Option<i32>,
1130 pub special_fields: ::protobuf::SpecialFields,
1133}
1134
1135impl<'a> ::std::default::Default for &'a BuildingItem {
1136 fn default() -> &'a BuildingItem {
1137 <BuildingItem as ::protobuf::Message>::default_instance()
1138 }
1139}
1140
1141impl BuildingItem {
1142 pub fn new() -> BuildingItem {
1143 ::std::default::Default::default()
1144 }
1145
1146 pub fn mode(&self) -> i32 {
1149 self.mode.unwrap_or(0)
1150 }
1151
1152 pub fn clear_mode(&mut self) {
1153 self.mode = ::std::option::Option::None;
1154 }
1155
1156 pub fn has_mode(&self) -> bool {
1157 self.mode.is_some()
1158 }
1159
1160 pub fn set_mode(&mut self, v: i32) {
1162 self.mode = ::std::option::Option::Some(v);
1163 }
1164
1165 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
1166 let mut fields = ::std::vec::Vec::with_capacity(2);
1167 let mut oneofs = ::std::vec::Vec::with_capacity(0);
1168 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Item>(
1169 "item",
1170 |m: &BuildingItem| { &m.item },
1171 |m: &mut BuildingItem| { &mut m.item },
1172 ));
1173 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1174 "mode",
1175 |m: &BuildingItem| { &m.mode },
1176 |m: &mut BuildingItem| { &mut m.mode },
1177 ));
1178 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingItem>(
1179 "BuildingItem",
1180 fields,
1181 oneofs,
1182 )
1183 }
1184}
1185
1186impl ::protobuf::Message for BuildingItem {
1187 const NAME: &'static str = "BuildingItem";
1188
1189 fn is_initialized(&self) -> bool {
1190 for v in &self.item {
1191 if !v.is_initialized() {
1192 return false;
1193 }
1194 };
1195 true
1196 }
1197
1198 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
1199 while let Some(tag) = is.read_raw_tag_or_eof()? {
1200 match tag {
1201 10 => {
1202 ::protobuf::rt::read_singular_message_into_field(is, &mut self.item)?;
1203 },
1204 16 => {
1205 self.mode = ::std::option::Option::Some(is.read_int32()?);
1206 },
1207 tag => {
1208 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
1209 },
1210 };
1211 }
1212 ::std::result::Result::Ok(())
1213 }
1214
1215 #[allow(unused_variables)]
1217 fn compute_size(&self) -> u64 {
1218 let mut my_size = 0;
1219 if let Some(v) = self.item.as_ref() {
1220 let len = v.compute_size();
1221 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1222 }
1223 if let Some(v) = self.mode {
1224 my_size += ::protobuf::rt::int32_size(2, v);
1225 }
1226 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
1227 self.special_fields.cached_size().set(my_size as u32);
1228 my_size
1229 }
1230
1231 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
1232 if let Some(v) = self.item.as_ref() {
1233 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
1234 }
1235 if let Some(v) = self.mode {
1236 os.write_int32(2, v)?;
1237 }
1238 os.write_unknown_fields(self.special_fields.unknown_fields())?;
1239 ::std::result::Result::Ok(())
1240 }
1241
1242 fn special_fields(&self) -> &::protobuf::SpecialFields {
1243 &self.special_fields
1244 }
1245
1246 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
1247 &mut self.special_fields
1248 }
1249
1250 fn new() -> BuildingItem {
1251 BuildingItem::new()
1252 }
1253
1254 fn clear(&mut self) {
1255 self.item.clear();
1256 self.mode = ::std::option::Option::None;
1257 self.special_fields.clear();
1258 }
1259
1260 fn default_instance() -> &'static BuildingItem {
1261 static instance: BuildingItem = BuildingItem {
1262 item: ::protobuf::MessageField::none(),
1263 mode: ::std::option::Option::None,
1264 special_fields: ::protobuf::SpecialFields::new(),
1265 };
1266 &instance
1267 }
1268}
1269
1270impl ::protobuf::MessageFull for BuildingItem {
1271 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
1272 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
1273 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingItem").unwrap()).clone()
1274 }
1275}
1276
1277impl ::std::fmt::Display for BuildingItem {
1278 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1279 ::protobuf::text_format::fmt(self, f)
1280 }
1281}
1282
1283impl ::protobuf::reflect::ProtobufValue for BuildingItem {
1284 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
1285}
1286
1287#[derive(PartialEq,Clone,Default,Debug)]
1289pub struct BuildingInstance {
1290 pub index: ::std::option::Option<i32>,
1293 pub pos_x_min: ::std::option::Option<i32>,
1295 pub pos_y_min: ::std::option::Option<i32>,
1297 pub pos_z_min: ::std::option::Option<i32>,
1299 pub pos_x_max: ::std::option::Option<i32>,
1301 pub pos_y_max: ::std::option::Option<i32>,
1303 pub pos_z_max: ::std::option::Option<i32>,
1305 pub building_type: ::protobuf::MessageField<BuildingType>,
1307 pub material: ::protobuf::MessageField<MatPair>,
1309 pub building_flags: ::std::option::Option<u32>,
1311 pub is_room: ::std::option::Option<bool>,
1313 pub room: ::protobuf::MessageField<BuildingExtents>,
1315 pub direction: ::std::option::Option<::protobuf::EnumOrUnknown<BuildingDirection>>,
1317 pub items: ::std::vec::Vec<BuildingItem>,
1319 pub active: ::std::option::Option<i32>,
1321 pub special_fields: ::protobuf::SpecialFields,
1324}
1325
1326impl<'a> ::std::default::Default for &'a BuildingInstance {
1327 fn default() -> &'a BuildingInstance {
1328 <BuildingInstance as ::protobuf::Message>::default_instance()
1329 }
1330}
1331
1332impl BuildingInstance {
1333 pub fn new() -> BuildingInstance {
1334 ::std::default::Default::default()
1335 }
1336
1337 pub fn index(&self) -> i32 {
1340 self.index.unwrap_or(0)
1341 }
1342
1343 pub fn clear_index(&mut self) {
1344 self.index = ::std::option::Option::None;
1345 }
1346
1347 pub fn has_index(&self) -> bool {
1348 self.index.is_some()
1349 }
1350
1351 pub fn set_index(&mut self, v: i32) {
1353 self.index = ::std::option::Option::Some(v);
1354 }
1355
1356 pub fn pos_x_min(&self) -> i32 {
1359 self.pos_x_min.unwrap_or(0)
1360 }
1361
1362 pub fn clear_pos_x_min(&mut self) {
1363 self.pos_x_min = ::std::option::Option::None;
1364 }
1365
1366 pub fn has_pos_x_min(&self) -> bool {
1367 self.pos_x_min.is_some()
1368 }
1369
1370 pub fn set_pos_x_min(&mut self, v: i32) {
1372 self.pos_x_min = ::std::option::Option::Some(v);
1373 }
1374
1375 pub fn pos_y_min(&self) -> i32 {
1378 self.pos_y_min.unwrap_or(0)
1379 }
1380
1381 pub fn clear_pos_y_min(&mut self) {
1382 self.pos_y_min = ::std::option::Option::None;
1383 }
1384
1385 pub fn has_pos_y_min(&self) -> bool {
1386 self.pos_y_min.is_some()
1387 }
1388
1389 pub fn set_pos_y_min(&mut self, v: i32) {
1391 self.pos_y_min = ::std::option::Option::Some(v);
1392 }
1393
1394 pub fn pos_z_min(&self) -> i32 {
1397 self.pos_z_min.unwrap_or(0)
1398 }
1399
1400 pub fn clear_pos_z_min(&mut self) {
1401 self.pos_z_min = ::std::option::Option::None;
1402 }
1403
1404 pub fn has_pos_z_min(&self) -> bool {
1405 self.pos_z_min.is_some()
1406 }
1407
1408 pub fn set_pos_z_min(&mut self, v: i32) {
1410 self.pos_z_min = ::std::option::Option::Some(v);
1411 }
1412
1413 pub fn pos_x_max(&self) -> i32 {
1416 self.pos_x_max.unwrap_or(0)
1417 }
1418
1419 pub fn clear_pos_x_max(&mut self) {
1420 self.pos_x_max = ::std::option::Option::None;
1421 }
1422
1423 pub fn has_pos_x_max(&self) -> bool {
1424 self.pos_x_max.is_some()
1425 }
1426
1427 pub fn set_pos_x_max(&mut self, v: i32) {
1429 self.pos_x_max = ::std::option::Option::Some(v);
1430 }
1431
1432 pub fn pos_y_max(&self) -> i32 {
1435 self.pos_y_max.unwrap_or(0)
1436 }
1437
1438 pub fn clear_pos_y_max(&mut self) {
1439 self.pos_y_max = ::std::option::Option::None;
1440 }
1441
1442 pub fn has_pos_y_max(&self) -> bool {
1443 self.pos_y_max.is_some()
1444 }
1445
1446 pub fn set_pos_y_max(&mut self, v: i32) {
1448 self.pos_y_max = ::std::option::Option::Some(v);
1449 }
1450
1451 pub fn pos_z_max(&self) -> i32 {
1454 self.pos_z_max.unwrap_or(0)
1455 }
1456
1457 pub fn clear_pos_z_max(&mut self) {
1458 self.pos_z_max = ::std::option::Option::None;
1459 }
1460
1461 pub fn has_pos_z_max(&self) -> bool {
1462 self.pos_z_max.is_some()
1463 }
1464
1465 pub fn set_pos_z_max(&mut self, v: i32) {
1467 self.pos_z_max = ::std::option::Option::Some(v);
1468 }
1469
1470 pub fn building_flags(&self) -> u32 {
1473 self.building_flags.unwrap_or(0)
1474 }
1475
1476 pub fn clear_building_flags(&mut self) {
1477 self.building_flags = ::std::option::Option::None;
1478 }
1479
1480 pub fn has_building_flags(&self) -> bool {
1481 self.building_flags.is_some()
1482 }
1483
1484 pub fn set_building_flags(&mut self, v: u32) {
1486 self.building_flags = ::std::option::Option::Some(v);
1487 }
1488
1489 pub fn is_room(&self) -> bool {
1492 self.is_room.unwrap_or(false)
1493 }
1494
1495 pub fn clear_is_room(&mut self) {
1496 self.is_room = ::std::option::Option::None;
1497 }
1498
1499 pub fn has_is_room(&self) -> bool {
1500 self.is_room.is_some()
1501 }
1502
1503 pub fn set_is_room(&mut self, v: bool) {
1505 self.is_room = ::std::option::Option::Some(v);
1506 }
1507
1508 pub fn direction(&self) -> BuildingDirection {
1511 match self.direction {
1512 Some(e) => e.enum_value_or(BuildingDirection::NORTH),
1513 None => BuildingDirection::NORTH,
1514 }
1515 }
1516
1517 pub fn clear_direction(&mut self) {
1518 self.direction = ::std::option::Option::None;
1519 }
1520
1521 pub fn has_direction(&self) -> bool {
1522 self.direction.is_some()
1523 }
1524
1525 pub fn set_direction(&mut self, v: BuildingDirection) {
1527 self.direction = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
1528 }
1529
1530 pub fn active(&self) -> i32 {
1533 self.active.unwrap_or(0)
1534 }
1535
1536 pub fn clear_active(&mut self) {
1537 self.active = ::std::option::Option::None;
1538 }
1539
1540 pub fn has_active(&self) -> bool {
1541 self.active.is_some()
1542 }
1543
1544 pub fn set_active(&mut self, v: i32) {
1546 self.active = ::std::option::Option::Some(v);
1547 }
1548
1549 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
1550 let mut fields = ::std::vec::Vec::with_capacity(15);
1551 let mut oneofs = ::std::vec::Vec::with_capacity(0);
1552 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1553 "index",
1554 |m: &BuildingInstance| { &m.index },
1555 |m: &mut BuildingInstance| { &mut m.index },
1556 ));
1557 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1558 "pos_x_min",
1559 |m: &BuildingInstance| { &m.pos_x_min },
1560 |m: &mut BuildingInstance| { &mut m.pos_x_min },
1561 ));
1562 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1563 "pos_y_min",
1564 |m: &BuildingInstance| { &m.pos_y_min },
1565 |m: &mut BuildingInstance| { &mut m.pos_y_min },
1566 ));
1567 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1568 "pos_z_min",
1569 |m: &BuildingInstance| { &m.pos_z_min },
1570 |m: &mut BuildingInstance| { &mut m.pos_z_min },
1571 ));
1572 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1573 "pos_x_max",
1574 |m: &BuildingInstance| { &m.pos_x_max },
1575 |m: &mut BuildingInstance| { &mut m.pos_x_max },
1576 ));
1577 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1578 "pos_y_max",
1579 |m: &BuildingInstance| { &m.pos_y_max },
1580 |m: &mut BuildingInstance| { &mut m.pos_y_max },
1581 ));
1582 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1583 "pos_z_max",
1584 |m: &BuildingInstance| { &m.pos_z_max },
1585 |m: &mut BuildingInstance| { &mut m.pos_z_max },
1586 ));
1587 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, BuildingType>(
1588 "building_type",
1589 |m: &BuildingInstance| { &m.building_type },
1590 |m: &mut BuildingInstance| { &mut m.building_type },
1591 ));
1592 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
1593 "material",
1594 |m: &BuildingInstance| { &m.material },
1595 |m: &mut BuildingInstance| { &mut m.material },
1596 ));
1597 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1598 "building_flags",
1599 |m: &BuildingInstance| { &m.building_flags },
1600 |m: &mut BuildingInstance| { &mut m.building_flags },
1601 ));
1602 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1603 "is_room",
1604 |m: &BuildingInstance| { &m.is_room },
1605 |m: &mut BuildingInstance| { &mut m.is_room },
1606 ));
1607 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, BuildingExtents>(
1608 "room",
1609 |m: &BuildingInstance| { &m.room },
1610 |m: &mut BuildingInstance| { &mut m.room },
1611 ));
1612 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1613 "direction",
1614 |m: &BuildingInstance| { &m.direction },
1615 |m: &mut BuildingInstance| { &mut m.direction },
1616 ));
1617 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
1618 "items",
1619 |m: &BuildingInstance| { &m.items },
1620 |m: &mut BuildingInstance| { &mut m.items },
1621 ));
1622 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1623 "active",
1624 |m: &BuildingInstance| { &m.active },
1625 |m: &mut BuildingInstance| { &mut m.active },
1626 ));
1627 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingInstance>(
1628 "BuildingInstance",
1629 fields,
1630 oneofs,
1631 )
1632 }
1633}
1634
1635impl ::protobuf::Message for BuildingInstance {
1636 const NAME: &'static str = "BuildingInstance";
1637
1638 fn is_initialized(&self) -> bool {
1639 if self.index.is_none() {
1640 return false;
1641 }
1642 for v in &self.building_type {
1643 if !v.is_initialized() {
1644 return false;
1645 }
1646 };
1647 for v in &self.material {
1648 if !v.is_initialized() {
1649 return false;
1650 }
1651 };
1652 for v in &self.room {
1653 if !v.is_initialized() {
1654 return false;
1655 }
1656 };
1657 for v in &self.items {
1658 if !v.is_initialized() {
1659 return false;
1660 }
1661 };
1662 true
1663 }
1664
1665 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
1666 while let Some(tag) = is.read_raw_tag_or_eof()? {
1667 match tag {
1668 8 => {
1669 self.index = ::std::option::Option::Some(is.read_int32()?);
1670 },
1671 16 => {
1672 self.pos_x_min = ::std::option::Option::Some(is.read_int32()?);
1673 },
1674 24 => {
1675 self.pos_y_min = ::std::option::Option::Some(is.read_int32()?);
1676 },
1677 32 => {
1678 self.pos_z_min = ::std::option::Option::Some(is.read_int32()?);
1679 },
1680 40 => {
1681 self.pos_x_max = ::std::option::Option::Some(is.read_int32()?);
1682 },
1683 48 => {
1684 self.pos_y_max = ::std::option::Option::Some(is.read_int32()?);
1685 },
1686 56 => {
1687 self.pos_z_max = ::std::option::Option::Some(is.read_int32()?);
1688 },
1689 66 => {
1690 ::protobuf::rt::read_singular_message_into_field(is, &mut self.building_type)?;
1691 },
1692 74 => {
1693 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
1694 },
1695 80 => {
1696 self.building_flags = ::std::option::Option::Some(is.read_uint32()?);
1697 },
1698 88 => {
1699 self.is_room = ::std::option::Option::Some(is.read_bool()?);
1700 },
1701 98 => {
1702 ::protobuf::rt::read_singular_message_into_field(is, &mut self.room)?;
1703 },
1704 104 => {
1705 self.direction = ::std::option::Option::Some(is.read_enum_or_unknown()?);
1706 },
1707 114 => {
1708 self.items.push(is.read_message()?);
1709 },
1710 120 => {
1711 self.active = ::std::option::Option::Some(is.read_int32()?);
1712 },
1713 tag => {
1714 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
1715 },
1716 };
1717 }
1718 ::std::result::Result::Ok(())
1719 }
1720
1721 #[allow(unused_variables)]
1723 fn compute_size(&self) -> u64 {
1724 let mut my_size = 0;
1725 if let Some(v) = self.index {
1726 my_size += ::protobuf::rt::int32_size(1, v);
1727 }
1728 if let Some(v) = self.pos_x_min {
1729 my_size += ::protobuf::rt::int32_size(2, v);
1730 }
1731 if let Some(v) = self.pos_y_min {
1732 my_size += ::protobuf::rt::int32_size(3, v);
1733 }
1734 if let Some(v) = self.pos_z_min {
1735 my_size += ::protobuf::rt::int32_size(4, v);
1736 }
1737 if let Some(v) = self.pos_x_max {
1738 my_size += ::protobuf::rt::int32_size(5, v);
1739 }
1740 if let Some(v) = self.pos_y_max {
1741 my_size += ::protobuf::rt::int32_size(6, v);
1742 }
1743 if let Some(v) = self.pos_z_max {
1744 my_size += ::protobuf::rt::int32_size(7, v);
1745 }
1746 if let Some(v) = self.building_type.as_ref() {
1747 let len = v.compute_size();
1748 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1749 }
1750 if let Some(v) = self.material.as_ref() {
1751 let len = v.compute_size();
1752 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1753 }
1754 if let Some(v) = self.building_flags {
1755 my_size += ::protobuf::rt::uint32_size(10, v);
1756 }
1757 if let Some(v) = self.is_room {
1758 my_size += 1 + 1;
1759 }
1760 if let Some(v) = self.room.as_ref() {
1761 let len = v.compute_size();
1762 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1763 }
1764 if let Some(v) = self.direction {
1765 my_size += ::protobuf::rt::int32_size(13, v.value());
1766 }
1767 for value in &self.items {
1768 let len = value.compute_size();
1769 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1770 };
1771 if let Some(v) = self.active {
1772 my_size += ::protobuf::rt::int32_size(15, v);
1773 }
1774 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
1775 self.special_fields.cached_size().set(my_size as u32);
1776 my_size
1777 }
1778
1779 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
1780 if let Some(v) = self.index {
1781 os.write_int32(1, v)?;
1782 }
1783 if let Some(v) = self.pos_x_min {
1784 os.write_int32(2, v)?;
1785 }
1786 if let Some(v) = self.pos_y_min {
1787 os.write_int32(3, v)?;
1788 }
1789 if let Some(v) = self.pos_z_min {
1790 os.write_int32(4, v)?;
1791 }
1792 if let Some(v) = self.pos_x_max {
1793 os.write_int32(5, v)?;
1794 }
1795 if let Some(v) = self.pos_y_max {
1796 os.write_int32(6, v)?;
1797 }
1798 if let Some(v) = self.pos_z_max {
1799 os.write_int32(7, v)?;
1800 }
1801 if let Some(v) = self.building_type.as_ref() {
1802 ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
1803 }
1804 if let Some(v) = self.material.as_ref() {
1805 ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
1806 }
1807 if let Some(v) = self.building_flags {
1808 os.write_uint32(10, v)?;
1809 }
1810 if let Some(v) = self.is_room {
1811 os.write_bool(11, v)?;
1812 }
1813 if let Some(v) = self.room.as_ref() {
1814 ::protobuf::rt::write_message_field_with_cached_size(12, v, os)?;
1815 }
1816 if let Some(v) = self.direction {
1817 os.write_enum(13, ::protobuf::EnumOrUnknown::value(&v))?;
1818 }
1819 for v in &self.items {
1820 ::protobuf::rt::write_message_field_with_cached_size(14, v, os)?;
1821 };
1822 if let Some(v) = self.active {
1823 os.write_int32(15, v)?;
1824 }
1825 os.write_unknown_fields(self.special_fields.unknown_fields())?;
1826 ::std::result::Result::Ok(())
1827 }
1828
1829 fn special_fields(&self) -> &::protobuf::SpecialFields {
1830 &self.special_fields
1831 }
1832
1833 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
1834 &mut self.special_fields
1835 }
1836
1837 fn new() -> BuildingInstance {
1838 BuildingInstance::new()
1839 }
1840
1841 fn clear(&mut self) {
1842 self.index = ::std::option::Option::None;
1843 self.pos_x_min = ::std::option::Option::None;
1844 self.pos_y_min = ::std::option::Option::None;
1845 self.pos_z_min = ::std::option::Option::None;
1846 self.pos_x_max = ::std::option::Option::None;
1847 self.pos_y_max = ::std::option::Option::None;
1848 self.pos_z_max = ::std::option::Option::None;
1849 self.building_type.clear();
1850 self.material.clear();
1851 self.building_flags = ::std::option::Option::None;
1852 self.is_room = ::std::option::Option::None;
1853 self.room.clear();
1854 self.direction = ::std::option::Option::None;
1855 self.items.clear();
1856 self.active = ::std::option::Option::None;
1857 self.special_fields.clear();
1858 }
1859
1860 fn default_instance() -> &'static BuildingInstance {
1861 static instance: BuildingInstance = BuildingInstance {
1862 index: ::std::option::Option::None,
1863 pos_x_min: ::std::option::Option::None,
1864 pos_y_min: ::std::option::Option::None,
1865 pos_z_min: ::std::option::Option::None,
1866 pos_x_max: ::std::option::Option::None,
1867 pos_y_max: ::std::option::Option::None,
1868 pos_z_max: ::std::option::Option::None,
1869 building_type: ::protobuf::MessageField::none(),
1870 material: ::protobuf::MessageField::none(),
1871 building_flags: ::std::option::Option::None,
1872 is_room: ::std::option::Option::None,
1873 room: ::protobuf::MessageField::none(),
1874 direction: ::std::option::Option::None,
1875 items: ::std::vec::Vec::new(),
1876 active: ::std::option::Option::None,
1877 special_fields: ::protobuf::SpecialFields::new(),
1878 };
1879 &instance
1880 }
1881}
1882
1883impl ::protobuf::MessageFull for BuildingInstance {
1884 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
1885 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
1886 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingInstance").unwrap()).clone()
1887 }
1888}
1889
1890impl ::std::fmt::Display for BuildingInstance {
1891 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1892 ::protobuf::text_format::fmt(self, f)
1893 }
1894}
1895
1896impl ::protobuf::reflect::ProtobufValue for BuildingInstance {
1897 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
1898}
1899
1900#[derive(PartialEq,Clone,Default,Debug)]
1902pub struct RiverEdge {
1903 pub min_pos: ::std::option::Option<i32>,
1906 pub max_pos: ::std::option::Option<i32>,
1908 pub active: ::std::option::Option<i32>,
1910 pub elevation: ::std::option::Option<i32>,
1912 pub special_fields: ::protobuf::SpecialFields,
1915}
1916
1917impl<'a> ::std::default::Default for &'a RiverEdge {
1918 fn default() -> &'a RiverEdge {
1919 <RiverEdge as ::protobuf::Message>::default_instance()
1920 }
1921}
1922
1923impl RiverEdge {
1924 pub fn new() -> RiverEdge {
1925 ::std::default::Default::default()
1926 }
1927
1928 pub fn min_pos(&self) -> i32 {
1931 self.min_pos.unwrap_or(0)
1932 }
1933
1934 pub fn clear_min_pos(&mut self) {
1935 self.min_pos = ::std::option::Option::None;
1936 }
1937
1938 pub fn has_min_pos(&self) -> bool {
1939 self.min_pos.is_some()
1940 }
1941
1942 pub fn set_min_pos(&mut self, v: i32) {
1944 self.min_pos = ::std::option::Option::Some(v);
1945 }
1946
1947 pub fn max_pos(&self) -> i32 {
1950 self.max_pos.unwrap_or(0)
1951 }
1952
1953 pub fn clear_max_pos(&mut self) {
1954 self.max_pos = ::std::option::Option::None;
1955 }
1956
1957 pub fn has_max_pos(&self) -> bool {
1958 self.max_pos.is_some()
1959 }
1960
1961 pub fn set_max_pos(&mut self, v: i32) {
1963 self.max_pos = ::std::option::Option::Some(v);
1964 }
1965
1966 pub fn active(&self) -> i32 {
1969 self.active.unwrap_or(0)
1970 }
1971
1972 pub fn clear_active(&mut self) {
1973 self.active = ::std::option::Option::None;
1974 }
1975
1976 pub fn has_active(&self) -> bool {
1977 self.active.is_some()
1978 }
1979
1980 pub fn set_active(&mut self, v: i32) {
1982 self.active = ::std::option::Option::Some(v);
1983 }
1984
1985 pub fn elevation(&self) -> i32 {
1988 self.elevation.unwrap_or(0)
1989 }
1990
1991 pub fn clear_elevation(&mut self) {
1992 self.elevation = ::std::option::Option::None;
1993 }
1994
1995 pub fn has_elevation(&self) -> bool {
1996 self.elevation.is_some()
1997 }
1998
1999 pub fn set_elevation(&mut self, v: i32) {
2001 self.elevation = ::std::option::Option::Some(v);
2002 }
2003
2004 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2005 let mut fields = ::std::vec::Vec::with_capacity(4);
2006 let mut oneofs = ::std::vec::Vec::with_capacity(0);
2007 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2008 "min_pos",
2009 |m: &RiverEdge| { &m.min_pos },
2010 |m: &mut RiverEdge| { &mut m.min_pos },
2011 ));
2012 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2013 "max_pos",
2014 |m: &RiverEdge| { &m.max_pos },
2015 |m: &mut RiverEdge| { &mut m.max_pos },
2016 ));
2017 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2018 "active",
2019 |m: &RiverEdge| { &m.active },
2020 |m: &mut RiverEdge| { &mut m.active },
2021 ));
2022 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2023 "elevation",
2024 |m: &RiverEdge| { &m.elevation },
2025 |m: &mut RiverEdge| { &mut m.elevation },
2026 ));
2027 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RiverEdge>(
2028 "RiverEdge",
2029 fields,
2030 oneofs,
2031 )
2032 }
2033}
2034
2035impl ::protobuf::Message for RiverEdge {
2036 const NAME: &'static str = "RiverEdge";
2037
2038 fn is_initialized(&self) -> bool {
2039 true
2040 }
2041
2042 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
2043 while let Some(tag) = is.read_raw_tag_or_eof()? {
2044 match tag {
2045 8 => {
2046 self.min_pos = ::std::option::Option::Some(is.read_int32()?);
2047 },
2048 16 => {
2049 self.max_pos = ::std::option::Option::Some(is.read_int32()?);
2050 },
2051 24 => {
2052 self.active = ::std::option::Option::Some(is.read_int32()?);
2053 },
2054 32 => {
2055 self.elevation = ::std::option::Option::Some(is.read_int32()?);
2056 },
2057 tag => {
2058 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
2059 },
2060 };
2061 }
2062 ::std::result::Result::Ok(())
2063 }
2064
2065 #[allow(unused_variables)]
2067 fn compute_size(&self) -> u64 {
2068 let mut my_size = 0;
2069 if let Some(v) = self.min_pos {
2070 my_size += ::protobuf::rt::int32_size(1, v);
2071 }
2072 if let Some(v) = self.max_pos {
2073 my_size += ::protobuf::rt::int32_size(2, v);
2074 }
2075 if let Some(v) = self.active {
2076 my_size += ::protobuf::rt::int32_size(3, v);
2077 }
2078 if let Some(v) = self.elevation {
2079 my_size += ::protobuf::rt::int32_size(4, v);
2080 }
2081 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
2082 self.special_fields.cached_size().set(my_size as u32);
2083 my_size
2084 }
2085
2086 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
2087 if let Some(v) = self.min_pos {
2088 os.write_int32(1, v)?;
2089 }
2090 if let Some(v) = self.max_pos {
2091 os.write_int32(2, v)?;
2092 }
2093 if let Some(v) = self.active {
2094 os.write_int32(3, v)?;
2095 }
2096 if let Some(v) = self.elevation {
2097 os.write_int32(4, v)?;
2098 }
2099 os.write_unknown_fields(self.special_fields.unknown_fields())?;
2100 ::std::result::Result::Ok(())
2101 }
2102
2103 fn special_fields(&self) -> &::protobuf::SpecialFields {
2104 &self.special_fields
2105 }
2106
2107 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
2108 &mut self.special_fields
2109 }
2110
2111 fn new() -> RiverEdge {
2112 RiverEdge::new()
2113 }
2114
2115 fn clear(&mut self) {
2116 self.min_pos = ::std::option::Option::None;
2117 self.max_pos = ::std::option::Option::None;
2118 self.active = ::std::option::Option::None;
2119 self.elevation = ::std::option::Option::None;
2120 self.special_fields.clear();
2121 }
2122
2123 fn default_instance() -> &'static RiverEdge {
2124 static instance: RiverEdge = RiverEdge {
2125 min_pos: ::std::option::Option::None,
2126 max_pos: ::std::option::Option::None,
2127 active: ::std::option::Option::None,
2128 elevation: ::std::option::Option::None,
2129 special_fields: ::protobuf::SpecialFields::new(),
2130 };
2131 &instance
2132 }
2133}
2134
2135impl ::protobuf::MessageFull for RiverEdge {
2136 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
2137 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
2138 descriptor.get(|| file_descriptor().message_by_package_relative_name("RiverEdge").unwrap()).clone()
2139 }
2140}
2141
2142impl ::std::fmt::Display for RiverEdge {
2143 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2144 ::protobuf::text_format::fmt(self, f)
2145 }
2146}
2147
2148impl ::protobuf::reflect::ProtobufValue for RiverEdge {
2149 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
2150}
2151
2152#[derive(PartialEq,Clone,Default,Debug)]
2154pub struct RiverTile {
2155 pub north: ::protobuf::MessageField<RiverEdge>,
2158 pub south: ::protobuf::MessageField<RiverEdge>,
2160 pub east: ::protobuf::MessageField<RiverEdge>,
2162 pub west: ::protobuf::MessageField<RiverEdge>,
2164 pub special_fields: ::protobuf::SpecialFields,
2167}
2168
2169impl<'a> ::std::default::Default for &'a RiverTile {
2170 fn default() -> &'a RiverTile {
2171 <RiverTile as ::protobuf::Message>::default_instance()
2172 }
2173}
2174
2175impl RiverTile {
2176 pub fn new() -> RiverTile {
2177 ::std::default::Default::default()
2178 }
2179
2180 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2181 let mut fields = ::std::vec::Vec::with_capacity(4);
2182 let mut oneofs = ::std::vec::Vec::with_capacity(0);
2183 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, RiverEdge>(
2184 "north",
2185 |m: &RiverTile| { &m.north },
2186 |m: &mut RiverTile| { &mut m.north },
2187 ));
2188 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, RiverEdge>(
2189 "south",
2190 |m: &RiverTile| { &m.south },
2191 |m: &mut RiverTile| { &mut m.south },
2192 ));
2193 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, RiverEdge>(
2194 "east",
2195 |m: &RiverTile| { &m.east },
2196 |m: &mut RiverTile| { &mut m.east },
2197 ));
2198 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, RiverEdge>(
2199 "west",
2200 |m: &RiverTile| { &m.west },
2201 |m: &mut RiverTile| { &mut m.west },
2202 ));
2203 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RiverTile>(
2204 "RiverTile",
2205 fields,
2206 oneofs,
2207 )
2208 }
2209}
2210
2211impl ::protobuf::Message for RiverTile {
2212 const NAME: &'static str = "RiverTile";
2213
2214 fn is_initialized(&self) -> bool {
2215 true
2216 }
2217
2218 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
2219 while let Some(tag) = is.read_raw_tag_or_eof()? {
2220 match tag {
2221 10 => {
2222 ::protobuf::rt::read_singular_message_into_field(is, &mut self.north)?;
2223 },
2224 18 => {
2225 ::protobuf::rt::read_singular_message_into_field(is, &mut self.south)?;
2226 },
2227 26 => {
2228 ::protobuf::rt::read_singular_message_into_field(is, &mut self.east)?;
2229 },
2230 34 => {
2231 ::protobuf::rt::read_singular_message_into_field(is, &mut self.west)?;
2232 },
2233 tag => {
2234 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
2235 },
2236 };
2237 }
2238 ::std::result::Result::Ok(())
2239 }
2240
2241 #[allow(unused_variables)]
2243 fn compute_size(&self) -> u64 {
2244 let mut my_size = 0;
2245 if let Some(v) = self.north.as_ref() {
2246 let len = v.compute_size();
2247 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2248 }
2249 if let Some(v) = self.south.as_ref() {
2250 let len = v.compute_size();
2251 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2252 }
2253 if let Some(v) = self.east.as_ref() {
2254 let len = v.compute_size();
2255 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2256 }
2257 if let Some(v) = self.west.as_ref() {
2258 let len = v.compute_size();
2259 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2260 }
2261 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
2262 self.special_fields.cached_size().set(my_size as u32);
2263 my_size
2264 }
2265
2266 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
2267 if let Some(v) = self.north.as_ref() {
2268 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
2269 }
2270 if let Some(v) = self.south.as_ref() {
2271 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
2272 }
2273 if let Some(v) = self.east.as_ref() {
2274 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
2275 }
2276 if let Some(v) = self.west.as_ref() {
2277 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
2278 }
2279 os.write_unknown_fields(self.special_fields.unknown_fields())?;
2280 ::std::result::Result::Ok(())
2281 }
2282
2283 fn special_fields(&self) -> &::protobuf::SpecialFields {
2284 &self.special_fields
2285 }
2286
2287 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
2288 &mut self.special_fields
2289 }
2290
2291 fn new() -> RiverTile {
2292 RiverTile::new()
2293 }
2294
2295 fn clear(&mut self) {
2296 self.north.clear();
2297 self.south.clear();
2298 self.east.clear();
2299 self.west.clear();
2300 self.special_fields.clear();
2301 }
2302
2303 fn default_instance() -> &'static RiverTile {
2304 static instance: RiverTile = RiverTile {
2305 north: ::protobuf::MessageField::none(),
2306 south: ::protobuf::MessageField::none(),
2307 east: ::protobuf::MessageField::none(),
2308 west: ::protobuf::MessageField::none(),
2309 special_fields: ::protobuf::SpecialFields::new(),
2310 };
2311 &instance
2312 }
2313}
2314
2315impl ::protobuf::MessageFull for RiverTile {
2316 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
2317 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
2318 descriptor.get(|| file_descriptor().message_by_package_relative_name("RiverTile").unwrap()).clone()
2319 }
2320}
2321
2322impl ::std::fmt::Display for RiverTile {
2323 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2324 ::protobuf::text_format::fmt(self, f)
2325 }
2326}
2327
2328impl ::protobuf::reflect::ProtobufValue for RiverTile {
2329 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
2330}
2331
2332#[derive(PartialEq,Clone,Default,Debug)]
2334pub struct Spatter {
2335 pub material: ::protobuf::MessageField<MatPair>,
2338 pub amount: ::std::option::Option<i32>,
2340 pub state: ::std::option::Option<::protobuf::EnumOrUnknown<MatterState>>,
2342 pub item: ::protobuf::MessageField<MatPair>,
2344 pub special_fields: ::protobuf::SpecialFields,
2347}
2348
2349impl<'a> ::std::default::Default for &'a Spatter {
2350 fn default() -> &'a Spatter {
2351 <Spatter as ::protobuf::Message>::default_instance()
2352 }
2353}
2354
2355impl Spatter {
2356 pub fn new() -> Spatter {
2357 ::std::default::Default::default()
2358 }
2359
2360 pub fn amount(&self) -> i32 {
2363 self.amount.unwrap_or(0)
2364 }
2365
2366 pub fn clear_amount(&mut self) {
2367 self.amount = ::std::option::Option::None;
2368 }
2369
2370 pub fn has_amount(&self) -> bool {
2371 self.amount.is_some()
2372 }
2373
2374 pub fn set_amount(&mut self, v: i32) {
2376 self.amount = ::std::option::Option::Some(v);
2377 }
2378
2379 pub fn state(&self) -> MatterState {
2382 match self.state {
2383 Some(e) => e.enum_value_or(MatterState::Solid),
2384 None => MatterState::Solid,
2385 }
2386 }
2387
2388 pub fn clear_state(&mut self) {
2389 self.state = ::std::option::Option::None;
2390 }
2391
2392 pub fn has_state(&self) -> bool {
2393 self.state.is_some()
2394 }
2395
2396 pub fn set_state(&mut self, v: MatterState) {
2398 self.state = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
2399 }
2400
2401 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2402 let mut fields = ::std::vec::Vec::with_capacity(4);
2403 let mut oneofs = ::std::vec::Vec::with_capacity(0);
2404 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
2405 "material",
2406 |m: &Spatter| { &m.material },
2407 |m: &mut Spatter| { &mut m.material },
2408 ));
2409 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2410 "amount",
2411 |m: &Spatter| { &m.amount },
2412 |m: &mut Spatter| { &mut m.amount },
2413 ));
2414 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2415 "state",
2416 |m: &Spatter| { &m.state },
2417 |m: &mut Spatter| { &mut m.state },
2418 ));
2419 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
2420 "item",
2421 |m: &Spatter| { &m.item },
2422 |m: &mut Spatter| { &mut m.item },
2423 ));
2424 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Spatter>(
2425 "Spatter",
2426 fields,
2427 oneofs,
2428 )
2429 }
2430}
2431
2432impl ::protobuf::Message for Spatter {
2433 const NAME: &'static str = "Spatter";
2434
2435 fn is_initialized(&self) -> bool {
2436 for v in &self.material {
2437 if !v.is_initialized() {
2438 return false;
2439 }
2440 };
2441 for v in &self.item {
2442 if !v.is_initialized() {
2443 return false;
2444 }
2445 };
2446 true
2447 }
2448
2449 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
2450 while let Some(tag) = is.read_raw_tag_or_eof()? {
2451 match tag {
2452 10 => {
2453 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
2454 },
2455 16 => {
2456 self.amount = ::std::option::Option::Some(is.read_int32()?);
2457 },
2458 24 => {
2459 self.state = ::std::option::Option::Some(is.read_enum_or_unknown()?);
2460 },
2461 34 => {
2462 ::protobuf::rt::read_singular_message_into_field(is, &mut self.item)?;
2463 },
2464 tag => {
2465 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
2466 },
2467 };
2468 }
2469 ::std::result::Result::Ok(())
2470 }
2471
2472 #[allow(unused_variables)]
2474 fn compute_size(&self) -> u64 {
2475 let mut my_size = 0;
2476 if let Some(v) = self.material.as_ref() {
2477 let len = v.compute_size();
2478 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2479 }
2480 if let Some(v) = self.amount {
2481 my_size += ::protobuf::rt::int32_size(2, v);
2482 }
2483 if let Some(v) = self.state {
2484 my_size += ::protobuf::rt::int32_size(3, v.value());
2485 }
2486 if let Some(v) = self.item.as_ref() {
2487 let len = v.compute_size();
2488 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2489 }
2490 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
2491 self.special_fields.cached_size().set(my_size as u32);
2492 my_size
2493 }
2494
2495 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
2496 if let Some(v) = self.material.as_ref() {
2497 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
2498 }
2499 if let Some(v) = self.amount {
2500 os.write_int32(2, v)?;
2501 }
2502 if let Some(v) = self.state {
2503 os.write_enum(3, ::protobuf::EnumOrUnknown::value(&v))?;
2504 }
2505 if let Some(v) = self.item.as_ref() {
2506 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
2507 }
2508 os.write_unknown_fields(self.special_fields.unknown_fields())?;
2509 ::std::result::Result::Ok(())
2510 }
2511
2512 fn special_fields(&self) -> &::protobuf::SpecialFields {
2513 &self.special_fields
2514 }
2515
2516 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
2517 &mut self.special_fields
2518 }
2519
2520 fn new() -> Spatter {
2521 Spatter::new()
2522 }
2523
2524 fn clear(&mut self) {
2525 self.material.clear();
2526 self.amount = ::std::option::Option::None;
2527 self.state = ::std::option::Option::None;
2528 self.item.clear();
2529 self.special_fields.clear();
2530 }
2531
2532 fn default_instance() -> &'static Spatter {
2533 static instance: Spatter = Spatter {
2534 material: ::protobuf::MessageField::none(),
2535 amount: ::std::option::Option::None,
2536 state: ::std::option::Option::None,
2537 item: ::protobuf::MessageField::none(),
2538 special_fields: ::protobuf::SpecialFields::new(),
2539 };
2540 &instance
2541 }
2542}
2543
2544impl ::protobuf::MessageFull for Spatter {
2545 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
2546 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
2547 descriptor.get(|| file_descriptor().message_by_package_relative_name("Spatter").unwrap()).clone()
2548 }
2549}
2550
2551impl ::std::fmt::Display for Spatter {
2552 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2553 ::protobuf::text_format::fmt(self, f)
2554 }
2555}
2556
2557impl ::protobuf::reflect::ProtobufValue for Spatter {
2558 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
2559}
2560
2561#[derive(PartialEq,Clone,Default,Debug)]
2563pub struct SpatterPile {
2564 pub spatters: ::std::vec::Vec<Spatter>,
2567 pub special_fields: ::protobuf::SpecialFields,
2570}
2571
2572impl<'a> ::std::default::Default for &'a SpatterPile {
2573 fn default() -> &'a SpatterPile {
2574 <SpatterPile as ::protobuf::Message>::default_instance()
2575 }
2576}
2577
2578impl SpatterPile {
2579 pub fn new() -> SpatterPile {
2580 ::std::default::Default::default()
2581 }
2582
2583 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2584 let mut fields = ::std::vec::Vec::with_capacity(1);
2585 let mut oneofs = ::std::vec::Vec::with_capacity(0);
2586 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
2587 "spatters",
2588 |m: &SpatterPile| { &m.spatters },
2589 |m: &mut SpatterPile| { &mut m.spatters },
2590 ));
2591 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SpatterPile>(
2592 "SpatterPile",
2593 fields,
2594 oneofs,
2595 )
2596 }
2597}
2598
2599impl ::protobuf::Message for SpatterPile {
2600 const NAME: &'static str = "SpatterPile";
2601
2602 fn is_initialized(&self) -> bool {
2603 for v in &self.spatters {
2604 if !v.is_initialized() {
2605 return false;
2606 }
2607 };
2608 true
2609 }
2610
2611 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
2612 while let Some(tag) = is.read_raw_tag_or_eof()? {
2613 match tag {
2614 10 => {
2615 self.spatters.push(is.read_message()?);
2616 },
2617 tag => {
2618 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
2619 },
2620 };
2621 }
2622 ::std::result::Result::Ok(())
2623 }
2624
2625 #[allow(unused_variables)]
2627 fn compute_size(&self) -> u64 {
2628 let mut my_size = 0;
2629 for value in &self.spatters {
2630 let len = value.compute_size();
2631 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
2632 };
2633 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
2634 self.special_fields.cached_size().set(my_size as u32);
2635 my_size
2636 }
2637
2638 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
2639 for v in &self.spatters {
2640 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
2641 };
2642 os.write_unknown_fields(self.special_fields.unknown_fields())?;
2643 ::std::result::Result::Ok(())
2644 }
2645
2646 fn special_fields(&self) -> &::protobuf::SpecialFields {
2647 &self.special_fields
2648 }
2649
2650 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
2651 &mut self.special_fields
2652 }
2653
2654 fn new() -> SpatterPile {
2655 SpatterPile::new()
2656 }
2657
2658 fn clear(&mut self) {
2659 self.spatters.clear();
2660 self.special_fields.clear();
2661 }
2662
2663 fn default_instance() -> &'static SpatterPile {
2664 static instance: SpatterPile = SpatterPile {
2665 spatters: ::std::vec::Vec::new(),
2666 special_fields: ::protobuf::SpecialFields::new(),
2667 };
2668 &instance
2669 }
2670}
2671
2672impl ::protobuf::MessageFull for SpatterPile {
2673 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
2674 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
2675 descriptor.get(|| file_descriptor().message_by_package_relative_name("SpatterPile").unwrap()).clone()
2676 }
2677}
2678
2679impl ::std::fmt::Display for SpatterPile {
2680 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2681 ::protobuf::text_format::fmt(self, f)
2682 }
2683}
2684
2685impl ::protobuf::reflect::ProtobufValue for SpatterPile {
2686 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
2687}
2688
2689#[derive(PartialEq,Clone,Default,Debug)]
2691pub struct Item {
2692 pub id: ::std::option::Option<i32>,
2695 pub pos: ::protobuf::MessageField<Coord>,
2697 pub flags1: ::std::option::Option<u32>,
2699 pub flags2: ::std::option::Option<u32>,
2701 pub type_: ::protobuf::MessageField<MatPair>,
2703 pub material: ::protobuf::MessageField<MatPair>,
2705 pub dye: ::protobuf::MessageField<ColorDefinition>,
2707 pub stack_size: ::std::option::Option<i32>,
2709 pub subpos_x: ::std::option::Option<f32>,
2711 pub subpos_y: ::std::option::Option<f32>,
2713 pub subpos_z: ::std::option::Option<f32>,
2715 pub projectile: ::std::option::Option<bool>,
2717 pub velocity_x: ::std::option::Option<f32>,
2719 pub velocity_y: ::std::option::Option<f32>,
2721 pub velocity_z: ::std::option::Option<f32>,
2723 pub volume: ::std::option::Option<i32>,
2725 pub improvements: ::std::vec::Vec<ItemImprovement>,
2727 pub image: ::protobuf::MessageField<ArtImage>,
2729 pub special_fields: ::protobuf::SpecialFields,
2732}
2733
2734impl<'a> ::std::default::Default for &'a Item {
2735 fn default() -> &'a Item {
2736 <Item as ::protobuf::Message>::default_instance()
2737 }
2738}
2739
2740impl Item {
2741 pub fn new() -> Item {
2742 ::std::default::Default::default()
2743 }
2744
2745 pub fn id(&self) -> i32 {
2748 self.id.unwrap_or(0)
2749 }
2750
2751 pub fn clear_id(&mut self) {
2752 self.id = ::std::option::Option::None;
2753 }
2754
2755 pub fn has_id(&self) -> bool {
2756 self.id.is_some()
2757 }
2758
2759 pub fn set_id(&mut self, v: i32) {
2761 self.id = ::std::option::Option::Some(v);
2762 }
2763
2764 pub fn flags1(&self) -> u32 {
2767 self.flags1.unwrap_or(0)
2768 }
2769
2770 pub fn clear_flags1(&mut self) {
2771 self.flags1 = ::std::option::Option::None;
2772 }
2773
2774 pub fn has_flags1(&self) -> bool {
2775 self.flags1.is_some()
2776 }
2777
2778 pub fn set_flags1(&mut self, v: u32) {
2780 self.flags1 = ::std::option::Option::Some(v);
2781 }
2782
2783 pub fn flags2(&self) -> u32 {
2786 self.flags2.unwrap_or(0)
2787 }
2788
2789 pub fn clear_flags2(&mut self) {
2790 self.flags2 = ::std::option::Option::None;
2791 }
2792
2793 pub fn has_flags2(&self) -> bool {
2794 self.flags2.is_some()
2795 }
2796
2797 pub fn set_flags2(&mut self, v: u32) {
2799 self.flags2 = ::std::option::Option::Some(v);
2800 }
2801
2802 pub fn stack_size(&self) -> i32 {
2805 self.stack_size.unwrap_or(0)
2806 }
2807
2808 pub fn clear_stack_size(&mut self) {
2809 self.stack_size = ::std::option::Option::None;
2810 }
2811
2812 pub fn has_stack_size(&self) -> bool {
2813 self.stack_size.is_some()
2814 }
2815
2816 pub fn set_stack_size(&mut self, v: i32) {
2818 self.stack_size = ::std::option::Option::Some(v);
2819 }
2820
2821 pub fn subpos_x(&self) -> f32 {
2824 self.subpos_x.unwrap_or(0.)
2825 }
2826
2827 pub fn clear_subpos_x(&mut self) {
2828 self.subpos_x = ::std::option::Option::None;
2829 }
2830
2831 pub fn has_subpos_x(&self) -> bool {
2832 self.subpos_x.is_some()
2833 }
2834
2835 pub fn set_subpos_x(&mut self, v: f32) {
2837 self.subpos_x = ::std::option::Option::Some(v);
2838 }
2839
2840 pub fn subpos_y(&self) -> f32 {
2843 self.subpos_y.unwrap_or(0.)
2844 }
2845
2846 pub fn clear_subpos_y(&mut self) {
2847 self.subpos_y = ::std::option::Option::None;
2848 }
2849
2850 pub fn has_subpos_y(&self) -> bool {
2851 self.subpos_y.is_some()
2852 }
2853
2854 pub fn set_subpos_y(&mut self, v: f32) {
2856 self.subpos_y = ::std::option::Option::Some(v);
2857 }
2858
2859 pub fn subpos_z(&self) -> f32 {
2862 self.subpos_z.unwrap_or(0.)
2863 }
2864
2865 pub fn clear_subpos_z(&mut self) {
2866 self.subpos_z = ::std::option::Option::None;
2867 }
2868
2869 pub fn has_subpos_z(&self) -> bool {
2870 self.subpos_z.is_some()
2871 }
2872
2873 pub fn set_subpos_z(&mut self, v: f32) {
2875 self.subpos_z = ::std::option::Option::Some(v);
2876 }
2877
2878 pub fn projectile(&self) -> bool {
2881 self.projectile.unwrap_or(false)
2882 }
2883
2884 pub fn clear_projectile(&mut self) {
2885 self.projectile = ::std::option::Option::None;
2886 }
2887
2888 pub fn has_projectile(&self) -> bool {
2889 self.projectile.is_some()
2890 }
2891
2892 pub fn set_projectile(&mut self, v: bool) {
2894 self.projectile = ::std::option::Option::Some(v);
2895 }
2896
2897 pub fn velocity_x(&self) -> f32 {
2900 self.velocity_x.unwrap_or(0.)
2901 }
2902
2903 pub fn clear_velocity_x(&mut self) {
2904 self.velocity_x = ::std::option::Option::None;
2905 }
2906
2907 pub fn has_velocity_x(&self) -> bool {
2908 self.velocity_x.is_some()
2909 }
2910
2911 pub fn set_velocity_x(&mut self, v: f32) {
2913 self.velocity_x = ::std::option::Option::Some(v);
2914 }
2915
2916 pub fn velocity_y(&self) -> f32 {
2919 self.velocity_y.unwrap_or(0.)
2920 }
2921
2922 pub fn clear_velocity_y(&mut self) {
2923 self.velocity_y = ::std::option::Option::None;
2924 }
2925
2926 pub fn has_velocity_y(&self) -> bool {
2927 self.velocity_y.is_some()
2928 }
2929
2930 pub fn set_velocity_y(&mut self, v: f32) {
2932 self.velocity_y = ::std::option::Option::Some(v);
2933 }
2934
2935 pub fn velocity_z(&self) -> f32 {
2938 self.velocity_z.unwrap_or(0.)
2939 }
2940
2941 pub fn clear_velocity_z(&mut self) {
2942 self.velocity_z = ::std::option::Option::None;
2943 }
2944
2945 pub fn has_velocity_z(&self) -> bool {
2946 self.velocity_z.is_some()
2947 }
2948
2949 pub fn set_velocity_z(&mut self, v: f32) {
2951 self.velocity_z = ::std::option::Option::Some(v);
2952 }
2953
2954 pub fn volume(&self) -> i32 {
2957 self.volume.unwrap_or(0)
2958 }
2959
2960 pub fn clear_volume(&mut self) {
2961 self.volume = ::std::option::Option::None;
2962 }
2963
2964 pub fn has_volume(&self) -> bool {
2965 self.volume.is_some()
2966 }
2967
2968 pub fn set_volume(&mut self, v: i32) {
2970 self.volume = ::std::option::Option::Some(v);
2971 }
2972
2973 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2974 let mut fields = ::std::vec::Vec::with_capacity(18);
2975 let mut oneofs = ::std::vec::Vec::with_capacity(0);
2976 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2977 "id",
2978 |m: &Item| { &m.id },
2979 |m: &mut Item| { &mut m.id },
2980 ));
2981 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
2982 "pos",
2983 |m: &Item| { &m.pos },
2984 |m: &mut Item| { &mut m.pos },
2985 ));
2986 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2987 "flags1",
2988 |m: &Item| { &m.flags1 },
2989 |m: &mut Item| { &mut m.flags1 },
2990 ));
2991 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2992 "flags2",
2993 |m: &Item| { &m.flags2 },
2994 |m: &mut Item| { &mut m.flags2 },
2995 ));
2996 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
2997 "type",
2998 |m: &Item| { &m.type_ },
2999 |m: &mut Item| { &mut m.type_ },
3000 ));
3001 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
3002 "material",
3003 |m: &Item| { &m.material },
3004 |m: &mut Item| { &mut m.material },
3005 ));
3006 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ColorDefinition>(
3007 "dye",
3008 |m: &Item| { &m.dye },
3009 |m: &mut Item| { &mut m.dye },
3010 ));
3011 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3012 "stack_size",
3013 |m: &Item| { &m.stack_size },
3014 |m: &mut Item| { &mut m.stack_size },
3015 ));
3016 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3017 "subpos_x",
3018 |m: &Item| { &m.subpos_x },
3019 |m: &mut Item| { &mut m.subpos_x },
3020 ));
3021 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3022 "subpos_y",
3023 |m: &Item| { &m.subpos_y },
3024 |m: &mut Item| { &mut m.subpos_y },
3025 ));
3026 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3027 "subpos_z",
3028 |m: &Item| { &m.subpos_z },
3029 |m: &mut Item| { &mut m.subpos_z },
3030 ));
3031 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3032 "projectile",
3033 |m: &Item| { &m.projectile },
3034 |m: &mut Item| { &mut m.projectile },
3035 ));
3036 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3037 "velocity_x",
3038 |m: &Item| { &m.velocity_x },
3039 |m: &mut Item| { &mut m.velocity_x },
3040 ));
3041 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3042 "velocity_y",
3043 |m: &Item| { &m.velocity_y },
3044 |m: &mut Item| { &mut m.velocity_y },
3045 ));
3046 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3047 "velocity_z",
3048 |m: &Item| { &m.velocity_z },
3049 |m: &mut Item| { &mut m.velocity_z },
3050 ));
3051 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3052 "volume",
3053 |m: &Item| { &m.volume },
3054 |m: &mut Item| { &mut m.volume },
3055 ));
3056 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
3057 "improvements",
3058 |m: &Item| { &m.improvements },
3059 |m: &mut Item| { &mut m.improvements },
3060 ));
3061 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ArtImage>(
3062 "image",
3063 |m: &Item| { &m.image },
3064 |m: &mut Item| { &mut m.image },
3065 ));
3066 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Item>(
3067 "Item",
3068 fields,
3069 oneofs,
3070 )
3071 }
3072}
3073
3074impl ::protobuf::Message for Item {
3075 const NAME: &'static str = "Item";
3076
3077 fn is_initialized(&self) -> bool {
3078 for v in &self.pos {
3079 if !v.is_initialized() {
3080 return false;
3081 }
3082 };
3083 for v in &self.type_ {
3084 if !v.is_initialized() {
3085 return false;
3086 }
3087 };
3088 for v in &self.material {
3089 if !v.is_initialized() {
3090 return false;
3091 }
3092 };
3093 for v in &self.dye {
3094 if !v.is_initialized() {
3095 return false;
3096 }
3097 };
3098 for v in &self.improvements {
3099 if !v.is_initialized() {
3100 return false;
3101 }
3102 };
3103 for v in &self.image {
3104 if !v.is_initialized() {
3105 return false;
3106 }
3107 };
3108 true
3109 }
3110
3111 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
3112 while let Some(tag) = is.read_raw_tag_or_eof()? {
3113 match tag {
3114 8 => {
3115 self.id = ::std::option::Option::Some(is.read_int32()?);
3116 },
3117 18 => {
3118 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
3119 },
3120 24 => {
3121 self.flags1 = ::std::option::Option::Some(is.read_uint32()?);
3122 },
3123 32 => {
3124 self.flags2 = ::std::option::Option::Some(is.read_uint32()?);
3125 },
3126 42 => {
3127 ::protobuf::rt::read_singular_message_into_field(is, &mut self.type_)?;
3128 },
3129 50 => {
3130 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
3131 },
3132 58 => {
3133 ::protobuf::rt::read_singular_message_into_field(is, &mut self.dye)?;
3134 },
3135 64 => {
3136 self.stack_size = ::std::option::Option::Some(is.read_int32()?);
3137 },
3138 77 => {
3139 self.subpos_x = ::std::option::Option::Some(is.read_float()?);
3140 },
3141 85 => {
3142 self.subpos_y = ::std::option::Option::Some(is.read_float()?);
3143 },
3144 93 => {
3145 self.subpos_z = ::std::option::Option::Some(is.read_float()?);
3146 },
3147 96 => {
3148 self.projectile = ::std::option::Option::Some(is.read_bool()?);
3149 },
3150 109 => {
3151 self.velocity_x = ::std::option::Option::Some(is.read_float()?);
3152 },
3153 117 => {
3154 self.velocity_y = ::std::option::Option::Some(is.read_float()?);
3155 },
3156 125 => {
3157 self.velocity_z = ::std::option::Option::Some(is.read_float()?);
3158 },
3159 128 => {
3160 self.volume = ::std::option::Option::Some(is.read_int32()?);
3161 },
3162 138 => {
3163 self.improvements.push(is.read_message()?);
3164 },
3165 146 => {
3166 ::protobuf::rt::read_singular_message_into_field(is, &mut self.image)?;
3167 },
3168 tag => {
3169 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
3170 },
3171 };
3172 }
3173 ::std::result::Result::Ok(())
3174 }
3175
3176 #[allow(unused_variables)]
3178 fn compute_size(&self) -> u64 {
3179 let mut my_size = 0;
3180 if let Some(v) = self.id {
3181 my_size += ::protobuf::rt::int32_size(1, v);
3182 }
3183 if let Some(v) = self.pos.as_ref() {
3184 let len = v.compute_size();
3185 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3186 }
3187 if let Some(v) = self.flags1 {
3188 my_size += ::protobuf::rt::uint32_size(3, v);
3189 }
3190 if let Some(v) = self.flags2 {
3191 my_size += ::protobuf::rt::uint32_size(4, v);
3192 }
3193 if let Some(v) = self.type_.as_ref() {
3194 let len = v.compute_size();
3195 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3196 }
3197 if let Some(v) = self.material.as_ref() {
3198 let len = v.compute_size();
3199 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3200 }
3201 if let Some(v) = self.dye.as_ref() {
3202 let len = v.compute_size();
3203 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3204 }
3205 if let Some(v) = self.stack_size {
3206 my_size += ::protobuf::rt::int32_size(8, v);
3207 }
3208 if let Some(v) = self.subpos_x {
3209 my_size += 1 + 4;
3210 }
3211 if let Some(v) = self.subpos_y {
3212 my_size += 1 + 4;
3213 }
3214 if let Some(v) = self.subpos_z {
3215 my_size += 1 + 4;
3216 }
3217 if let Some(v) = self.projectile {
3218 my_size += 1 + 1;
3219 }
3220 if let Some(v) = self.velocity_x {
3221 my_size += 1 + 4;
3222 }
3223 if let Some(v) = self.velocity_y {
3224 my_size += 1 + 4;
3225 }
3226 if let Some(v) = self.velocity_z {
3227 my_size += 1 + 4;
3228 }
3229 if let Some(v) = self.volume {
3230 my_size += ::protobuf::rt::int32_size(16, v);
3231 }
3232 for value in &self.improvements {
3233 let len = value.compute_size();
3234 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3235 };
3236 if let Some(v) = self.image.as_ref() {
3237 let len = v.compute_size();
3238 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3239 }
3240 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
3241 self.special_fields.cached_size().set(my_size as u32);
3242 my_size
3243 }
3244
3245 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
3246 if let Some(v) = self.id {
3247 os.write_int32(1, v)?;
3248 }
3249 if let Some(v) = self.pos.as_ref() {
3250 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
3251 }
3252 if let Some(v) = self.flags1 {
3253 os.write_uint32(3, v)?;
3254 }
3255 if let Some(v) = self.flags2 {
3256 os.write_uint32(4, v)?;
3257 }
3258 if let Some(v) = self.type_.as_ref() {
3259 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
3260 }
3261 if let Some(v) = self.material.as_ref() {
3262 ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
3263 }
3264 if let Some(v) = self.dye.as_ref() {
3265 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
3266 }
3267 if let Some(v) = self.stack_size {
3268 os.write_int32(8, v)?;
3269 }
3270 if let Some(v) = self.subpos_x {
3271 os.write_float(9, v)?;
3272 }
3273 if let Some(v) = self.subpos_y {
3274 os.write_float(10, v)?;
3275 }
3276 if let Some(v) = self.subpos_z {
3277 os.write_float(11, v)?;
3278 }
3279 if let Some(v) = self.projectile {
3280 os.write_bool(12, v)?;
3281 }
3282 if let Some(v) = self.velocity_x {
3283 os.write_float(13, v)?;
3284 }
3285 if let Some(v) = self.velocity_y {
3286 os.write_float(14, v)?;
3287 }
3288 if let Some(v) = self.velocity_z {
3289 os.write_float(15, v)?;
3290 }
3291 if let Some(v) = self.volume {
3292 os.write_int32(16, v)?;
3293 }
3294 for v in &self.improvements {
3295 ::protobuf::rt::write_message_field_with_cached_size(17, v, os)?;
3296 };
3297 if let Some(v) = self.image.as_ref() {
3298 ::protobuf::rt::write_message_field_with_cached_size(18, v, os)?;
3299 }
3300 os.write_unknown_fields(self.special_fields.unknown_fields())?;
3301 ::std::result::Result::Ok(())
3302 }
3303
3304 fn special_fields(&self) -> &::protobuf::SpecialFields {
3305 &self.special_fields
3306 }
3307
3308 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
3309 &mut self.special_fields
3310 }
3311
3312 fn new() -> Item {
3313 Item::new()
3314 }
3315
3316 fn clear(&mut self) {
3317 self.id = ::std::option::Option::None;
3318 self.pos.clear();
3319 self.flags1 = ::std::option::Option::None;
3320 self.flags2 = ::std::option::Option::None;
3321 self.type_.clear();
3322 self.material.clear();
3323 self.dye.clear();
3324 self.stack_size = ::std::option::Option::None;
3325 self.subpos_x = ::std::option::Option::None;
3326 self.subpos_y = ::std::option::Option::None;
3327 self.subpos_z = ::std::option::Option::None;
3328 self.projectile = ::std::option::Option::None;
3329 self.velocity_x = ::std::option::Option::None;
3330 self.velocity_y = ::std::option::Option::None;
3331 self.velocity_z = ::std::option::Option::None;
3332 self.volume = ::std::option::Option::None;
3333 self.improvements.clear();
3334 self.image.clear();
3335 self.special_fields.clear();
3336 }
3337
3338 fn default_instance() -> &'static Item {
3339 static instance: Item = Item {
3340 id: ::std::option::Option::None,
3341 pos: ::protobuf::MessageField::none(),
3342 flags1: ::std::option::Option::None,
3343 flags2: ::std::option::Option::None,
3344 type_: ::protobuf::MessageField::none(),
3345 material: ::protobuf::MessageField::none(),
3346 dye: ::protobuf::MessageField::none(),
3347 stack_size: ::std::option::Option::None,
3348 subpos_x: ::std::option::Option::None,
3349 subpos_y: ::std::option::Option::None,
3350 subpos_z: ::std::option::Option::None,
3351 projectile: ::std::option::Option::None,
3352 velocity_x: ::std::option::Option::None,
3353 velocity_y: ::std::option::Option::None,
3354 velocity_z: ::std::option::Option::None,
3355 volume: ::std::option::Option::None,
3356 improvements: ::std::vec::Vec::new(),
3357 image: ::protobuf::MessageField::none(),
3358 special_fields: ::protobuf::SpecialFields::new(),
3359 };
3360 &instance
3361 }
3362}
3363
3364impl ::protobuf::MessageFull for Item {
3365 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
3366 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
3367 descriptor.get(|| file_descriptor().message_by_package_relative_name("Item").unwrap()).clone()
3368 }
3369}
3370
3371impl ::std::fmt::Display for Item {
3372 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3373 ::protobuf::text_format::fmt(self, f)
3374 }
3375}
3376
3377impl ::protobuf::reflect::ProtobufValue for Item {
3378 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
3379}
3380
3381#[derive(PartialEq,Clone,Default,Debug)]
3383pub struct PlantTile {
3384 pub trunk: ::std::option::Option<bool>,
3387 pub connection_east: ::std::option::Option<bool>,
3389 pub connection_south: ::std::option::Option<bool>,
3391 pub connection_west: ::std::option::Option<bool>,
3393 pub connection_north: ::std::option::Option<bool>,
3395 pub branches: ::std::option::Option<bool>,
3397 pub twigs: ::std::option::Option<bool>,
3399 pub tile_type: ::std::option::Option<::protobuf::EnumOrUnknown<TiletypeSpecial>>,
3401 pub special_fields: ::protobuf::SpecialFields,
3404}
3405
3406impl<'a> ::std::default::Default for &'a PlantTile {
3407 fn default() -> &'a PlantTile {
3408 <PlantTile as ::protobuf::Message>::default_instance()
3409 }
3410}
3411
3412impl PlantTile {
3413 pub fn new() -> PlantTile {
3414 ::std::default::Default::default()
3415 }
3416
3417 pub fn trunk(&self) -> bool {
3420 self.trunk.unwrap_or(false)
3421 }
3422
3423 pub fn clear_trunk(&mut self) {
3424 self.trunk = ::std::option::Option::None;
3425 }
3426
3427 pub fn has_trunk(&self) -> bool {
3428 self.trunk.is_some()
3429 }
3430
3431 pub fn set_trunk(&mut self, v: bool) {
3433 self.trunk = ::std::option::Option::Some(v);
3434 }
3435
3436 pub fn connection_east(&self) -> bool {
3439 self.connection_east.unwrap_or(false)
3440 }
3441
3442 pub fn clear_connection_east(&mut self) {
3443 self.connection_east = ::std::option::Option::None;
3444 }
3445
3446 pub fn has_connection_east(&self) -> bool {
3447 self.connection_east.is_some()
3448 }
3449
3450 pub fn set_connection_east(&mut self, v: bool) {
3452 self.connection_east = ::std::option::Option::Some(v);
3453 }
3454
3455 pub fn connection_south(&self) -> bool {
3458 self.connection_south.unwrap_or(false)
3459 }
3460
3461 pub fn clear_connection_south(&mut self) {
3462 self.connection_south = ::std::option::Option::None;
3463 }
3464
3465 pub fn has_connection_south(&self) -> bool {
3466 self.connection_south.is_some()
3467 }
3468
3469 pub fn set_connection_south(&mut self, v: bool) {
3471 self.connection_south = ::std::option::Option::Some(v);
3472 }
3473
3474 pub fn connection_west(&self) -> bool {
3477 self.connection_west.unwrap_or(false)
3478 }
3479
3480 pub fn clear_connection_west(&mut self) {
3481 self.connection_west = ::std::option::Option::None;
3482 }
3483
3484 pub fn has_connection_west(&self) -> bool {
3485 self.connection_west.is_some()
3486 }
3487
3488 pub fn set_connection_west(&mut self, v: bool) {
3490 self.connection_west = ::std::option::Option::Some(v);
3491 }
3492
3493 pub fn connection_north(&self) -> bool {
3496 self.connection_north.unwrap_or(false)
3497 }
3498
3499 pub fn clear_connection_north(&mut self) {
3500 self.connection_north = ::std::option::Option::None;
3501 }
3502
3503 pub fn has_connection_north(&self) -> bool {
3504 self.connection_north.is_some()
3505 }
3506
3507 pub fn set_connection_north(&mut self, v: bool) {
3509 self.connection_north = ::std::option::Option::Some(v);
3510 }
3511
3512 pub fn branches(&self) -> bool {
3515 self.branches.unwrap_or(false)
3516 }
3517
3518 pub fn clear_branches(&mut self) {
3519 self.branches = ::std::option::Option::None;
3520 }
3521
3522 pub fn has_branches(&self) -> bool {
3523 self.branches.is_some()
3524 }
3525
3526 pub fn set_branches(&mut self, v: bool) {
3528 self.branches = ::std::option::Option::Some(v);
3529 }
3530
3531 pub fn twigs(&self) -> bool {
3534 self.twigs.unwrap_or(false)
3535 }
3536
3537 pub fn clear_twigs(&mut self) {
3538 self.twigs = ::std::option::Option::None;
3539 }
3540
3541 pub fn has_twigs(&self) -> bool {
3542 self.twigs.is_some()
3543 }
3544
3545 pub fn set_twigs(&mut self, v: bool) {
3547 self.twigs = ::std::option::Option::Some(v);
3548 }
3549
3550 pub fn tile_type(&self) -> TiletypeSpecial {
3553 match self.tile_type {
3554 Some(e) => e.enum_value_or(TiletypeSpecial::NO_SPECIAL),
3555 None => TiletypeSpecial::NO_SPECIAL,
3556 }
3557 }
3558
3559 pub fn clear_tile_type(&mut self) {
3560 self.tile_type = ::std::option::Option::None;
3561 }
3562
3563 pub fn has_tile_type(&self) -> bool {
3564 self.tile_type.is_some()
3565 }
3566
3567 pub fn set_tile_type(&mut self, v: TiletypeSpecial) {
3569 self.tile_type = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
3570 }
3571
3572 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
3573 let mut fields = ::std::vec::Vec::with_capacity(8);
3574 let mut oneofs = ::std::vec::Vec::with_capacity(0);
3575 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3576 "trunk",
3577 |m: &PlantTile| { &m.trunk },
3578 |m: &mut PlantTile| { &mut m.trunk },
3579 ));
3580 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3581 "connection_east",
3582 |m: &PlantTile| { &m.connection_east },
3583 |m: &mut PlantTile| { &mut m.connection_east },
3584 ));
3585 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3586 "connection_south",
3587 |m: &PlantTile| { &m.connection_south },
3588 |m: &mut PlantTile| { &mut m.connection_south },
3589 ));
3590 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3591 "connection_west",
3592 |m: &PlantTile| { &m.connection_west },
3593 |m: &mut PlantTile| { &mut m.connection_west },
3594 ));
3595 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3596 "connection_north",
3597 |m: &PlantTile| { &m.connection_north },
3598 |m: &mut PlantTile| { &mut m.connection_north },
3599 ));
3600 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3601 "branches",
3602 |m: &PlantTile| { &m.branches },
3603 |m: &mut PlantTile| { &mut m.branches },
3604 ));
3605 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3606 "twigs",
3607 |m: &PlantTile| { &m.twigs },
3608 |m: &mut PlantTile| { &mut m.twigs },
3609 ));
3610 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3611 "tile_type",
3612 |m: &PlantTile| { &m.tile_type },
3613 |m: &mut PlantTile| { &mut m.tile_type },
3614 ));
3615 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantTile>(
3616 "PlantTile",
3617 fields,
3618 oneofs,
3619 )
3620 }
3621}
3622
3623impl ::protobuf::Message for PlantTile {
3624 const NAME: &'static str = "PlantTile";
3625
3626 fn is_initialized(&self) -> bool {
3627 true
3628 }
3629
3630 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
3631 while let Some(tag) = is.read_raw_tag_or_eof()? {
3632 match tag {
3633 8 => {
3634 self.trunk = ::std::option::Option::Some(is.read_bool()?);
3635 },
3636 16 => {
3637 self.connection_east = ::std::option::Option::Some(is.read_bool()?);
3638 },
3639 24 => {
3640 self.connection_south = ::std::option::Option::Some(is.read_bool()?);
3641 },
3642 32 => {
3643 self.connection_west = ::std::option::Option::Some(is.read_bool()?);
3644 },
3645 40 => {
3646 self.connection_north = ::std::option::Option::Some(is.read_bool()?);
3647 },
3648 48 => {
3649 self.branches = ::std::option::Option::Some(is.read_bool()?);
3650 },
3651 56 => {
3652 self.twigs = ::std::option::Option::Some(is.read_bool()?);
3653 },
3654 64 => {
3655 self.tile_type = ::std::option::Option::Some(is.read_enum_or_unknown()?);
3656 },
3657 tag => {
3658 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
3659 },
3660 };
3661 }
3662 ::std::result::Result::Ok(())
3663 }
3664
3665 #[allow(unused_variables)]
3667 fn compute_size(&self) -> u64 {
3668 let mut my_size = 0;
3669 if let Some(v) = self.trunk {
3670 my_size += 1 + 1;
3671 }
3672 if let Some(v) = self.connection_east {
3673 my_size += 1 + 1;
3674 }
3675 if let Some(v) = self.connection_south {
3676 my_size += 1 + 1;
3677 }
3678 if let Some(v) = self.connection_west {
3679 my_size += 1 + 1;
3680 }
3681 if let Some(v) = self.connection_north {
3682 my_size += 1 + 1;
3683 }
3684 if let Some(v) = self.branches {
3685 my_size += 1 + 1;
3686 }
3687 if let Some(v) = self.twigs {
3688 my_size += 1 + 1;
3689 }
3690 if let Some(v) = self.tile_type {
3691 my_size += ::protobuf::rt::int32_size(8, v.value());
3692 }
3693 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
3694 self.special_fields.cached_size().set(my_size as u32);
3695 my_size
3696 }
3697
3698 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
3699 if let Some(v) = self.trunk {
3700 os.write_bool(1, v)?;
3701 }
3702 if let Some(v) = self.connection_east {
3703 os.write_bool(2, v)?;
3704 }
3705 if let Some(v) = self.connection_south {
3706 os.write_bool(3, v)?;
3707 }
3708 if let Some(v) = self.connection_west {
3709 os.write_bool(4, v)?;
3710 }
3711 if let Some(v) = self.connection_north {
3712 os.write_bool(5, v)?;
3713 }
3714 if let Some(v) = self.branches {
3715 os.write_bool(6, v)?;
3716 }
3717 if let Some(v) = self.twigs {
3718 os.write_bool(7, v)?;
3719 }
3720 if let Some(v) = self.tile_type {
3721 os.write_enum(8, ::protobuf::EnumOrUnknown::value(&v))?;
3722 }
3723 os.write_unknown_fields(self.special_fields.unknown_fields())?;
3724 ::std::result::Result::Ok(())
3725 }
3726
3727 fn special_fields(&self) -> &::protobuf::SpecialFields {
3728 &self.special_fields
3729 }
3730
3731 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
3732 &mut self.special_fields
3733 }
3734
3735 fn new() -> PlantTile {
3736 PlantTile::new()
3737 }
3738
3739 fn clear(&mut self) {
3740 self.trunk = ::std::option::Option::None;
3741 self.connection_east = ::std::option::Option::None;
3742 self.connection_south = ::std::option::Option::None;
3743 self.connection_west = ::std::option::Option::None;
3744 self.connection_north = ::std::option::Option::None;
3745 self.branches = ::std::option::Option::None;
3746 self.twigs = ::std::option::Option::None;
3747 self.tile_type = ::std::option::Option::None;
3748 self.special_fields.clear();
3749 }
3750
3751 fn default_instance() -> &'static PlantTile {
3752 static instance: PlantTile = PlantTile {
3753 trunk: ::std::option::Option::None,
3754 connection_east: ::std::option::Option::None,
3755 connection_south: ::std::option::Option::None,
3756 connection_west: ::std::option::Option::None,
3757 connection_north: ::std::option::Option::None,
3758 branches: ::std::option::Option::None,
3759 twigs: ::std::option::Option::None,
3760 tile_type: ::std::option::Option::None,
3761 special_fields: ::protobuf::SpecialFields::new(),
3762 };
3763 &instance
3764 }
3765}
3766
3767impl ::protobuf::MessageFull for PlantTile {
3768 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
3769 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
3770 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantTile").unwrap()).clone()
3771 }
3772}
3773
3774impl ::std::fmt::Display for PlantTile {
3775 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3776 ::protobuf::text_format::fmt(self, f)
3777 }
3778}
3779
3780impl ::protobuf::reflect::ProtobufValue for PlantTile {
3781 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
3782}
3783
3784#[derive(PartialEq,Clone,Default,Debug)]
3786pub struct TreeInfo {
3787 pub size: ::protobuf::MessageField<Coord>,
3790 pub tiles: ::std::vec::Vec<PlantTile>,
3792 pub special_fields: ::protobuf::SpecialFields,
3795}
3796
3797impl<'a> ::std::default::Default for &'a TreeInfo {
3798 fn default() -> &'a TreeInfo {
3799 <TreeInfo as ::protobuf::Message>::default_instance()
3800 }
3801}
3802
3803impl TreeInfo {
3804 pub fn new() -> TreeInfo {
3805 ::std::default::Default::default()
3806 }
3807
3808 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
3809 let mut fields = ::std::vec::Vec::with_capacity(2);
3810 let mut oneofs = ::std::vec::Vec::with_capacity(0);
3811 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
3812 "size",
3813 |m: &TreeInfo| { &m.size },
3814 |m: &mut TreeInfo| { &mut m.size },
3815 ));
3816 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
3817 "tiles",
3818 |m: &TreeInfo| { &m.tiles },
3819 |m: &mut TreeInfo| { &mut m.tiles },
3820 ));
3821 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TreeInfo>(
3822 "TreeInfo",
3823 fields,
3824 oneofs,
3825 )
3826 }
3827}
3828
3829impl ::protobuf::Message for TreeInfo {
3830 const NAME: &'static str = "TreeInfo";
3831
3832 fn is_initialized(&self) -> bool {
3833 true
3834 }
3835
3836 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
3837 while let Some(tag) = is.read_raw_tag_or_eof()? {
3838 match tag {
3839 10 => {
3840 ::protobuf::rt::read_singular_message_into_field(is, &mut self.size)?;
3841 },
3842 18 => {
3843 self.tiles.push(is.read_message()?);
3844 },
3845 tag => {
3846 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
3847 },
3848 };
3849 }
3850 ::std::result::Result::Ok(())
3851 }
3852
3853 #[allow(unused_variables)]
3855 fn compute_size(&self) -> u64 {
3856 let mut my_size = 0;
3857 if let Some(v) = self.size.as_ref() {
3858 let len = v.compute_size();
3859 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3860 }
3861 for value in &self.tiles {
3862 let len = value.compute_size();
3863 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
3864 };
3865 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
3866 self.special_fields.cached_size().set(my_size as u32);
3867 my_size
3868 }
3869
3870 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
3871 if let Some(v) = self.size.as_ref() {
3872 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
3873 }
3874 for v in &self.tiles {
3875 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
3876 };
3877 os.write_unknown_fields(self.special_fields.unknown_fields())?;
3878 ::std::result::Result::Ok(())
3879 }
3880
3881 fn special_fields(&self) -> &::protobuf::SpecialFields {
3882 &self.special_fields
3883 }
3884
3885 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
3886 &mut self.special_fields
3887 }
3888
3889 fn new() -> TreeInfo {
3890 TreeInfo::new()
3891 }
3892
3893 fn clear(&mut self) {
3894 self.size.clear();
3895 self.tiles.clear();
3896 self.special_fields.clear();
3897 }
3898
3899 fn default_instance() -> &'static TreeInfo {
3900 static instance: TreeInfo = TreeInfo {
3901 size: ::protobuf::MessageField::none(),
3902 tiles: ::std::vec::Vec::new(),
3903 special_fields: ::protobuf::SpecialFields::new(),
3904 };
3905 &instance
3906 }
3907}
3908
3909impl ::protobuf::MessageFull for TreeInfo {
3910 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
3911 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
3912 descriptor.get(|| file_descriptor().message_by_package_relative_name("TreeInfo").unwrap()).clone()
3913 }
3914}
3915
3916impl ::std::fmt::Display for TreeInfo {
3917 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3918 ::protobuf::text_format::fmt(self, f)
3919 }
3920}
3921
3922impl ::protobuf::reflect::ProtobufValue for TreeInfo {
3923 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
3924}
3925
3926#[derive(PartialEq,Clone,Default,Debug)]
3928pub struct PlantInstance {
3929 pub plant_type: ::std::option::Option<i32>,
3932 pub pos: ::protobuf::MessageField<Coord>,
3934 pub tree_info: ::protobuf::MessageField<TreeInfo>,
3936 pub special_fields: ::protobuf::SpecialFields,
3939}
3940
3941impl<'a> ::std::default::Default for &'a PlantInstance {
3942 fn default() -> &'a PlantInstance {
3943 <PlantInstance as ::protobuf::Message>::default_instance()
3944 }
3945}
3946
3947impl PlantInstance {
3948 pub fn new() -> PlantInstance {
3949 ::std::default::Default::default()
3950 }
3951
3952 pub fn plant_type(&self) -> i32 {
3955 self.plant_type.unwrap_or(0)
3956 }
3957
3958 pub fn clear_plant_type(&mut self) {
3959 self.plant_type = ::std::option::Option::None;
3960 }
3961
3962 pub fn has_plant_type(&self) -> bool {
3963 self.plant_type.is_some()
3964 }
3965
3966 pub fn set_plant_type(&mut self, v: i32) {
3968 self.plant_type = ::std::option::Option::Some(v);
3969 }
3970
3971 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
3972 let mut fields = ::std::vec::Vec::with_capacity(3);
3973 let mut oneofs = ::std::vec::Vec::with_capacity(0);
3974 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
3975 "plant_type",
3976 |m: &PlantInstance| { &m.plant_type },
3977 |m: &mut PlantInstance| { &mut m.plant_type },
3978 ));
3979 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
3980 "pos",
3981 |m: &PlantInstance| { &m.pos },
3982 |m: &mut PlantInstance| { &mut m.pos },
3983 ));
3984 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, TreeInfo>(
3985 "tree_info",
3986 |m: &PlantInstance| { &m.tree_info },
3987 |m: &mut PlantInstance| { &mut m.tree_info },
3988 ));
3989 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantInstance>(
3990 "PlantInstance",
3991 fields,
3992 oneofs,
3993 )
3994 }
3995}
3996
3997impl ::protobuf::Message for PlantInstance {
3998 const NAME: &'static str = "PlantInstance";
3999
4000 fn is_initialized(&self) -> bool {
4001 true
4002 }
4003
4004 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
4005 while let Some(tag) = is.read_raw_tag_or_eof()? {
4006 match tag {
4007 8 => {
4008 self.plant_type = ::std::option::Option::Some(is.read_int32()?);
4009 },
4010 18 => {
4011 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
4012 },
4013 26 => {
4014 ::protobuf::rt::read_singular_message_into_field(is, &mut self.tree_info)?;
4015 },
4016 tag => {
4017 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
4018 },
4019 };
4020 }
4021 ::std::result::Result::Ok(())
4022 }
4023
4024 #[allow(unused_variables)]
4026 fn compute_size(&self) -> u64 {
4027 let mut my_size = 0;
4028 if let Some(v) = self.plant_type {
4029 my_size += ::protobuf::rt::int32_size(1, v);
4030 }
4031 if let Some(v) = self.pos.as_ref() {
4032 let len = v.compute_size();
4033 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4034 }
4035 if let Some(v) = self.tree_info.as_ref() {
4036 let len = v.compute_size();
4037 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4038 }
4039 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
4040 self.special_fields.cached_size().set(my_size as u32);
4041 my_size
4042 }
4043
4044 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
4045 if let Some(v) = self.plant_type {
4046 os.write_int32(1, v)?;
4047 }
4048 if let Some(v) = self.pos.as_ref() {
4049 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
4050 }
4051 if let Some(v) = self.tree_info.as_ref() {
4052 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
4053 }
4054 os.write_unknown_fields(self.special_fields.unknown_fields())?;
4055 ::std::result::Result::Ok(())
4056 }
4057
4058 fn special_fields(&self) -> &::protobuf::SpecialFields {
4059 &self.special_fields
4060 }
4061
4062 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
4063 &mut self.special_fields
4064 }
4065
4066 fn new() -> PlantInstance {
4067 PlantInstance::new()
4068 }
4069
4070 fn clear(&mut self) {
4071 self.plant_type = ::std::option::Option::None;
4072 self.pos.clear();
4073 self.tree_info.clear();
4074 self.special_fields.clear();
4075 }
4076
4077 fn default_instance() -> &'static PlantInstance {
4078 static instance: PlantInstance = PlantInstance {
4079 plant_type: ::std::option::Option::None,
4080 pos: ::protobuf::MessageField::none(),
4081 tree_info: ::protobuf::MessageField::none(),
4082 special_fields: ::protobuf::SpecialFields::new(),
4083 };
4084 &instance
4085 }
4086}
4087
4088impl ::protobuf::MessageFull for PlantInstance {
4089 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
4090 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
4091 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantInstance").unwrap()).clone()
4092 }
4093}
4094
4095impl ::std::fmt::Display for PlantInstance {
4096 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4097 ::protobuf::text_format::fmt(self, f)
4098 }
4099}
4100
4101impl ::protobuf::reflect::ProtobufValue for PlantInstance {
4102 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
4103}
4104
4105#[derive(PartialEq,Clone,Default,Debug)]
4107pub struct MapBlock {
4108 pub map_x: ::std::option::Option<i32>,
4111 pub map_y: ::std::option::Option<i32>,
4113 pub map_z: ::std::option::Option<i32>,
4115 pub tiles: ::std::vec::Vec<i32>,
4117 pub materials: ::std::vec::Vec<MatPair>,
4119 pub layer_materials: ::std::vec::Vec<MatPair>,
4121 pub vein_materials: ::std::vec::Vec<MatPair>,
4123 pub base_materials: ::std::vec::Vec<MatPair>,
4125 pub magma: ::std::vec::Vec<i32>,
4127 pub water: ::std::vec::Vec<i32>,
4129 pub hidden: ::std::vec::Vec<bool>,
4131 pub light: ::std::vec::Vec<bool>,
4133 pub subterranean: ::std::vec::Vec<bool>,
4135 pub outside: ::std::vec::Vec<bool>,
4137 pub aquifer: ::std::vec::Vec<bool>,
4139 pub water_stagnant: ::std::vec::Vec<bool>,
4141 pub water_salt: ::std::vec::Vec<bool>,
4143 pub construction_items: ::std::vec::Vec<MatPair>,
4145 pub buildings: ::std::vec::Vec<BuildingInstance>,
4147 pub tree_percent: ::std::vec::Vec<i32>,
4149 pub tree_x: ::std::vec::Vec<i32>,
4151 pub tree_y: ::std::vec::Vec<i32>,
4153 pub tree_z: ::std::vec::Vec<i32>,
4155 pub tile_dig_designation: ::std::vec::Vec<::protobuf::EnumOrUnknown<TileDigDesignation>>,
4157 pub spatterPile: ::std::vec::Vec<SpatterPile>,
4159 pub items: ::std::vec::Vec<Item>,
4161 pub tile_dig_designation_marker: ::std::vec::Vec<bool>,
4163 pub tile_dig_designation_auto: ::std::vec::Vec<bool>,
4165 pub grass_percent: ::std::vec::Vec<i32>,
4167 pub flows: ::std::vec::Vec<FlowInfo>,
4169 pub special_fields: ::protobuf::SpecialFields,
4172}
4173
4174impl<'a> ::std::default::Default for &'a MapBlock {
4175 fn default() -> &'a MapBlock {
4176 <MapBlock as ::protobuf::Message>::default_instance()
4177 }
4178}
4179
4180impl MapBlock {
4181 pub fn new() -> MapBlock {
4182 ::std::default::Default::default()
4183 }
4184
4185 pub fn map_x(&self) -> i32 {
4188 self.map_x.unwrap_or(0)
4189 }
4190
4191 pub fn clear_map_x(&mut self) {
4192 self.map_x = ::std::option::Option::None;
4193 }
4194
4195 pub fn has_map_x(&self) -> bool {
4196 self.map_x.is_some()
4197 }
4198
4199 pub fn set_map_x(&mut self, v: i32) {
4201 self.map_x = ::std::option::Option::Some(v);
4202 }
4203
4204 pub fn map_y(&self) -> i32 {
4207 self.map_y.unwrap_or(0)
4208 }
4209
4210 pub fn clear_map_y(&mut self) {
4211 self.map_y = ::std::option::Option::None;
4212 }
4213
4214 pub fn has_map_y(&self) -> bool {
4215 self.map_y.is_some()
4216 }
4217
4218 pub fn set_map_y(&mut self, v: i32) {
4220 self.map_y = ::std::option::Option::Some(v);
4221 }
4222
4223 pub fn map_z(&self) -> i32 {
4226 self.map_z.unwrap_or(0)
4227 }
4228
4229 pub fn clear_map_z(&mut self) {
4230 self.map_z = ::std::option::Option::None;
4231 }
4232
4233 pub fn has_map_z(&self) -> bool {
4234 self.map_z.is_some()
4235 }
4236
4237 pub fn set_map_z(&mut self, v: i32) {
4239 self.map_z = ::std::option::Option::Some(v);
4240 }
4241
4242 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
4243 let mut fields = ::std::vec::Vec::with_capacity(30);
4244 let mut oneofs = ::std::vec::Vec::with_capacity(0);
4245 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
4246 "map_x",
4247 |m: &MapBlock| { &m.map_x },
4248 |m: &mut MapBlock| { &mut m.map_x },
4249 ));
4250 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
4251 "map_y",
4252 |m: &MapBlock| { &m.map_y },
4253 |m: &mut MapBlock| { &mut m.map_y },
4254 ));
4255 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
4256 "map_z",
4257 |m: &MapBlock| { &m.map_z },
4258 |m: &mut MapBlock| { &mut m.map_z },
4259 ));
4260 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4261 "tiles",
4262 |m: &MapBlock| { &m.tiles },
4263 |m: &mut MapBlock| { &mut m.tiles },
4264 ));
4265 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4266 "materials",
4267 |m: &MapBlock| { &m.materials },
4268 |m: &mut MapBlock| { &mut m.materials },
4269 ));
4270 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4271 "layer_materials",
4272 |m: &MapBlock| { &m.layer_materials },
4273 |m: &mut MapBlock| { &mut m.layer_materials },
4274 ));
4275 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4276 "vein_materials",
4277 |m: &MapBlock| { &m.vein_materials },
4278 |m: &mut MapBlock| { &mut m.vein_materials },
4279 ));
4280 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4281 "base_materials",
4282 |m: &MapBlock| { &m.base_materials },
4283 |m: &mut MapBlock| { &mut m.base_materials },
4284 ));
4285 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4286 "magma",
4287 |m: &MapBlock| { &m.magma },
4288 |m: &mut MapBlock| { &mut m.magma },
4289 ));
4290 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4291 "water",
4292 |m: &MapBlock| { &m.water },
4293 |m: &mut MapBlock| { &mut m.water },
4294 ));
4295 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4296 "hidden",
4297 |m: &MapBlock| { &m.hidden },
4298 |m: &mut MapBlock| { &mut m.hidden },
4299 ));
4300 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4301 "light",
4302 |m: &MapBlock| { &m.light },
4303 |m: &mut MapBlock| { &mut m.light },
4304 ));
4305 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4306 "subterranean",
4307 |m: &MapBlock| { &m.subterranean },
4308 |m: &mut MapBlock| { &mut m.subterranean },
4309 ));
4310 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4311 "outside",
4312 |m: &MapBlock| { &m.outside },
4313 |m: &mut MapBlock| { &mut m.outside },
4314 ));
4315 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4316 "aquifer",
4317 |m: &MapBlock| { &m.aquifer },
4318 |m: &mut MapBlock| { &mut m.aquifer },
4319 ));
4320 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4321 "water_stagnant",
4322 |m: &MapBlock| { &m.water_stagnant },
4323 |m: &mut MapBlock| { &mut m.water_stagnant },
4324 ));
4325 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4326 "water_salt",
4327 |m: &MapBlock| { &m.water_salt },
4328 |m: &mut MapBlock| { &mut m.water_salt },
4329 ));
4330 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4331 "construction_items",
4332 |m: &MapBlock| { &m.construction_items },
4333 |m: &mut MapBlock| { &mut m.construction_items },
4334 ));
4335 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4336 "buildings",
4337 |m: &MapBlock| { &m.buildings },
4338 |m: &mut MapBlock| { &mut m.buildings },
4339 ));
4340 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4341 "tree_percent",
4342 |m: &MapBlock| { &m.tree_percent },
4343 |m: &mut MapBlock| { &mut m.tree_percent },
4344 ));
4345 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4346 "tree_x",
4347 |m: &MapBlock| { &m.tree_x },
4348 |m: &mut MapBlock| { &mut m.tree_x },
4349 ));
4350 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4351 "tree_y",
4352 |m: &MapBlock| { &m.tree_y },
4353 |m: &mut MapBlock| { &mut m.tree_y },
4354 ));
4355 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4356 "tree_z",
4357 |m: &MapBlock| { &m.tree_z },
4358 |m: &mut MapBlock| { &mut m.tree_z },
4359 ));
4360 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4361 "tile_dig_designation",
4362 |m: &MapBlock| { &m.tile_dig_designation },
4363 |m: &mut MapBlock| { &mut m.tile_dig_designation },
4364 ));
4365 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4366 "spatterPile",
4367 |m: &MapBlock| { &m.spatterPile },
4368 |m: &mut MapBlock| { &mut m.spatterPile },
4369 ));
4370 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4371 "items",
4372 |m: &MapBlock| { &m.items },
4373 |m: &mut MapBlock| { &mut m.items },
4374 ));
4375 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4376 "tile_dig_designation_marker",
4377 |m: &MapBlock| { &m.tile_dig_designation_marker },
4378 |m: &mut MapBlock| { &mut m.tile_dig_designation_marker },
4379 ));
4380 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4381 "tile_dig_designation_auto",
4382 |m: &MapBlock| { &m.tile_dig_designation_auto },
4383 |m: &mut MapBlock| { &mut m.tile_dig_designation_auto },
4384 ));
4385 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4386 "grass_percent",
4387 |m: &MapBlock| { &m.grass_percent },
4388 |m: &mut MapBlock| { &mut m.grass_percent },
4389 ));
4390 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
4391 "flows",
4392 |m: &MapBlock| { &m.flows },
4393 |m: &mut MapBlock| { &mut m.flows },
4394 ));
4395 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<MapBlock>(
4396 "MapBlock",
4397 fields,
4398 oneofs,
4399 )
4400 }
4401}
4402
4403impl ::protobuf::Message for MapBlock {
4404 const NAME: &'static str = "MapBlock";
4405
4406 fn is_initialized(&self) -> bool {
4407 if self.map_x.is_none() {
4408 return false;
4409 }
4410 if self.map_y.is_none() {
4411 return false;
4412 }
4413 if self.map_z.is_none() {
4414 return false;
4415 }
4416 for v in &self.materials {
4417 if !v.is_initialized() {
4418 return false;
4419 }
4420 };
4421 for v in &self.layer_materials {
4422 if !v.is_initialized() {
4423 return false;
4424 }
4425 };
4426 for v in &self.vein_materials {
4427 if !v.is_initialized() {
4428 return false;
4429 }
4430 };
4431 for v in &self.base_materials {
4432 if !v.is_initialized() {
4433 return false;
4434 }
4435 };
4436 for v in &self.construction_items {
4437 if !v.is_initialized() {
4438 return false;
4439 }
4440 };
4441 for v in &self.buildings {
4442 if !v.is_initialized() {
4443 return false;
4444 }
4445 };
4446 for v in &self.spatterPile {
4447 if !v.is_initialized() {
4448 return false;
4449 }
4450 };
4451 for v in &self.items {
4452 if !v.is_initialized() {
4453 return false;
4454 }
4455 };
4456 for v in &self.flows {
4457 if !v.is_initialized() {
4458 return false;
4459 }
4460 };
4461 true
4462 }
4463
4464 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
4465 while let Some(tag) = is.read_raw_tag_or_eof()? {
4466 match tag {
4467 8 => {
4468 self.map_x = ::std::option::Option::Some(is.read_int32()?);
4469 },
4470 16 => {
4471 self.map_y = ::std::option::Option::Some(is.read_int32()?);
4472 },
4473 24 => {
4474 self.map_z = ::std::option::Option::Some(is.read_int32()?);
4475 },
4476 34 => {
4477 is.read_repeated_packed_int32_into(&mut self.tiles)?;
4478 },
4479 32 => {
4480 self.tiles.push(is.read_int32()?);
4481 },
4482 42 => {
4483 self.materials.push(is.read_message()?);
4484 },
4485 50 => {
4486 self.layer_materials.push(is.read_message()?);
4487 },
4488 58 => {
4489 self.vein_materials.push(is.read_message()?);
4490 },
4491 66 => {
4492 self.base_materials.push(is.read_message()?);
4493 },
4494 74 => {
4495 is.read_repeated_packed_int32_into(&mut self.magma)?;
4496 },
4497 72 => {
4498 self.magma.push(is.read_int32()?);
4499 },
4500 82 => {
4501 is.read_repeated_packed_int32_into(&mut self.water)?;
4502 },
4503 80 => {
4504 self.water.push(is.read_int32()?);
4505 },
4506 90 => {
4507 is.read_repeated_packed_bool_into(&mut self.hidden)?;
4508 },
4509 88 => {
4510 self.hidden.push(is.read_bool()?);
4511 },
4512 98 => {
4513 is.read_repeated_packed_bool_into(&mut self.light)?;
4514 },
4515 96 => {
4516 self.light.push(is.read_bool()?);
4517 },
4518 106 => {
4519 is.read_repeated_packed_bool_into(&mut self.subterranean)?;
4520 },
4521 104 => {
4522 self.subterranean.push(is.read_bool()?);
4523 },
4524 114 => {
4525 is.read_repeated_packed_bool_into(&mut self.outside)?;
4526 },
4527 112 => {
4528 self.outside.push(is.read_bool()?);
4529 },
4530 122 => {
4531 is.read_repeated_packed_bool_into(&mut self.aquifer)?;
4532 },
4533 120 => {
4534 self.aquifer.push(is.read_bool()?);
4535 },
4536 130 => {
4537 is.read_repeated_packed_bool_into(&mut self.water_stagnant)?;
4538 },
4539 128 => {
4540 self.water_stagnant.push(is.read_bool()?);
4541 },
4542 138 => {
4543 is.read_repeated_packed_bool_into(&mut self.water_salt)?;
4544 },
4545 136 => {
4546 self.water_salt.push(is.read_bool()?);
4547 },
4548 146 => {
4549 self.construction_items.push(is.read_message()?);
4550 },
4551 154 => {
4552 self.buildings.push(is.read_message()?);
4553 },
4554 162 => {
4555 is.read_repeated_packed_int32_into(&mut self.tree_percent)?;
4556 },
4557 160 => {
4558 self.tree_percent.push(is.read_int32()?);
4559 },
4560 170 => {
4561 is.read_repeated_packed_int32_into(&mut self.tree_x)?;
4562 },
4563 168 => {
4564 self.tree_x.push(is.read_int32()?);
4565 },
4566 178 => {
4567 is.read_repeated_packed_int32_into(&mut self.tree_y)?;
4568 },
4569 176 => {
4570 self.tree_y.push(is.read_int32()?);
4571 },
4572 186 => {
4573 is.read_repeated_packed_int32_into(&mut self.tree_z)?;
4574 },
4575 184 => {
4576 self.tree_z.push(is.read_int32()?);
4577 },
4578 192 => {
4579 self.tile_dig_designation.push(is.read_enum_or_unknown()?);
4580 },
4581 194 => {
4582 ::protobuf::rt::read_repeated_packed_enum_or_unknown_into(is, &mut self.tile_dig_designation)?
4583 },
4584 202 => {
4585 self.spatterPile.push(is.read_message()?);
4586 },
4587 210 => {
4588 self.items.push(is.read_message()?);
4589 },
4590 218 => {
4591 is.read_repeated_packed_bool_into(&mut self.tile_dig_designation_marker)?;
4592 },
4593 216 => {
4594 self.tile_dig_designation_marker.push(is.read_bool()?);
4595 },
4596 226 => {
4597 is.read_repeated_packed_bool_into(&mut self.tile_dig_designation_auto)?;
4598 },
4599 224 => {
4600 self.tile_dig_designation_auto.push(is.read_bool()?);
4601 },
4602 234 => {
4603 is.read_repeated_packed_int32_into(&mut self.grass_percent)?;
4604 },
4605 232 => {
4606 self.grass_percent.push(is.read_int32()?);
4607 },
4608 242 => {
4609 self.flows.push(is.read_message()?);
4610 },
4611 tag => {
4612 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
4613 },
4614 };
4615 }
4616 ::std::result::Result::Ok(())
4617 }
4618
4619 #[allow(unused_variables)]
4621 fn compute_size(&self) -> u64 {
4622 let mut my_size = 0;
4623 if let Some(v) = self.map_x {
4624 my_size += ::protobuf::rt::int32_size(1, v);
4625 }
4626 if let Some(v) = self.map_y {
4627 my_size += ::protobuf::rt::int32_size(2, v);
4628 }
4629 if let Some(v) = self.map_z {
4630 my_size += ::protobuf::rt::int32_size(3, v);
4631 }
4632 for value in &self.tiles {
4633 my_size += ::protobuf::rt::int32_size(4, *value);
4634 };
4635 for value in &self.materials {
4636 let len = value.compute_size();
4637 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4638 };
4639 for value in &self.layer_materials {
4640 let len = value.compute_size();
4641 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4642 };
4643 for value in &self.vein_materials {
4644 let len = value.compute_size();
4645 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4646 };
4647 for value in &self.base_materials {
4648 let len = value.compute_size();
4649 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4650 };
4651 for value in &self.magma {
4652 my_size += ::protobuf::rt::int32_size(9, *value);
4653 };
4654 for value in &self.water {
4655 my_size += ::protobuf::rt::int32_size(10, *value);
4656 };
4657 my_size += 2 * self.hidden.len() as u64;
4658 my_size += 2 * self.light.len() as u64;
4659 my_size += 2 * self.subterranean.len() as u64;
4660 my_size += 2 * self.outside.len() as u64;
4661 my_size += 2 * self.aquifer.len() as u64;
4662 my_size += 3 * self.water_stagnant.len() as u64;
4663 my_size += 3 * self.water_salt.len() as u64;
4664 for value in &self.construction_items {
4665 let len = value.compute_size();
4666 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4667 };
4668 for value in &self.buildings {
4669 let len = value.compute_size();
4670 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4671 };
4672 for value in &self.tree_percent {
4673 my_size += ::protobuf::rt::int32_size(20, *value);
4674 };
4675 for value in &self.tree_x {
4676 my_size += ::protobuf::rt::int32_size(21, *value);
4677 };
4678 for value in &self.tree_y {
4679 my_size += ::protobuf::rt::int32_size(22, *value);
4680 };
4681 for value in &self.tree_z {
4682 my_size += ::protobuf::rt::int32_size(23, *value);
4683 };
4684 for value in &self.tile_dig_designation {
4685 my_size += ::protobuf::rt::int32_size(24, value.value());
4686 };
4687 for value in &self.spatterPile {
4688 let len = value.compute_size();
4689 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4690 };
4691 for value in &self.items {
4692 let len = value.compute_size();
4693 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4694 };
4695 my_size += 3 * self.tile_dig_designation_marker.len() as u64;
4696 my_size += 3 * self.tile_dig_designation_auto.len() as u64;
4697 for value in &self.grass_percent {
4698 my_size += ::protobuf::rt::int32_size(29, *value);
4699 };
4700 for value in &self.flows {
4701 let len = value.compute_size();
4702 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
4703 };
4704 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
4705 self.special_fields.cached_size().set(my_size as u32);
4706 my_size
4707 }
4708
4709 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
4710 if let Some(v) = self.map_x {
4711 os.write_int32(1, v)?;
4712 }
4713 if let Some(v) = self.map_y {
4714 os.write_int32(2, v)?;
4715 }
4716 if let Some(v) = self.map_z {
4717 os.write_int32(3, v)?;
4718 }
4719 for v in &self.tiles {
4720 os.write_int32(4, *v)?;
4721 };
4722 for v in &self.materials {
4723 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
4724 };
4725 for v in &self.layer_materials {
4726 ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
4727 };
4728 for v in &self.vein_materials {
4729 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
4730 };
4731 for v in &self.base_materials {
4732 ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
4733 };
4734 for v in &self.magma {
4735 os.write_int32(9, *v)?;
4736 };
4737 for v in &self.water {
4738 os.write_int32(10, *v)?;
4739 };
4740 for v in &self.hidden {
4741 os.write_bool(11, *v)?;
4742 };
4743 for v in &self.light {
4744 os.write_bool(12, *v)?;
4745 };
4746 for v in &self.subterranean {
4747 os.write_bool(13, *v)?;
4748 };
4749 for v in &self.outside {
4750 os.write_bool(14, *v)?;
4751 };
4752 for v in &self.aquifer {
4753 os.write_bool(15, *v)?;
4754 };
4755 for v in &self.water_stagnant {
4756 os.write_bool(16, *v)?;
4757 };
4758 for v in &self.water_salt {
4759 os.write_bool(17, *v)?;
4760 };
4761 for v in &self.construction_items {
4762 ::protobuf::rt::write_message_field_with_cached_size(18, v, os)?;
4763 };
4764 for v in &self.buildings {
4765 ::protobuf::rt::write_message_field_with_cached_size(19, v, os)?;
4766 };
4767 for v in &self.tree_percent {
4768 os.write_int32(20, *v)?;
4769 };
4770 for v in &self.tree_x {
4771 os.write_int32(21, *v)?;
4772 };
4773 for v in &self.tree_y {
4774 os.write_int32(22, *v)?;
4775 };
4776 for v in &self.tree_z {
4777 os.write_int32(23, *v)?;
4778 };
4779 for v in &self.tile_dig_designation {
4780 os.write_enum(24, ::protobuf::EnumOrUnknown::value(v))?;
4781 };
4782 for v in &self.spatterPile {
4783 ::protobuf::rt::write_message_field_with_cached_size(25, v, os)?;
4784 };
4785 for v in &self.items {
4786 ::protobuf::rt::write_message_field_with_cached_size(26, v, os)?;
4787 };
4788 for v in &self.tile_dig_designation_marker {
4789 os.write_bool(27, *v)?;
4790 };
4791 for v in &self.tile_dig_designation_auto {
4792 os.write_bool(28, *v)?;
4793 };
4794 for v in &self.grass_percent {
4795 os.write_int32(29, *v)?;
4796 };
4797 for v in &self.flows {
4798 ::protobuf::rt::write_message_field_with_cached_size(30, v, os)?;
4799 };
4800 os.write_unknown_fields(self.special_fields.unknown_fields())?;
4801 ::std::result::Result::Ok(())
4802 }
4803
4804 fn special_fields(&self) -> &::protobuf::SpecialFields {
4805 &self.special_fields
4806 }
4807
4808 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
4809 &mut self.special_fields
4810 }
4811
4812 fn new() -> MapBlock {
4813 MapBlock::new()
4814 }
4815
4816 fn clear(&mut self) {
4817 self.map_x = ::std::option::Option::None;
4818 self.map_y = ::std::option::Option::None;
4819 self.map_z = ::std::option::Option::None;
4820 self.tiles.clear();
4821 self.materials.clear();
4822 self.layer_materials.clear();
4823 self.vein_materials.clear();
4824 self.base_materials.clear();
4825 self.magma.clear();
4826 self.water.clear();
4827 self.hidden.clear();
4828 self.light.clear();
4829 self.subterranean.clear();
4830 self.outside.clear();
4831 self.aquifer.clear();
4832 self.water_stagnant.clear();
4833 self.water_salt.clear();
4834 self.construction_items.clear();
4835 self.buildings.clear();
4836 self.tree_percent.clear();
4837 self.tree_x.clear();
4838 self.tree_y.clear();
4839 self.tree_z.clear();
4840 self.tile_dig_designation.clear();
4841 self.spatterPile.clear();
4842 self.items.clear();
4843 self.tile_dig_designation_marker.clear();
4844 self.tile_dig_designation_auto.clear();
4845 self.grass_percent.clear();
4846 self.flows.clear();
4847 self.special_fields.clear();
4848 }
4849
4850 fn default_instance() -> &'static MapBlock {
4851 static instance: MapBlock = MapBlock {
4852 map_x: ::std::option::Option::None,
4853 map_y: ::std::option::Option::None,
4854 map_z: ::std::option::Option::None,
4855 tiles: ::std::vec::Vec::new(),
4856 materials: ::std::vec::Vec::new(),
4857 layer_materials: ::std::vec::Vec::new(),
4858 vein_materials: ::std::vec::Vec::new(),
4859 base_materials: ::std::vec::Vec::new(),
4860 magma: ::std::vec::Vec::new(),
4861 water: ::std::vec::Vec::new(),
4862 hidden: ::std::vec::Vec::new(),
4863 light: ::std::vec::Vec::new(),
4864 subterranean: ::std::vec::Vec::new(),
4865 outside: ::std::vec::Vec::new(),
4866 aquifer: ::std::vec::Vec::new(),
4867 water_stagnant: ::std::vec::Vec::new(),
4868 water_salt: ::std::vec::Vec::new(),
4869 construction_items: ::std::vec::Vec::new(),
4870 buildings: ::std::vec::Vec::new(),
4871 tree_percent: ::std::vec::Vec::new(),
4872 tree_x: ::std::vec::Vec::new(),
4873 tree_y: ::std::vec::Vec::new(),
4874 tree_z: ::std::vec::Vec::new(),
4875 tile_dig_designation: ::std::vec::Vec::new(),
4876 spatterPile: ::std::vec::Vec::new(),
4877 items: ::std::vec::Vec::new(),
4878 tile_dig_designation_marker: ::std::vec::Vec::new(),
4879 tile_dig_designation_auto: ::std::vec::Vec::new(),
4880 grass_percent: ::std::vec::Vec::new(),
4881 flows: ::std::vec::Vec::new(),
4882 special_fields: ::protobuf::SpecialFields::new(),
4883 };
4884 &instance
4885 }
4886}
4887
4888impl ::protobuf::MessageFull for MapBlock {
4889 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
4890 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
4891 descriptor.get(|| file_descriptor().message_by_package_relative_name("MapBlock").unwrap()).clone()
4892 }
4893}
4894
4895impl ::std::fmt::Display for MapBlock {
4896 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4897 ::protobuf::text_format::fmt(self, f)
4898 }
4899}
4900
4901impl ::protobuf::reflect::ProtobufValue for MapBlock {
4902 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
4903}
4904
4905#[derive(Hash, Eq)]
4906#[derive(PartialEq,Clone,Default,Debug)]
4908pub struct MatPair {
4909 pub mat_type: ::std::option::Option<i32>,
4912 pub mat_index: ::std::option::Option<i32>,
4914 pub special_fields: ::protobuf::SpecialFields,
4917}
4918
4919impl<'a> ::std::default::Default for &'a MatPair {
4920 fn default() -> &'a MatPair {
4921 <MatPair as ::protobuf::Message>::default_instance()
4922 }
4923}
4924
4925impl MatPair {
4926 pub fn new() -> MatPair {
4927 ::std::default::Default::default()
4928 }
4929
4930 pub fn mat_type(&self) -> i32 {
4933 self.mat_type.unwrap_or(0)
4934 }
4935
4936 pub fn clear_mat_type(&mut self) {
4937 self.mat_type = ::std::option::Option::None;
4938 }
4939
4940 pub fn has_mat_type(&self) -> bool {
4941 self.mat_type.is_some()
4942 }
4943
4944 pub fn set_mat_type(&mut self, v: i32) {
4946 self.mat_type = ::std::option::Option::Some(v);
4947 }
4948
4949 pub fn mat_index(&self) -> i32 {
4952 self.mat_index.unwrap_or(0)
4953 }
4954
4955 pub fn clear_mat_index(&mut self) {
4956 self.mat_index = ::std::option::Option::None;
4957 }
4958
4959 pub fn has_mat_index(&self) -> bool {
4960 self.mat_index.is_some()
4961 }
4962
4963 pub fn set_mat_index(&mut self, v: i32) {
4965 self.mat_index = ::std::option::Option::Some(v);
4966 }
4967
4968 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
4969 let mut fields = ::std::vec::Vec::with_capacity(2);
4970 let mut oneofs = ::std::vec::Vec::with_capacity(0);
4971 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
4972 "mat_type",
4973 |m: &MatPair| { &m.mat_type },
4974 |m: &mut MatPair| { &mut m.mat_type },
4975 ));
4976 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
4977 "mat_index",
4978 |m: &MatPair| { &m.mat_index },
4979 |m: &mut MatPair| { &mut m.mat_index },
4980 ));
4981 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<MatPair>(
4982 "MatPair",
4983 fields,
4984 oneofs,
4985 )
4986 }
4987}
4988
4989impl ::protobuf::Message for MatPair {
4990 const NAME: &'static str = "MatPair";
4991
4992 fn is_initialized(&self) -> bool {
4993 if self.mat_type.is_none() {
4994 return false;
4995 }
4996 if self.mat_index.is_none() {
4997 return false;
4998 }
4999 true
5000 }
5001
5002 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
5003 while let Some(tag) = is.read_raw_tag_or_eof()? {
5004 match tag {
5005 8 => {
5006 self.mat_type = ::std::option::Option::Some(is.read_int32()?);
5007 },
5008 16 => {
5009 self.mat_index = ::std::option::Option::Some(is.read_int32()?);
5010 },
5011 tag => {
5012 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
5013 },
5014 };
5015 }
5016 ::std::result::Result::Ok(())
5017 }
5018
5019 #[allow(unused_variables)]
5021 fn compute_size(&self) -> u64 {
5022 let mut my_size = 0;
5023 if let Some(v) = self.mat_type {
5024 my_size += ::protobuf::rt::int32_size(1, v);
5025 }
5026 if let Some(v) = self.mat_index {
5027 my_size += ::protobuf::rt::int32_size(2, v);
5028 }
5029 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
5030 self.special_fields.cached_size().set(my_size as u32);
5031 my_size
5032 }
5033
5034 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
5035 if let Some(v) = self.mat_type {
5036 os.write_int32(1, v)?;
5037 }
5038 if let Some(v) = self.mat_index {
5039 os.write_int32(2, v)?;
5040 }
5041 os.write_unknown_fields(self.special_fields.unknown_fields())?;
5042 ::std::result::Result::Ok(())
5043 }
5044
5045 fn special_fields(&self) -> &::protobuf::SpecialFields {
5046 &self.special_fields
5047 }
5048
5049 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
5050 &mut self.special_fields
5051 }
5052
5053 fn new() -> MatPair {
5054 MatPair::new()
5055 }
5056
5057 fn clear(&mut self) {
5058 self.mat_type = ::std::option::Option::None;
5059 self.mat_index = ::std::option::Option::None;
5060 self.special_fields.clear();
5061 }
5062
5063 fn default_instance() -> &'static MatPair {
5064 static instance: MatPair = MatPair {
5065 mat_type: ::std::option::Option::None,
5066 mat_index: ::std::option::Option::None,
5067 special_fields: ::protobuf::SpecialFields::new(),
5068 };
5069 &instance
5070 }
5071}
5072
5073impl ::protobuf::MessageFull for MatPair {
5074 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
5075 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
5076 descriptor.get(|| file_descriptor().message_by_package_relative_name("MatPair").unwrap()).clone()
5077 }
5078}
5079
5080impl ::std::fmt::Display for MatPair {
5081 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5082 ::protobuf::text_format::fmt(self, f)
5083 }
5084}
5085
5086impl ::protobuf::reflect::ProtobufValue for MatPair {
5087 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
5088}
5089
5090#[derive(PartialEq,Clone,Default,Debug)]
5092pub struct ColorDefinition {
5093 pub red: ::std::option::Option<i32>,
5096 pub green: ::std::option::Option<i32>,
5098 pub blue: ::std::option::Option<i32>,
5100 pub special_fields: ::protobuf::SpecialFields,
5103}
5104
5105impl<'a> ::std::default::Default for &'a ColorDefinition {
5106 fn default() -> &'a ColorDefinition {
5107 <ColorDefinition as ::protobuf::Message>::default_instance()
5108 }
5109}
5110
5111impl ColorDefinition {
5112 pub fn new() -> ColorDefinition {
5113 ::std::default::Default::default()
5114 }
5115
5116 pub fn red(&self) -> i32 {
5119 self.red.unwrap_or(0)
5120 }
5121
5122 pub fn clear_red(&mut self) {
5123 self.red = ::std::option::Option::None;
5124 }
5125
5126 pub fn has_red(&self) -> bool {
5127 self.red.is_some()
5128 }
5129
5130 pub fn set_red(&mut self, v: i32) {
5132 self.red = ::std::option::Option::Some(v);
5133 }
5134
5135 pub fn green(&self) -> i32 {
5138 self.green.unwrap_or(0)
5139 }
5140
5141 pub fn clear_green(&mut self) {
5142 self.green = ::std::option::Option::None;
5143 }
5144
5145 pub fn has_green(&self) -> bool {
5146 self.green.is_some()
5147 }
5148
5149 pub fn set_green(&mut self, v: i32) {
5151 self.green = ::std::option::Option::Some(v);
5152 }
5153
5154 pub fn blue(&self) -> i32 {
5157 self.blue.unwrap_or(0)
5158 }
5159
5160 pub fn clear_blue(&mut self) {
5161 self.blue = ::std::option::Option::None;
5162 }
5163
5164 pub fn has_blue(&self) -> bool {
5165 self.blue.is_some()
5166 }
5167
5168 pub fn set_blue(&mut self, v: i32) {
5170 self.blue = ::std::option::Option::Some(v);
5171 }
5172
5173 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
5174 let mut fields = ::std::vec::Vec::with_capacity(3);
5175 let mut oneofs = ::std::vec::Vec::with_capacity(0);
5176 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5177 "red",
5178 |m: &ColorDefinition| { &m.red },
5179 |m: &mut ColorDefinition| { &mut m.red },
5180 ));
5181 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5182 "green",
5183 |m: &ColorDefinition| { &m.green },
5184 |m: &mut ColorDefinition| { &mut m.green },
5185 ));
5186 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5187 "blue",
5188 |m: &ColorDefinition| { &m.blue },
5189 |m: &mut ColorDefinition| { &mut m.blue },
5190 ));
5191 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ColorDefinition>(
5192 "ColorDefinition",
5193 fields,
5194 oneofs,
5195 )
5196 }
5197}
5198
5199impl ::protobuf::Message for ColorDefinition {
5200 const NAME: &'static str = "ColorDefinition";
5201
5202 fn is_initialized(&self) -> bool {
5203 if self.red.is_none() {
5204 return false;
5205 }
5206 if self.green.is_none() {
5207 return false;
5208 }
5209 if self.blue.is_none() {
5210 return false;
5211 }
5212 true
5213 }
5214
5215 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
5216 while let Some(tag) = is.read_raw_tag_or_eof()? {
5217 match tag {
5218 8 => {
5219 self.red = ::std::option::Option::Some(is.read_int32()?);
5220 },
5221 16 => {
5222 self.green = ::std::option::Option::Some(is.read_int32()?);
5223 },
5224 24 => {
5225 self.blue = ::std::option::Option::Some(is.read_int32()?);
5226 },
5227 tag => {
5228 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
5229 },
5230 };
5231 }
5232 ::std::result::Result::Ok(())
5233 }
5234
5235 #[allow(unused_variables)]
5237 fn compute_size(&self) -> u64 {
5238 let mut my_size = 0;
5239 if let Some(v) = self.red {
5240 my_size += ::protobuf::rt::int32_size(1, v);
5241 }
5242 if let Some(v) = self.green {
5243 my_size += ::protobuf::rt::int32_size(2, v);
5244 }
5245 if let Some(v) = self.blue {
5246 my_size += ::protobuf::rt::int32_size(3, v);
5247 }
5248 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
5249 self.special_fields.cached_size().set(my_size as u32);
5250 my_size
5251 }
5252
5253 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
5254 if let Some(v) = self.red {
5255 os.write_int32(1, v)?;
5256 }
5257 if let Some(v) = self.green {
5258 os.write_int32(2, v)?;
5259 }
5260 if let Some(v) = self.blue {
5261 os.write_int32(3, v)?;
5262 }
5263 os.write_unknown_fields(self.special_fields.unknown_fields())?;
5264 ::std::result::Result::Ok(())
5265 }
5266
5267 fn special_fields(&self) -> &::protobuf::SpecialFields {
5268 &self.special_fields
5269 }
5270
5271 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
5272 &mut self.special_fields
5273 }
5274
5275 fn new() -> ColorDefinition {
5276 ColorDefinition::new()
5277 }
5278
5279 fn clear(&mut self) {
5280 self.red = ::std::option::Option::None;
5281 self.green = ::std::option::Option::None;
5282 self.blue = ::std::option::Option::None;
5283 self.special_fields.clear();
5284 }
5285
5286 fn default_instance() -> &'static ColorDefinition {
5287 static instance: ColorDefinition = ColorDefinition {
5288 red: ::std::option::Option::None,
5289 green: ::std::option::Option::None,
5290 blue: ::std::option::Option::None,
5291 special_fields: ::protobuf::SpecialFields::new(),
5292 };
5293 &instance
5294 }
5295}
5296
5297impl ::protobuf::MessageFull for ColorDefinition {
5298 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
5299 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
5300 descriptor.get(|| file_descriptor().message_by_package_relative_name("ColorDefinition").unwrap()).clone()
5301 }
5302}
5303
5304impl ::std::fmt::Display for ColorDefinition {
5305 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5306 ::protobuf::text_format::fmt(self, f)
5307 }
5308}
5309
5310impl ::protobuf::reflect::ProtobufValue for ColorDefinition {
5311 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
5312}
5313
5314#[derive(PartialEq,Clone,Default,Debug)]
5316pub struct MaterialDefinition {
5317 pub mat_pair: ::protobuf::MessageField<MatPair>,
5320 pub id: ::std::option::Option<::std::string::String>,
5322 pub name: ::std::option::Option<::std::vec::Vec<u8>>,
5324 pub state_color: ::protobuf::MessageField<ColorDefinition>,
5326 pub instrument: ::protobuf::MessageField<super::ItemdefInstrument::InstrumentDef>,
5328 pub up_step: ::std::option::Option<i32>,
5330 pub down_step: ::std::option::Option<i32>,
5332 pub layer: ::std::option::Option<::protobuf::EnumOrUnknown<ArmorLayer>>,
5334 pub special_fields: ::protobuf::SpecialFields,
5337}
5338
5339impl<'a> ::std::default::Default for &'a MaterialDefinition {
5340 fn default() -> &'a MaterialDefinition {
5341 <MaterialDefinition as ::protobuf::Message>::default_instance()
5342 }
5343}
5344
5345impl MaterialDefinition {
5346 pub fn new() -> MaterialDefinition {
5347 ::std::default::Default::default()
5348 }
5349
5350 pub fn id(&self) -> &str {
5353 match self.id.as_ref() {
5354 Some(v) => v,
5355 None => "",
5356 }
5357 }
5358
5359 pub fn clear_id(&mut self) {
5360 self.id = ::std::option::Option::None;
5361 }
5362
5363 pub fn has_id(&self) -> bool {
5364 self.id.is_some()
5365 }
5366
5367 pub fn set_id(&mut self, v: ::std::string::String) {
5369 self.id = ::std::option::Option::Some(v);
5370 }
5371
5372 pub fn mut_id(&mut self) -> &mut ::std::string::String {
5375 if self.id.is_none() {
5376 self.id = ::std::option::Option::Some(::std::string::String::new());
5377 }
5378 self.id.as_mut().unwrap()
5379 }
5380
5381 pub fn take_id(&mut self) -> ::std::string::String {
5383 self.id.take().unwrap_or_else(|| ::std::string::String::new())
5384 }
5385
5386 pub fn name(&self) -> &[u8] {
5389 match self.name.as_ref() {
5390 Some(v) => v,
5391 None => &[],
5392 }
5393 }
5394
5395 pub fn clear_name(&mut self) {
5396 self.name = ::std::option::Option::None;
5397 }
5398
5399 pub fn has_name(&self) -> bool {
5400 self.name.is_some()
5401 }
5402
5403 pub fn set_name(&mut self, v: ::std::vec::Vec<u8>) {
5405 self.name = ::std::option::Option::Some(v);
5406 }
5407
5408 pub fn mut_name(&mut self) -> &mut ::std::vec::Vec<u8> {
5411 if self.name.is_none() {
5412 self.name = ::std::option::Option::Some(::std::vec::Vec::new());
5413 }
5414 self.name.as_mut().unwrap()
5415 }
5416
5417 pub fn take_name(&mut self) -> ::std::vec::Vec<u8> {
5419 self.name.take().unwrap_or_else(|| ::std::vec::Vec::new())
5420 }
5421
5422 pub fn up_step(&self) -> i32 {
5425 self.up_step.unwrap_or(0)
5426 }
5427
5428 pub fn clear_up_step(&mut self) {
5429 self.up_step = ::std::option::Option::None;
5430 }
5431
5432 pub fn has_up_step(&self) -> bool {
5433 self.up_step.is_some()
5434 }
5435
5436 pub fn set_up_step(&mut self, v: i32) {
5438 self.up_step = ::std::option::Option::Some(v);
5439 }
5440
5441 pub fn down_step(&self) -> i32 {
5444 self.down_step.unwrap_or(0)
5445 }
5446
5447 pub fn clear_down_step(&mut self) {
5448 self.down_step = ::std::option::Option::None;
5449 }
5450
5451 pub fn has_down_step(&self) -> bool {
5452 self.down_step.is_some()
5453 }
5454
5455 pub fn set_down_step(&mut self, v: i32) {
5457 self.down_step = ::std::option::Option::Some(v);
5458 }
5459
5460 pub fn layer(&self) -> ArmorLayer {
5463 match self.layer {
5464 Some(e) => e.enum_value_or(ArmorLayer::LAYER_UNDER),
5465 None => ArmorLayer::LAYER_UNDER,
5466 }
5467 }
5468
5469 pub fn clear_layer(&mut self) {
5470 self.layer = ::std::option::Option::None;
5471 }
5472
5473 pub fn has_layer(&self) -> bool {
5474 self.layer.is_some()
5475 }
5476
5477 pub fn set_layer(&mut self, v: ArmorLayer) {
5479 self.layer = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
5480 }
5481
5482 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
5483 let mut fields = ::std::vec::Vec::with_capacity(8);
5484 let mut oneofs = ::std::vec::Vec::with_capacity(0);
5485 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
5486 "mat_pair",
5487 |m: &MaterialDefinition| { &m.mat_pair },
5488 |m: &mut MaterialDefinition| { &mut m.mat_pair },
5489 ));
5490 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5491 "id",
5492 |m: &MaterialDefinition| { &m.id },
5493 |m: &mut MaterialDefinition| { &mut m.id },
5494 ));
5495 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5496 "name",
5497 |m: &MaterialDefinition| { &m.name },
5498 |m: &mut MaterialDefinition| { &mut m.name },
5499 ));
5500 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ColorDefinition>(
5501 "state_color",
5502 |m: &MaterialDefinition| { &m.state_color },
5503 |m: &mut MaterialDefinition| { &mut m.state_color },
5504 ));
5505 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, super::ItemdefInstrument::InstrumentDef>(
5506 "instrument",
5507 |m: &MaterialDefinition| { &m.instrument },
5508 |m: &mut MaterialDefinition| { &mut m.instrument },
5509 ));
5510 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5511 "up_step",
5512 |m: &MaterialDefinition| { &m.up_step },
5513 |m: &mut MaterialDefinition| { &mut m.up_step },
5514 ));
5515 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5516 "down_step",
5517 |m: &MaterialDefinition| { &m.down_step },
5518 |m: &mut MaterialDefinition| { &mut m.down_step },
5519 ));
5520 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5521 "layer",
5522 |m: &MaterialDefinition| { &m.layer },
5523 |m: &mut MaterialDefinition| { &mut m.layer },
5524 ));
5525 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<MaterialDefinition>(
5526 "MaterialDefinition",
5527 fields,
5528 oneofs,
5529 )
5530 }
5531}
5532
5533impl ::protobuf::Message for MaterialDefinition {
5534 const NAME: &'static str = "MaterialDefinition";
5535
5536 fn is_initialized(&self) -> bool {
5537 if self.mat_pair.is_none() {
5538 return false;
5539 }
5540 for v in &self.mat_pair {
5541 if !v.is_initialized() {
5542 return false;
5543 }
5544 };
5545 for v in &self.state_color {
5546 if !v.is_initialized() {
5547 return false;
5548 }
5549 };
5550 for v in &self.instrument {
5551 if !v.is_initialized() {
5552 return false;
5553 }
5554 };
5555 true
5556 }
5557
5558 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
5559 while let Some(tag) = is.read_raw_tag_or_eof()? {
5560 match tag {
5561 10 => {
5562 ::protobuf::rt::read_singular_message_into_field(is, &mut self.mat_pair)?;
5563 },
5564 18 => {
5565 self.id = ::std::option::Option::Some(is.read_string()?);
5566 },
5567 26 => {
5568 self.name = ::std::option::Option::Some(is.read_bytes()?);
5569 },
5570 34 => {
5571 ::protobuf::rt::read_singular_message_into_field(is, &mut self.state_color)?;
5572 },
5573 42 => {
5574 ::protobuf::rt::read_singular_message_into_field(is, &mut self.instrument)?;
5575 },
5576 48 => {
5577 self.up_step = ::std::option::Option::Some(is.read_int32()?);
5578 },
5579 56 => {
5580 self.down_step = ::std::option::Option::Some(is.read_int32()?);
5581 },
5582 64 => {
5583 self.layer = ::std::option::Option::Some(is.read_enum_or_unknown()?);
5584 },
5585 tag => {
5586 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
5587 },
5588 };
5589 }
5590 ::std::result::Result::Ok(())
5591 }
5592
5593 #[allow(unused_variables)]
5595 fn compute_size(&self) -> u64 {
5596 let mut my_size = 0;
5597 if let Some(v) = self.mat_pair.as_ref() {
5598 let len = v.compute_size();
5599 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
5600 }
5601 if let Some(v) = self.id.as_ref() {
5602 my_size += ::protobuf::rt::string_size(2, &v);
5603 }
5604 if let Some(v) = self.name.as_ref() {
5605 my_size += ::protobuf::rt::bytes_size(3, &v);
5606 }
5607 if let Some(v) = self.state_color.as_ref() {
5608 let len = v.compute_size();
5609 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
5610 }
5611 if let Some(v) = self.instrument.as_ref() {
5612 let len = v.compute_size();
5613 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
5614 }
5615 if let Some(v) = self.up_step {
5616 my_size += ::protobuf::rt::int32_size(6, v);
5617 }
5618 if let Some(v) = self.down_step {
5619 my_size += ::protobuf::rt::int32_size(7, v);
5620 }
5621 if let Some(v) = self.layer {
5622 my_size += ::protobuf::rt::int32_size(8, v.value());
5623 }
5624 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
5625 self.special_fields.cached_size().set(my_size as u32);
5626 my_size
5627 }
5628
5629 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
5630 if let Some(v) = self.mat_pair.as_ref() {
5631 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
5632 }
5633 if let Some(v) = self.id.as_ref() {
5634 os.write_string(2, v)?;
5635 }
5636 if let Some(v) = self.name.as_ref() {
5637 os.write_bytes(3, v)?;
5638 }
5639 if let Some(v) = self.state_color.as_ref() {
5640 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
5641 }
5642 if let Some(v) = self.instrument.as_ref() {
5643 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
5644 }
5645 if let Some(v) = self.up_step {
5646 os.write_int32(6, v)?;
5647 }
5648 if let Some(v) = self.down_step {
5649 os.write_int32(7, v)?;
5650 }
5651 if let Some(v) = self.layer {
5652 os.write_enum(8, ::protobuf::EnumOrUnknown::value(&v))?;
5653 }
5654 os.write_unknown_fields(self.special_fields.unknown_fields())?;
5655 ::std::result::Result::Ok(())
5656 }
5657
5658 fn special_fields(&self) -> &::protobuf::SpecialFields {
5659 &self.special_fields
5660 }
5661
5662 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
5663 &mut self.special_fields
5664 }
5665
5666 fn new() -> MaterialDefinition {
5667 MaterialDefinition::new()
5668 }
5669
5670 fn clear(&mut self) {
5671 self.mat_pair.clear();
5672 self.id = ::std::option::Option::None;
5673 self.name = ::std::option::Option::None;
5674 self.state_color.clear();
5675 self.instrument.clear();
5676 self.up_step = ::std::option::Option::None;
5677 self.down_step = ::std::option::Option::None;
5678 self.layer = ::std::option::Option::None;
5679 self.special_fields.clear();
5680 }
5681
5682 fn default_instance() -> &'static MaterialDefinition {
5683 static instance: MaterialDefinition = MaterialDefinition {
5684 mat_pair: ::protobuf::MessageField::none(),
5685 id: ::std::option::Option::None,
5686 name: ::std::option::Option::None,
5687 state_color: ::protobuf::MessageField::none(),
5688 instrument: ::protobuf::MessageField::none(),
5689 up_step: ::std::option::Option::None,
5690 down_step: ::std::option::Option::None,
5691 layer: ::std::option::Option::None,
5692 special_fields: ::protobuf::SpecialFields::new(),
5693 };
5694 &instance
5695 }
5696}
5697
5698impl ::protobuf::MessageFull for MaterialDefinition {
5699 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
5700 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
5701 descriptor.get(|| file_descriptor().message_by_package_relative_name("MaterialDefinition").unwrap()).clone()
5702 }
5703}
5704
5705impl ::std::fmt::Display for MaterialDefinition {
5706 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5707 ::protobuf::text_format::fmt(self, f)
5708 }
5709}
5710
5711impl ::protobuf::reflect::ProtobufValue for MaterialDefinition {
5712 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
5713}
5714
5715#[derive(PartialEq,Clone,Default,Debug)]
5717pub struct BuildingType {
5718 pub building_type: ::std::option::Option<i32>,
5721 pub building_subtype: ::std::option::Option<i32>,
5723 pub building_custom: ::std::option::Option<i32>,
5725 pub special_fields: ::protobuf::SpecialFields,
5728}
5729
5730impl<'a> ::std::default::Default for &'a BuildingType {
5731 fn default() -> &'a BuildingType {
5732 <BuildingType as ::protobuf::Message>::default_instance()
5733 }
5734}
5735
5736impl BuildingType {
5737 pub fn new() -> BuildingType {
5738 ::std::default::Default::default()
5739 }
5740
5741 pub fn building_type(&self) -> i32 {
5744 self.building_type.unwrap_or(0)
5745 }
5746
5747 pub fn clear_building_type(&mut self) {
5748 self.building_type = ::std::option::Option::None;
5749 }
5750
5751 pub fn has_building_type(&self) -> bool {
5752 self.building_type.is_some()
5753 }
5754
5755 pub fn set_building_type(&mut self, v: i32) {
5757 self.building_type = ::std::option::Option::Some(v);
5758 }
5759
5760 pub fn building_subtype(&self) -> i32 {
5763 self.building_subtype.unwrap_or(0)
5764 }
5765
5766 pub fn clear_building_subtype(&mut self) {
5767 self.building_subtype = ::std::option::Option::None;
5768 }
5769
5770 pub fn has_building_subtype(&self) -> bool {
5771 self.building_subtype.is_some()
5772 }
5773
5774 pub fn set_building_subtype(&mut self, v: i32) {
5776 self.building_subtype = ::std::option::Option::Some(v);
5777 }
5778
5779 pub fn building_custom(&self) -> i32 {
5782 self.building_custom.unwrap_or(0)
5783 }
5784
5785 pub fn clear_building_custom(&mut self) {
5786 self.building_custom = ::std::option::Option::None;
5787 }
5788
5789 pub fn has_building_custom(&self) -> bool {
5790 self.building_custom.is_some()
5791 }
5792
5793 pub fn set_building_custom(&mut self, v: i32) {
5795 self.building_custom = ::std::option::Option::Some(v);
5796 }
5797
5798 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
5799 let mut fields = ::std::vec::Vec::with_capacity(3);
5800 let mut oneofs = ::std::vec::Vec::with_capacity(0);
5801 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5802 "building_type",
5803 |m: &BuildingType| { &m.building_type },
5804 |m: &mut BuildingType| { &mut m.building_type },
5805 ));
5806 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5807 "building_subtype",
5808 |m: &BuildingType| { &m.building_subtype },
5809 |m: &mut BuildingType| { &mut m.building_subtype },
5810 ));
5811 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
5812 "building_custom",
5813 |m: &BuildingType| { &m.building_custom },
5814 |m: &mut BuildingType| { &mut m.building_custom },
5815 ));
5816 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingType>(
5817 "BuildingType",
5818 fields,
5819 oneofs,
5820 )
5821 }
5822}
5823
5824impl ::protobuf::Message for BuildingType {
5825 const NAME: &'static str = "BuildingType";
5826
5827 fn is_initialized(&self) -> bool {
5828 if self.building_type.is_none() {
5829 return false;
5830 }
5831 if self.building_subtype.is_none() {
5832 return false;
5833 }
5834 if self.building_custom.is_none() {
5835 return false;
5836 }
5837 true
5838 }
5839
5840 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
5841 while let Some(tag) = is.read_raw_tag_or_eof()? {
5842 match tag {
5843 8 => {
5844 self.building_type = ::std::option::Option::Some(is.read_int32()?);
5845 },
5846 16 => {
5847 self.building_subtype = ::std::option::Option::Some(is.read_int32()?);
5848 },
5849 24 => {
5850 self.building_custom = ::std::option::Option::Some(is.read_int32()?);
5851 },
5852 tag => {
5853 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
5854 },
5855 };
5856 }
5857 ::std::result::Result::Ok(())
5858 }
5859
5860 #[allow(unused_variables)]
5862 fn compute_size(&self) -> u64 {
5863 let mut my_size = 0;
5864 if let Some(v) = self.building_type {
5865 my_size += ::protobuf::rt::int32_size(1, v);
5866 }
5867 if let Some(v) = self.building_subtype {
5868 my_size += ::protobuf::rt::int32_size(2, v);
5869 }
5870 if let Some(v) = self.building_custom {
5871 my_size += ::protobuf::rt::int32_size(3, v);
5872 }
5873 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
5874 self.special_fields.cached_size().set(my_size as u32);
5875 my_size
5876 }
5877
5878 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
5879 if let Some(v) = self.building_type {
5880 os.write_int32(1, v)?;
5881 }
5882 if let Some(v) = self.building_subtype {
5883 os.write_int32(2, v)?;
5884 }
5885 if let Some(v) = self.building_custom {
5886 os.write_int32(3, v)?;
5887 }
5888 os.write_unknown_fields(self.special_fields.unknown_fields())?;
5889 ::std::result::Result::Ok(())
5890 }
5891
5892 fn special_fields(&self) -> &::protobuf::SpecialFields {
5893 &self.special_fields
5894 }
5895
5896 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
5897 &mut self.special_fields
5898 }
5899
5900 fn new() -> BuildingType {
5901 BuildingType::new()
5902 }
5903
5904 fn clear(&mut self) {
5905 self.building_type = ::std::option::Option::None;
5906 self.building_subtype = ::std::option::Option::None;
5907 self.building_custom = ::std::option::Option::None;
5908 self.special_fields.clear();
5909 }
5910
5911 fn default_instance() -> &'static BuildingType {
5912 static instance: BuildingType = BuildingType {
5913 building_type: ::std::option::Option::None,
5914 building_subtype: ::std::option::Option::None,
5915 building_custom: ::std::option::Option::None,
5916 special_fields: ::protobuf::SpecialFields::new(),
5917 };
5918 &instance
5919 }
5920}
5921
5922impl ::protobuf::MessageFull for BuildingType {
5923 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
5924 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
5925 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingType").unwrap()).clone()
5926 }
5927}
5928
5929impl ::std::fmt::Display for BuildingType {
5930 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5931 ::protobuf::text_format::fmt(self, f)
5932 }
5933}
5934
5935impl ::protobuf::reflect::ProtobufValue for BuildingType {
5936 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
5937}
5938
5939#[derive(PartialEq,Clone,Default,Debug)]
5941pub struct BuildingDefinition {
5942 pub building_type: ::protobuf::MessageField<BuildingType>,
5945 pub id: ::std::option::Option<::std::string::String>,
5947 pub name: ::std::option::Option<::std::string::String>,
5949 pub special_fields: ::protobuf::SpecialFields,
5952}
5953
5954impl<'a> ::std::default::Default for &'a BuildingDefinition {
5955 fn default() -> &'a BuildingDefinition {
5956 <BuildingDefinition as ::protobuf::Message>::default_instance()
5957 }
5958}
5959
5960impl BuildingDefinition {
5961 pub fn new() -> BuildingDefinition {
5962 ::std::default::Default::default()
5963 }
5964
5965 pub fn id(&self) -> &str {
5968 match self.id.as_ref() {
5969 Some(v) => v,
5970 None => "",
5971 }
5972 }
5973
5974 pub fn clear_id(&mut self) {
5975 self.id = ::std::option::Option::None;
5976 }
5977
5978 pub fn has_id(&self) -> bool {
5979 self.id.is_some()
5980 }
5981
5982 pub fn set_id(&mut self, v: ::std::string::String) {
5984 self.id = ::std::option::Option::Some(v);
5985 }
5986
5987 pub fn mut_id(&mut self) -> &mut ::std::string::String {
5990 if self.id.is_none() {
5991 self.id = ::std::option::Option::Some(::std::string::String::new());
5992 }
5993 self.id.as_mut().unwrap()
5994 }
5995
5996 pub fn take_id(&mut self) -> ::std::string::String {
5998 self.id.take().unwrap_or_else(|| ::std::string::String::new())
5999 }
6000
6001 pub fn name(&self) -> &str {
6004 match self.name.as_ref() {
6005 Some(v) => v,
6006 None => "",
6007 }
6008 }
6009
6010 pub fn clear_name(&mut self) {
6011 self.name = ::std::option::Option::None;
6012 }
6013
6014 pub fn has_name(&self) -> bool {
6015 self.name.is_some()
6016 }
6017
6018 pub fn set_name(&mut self, v: ::std::string::String) {
6020 self.name = ::std::option::Option::Some(v);
6021 }
6022
6023 pub fn mut_name(&mut self) -> &mut ::std::string::String {
6026 if self.name.is_none() {
6027 self.name = ::std::option::Option::Some(::std::string::String::new());
6028 }
6029 self.name.as_mut().unwrap()
6030 }
6031
6032 pub fn take_name(&mut self) -> ::std::string::String {
6034 self.name.take().unwrap_or_else(|| ::std::string::String::new())
6035 }
6036
6037 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
6038 let mut fields = ::std::vec::Vec::with_capacity(3);
6039 let mut oneofs = ::std::vec::Vec::with_capacity(0);
6040 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, BuildingType>(
6041 "building_type",
6042 |m: &BuildingDefinition| { &m.building_type },
6043 |m: &mut BuildingDefinition| { &mut m.building_type },
6044 ));
6045 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6046 "id",
6047 |m: &BuildingDefinition| { &m.id },
6048 |m: &mut BuildingDefinition| { &mut m.id },
6049 ));
6050 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6051 "name",
6052 |m: &BuildingDefinition| { &m.name },
6053 |m: &mut BuildingDefinition| { &mut m.name },
6054 ));
6055 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingDefinition>(
6056 "BuildingDefinition",
6057 fields,
6058 oneofs,
6059 )
6060 }
6061}
6062
6063impl ::protobuf::Message for BuildingDefinition {
6064 const NAME: &'static str = "BuildingDefinition";
6065
6066 fn is_initialized(&self) -> bool {
6067 if self.building_type.is_none() {
6068 return false;
6069 }
6070 for v in &self.building_type {
6071 if !v.is_initialized() {
6072 return false;
6073 }
6074 };
6075 true
6076 }
6077
6078 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
6079 while let Some(tag) = is.read_raw_tag_or_eof()? {
6080 match tag {
6081 10 => {
6082 ::protobuf::rt::read_singular_message_into_field(is, &mut self.building_type)?;
6083 },
6084 18 => {
6085 self.id = ::std::option::Option::Some(is.read_string()?);
6086 },
6087 26 => {
6088 self.name = ::std::option::Option::Some(is.read_string()?);
6089 },
6090 tag => {
6091 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
6092 },
6093 };
6094 }
6095 ::std::result::Result::Ok(())
6096 }
6097
6098 #[allow(unused_variables)]
6100 fn compute_size(&self) -> u64 {
6101 let mut my_size = 0;
6102 if let Some(v) = self.building_type.as_ref() {
6103 let len = v.compute_size();
6104 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
6105 }
6106 if let Some(v) = self.id.as_ref() {
6107 my_size += ::protobuf::rt::string_size(2, &v);
6108 }
6109 if let Some(v) = self.name.as_ref() {
6110 my_size += ::protobuf::rt::string_size(3, &v);
6111 }
6112 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
6113 self.special_fields.cached_size().set(my_size as u32);
6114 my_size
6115 }
6116
6117 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
6118 if let Some(v) = self.building_type.as_ref() {
6119 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
6120 }
6121 if let Some(v) = self.id.as_ref() {
6122 os.write_string(2, v)?;
6123 }
6124 if let Some(v) = self.name.as_ref() {
6125 os.write_string(3, v)?;
6126 }
6127 os.write_unknown_fields(self.special_fields.unknown_fields())?;
6128 ::std::result::Result::Ok(())
6129 }
6130
6131 fn special_fields(&self) -> &::protobuf::SpecialFields {
6132 &self.special_fields
6133 }
6134
6135 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
6136 &mut self.special_fields
6137 }
6138
6139 fn new() -> BuildingDefinition {
6140 BuildingDefinition::new()
6141 }
6142
6143 fn clear(&mut self) {
6144 self.building_type.clear();
6145 self.id = ::std::option::Option::None;
6146 self.name = ::std::option::Option::None;
6147 self.special_fields.clear();
6148 }
6149
6150 fn default_instance() -> &'static BuildingDefinition {
6151 static instance: BuildingDefinition = BuildingDefinition {
6152 building_type: ::protobuf::MessageField::none(),
6153 id: ::std::option::Option::None,
6154 name: ::std::option::Option::None,
6155 special_fields: ::protobuf::SpecialFields::new(),
6156 };
6157 &instance
6158 }
6159}
6160
6161impl ::protobuf::MessageFull for BuildingDefinition {
6162 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
6163 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
6164 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingDefinition").unwrap()).clone()
6165 }
6166}
6167
6168impl ::std::fmt::Display for BuildingDefinition {
6169 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6170 ::protobuf::text_format::fmt(self, f)
6171 }
6172}
6173
6174impl ::protobuf::reflect::ProtobufValue for BuildingDefinition {
6175 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
6176}
6177
6178#[derive(PartialEq,Clone,Default,Debug)]
6180pub struct BuildingList {
6181 pub building_list: ::std::vec::Vec<BuildingDefinition>,
6184 pub special_fields: ::protobuf::SpecialFields,
6187}
6188
6189impl<'a> ::std::default::Default for &'a BuildingList {
6190 fn default() -> &'a BuildingList {
6191 <BuildingList as ::protobuf::Message>::default_instance()
6192 }
6193}
6194
6195impl BuildingList {
6196 pub fn new() -> BuildingList {
6197 ::std::default::Default::default()
6198 }
6199
6200 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
6201 let mut fields = ::std::vec::Vec::with_capacity(1);
6202 let mut oneofs = ::std::vec::Vec::with_capacity(0);
6203 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
6204 "building_list",
6205 |m: &BuildingList| { &m.building_list },
6206 |m: &mut BuildingList| { &mut m.building_list },
6207 ));
6208 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BuildingList>(
6209 "BuildingList",
6210 fields,
6211 oneofs,
6212 )
6213 }
6214}
6215
6216impl ::protobuf::Message for BuildingList {
6217 const NAME: &'static str = "BuildingList";
6218
6219 fn is_initialized(&self) -> bool {
6220 for v in &self.building_list {
6221 if !v.is_initialized() {
6222 return false;
6223 }
6224 };
6225 true
6226 }
6227
6228 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
6229 while let Some(tag) = is.read_raw_tag_or_eof()? {
6230 match tag {
6231 10 => {
6232 self.building_list.push(is.read_message()?);
6233 },
6234 tag => {
6235 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
6236 },
6237 };
6238 }
6239 ::std::result::Result::Ok(())
6240 }
6241
6242 #[allow(unused_variables)]
6244 fn compute_size(&self) -> u64 {
6245 let mut my_size = 0;
6246 for value in &self.building_list {
6247 let len = value.compute_size();
6248 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
6249 };
6250 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
6251 self.special_fields.cached_size().set(my_size as u32);
6252 my_size
6253 }
6254
6255 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
6256 for v in &self.building_list {
6257 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
6258 };
6259 os.write_unknown_fields(self.special_fields.unknown_fields())?;
6260 ::std::result::Result::Ok(())
6261 }
6262
6263 fn special_fields(&self) -> &::protobuf::SpecialFields {
6264 &self.special_fields
6265 }
6266
6267 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
6268 &mut self.special_fields
6269 }
6270
6271 fn new() -> BuildingList {
6272 BuildingList::new()
6273 }
6274
6275 fn clear(&mut self) {
6276 self.building_list.clear();
6277 self.special_fields.clear();
6278 }
6279
6280 fn default_instance() -> &'static BuildingList {
6281 static instance: BuildingList = BuildingList {
6282 building_list: ::std::vec::Vec::new(),
6283 special_fields: ::protobuf::SpecialFields::new(),
6284 };
6285 &instance
6286 }
6287}
6288
6289impl ::protobuf::MessageFull for BuildingList {
6290 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
6291 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
6292 descriptor.get(|| file_descriptor().message_by_package_relative_name("BuildingList").unwrap()).clone()
6293 }
6294}
6295
6296impl ::std::fmt::Display for BuildingList {
6297 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6298 ::protobuf::text_format::fmt(self, f)
6299 }
6300}
6301
6302impl ::protobuf::reflect::ProtobufValue for BuildingList {
6303 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
6304}
6305
6306#[derive(PartialEq,Clone,Default,Debug)]
6308pub struct MaterialList {
6309 pub material_list: ::std::vec::Vec<MaterialDefinition>,
6312 pub special_fields: ::protobuf::SpecialFields,
6315}
6316
6317impl<'a> ::std::default::Default for &'a MaterialList {
6318 fn default() -> &'a MaterialList {
6319 <MaterialList as ::protobuf::Message>::default_instance()
6320 }
6321}
6322
6323impl MaterialList {
6324 pub fn new() -> MaterialList {
6325 ::std::default::Default::default()
6326 }
6327
6328 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
6329 let mut fields = ::std::vec::Vec::with_capacity(1);
6330 let mut oneofs = ::std::vec::Vec::with_capacity(0);
6331 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
6332 "material_list",
6333 |m: &MaterialList| { &m.material_list },
6334 |m: &mut MaterialList| { &mut m.material_list },
6335 ));
6336 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<MaterialList>(
6337 "MaterialList",
6338 fields,
6339 oneofs,
6340 )
6341 }
6342}
6343
6344impl ::protobuf::Message for MaterialList {
6345 const NAME: &'static str = "MaterialList";
6346
6347 fn is_initialized(&self) -> bool {
6348 for v in &self.material_list {
6349 if !v.is_initialized() {
6350 return false;
6351 }
6352 };
6353 true
6354 }
6355
6356 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
6357 while let Some(tag) = is.read_raw_tag_or_eof()? {
6358 match tag {
6359 10 => {
6360 self.material_list.push(is.read_message()?);
6361 },
6362 tag => {
6363 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
6364 },
6365 };
6366 }
6367 ::std::result::Result::Ok(())
6368 }
6369
6370 #[allow(unused_variables)]
6372 fn compute_size(&self) -> u64 {
6373 let mut my_size = 0;
6374 for value in &self.material_list {
6375 let len = value.compute_size();
6376 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
6377 };
6378 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
6379 self.special_fields.cached_size().set(my_size as u32);
6380 my_size
6381 }
6382
6383 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
6384 for v in &self.material_list {
6385 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
6386 };
6387 os.write_unknown_fields(self.special_fields.unknown_fields())?;
6388 ::std::result::Result::Ok(())
6389 }
6390
6391 fn special_fields(&self) -> &::protobuf::SpecialFields {
6392 &self.special_fields
6393 }
6394
6395 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
6396 &mut self.special_fields
6397 }
6398
6399 fn new() -> MaterialList {
6400 MaterialList::new()
6401 }
6402
6403 fn clear(&mut self) {
6404 self.material_list.clear();
6405 self.special_fields.clear();
6406 }
6407
6408 fn default_instance() -> &'static MaterialList {
6409 static instance: MaterialList = MaterialList {
6410 material_list: ::std::vec::Vec::new(),
6411 special_fields: ::protobuf::SpecialFields::new(),
6412 };
6413 &instance
6414 }
6415}
6416
6417impl ::protobuf::MessageFull for MaterialList {
6418 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
6419 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
6420 descriptor.get(|| file_descriptor().message_by_package_relative_name("MaterialList").unwrap()).clone()
6421 }
6422}
6423
6424impl ::std::fmt::Display for MaterialList {
6425 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6426 ::protobuf::text_format::fmt(self, f)
6427 }
6428}
6429
6430impl ::protobuf::reflect::ProtobufValue for MaterialList {
6431 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
6432}
6433
6434#[derive(PartialEq,Clone,Default,Debug)]
6436pub struct Hair {
6437 pub length: ::std::option::Option<i32>,
6440 pub style: ::std::option::Option<::protobuf::EnumOrUnknown<HairStyle>>,
6442 pub special_fields: ::protobuf::SpecialFields,
6445}
6446
6447impl<'a> ::std::default::Default for &'a Hair {
6448 fn default() -> &'a Hair {
6449 <Hair as ::protobuf::Message>::default_instance()
6450 }
6451}
6452
6453impl Hair {
6454 pub fn new() -> Hair {
6455 ::std::default::Default::default()
6456 }
6457
6458 pub fn length(&self) -> i32 {
6461 self.length.unwrap_or(0)
6462 }
6463
6464 pub fn clear_length(&mut self) {
6465 self.length = ::std::option::Option::None;
6466 }
6467
6468 pub fn has_length(&self) -> bool {
6469 self.length.is_some()
6470 }
6471
6472 pub fn set_length(&mut self, v: i32) {
6474 self.length = ::std::option::Option::Some(v);
6475 }
6476
6477 pub fn style(&self) -> HairStyle {
6480 match self.style {
6481 Some(e) => e.enum_value_or(HairStyle::UNKEMPT),
6482 None => HairStyle::UNKEMPT,
6483 }
6484 }
6485
6486 pub fn clear_style(&mut self) {
6487 self.style = ::std::option::Option::None;
6488 }
6489
6490 pub fn has_style(&self) -> bool {
6491 self.style.is_some()
6492 }
6493
6494 pub fn set_style(&mut self, v: HairStyle) {
6496 self.style = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
6497 }
6498
6499 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
6500 let mut fields = ::std::vec::Vec::with_capacity(2);
6501 let mut oneofs = ::std::vec::Vec::with_capacity(0);
6502 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6503 "length",
6504 |m: &Hair| { &m.length },
6505 |m: &mut Hair| { &mut m.length },
6506 ));
6507 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6508 "style",
6509 |m: &Hair| { &m.style },
6510 |m: &mut Hair| { &mut m.style },
6511 ));
6512 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Hair>(
6513 "Hair",
6514 fields,
6515 oneofs,
6516 )
6517 }
6518}
6519
6520impl ::protobuf::Message for Hair {
6521 const NAME: &'static str = "Hair";
6522
6523 fn is_initialized(&self) -> bool {
6524 true
6525 }
6526
6527 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
6528 while let Some(tag) = is.read_raw_tag_or_eof()? {
6529 match tag {
6530 8 => {
6531 self.length = ::std::option::Option::Some(is.read_int32()?);
6532 },
6533 16 => {
6534 self.style = ::std::option::Option::Some(is.read_enum_or_unknown()?);
6535 },
6536 tag => {
6537 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
6538 },
6539 };
6540 }
6541 ::std::result::Result::Ok(())
6542 }
6543
6544 #[allow(unused_variables)]
6546 fn compute_size(&self) -> u64 {
6547 let mut my_size = 0;
6548 if let Some(v) = self.length {
6549 my_size += ::protobuf::rt::int32_size(1, v);
6550 }
6551 if let Some(v) = self.style {
6552 my_size += ::protobuf::rt::int32_size(2, v.value());
6553 }
6554 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
6555 self.special_fields.cached_size().set(my_size as u32);
6556 my_size
6557 }
6558
6559 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
6560 if let Some(v) = self.length {
6561 os.write_int32(1, v)?;
6562 }
6563 if let Some(v) = self.style {
6564 os.write_enum(2, ::protobuf::EnumOrUnknown::value(&v))?;
6565 }
6566 os.write_unknown_fields(self.special_fields.unknown_fields())?;
6567 ::std::result::Result::Ok(())
6568 }
6569
6570 fn special_fields(&self) -> &::protobuf::SpecialFields {
6571 &self.special_fields
6572 }
6573
6574 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
6575 &mut self.special_fields
6576 }
6577
6578 fn new() -> Hair {
6579 Hair::new()
6580 }
6581
6582 fn clear(&mut self) {
6583 self.length = ::std::option::Option::None;
6584 self.style = ::std::option::Option::None;
6585 self.special_fields.clear();
6586 }
6587
6588 fn default_instance() -> &'static Hair {
6589 static instance: Hair = Hair {
6590 length: ::std::option::Option::None,
6591 style: ::std::option::Option::None,
6592 special_fields: ::protobuf::SpecialFields::new(),
6593 };
6594 &instance
6595 }
6596}
6597
6598impl ::protobuf::MessageFull for Hair {
6599 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
6600 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
6601 descriptor.get(|| file_descriptor().message_by_package_relative_name("Hair").unwrap()).clone()
6602 }
6603}
6604
6605impl ::std::fmt::Display for Hair {
6606 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6607 ::protobuf::text_format::fmt(self, f)
6608 }
6609}
6610
6611impl ::protobuf::reflect::ProtobufValue for Hair {
6612 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
6613}
6614
6615#[derive(PartialEq,Clone,Default,Debug)]
6617pub struct BodySizeInfo {
6618 pub size_cur: ::std::option::Option<i32>,
6621 pub size_base: ::std::option::Option<i32>,
6623 pub area_cur: ::std::option::Option<i32>,
6625 pub area_base: ::std::option::Option<i32>,
6627 pub length_cur: ::std::option::Option<i32>,
6629 pub length_base: ::std::option::Option<i32>,
6631 pub special_fields: ::protobuf::SpecialFields,
6634}
6635
6636impl<'a> ::std::default::Default for &'a BodySizeInfo {
6637 fn default() -> &'a BodySizeInfo {
6638 <BodySizeInfo as ::protobuf::Message>::default_instance()
6639 }
6640}
6641
6642impl BodySizeInfo {
6643 pub fn new() -> BodySizeInfo {
6644 ::std::default::Default::default()
6645 }
6646
6647 pub fn size_cur(&self) -> i32 {
6650 self.size_cur.unwrap_or(0)
6651 }
6652
6653 pub fn clear_size_cur(&mut self) {
6654 self.size_cur = ::std::option::Option::None;
6655 }
6656
6657 pub fn has_size_cur(&self) -> bool {
6658 self.size_cur.is_some()
6659 }
6660
6661 pub fn set_size_cur(&mut self, v: i32) {
6663 self.size_cur = ::std::option::Option::Some(v);
6664 }
6665
6666 pub fn size_base(&self) -> i32 {
6669 self.size_base.unwrap_or(0)
6670 }
6671
6672 pub fn clear_size_base(&mut self) {
6673 self.size_base = ::std::option::Option::None;
6674 }
6675
6676 pub fn has_size_base(&self) -> bool {
6677 self.size_base.is_some()
6678 }
6679
6680 pub fn set_size_base(&mut self, v: i32) {
6682 self.size_base = ::std::option::Option::Some(v);
6683 }
6684
6685 pub fn area_cur(&self) -> i32 {
6688 self.area_cur.unwrap_or(0)
6689 }
6690
6691 pub fn clear_area_cur(&mut self) {
6692 self.area_cur = ::std::option::Option::None;
6693 }
6694
6695 pub fn has_area_cur(&self) -> bool {
6696 self.area_cur.is_some()
6697 }
6698
6699 pub fn set_area_cur(&mut self, v: i32) {
6701 self.area_cur = ::std::option::Option::Some(v);
6702 }
6703
6704 pub fn area_base(&self) -> i32 {
6707 self.area_base.unwrap_or(0)
6708 }
6709
6710 pub fn clear_area_base(&mut self) {
6711 self.area_base = ::std::option::Option::None;
6712 }
6713
6714 pub fn has_area_base(&self) -> bool {
6715 self.area_base.is_some()
6716 }
6717
6718 pub fn set_area_base(&mut self, v: i32) {
6720 self.area_base = ::std::option::Option::Some(v);
6721 }
6722
6723 pub fn length_cur(&self) -> i32 {
6726 self.length_cur.unwrap_or(0)
6727 }
6728
6729 pub fn clear_length_cur(&mut self) {
6730 self.length_cur = ::std::option::Option::None;
6731 }
6732
6733 pub fn has_length_cur(&self) -> bool {
6734 self.length_cur.is_some()
6735 }
6736
6737 pub fn set_length_cur(&mut self, v: i32) {
6739 self.length_cur = ::std::option::Option::Some(v);
6740 }
6741
6742 pub fn length_base(&self) -> i32 {
6745 self.length_base.unwrap_or(0)
6746 }
6747
6748 pub fn clear_length_base(&mut self) {
6749 self.length_base = ::std::option::Option::None;
6750 }
6751
6752 pub fn has_length_base(&self) -> bool {
6753 self.length_base.is_some()
6754 }
6755
6756 pub fn set_length_base(&mut self, v: i32) {
6758 self.length_base = ::std::option::Option::Some(v);
6759 }
6760
6761 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
6762 let mut fields = ::std::vec::Vec::with_capacity(6);
6763 let mut oneofs = ::std::vec::Vec::with_capacity(0);
6764 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6765 "size_cur",
6766 |m: &BodySizeInfo| { &m.size_cur },
6767 |m: &mut BodySizeInfo| { &mut m.size_cur },
6768 ));
6769 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6770 "size_base",
6771 |m: &BodySizeInfo| { &m.size_base },
6772 |m: &mut BodySizeInfo| { &mut m.size_base },
6773 ));
6774 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6775 "area_cur",
6776 |m: &BodySizeInfo| { &m.area_cur },
6777 |m: &mut BodySizeInfo| { &mut m.area_cur },
6778 ));
6779 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6780 "area_base",
6781 |m: &BodySizeInfo| { &m.area_base },
6782 |m: &mut BodySizeInfo| { &mut m.area_base },
6783 ));
6784 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6785 "length_cur",
6786 |m: &BodySizeInfo| { &m.length_cur },
6787 |m: &mut BodySizeInfo| { &mut m.length_cur },
6788 ));
6789 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
6790 "length_base",
6791 |m: &BodySizeInfo| { &m.length_base },
6792 |m: &mut BodySizeInfo| { &mut m.length_base },
6793 ));
6794 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BodySizeInfo>(
6795 "BodySizeInfo",
6796 fields,
6797 oneofs,
6798 )
6799 }
6800}
6801
6802impl ::protobuf::Message for BodySizeInfo {
6803 const NAME: &'static str = "BodySizeInfo";
6804
6805 fn is_initialized(&self) -> bool {
6806 true
6807 }
6808
6809 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
6810 while let Some(tag) = is.read_raw_tag_or_eof()? {
6811 match tag {
6812 8 => {
6813 self.size_cur = ::std::option::Option::Some(is.read_int32()?);
6814 },
6815 16 => {
6816 self.size_base = ::std::option::Option::Some(is.read_int32()?);
6817 },
6818 24 => {
6819 self.area_cur = ::std::option::Option::Some(is.read_int32()?);
6820 },
6821 32 => {
6822 self.area_base = ::std::option::Option::Some(is.read_int32()?);
6823 },
6824 40 => {
6825 self.length_cur = ::std::option::Option::Some(is.read_int32()?);
6826 },
6827 48 => {
6828 self.length_base = ::std::option::Option::Some(is.read_int32()?);
6829 },
6830 tag => {
6831 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
6832 },
6833 };
6834 }
6835 ::std::result::Result::Ok(())
6836 }
6837
6838 #[allow(unused_variables)]
6840 fn compute_size(&self) -> u64 {
6841 let mut my_size = 0;
6842 if let Some(v) = self.size_cur {
6843 my_size += ::protobuf::rt::int32_size(1, v);
6844 }
6845 if let Some(v) = self.size_base {
6846 my_size += ::protobuf::rt::int32_size(2, v);
6847 }
6848 if let Some(v) = self.area_cur {
6849 my_size += ::protobuf::rt::int32_size(3, v);
6850 }
6851 if let Some(v) = self.area_base {
6852 my_size += ::protobuf::rt::int32_size(4, v);
6853 }
6854 if let Some(v) = self.length_cur {
6855 my_size += ::protobuf::rt::int32_size(5, v);
6856 }
6857 if let Some(v) = self.length_base {
6858 my_size += ::protobuf::rt::int32_size(6, v);
6859 }
6860 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
6861 self.special_fields.cached_size().set(my_size as u32);
6862 my_size
6863 }
6864
6865 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
6866 if let Some(v) = self.size_cur {
6867 os.write_int32(1, v)?;
6868 }
6869 if let Some(v) = self.size_base {
6870 os.write_int32(2, v)?;
6871 }
6872 if let Some(v) = self.area_cur {
6873 os.write_int32(3, v)?;
6874 }
6875 if let Some(v) = self.area_base {
6876 os.write_int32(4, v)?;
6877 }
6878 if let Some(v) = self.length_cur {
6879 os.write_int32(5, v)?;
6880 }
6881 if let Some(v) = self.length_base {
6882 os.write_int32(6, v)?;
6883 }
6884 os.write_unknown_fields(self.special_fields.unknown_fields())?;
6885 ::std::result::Result::Ok(())
6886 }
6887
6888 fn special_fields(&self) -> &::protobuf::SpecialFields {
6889 &self.special_fields
6890 }
6891
6892 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
6893 &mut self.special_fields
6894 }
6895
6896 fn new() -> BodySizeInfo {
6897 BodySizeInfo::new()
6898 }
6899
6900 fn clear(&mut self) {
6901 self.size_cur = ::std::option::Option::None;
6902 self.size_base = ::std::option::Option::None;
6903 self.area_cur = ::std::option::Option::None;
6904 self.area_base = ::std::option::Option::None;
6905 self.length_cur = ::std::option::Option::None;
6906 self.length_base = ::std::option::Option::None;
6907 self.special_fields.clear();
6908 }
6909
6910 fn default_instance() -> &'static BodySizeInfo {
6911 static instance: BodySizeInfo = BodySizeInfo {
6912 size_cur: ::std::option::Option::None,
6913 size_base: ::std::option::Option::None,
6914 area_cur: ::std::option::Option::None,
6915 area_base: ::std::option::Option::None,
6916 length_cur: ::std::option::Option::None,
6917 length_base: ::std::option::Option::None,
6918 special_fields: ::protobuf::SpecialFields::new(),
6919 };
6920 &instance
6921 }
6922}
6923
6924impl ::protobuf::MessageFull for BodySizeInfo {
6925 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
6926 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
6927 descriptor.get(|| file_descriptor().message_by_package_relative_name("BodySizeInfo").unwrap()).clone()
6928 }
6929}
6930
6931impl ::std::fmt::Display for BodySizeInfo {
6932 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6933 ::protobuf::text_format::fmt(self, f)
6934 }
6935}
6936
6937impl ::protobuf::reflect::ProtobufValue for BodySizeInfo {
6938 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
6939}
6940
6941#[derive(PartialEq,Clone,Default,Debug)]
6943pub struct UnitAppearance {
6944 pub body_modifiers: ::std::vec::Vec<i32>,
6947 pub bp_modifiers: ::std::vec::Vec<i32>,
6949 pub size_modifier: ::std::option::Option<i32>,
6951 pub colors: ::std::vec::Vec<i32>,
6953 pub hair: ::protobuf::MessageField<Hair>,
6955 pub beard: ::protobuf::MessageField<Hair>,
6957 pub moustache: ::protobuf::MessageField<Hair>,
6959 pub sideburns: ::protobuf::MessageField<Hair>,
6961 pub physical_description: ::std::option::Option<::std::string::String>,
6963 pub special_fields: ::protobuf::SpecialFields,
6966}
6967
6968impl<'a> ::std::default::Default for &'a UnitAppearance {
6969 fn default() -> &'a UnitAppearance {
6970 <UnitAppearance as ::protobuf::Message>::default_instance()
6971 }
6972}
6973
6974impl UnitAppearance {
6975 pub fn new() -> UnitAppearance {
6976 ::std::default::Default::default()
6977 }
6978
6979 pub fn size_modifier(&self) -> i32 {
6982 self.size_modifier.unwrap_or(0)
6983 }
6984
6985 pub fn clear_size_modifier(&mut self) {
6986 self.size_modifier = ::std::option::Option::None;
6987 }
6988
6989 pub fn has_size_modifier(&self) -> bool {
6990 self.size_modifier.is_some()
6991 }
6992
6993 pub fn set_size_modifier(&mut self, v: i32) {
6995 self.size_modifier = ::std::option::Option::Some(v);
6996 }
6997
6998 pub fn physical_description(&self) -> &str {
7001 match self.physical_description.as_ref() {
7002 Some(v) => v,
7003 None => "",
7004 }
7005 }
7006
7007 pub fn clear_physical_description(&mut self) {
7008 self.physical_description = ::std::option::Option::None;
7009 }
7010
7011 pub fn has_physical_description(&self) -> bool {
7012 self.physical_description.is_some()
7013 }
7014
7015 pub fn set_physical_description(&mut self, v: ::std::string::String) {
7017 self.physical_description = ::std::option::Option::Some(v);
7018 }
7019
7020 pub fn mut_physical_description(&mut self) -> &mut ::std::string::String {
7023 if self.physical_description.is_none() {
7024 self.physical_description = ::std::option::Option::Some(::std::string::String::new());
7025 }
7026 self.physical_description.as_mut().unwrap()
7027 }
7028
7029 pub fn take_physical_description(&mut self) -> ::std::string::String {
7031 self.physical_description.take().unwrap_or_else(|| ::std::string::String::new())
7032 }
7033
7034 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
7035 let mut fields = ::std::vec::Vec::with_capacity(9);
7036 let mut oneofs = ::std::vec::Vec::with_capacity(0);
7037 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
7038 "body_modifiers",
7039 |m: &UnitAppearance| { &m.body_modifiers },
7040 |m: &mut UnitAppearance| { &mut m.body_modifiers },
7041 ));
7042 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
7043 "bp_modifiers",
7044 |m: &UnitAppearance| { &m.bp_modifiers },
7045 |m: &mut UnitAppearance| { &mut m.bp_modifiers },
7046 ));
7047 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7048 "size_modifier",
7049 |m: &UnitAppearance| { &m.size_modifier },
7050 |m: &mut UnitAppearance| { &mut m.size_modifier },
7051 ));
7052 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
7053 "colors",
7054 |m: &UnitAppearance| { &m.colors },
7055 |m: &mut UnitAppearance| { &mut m.colors },
7056 ));
7057 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Hair>(
7058 "hair",
7059 |m: &UnitAppearance| { &m.hair },
7060 |m: &mut UnitAppearance| { &mut m.hair },
7061 ));
7062 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Hair>(
7063 "beard",
7064 |m: &UnitAppearance| { &m.beard },
7065 |m: &mut UnitAppearance| { &mut m.beard },
7066 ));
7067 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Hair>(
7068 "moustache",
7069 |m: &UnitAppearance| { &m.moustache },
7070 |m: &mut UnitAppearance| { &mut m.moustache },
7071 ));
7072 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Hair>(
7073 "sideburns",
7074 |m: &UnitAppearance| { &m.sideburns },
7075 |m: &mut UnitAppearance| { &mut m.sideburns },
7076 ));
7077 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7078 "physical_description",
7079 |m: &UnitAppearance| { &m.physical_description },
7080 |m: &mut UnitAppearance| { &mut m.physical_description },
7081 ));
7082 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<UnitAppearance>(
7083 "UnitAppearance",
7084 fields,
7085 oneofs,
7086 )
7087 }
7088}
7089
7090impl ::protobuf::Message for UnitAppearance {
7091 const NAME: &'static str = "UnitAppearance";
7092
7093 fn is_initialized(&self) -> bool {
7094 true
7095 }
7096
7097 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
7098 while let Some(tag) = is.read_raw_tag_or_eof()? {
7099 match tag {
7100 10 => {
7101 is.read_repeated_packed_int32_into(&mut self.body_modifiers)?;
7102 },
7103 8 => {
7104 self.body_modifiers.push(is.read_int32()?);
7105 },
7106 18 => {
7107 is.read_repeated_packed_int32_into(&mut self.bp_modifiers)?;
7108 },
7109 16 => {
7110 self.bp_modifiers.push(is.read_int32()?);
7111 },
7112 24 => {
7113 self.size_modifier = ::std::option::Option::Some(is.read_int32()?);
7114 },
7115 34 => {
7116 is.read_repeated_packed_int32_into(&mut self.colors)?;
7117 },
7118 32 => {
7119 self.colors.push(is.read_int32()?);
7120 },
7121 42 => {
7122 ::protobuf::rt::read_singular_message_into_field(is, &mut self.hair)?;
7123 },
7124 50 => {
7125 ::protobuf::rt::read_singular_message_into_field(is, &mut self.beard)?;
7126 },
7127 58 => {
7128 ::protobuf::rt::read_singular_message_into_field(is, &mut self.moustache)?;
7129 },
7130 66 => {
7131 ::protobuf::rt::read_singular_message_into_field(is, &mut self.sideburns)?;
7132 },
7133 74 => {
7134 self.physical_description = ::std::option::Option::Some(is.read_string()?);
7135 },
7136 tag => {
7137 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
7138 },
7139 };
7140 }
7141 ::std::result::Result::Ok(())
7142 }
7143
7144 #[allow(unused_variables)]
7146 fn compute_size(&self) -> u64 {
7147 let mut my_size = 0;
7148 for value in &self.body_modifiers {
7149 my_size += ::protobuf::rt::int32_size(1, *value);
7150 };
7151 for value in &self.bp_modifiers {
7152 my_size += ::protobuf::rt::int32_size(2, *value);
7153 };
7154 if let Some(v) = self.size_modifier {
7155 my_size += ::protobuf::rt::int32_size(3, v);
7156 }
7157 for value in &self.colors {
7158 my_size += ::protobuf::rt::int32_size(4, *value);
7159 };
7160 if let Some(v) = self.hair.as_ref() {
7161 let len = v.compute_size();
7162 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7163 }
7164 if let Some(v) = self.beard.as_ref() {
7165 let len = v.compute_size();
7166 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7167 }
7168 if let Some(v) = self.moustache.as_ref() {
7169 let len = v.compute_size();
7170 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7171 }
7172 if let Some(v) = self.sideburns.as_ref() {
7173 let len = v.compute_size();
7174 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7175 }
7176 if let Some(v) = self.physical_description.as_ref() {
7177 my_size += ::protobuf::rt::string_size(9, &v);
7178 }
7179 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
7180 self.special_fields.cached_size().set(my_size as u32);
7181 my_size
7182 }
7183
7184 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
7185 for v in &self.body_modifiers {
7186 os.write_int32(1, *v)?;
7187 };
7188 for v in &self.bp_modifiers {
7189 os.write_int32(2, *v)?;
7190 };
7191 if let Some(v) = self.size_modifier {
7192 os.write_int32(3, v)?;
7193 }
7194 for v in &self.colors {
7195 os.write_int32(4, *v)?;
7196 };
7197 if let Some(v) = self.hair.as_ref() {
7198 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
7199 }
7200 if let Some(v) = self.beard.as_ref() {
7201 ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
7202 }
7203 if let Some(v) = self.moustache.as_ref() {
7204 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
7205 }
7206 if let Some(v) = self.sideburns.as_ref() {
7207 ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
7208 }
7209 if let Some(v) = self.physical_description.as_ref() {
7210 os.write_string(9, v)?;
7211 }
7212 os.write_unknown_fields(self.special_fields.unknown_fields())?;
7213 ::std::result::Result::Ok(())
7214 }
7215
7216 fn special_fields(&self) -> &::protobuf::SpecialFields {
7217 &self.special_fields
7218 }
7219
7220 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
7221 &mut self.special_fields
7222 }
7223
7224 fn new() -> UnitAppearance {
7225 UnitAppearance::new()
7226 }
7227
7228 fn clear(&mut self) {
7229 self.body_modifiers.clear();
7230 self.bp_modifiers.clear();
7231 self.size_modifier = ::std::option::Option::None;
7232 self.colors.clear();
7233 self.hair.clear();
7234 self.beard.clear();
7235 self.moustache.clear();
7236 self.sideburns.clear();
7237 self.physical_description = ::std::option::Option::None;
7238 self.special_fields.clear();
7239 }
7240
7241 fn default_instance() -> &'static UnitAppearance {
7242 static instance: UnitAppearance = UnitAppearance {
7243 body_modifiers: ::std::vec::Vec::new(),
7244 bp_modifiers: ::std::vec::Vec::new(),
7245 size_modifier: ::std::option::Option::None,
7246 colors: ::std::vec::Vec::new(),
7247 hair: ::protobuf::MessageField::none(),
7248 beard: ::protobuf::MessageField::none(),
7249 moustache: ::protobuf::MessageField::none(),
7250 sideburns: ::protobuf::MessageField::none(),
7251 physical_description: ::std::option::Option::None,
7252 special_fields: ::protobuf::SpecialFields::new(),
7253 };
7254 &instance
7255 }
7256}
7257
7258impl ::protobuf::MessageFull for UnitAppearance {
7259 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
7260 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
7261 descriptor.get(|| file_descriptor().message_by_package_relative_name("UnitAppearance").unwrap()).clone()
7262 }
7263}
7264
7265impl ::std::fmt::Display for UnitAppearance {
7266 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7267 ::protobuf::text_format::fmt(self, f)
7268 }
7269}
7270
7271impl ::protobuf::reflect::ProtobufValue for UnitAppearance {
7272 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
7273}
7274
7275#[derive(PartialEq,Clone,Default,Debug)]
7277pub struct InventoryItem {
7278 pub mode: ::std::option::Option<::protobuf::EnumOrUnknown<InventoryMode>>,
7281 pub item: ::protobuf::MessageField<Item>,
7283 pub body_part_id: ::std::option::Option<i32>,
7285 pub special_fields: ::protobuf::SpecialFields,
7288}
7289
7290impl<'a> ::std::default::Default for &'a InventoryItem {
7291 fn default() -> &'a InventoryItem {
7292 <InventoryItem as ::protobuf::Message>::default_instance()
7293 }
7294}
7295
7296impl InventoryItem {
7297 pub fn new() -> InventoryItem {
7298 ::std::default::Default::default()
7299 }
7300
7301 pub fn mode(&self) -> InventoryMode {
7304 match self.mode {
7305 Some(e) => e.enum_value_or(InventoryMode::Hauled),
7306 None => InventoryMode::Hauled,
7307 }
7308 }
7309
7310 pub fn clear_mode(&mut self) {
7311 self.mode = ::std::option::Option::None;
7312 }
7313
7314 pub fn has_mode(&self) -> bool {
7315 self.mode.is_some()
7316 }
7317
7318 pub fn set_mode(&mut self, v: InventoryMode) {
7320 self.mode = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
7321 }
7322
7323 pub fn body_part_id(&self) -> i32 {
7326 self.body_part_id.unwrap_or(0)
7327 }
7328
7329 pub fn clear_body_part_id(&mut self) {
7330 self.body_part_id = ::std::option::Option::None;
7331 }
7332
7333 pub fn has_body_part_id(&self) -> bool {
7334 self.body_part_id.is_some()
7335 }
7336
7337 pub fn set_body_part_id(&mut self, v: i32) {
7339 self.body_part_id = ::std::option::Option::Some(v);
7340 }
7341
7342 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
7343 let mut fields = ::std::vec::Vec::with_capacity(3);
7344 let mut oneofs = ::std::vec::Vec::with_capacity(0);
7345 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7346 "mode",
7347 |m: &InventoryItem| { &m.mode },
7348 |m: &mut InventoryItem| { &mut m.mode },
7349 ));
7350 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Item>(
7351 "item",
7352 |m: &InventoryItem| { &m.item },
7353 |m: &mut InventoryItem| { &mut m.item },
7354 ));
7355 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7356 "body_part_id",
7357 |m: &InventoryItem| { &m.body_part_id },
7358 |m: &mut InventoryItem| { &mut m.body_part_id },
7359 ));
7360 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<InventoryItem>(
7361 "InventoryItem",
7362 fields,
7363 oneofs,
7364 )
7365 }
7366}
7367
7368impl ::protobuf::Message for InventoryItem {
7369 const NAME: &'static str = "InventoryItem";
7370
7371 fn is_initialized(&self) -> bool {
7372 for v in &self.item {
7373 if !v.is_initialized() {
7374 return false;
7375 }
7376 };
7377 true
7378 }
7379
7380 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
7381 while let Some(tag) = is.read_raw_tag_or_eof()? {
7382 match tag {
7383 8 => {
7384 self.mode = ::std::option::Option::Some(is.read_enum_or_unknown()?);
7385 },
7386 18 => {
7387 ::protobuf::rt::read_singular_message_into_field(is, &mut self.item)?;
7388 },
7389 24 => {
7390 self.body_part_id = ::std::option::Option::Some(is.read_int32()?);
7391 },
7392 tag => {
7393 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
7394 },
7395 };
7396 }
7397 ::std::result::Result::Ok(())
7398 }
7399
7400 #[allow(unused_variables)]
7402 fn compute_size(&self) -> u64 {
7403 let mut my_size = 0;
7404 if let Some(v) = self.mode {
7405 my_size += ::protobuf::rt::int32_size(1, v.value());
7406 }
7407 if let Some(v) = self.item.as_ref() {
7408 let len = v.compute_size();
7409 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7410 }
7411 if let Some(v) = self.body_part_id {
7412 my_size += ::protobuf::rt::int32_size(3, v);
7413 }
7414 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
7415 self.special_fields.cached_size().set(my_size as u32);
7416 my_size
7417 }
7418
7419 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
7420 if let Some(v) = self.mode {
7421 os.write_enum(1, ::protobuf::EnumOrUnknown::value(&v))?;
7422 }
7423 if let Some(v) = self.item.as_ref() {
7424 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
7425 }
7426 if let Some(v) = self.body_part_id {
7427 os.write_int32(3, v)?;
7428 }
7429 os.write_unknown_fields(self.special_fields.unknown_fields())?;
7430 ::std::result::Result::Ok(())
7431 }
7432
7433 fn special_fields(&self) -> &::protobuf::SpecialFields {
7434 &self.special_fields
7435 }
7436
7437 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
7438 &mut self.special_fields
7439 }
7440
7441 fn new() -> InventoryItem {
7442 InventoryItem::new()
7443 }
7444
7445 fn clear(&mut self) {
7446 self.mode = ::std::option::Option::None;
7447 self.item.clear();
7448 self.body_part_id = ::std::option::Option::None;
7449 self.special_fields.clear();
7450 }
7451
7452 fn default_instance() -> &'static InventoryItem {
7453 static instance: InventoryItem = InventoryItem {
7454 mode: ::std::option::Option::None,
7455 item: ::protobuf::MessageField::none(),
7456 body_part_id: ::std::option::Option::None,
7457 special_fields: ::protobuf::SpecialFields::new(),
7458 };
7459 &instance
7460 }
7461}
7462
7463impl ::protobuf::MessageFull for InventoryItem {
7464 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
7465 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
7466 descriptor.get(|| file_descriptor().message_by_package_relative_name("InventoryItem").unwrap()).clone()
7467 }
7468}
7469
7470impl ::std::fmt::Display for InventoryItem {
7471 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7472 ::protobuf::text_format::fmt(self, f)
7473 }
7474}
7475
7476impl ::protobuf::reflect::ProtobufValue for InventoryItem {
7477 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
7478}
7479
7480#[derive(PartialEq,Clone,Default,Debug)]
7482pub struct WoundPart {
7483 pub global_layer_idx: ::std::option::Option<i32>,
7486 pub body_part_id: ::std::option::Option<i32>,
7488 pub layer_idx: ::std::option::Option<i32>,
7490 pub special_fields: ::protobuf::SpecialFields,
7493}
7494
7495impl<'a> ::std::default::Default for &'a WoundPart {
7496 fn default() -> &'a WoundPart {
7497 <WoundPart as ::protobuf::Message>::default_instance()
7498 }
7499}
7500
7501impl WoundPart {
7502 pub fn new() -> WoundPart {
7503 ::std::default::Default::default()
7504 }
7505
7506 pub fn global_layer_idx(&self) -> i32 {
7509 self.global_layer_idx.unwrap_or(0)
7510 }
7511
7512 pub fn clear_global_layer_idx(&mut self) {
7513 self.global_layer_idx = ::std::option::Option::None;
7514 }
7515
7516 pub fn has_global_layer_idx(&self) -> bool {
7517 self.global_layer_idx.is_some()
7518 }
7519
7520 pub fn set_global_layer_idx(&mut self, v: i32) {
7522 self.global_layer_idx = ::std::option::Option::Some(v);
7523 }
7524
7525 pub fn body_part_id(&self) -> i32 {
7528 self.body_part_id.unwrap_or(0)
7529 }
7530
7531 pub fn clear_body_part_id(&mut self) {
7532 self.body_part_id = ::std::option::Option::None;
7533 }
7534
7535 pub fn has_body_part_id(&self) -> bool {
7536 self.body_part_id.is_some()
7537 }
7538
7539 pub fn set_body_part_id(&mut self, v: i32) {
7541 self.body_part_id = ::std::option::Option::Some(v);
7542 }
7543
7544 pub fn layer_idx(&self) -> i32 {
7547 self.layer_idx.unwrap_or(0)
7548 }
7549
7550 pub fn clear_layer_idx(&mut self) {
7551 self.layer_idx = ::std::option::Option::None;
7552 }
7553
7554 pub fn has_layer_idx(&self) -> bool {
7555 self.layer_idx.is_some()
7556 }
7557
7558 pub fn set_layer_idx(&mut self, v: i32) {
7560 self.layer_idx = ::std::option::Option::Some(v);
7561 }
7562
7563 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
7564 let mut fields = ::std::vec::Vec::with_capacity(3);
7565 let mut oneofs = ::std::vec::Vec::with_capacity(0);
7566 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7567 "global_layer_idx",
7568 |m: &WoundPart| { &m.global_layer_idx },
7569 |m: &mut WoundPart| { &mut m.global_layer_idx },
7570 ));
7571 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7572 "body_part_id",
7573 |m: &WoundPart| { &m.body_part_id },
7574 |m: &mut WoundPart| { &mut m.body_part_id },
7575 ));
7576 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7577 "layer_idx",
7578 |m: &WoundPart| { &m.layer_idx },
7579 |m: &mut WoundPart| { &mut m.layer_idx },
7580 ));
7581 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<WoundPart>(
7582 "WoundPart",
7583 fields,
7584 oneofs,
7585 )
7586 }
7587}
7588
7589impl ::protobuf::Message for WoundPart {
7590 const NAME: &'static str = "WoundPart";
7591
7592 fn is_initialized(&self) -> bool {
7593 true
7594 }
7595
7596 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
7597 while let Some(tag) = is.read_raw_tag_or_eof()? {
7598 match tag {
7599 8 => {
7600 self.global_layer_idx = ::std::option::Option::Some(is.read_int32()?);
7601 },
7602 16 => {
7603 self.body_part_id = ::std::option::Option::Some(is.read_int32()?);
7604 },
7605 24 => {
7606 self.layer_idx = ::std::option::Option::Some(is.read_int32()?);
7607 },
7608 tag => {
7609 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
7610 },
7611 };
7612 }
7613 ::std::result::Result::Ok(())
7614 }
7615
7616 #[allow(unused_variables)]
7618 fn compute_size(&self) -> u64 {
7619 let mut my_size = 0;
7620 if let Some(v) = self.global_layer_idx {
7621 my_size += ::protobuf::rt::int32_size(1, v);
7622 }
7623 if let Some(v) = self.body_part_id {
7624 my_size += ::protobuf::rt::int32_size(2, v);
7625 }
7626 if let Some(v) = self.layer_idx {
7627 my_size += ::protobuf::rt::int32_size(3, v);
7628 }
7629 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
7630 self.special_fields.cached_size().set(my_size as u32);
7631 my_size
7632 }
7633
7634 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
7635 if let Some(v) = self.global_layer_idx {
7636 os.write_int32(1, v)?;
7637 }
7638 if let Some(v) = self.body_part_id {
7639 os.write_int32(2, v)?;
7640 }
7641 if let Some(v) = self.layer_idx {
7642 os.write_int32(3, v)?;
7643 }
7644 os.write_unknown_fields(self.special_fields.unknown_fields())?;
7645 ::std::result::Result::Ok(())
7646 }
7647
7648 fn special_fields(&self) -> &::protobuf::SpecialFields {
7649 &self.special_fields
7650 }
7651
7652 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
7653 &mut self.special_fields
7654 }
7655
7656 fn new() -> WoundPart {
7657 WoundPart::new()
7658 }
7659
7660 fn clear(&mut self) {
7661 self.global_layer_idx = ::std::option::Option::None;
7662 self.body_part_id = ::std::option::Option::None;
7663 self.layer_idx = ::std::option::Option::None;
7664 self.special_fields.clear();
7665 }
7666
7667 fn default_instance() -> &'static WoundPart {
7668 static instance: WoundPart = WoundPart {
7669 global_layer_idx: ::std::option::Option::None,
7670 body_part_id: ::std::option::Option::None,
7671 layer_idx: ::std::option::Option::None,
7672 special_fields: ::protobuf::SpecialFields::new(),
7673 };
7674 &instance
7675 }
7676}
7677
7678impl ::protobuf::MessageFull for WoundPart {
7679 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
7680 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
7681 descriptor.get(|| file_descriptor().message_by_package_relative_name("WoundPart").unwrap()).clone()
7682 }
7683}
7684
7685impl ::std::fmt::Display for WoundPart {
7686 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7687 ::protobuf::text_format::fmt(self, f)
7688 }
7689}
7690
7691impl ::protobuf::reflect::ProtobufValue for WoundPart {
7692 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
7693}
7694
7695#[derive(PartialEq,Clone,Default,Debug)]
7697pub struct UnitWound {
7698 pub parts: ::std::vec::Vec<WoundPart>,
7701 pub severed_part: ::std::option::Option<bool>,
7703 pub special_fields: ::protobuf::SpecialFields,
7706}
7707
7708impl<'a> ::std::default::Default for &'a UnitWound {
7709 fn default() -> &'a UnitWound {
7710 <UnitWound as ::protobuf::Message>::default_instance()
7711 }
7712}
7713
7714impl UnitWound {
7715 pub fn new() -> UnitWound {
7716 ::std::default::Default::default()
7717 }
7718
7719 pub fn severed_part(&self) -> bool {
7722 self.severed_part.unwrap_or(false)
7723 }
7724
7725 pub fn clear_severed_part(&mut self) {
7726 self.severed_part = ::std::option::Option::None;
7727 }
7728
7729 pub fn has_severed_part(&self) -> bool {
7730 self.severed_part.is_some()
7731 }
7732
7733 pub fn set_severed_part(&mut self, v: bool) {
7735 self.severed_part = ::std::option::Option::Some(v);
7736 }
7737
7738 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
7739 let mut fields = ::std::vec::Vec::with_capacity(2);
7740 let mut oneofs = ::std::vec::Vec::with_capacity(0);
7741 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
7742 "parts",
7743 |m: &UnitWound| { &m.parts },
7744 |m: &mut UnitWound| { &mut m.parts },
7745 ));
7746 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
7747 "severed_part",
7748 |m: &UnitWound| { &m.severed_part },
7749 |m: &mut UnitWound| { &mut m.severed_part },
7750 ));
7751 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<UnitWound>(
7752 "UnitWound",
7753 fields,
7754 oneofs,
7755 )
7756 }
7757}
7758
7759impl ::protobuf::Message for UnitWound {
7760 const NAME: &'static str = "UnitWound";
7761
7762 fn is_initialized(&self) -> bool {
7763 true
7764 }
7765
7766 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
7767 while let Some(tag) = is.read_raw_tag_or_eof()? {
7768 match tag {
7769 10 => {
7770 self.parts.push(is.read_message()?);
7771 },
7772 16 => {
7773 self.severed_part = ::std::option::Option::Some(is.read_bool()?);
7774 },
7775 tag => {
7776 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
7777 },
7778 };
7779 }
7780 ::std::result::Result::Ok(())
7781 }
7782
7783 #[allow(unused_variables)]
7785 fn compute_size(&self) -> u64 {
7786 let mut my_size = 0;
7787 for value in &self.parts {
7788 let len = value.compute_size();
7789 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
7790 };
7791 if let Some(v) = self.severed_part {
7792 my_size += 1 + 1;
7793 }
7794 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
7795 self.special_fields.cached_size().set(my_size as u32);
7796 my_size
7797 }
7798
7799 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
7800 for v in &self.parts {
7801 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
7802 };
7803 if let Some(v) = self.severed_part {
7804 os.write_bool(2, v)?;
7805 }
7806 os.write_unknown_fields(self.special_fields.unknown_fields())?;
7807 ::std::result::Result::Ok(())
7808 }
7809
7810 fn special_fields(&self) -> &::protobuf::SpecialFields {
7811 &self.special_fields
7812 }
7813
7814 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
7815 &mut self.special_fields
7816 }
7817
7818 fn new() -> UnitWound {
7819 UnitWound::new()
7820 }
7821
7822 fn clear(&mut self) {
7823 self.parts.clear();
7824 self.severed_part = ::std::option::Option::None;
7825 self.special_fields.clear();
7826 }
7827
7828 fn default_instance() -> &'static UnitWound {
7829 static instance: UnitWound = UnitWound {
7830 parts: ::std::vec::Vec::new(),
7831 severed_part: ::std::option::Option::None,
7832 special_fields: ::protobuf::SpecialFields::new(),
7833 };
7834 &instance
7835 }
7836}
7837
7838impl ::protobuf::MessageFull for UnitWound {
7839 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
7840 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
7841 descriptor.get(|| file_descriptor().message_by_package_relative_name("UnitWound").unwrap()).clone()
7842 }
7843}
7844
7845impl ::std::fmt::Display for UnitWound {
7846 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7847 ::protobuf::text_format::fmt(self, f)
7848 }
7849}
7850
7851impl ::protobuf::reflect::ProtobufValue for UnitWound {
7852 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
7853}
7854
7855#[derive(PartialEq,Clone,Default,Debug)]
7857pub struct UnitDefinition {
7858 pub id: ::std::option::Option<i32>,
7861 pub isValid: ::std::option::Option<bool>,
7863 pub pos_x: ::std::option::Option<i32>,
7865 pub pos_y: ::std::option::Option<i32>,
7867 pub pos_z: ::std::option::Option<i32>,
7869 pub race: ::protobuf::MessageField<MatPair>,
7871 pub profession_color: ::protobuf::MessageField<ColorDefinition>,
7873 pub flags1: ::std::option::Option<u32>,
7875 pub flags2: ::std::option::Option<u32>,
7877 pub flags3: ::std::option::Option<u32>,
7879 pub is_soldier: ::std::option::Option<bool>,
7881 pub size_info: ::protobuf::MessageField<BodySizeInfo>,
7883 pub name: ::std::option::Option<::std::string::String>,
7885 pub blood_max: ::std::option::Option<i32>,
7887 pub blood_count: ::std::option::Option<i32>,
7889 pub appearance: ::protobuf::MessageField<UnitAppearance>,
7891 pub profession_id: ::std::option::Option<i32>,
7893 pub noble_positions: ::std::vec::Vec<::std::string::String>,
7895 pub rider_id: ::std::option::Option<i32>,
7897 pub inventory: ::std::vec::Vec<InventoryItem>,
7899 pub subpos_x: ::std::option::Option<f32>,
7901 pub subpos_y: ::std::option::Option<f32>,
7903 pub subpos_z: ::std::option::Option<f32>,
7905 pub facing: ::protobuf::MessageField<Coord>,
7907 pub age: ::std::option::Option<i32>,
7909 pub wounds: ::std::vec::Vec<UnitWound>,
7911 pub special_fields: ::protobuf::SpecialFields,
7914}
7915
7916impl<'a> ::std::default::Default for &'a UnitDefinition {
7917 fn default() -> &'a UnitDefinition {
7918 <UnitDefinition as ::protobuf::Message>::default_instance()
7919 }
7920}
7921
7922impl UnitDefinition {
7923 pub fn new() -> UnitDefinition {
7924 ::std::default::Default::default()
7925 }
7926
7927 pub fn id(&self) -> i32 {
7930 self.id.unwrap_or(0)
7931 }
7932
7933 pub fn clear_id(&mut self) {
7934 self.id = ::std::option::Option::None;
7935 }
7936
7937 pub fn has_id(&self) -> bool {
7938 self.id.is_some()
7939 }
7940
7941 pub fn set_id(&mut self, v: i32) {
7943 self.id = ::std::option::Option::Some(v);
7944 }
7945
7946 pub fn isValid(&self) -> bool {
7949 self.isValid.unwrap_or(false)
7950 }
7951
7952 pub fn clear_isValid(&mut self) {
7953 self.isValid = ::std::option::Option::None;
7954 }
7955
7956 pub fn has_isValid(&self) -> bool {
7957 self.isValid.is_some()
7958 }
7959
7960 pub fn set_isValid(&mut self, v: bool) {
7962 self.isValid = ::std::option::Option::Some(v);
7963 }
7964
7965 pub fn pos_x(&self) -> i32 {
7968 self.pos_x.unwrap_or(0)
7969 }
7970
7971 pub fn clear_pos_x(&mut self) {
7972 self.pos_x = ::std::option::Option::None;
7973 }
7974
7975 pub fn has_pos_x(&self) -> bool {
7976 self.pos_x.is_some()
7977 }
7978
7979 pub fn set_pos_x(&mut self, v: i32) {
7981 self.pos_x = ::std::option::Option::Some(v);
7982 }
7983
7984 pub fn pos_y(&self) -> i32 {
7987 self.pos_y.unwrap_or(0)
7988 }
7989
7990 pub fn clear_pos_y(&mut self) {
7991 self.pos_y = ::std::option::Option::None;
7992 }
7993
7994 pub fn has_pos_y(&self) -> bool {
7995 self.pos_y.is_some()
7996 }
7997
7998 pub fn set_pos_y(&mut self, v: i32) {
8000 self.pos_y = ::std::option::Option::Some(v);
8001 }
8002
8003 pub fn pos_z(&self) -> i32 {
8006 self.pos_z.unwrap_or(0)
8007 }
8008
8009 pub fn clear_pos_z(&mut self) {
8010 self.pos_z = ::std::option::Option::None;
8011 }
8012
8013 pub fn has_pos_z(&self) -> bool {
8014 self.pos_z.is_some()
8015 }
8016
8017 pub fn set_pos_z(&mut self, v: i32) {
8019 self.pos_z = ::std::option::Option::Some(v);
8020 }
8021
8022 pub fn flags1(&self) -> u32 {
8025 self.flags1.unwrap_or(0)
8026 }
8027
8028 pub fn clear_flags1(&mut self) {
8029 self.flags1 = ::std::option::Option::None;
8030 }
8031
8032 pub fn has_flags1(&self) -> bool {
8033 self.flags1.is_some()
8034 }
8035
8036 pub fn set_flags1(&mut self, v: u32) {
8038 self.flags1 = ::std::option::Option::Some(v);
8039 }
8040
8041 pub fn flags2(&self) -> u32 {
8044 self.flags2.unwrap_or(0)
8045 }
8046
8047 pub fn clear_flags2(&mut self) {
8048 self.flags2 = ::std::option::Option::None;
8049 }
8050
8051 pub fn has_flags2(&self) -> bool {
8052 self.flags2.is_some()
8053 }
8054
8055 pub fn set_flags2(&mut self, v: u32) {
8057 self.flags2 = ::std::option::Option::Some(v);
8058 }
8059
8060 pub fn flags3(&self) -> u32 {
8063 self.flags3.unwrap_or(0)
8064 }
8065
8066 pub fn clear_flags3(&mut self) {
8067 self.flags3 = ::std::option::Option::None;
8068 }
8069
8070 pub fn has_flags3(&self) -> bool {
8071 self.flags3.is_some()
8072 }
8073
8074 pub fn set_flags3(&mut self, v: u32) {
8076 self.flags3 = ::std::option::Option::Some(v);
8077 }
8078
8079 pub fn is_soldier(&self) -> bool {
8082 self.is_soldier.unwrap_or(false)
8083 }
8084
8085 pub fn clear_is_soldier(&mut self) {
8086 self.is_soldier = ::std::option::Option::None;
8087 }
8088
8089 pub fn has_is_soldier(&self) -> bool {
8090 self.is_soldier.is_some()
8091 }
8092
8093 pub fn set_is_soldier(&mut self, v: bool) {
8095 self.is_soldier = ::std::option::Option::Some(v);
8096 }
8097
8098 pub fn name(&self) -> &str {
8101 match self.name.as_ref() {
8102 Some(v) => v,
8103 None => "",
8104 }
8105 }
8106
8107 pub fn clear_name(&mut self) {
8108 self.name = ::std::option::Option::None;
8109 }
8110
8111 pub fn has_name(&self) -> bool {
8112 self.name.is_some()
8113 }
8114
8115 pub fn set_name(&mut self, v: ::std::string::String) {
8117 self.name = ::std::option::Option::Some(v);
8118 }
8119
8120 pub fn mut_name(&mut self) -> &mut ::std::string::String {
8123 if self.name.is_none() {
8124 self.name = ::std::option::Option::Some(::std::string::String::new());
8125 }
8126 self.name.as_mut().unwrap()
8127 }
8128
8129 pub fn take_name(&mut self) -> ::std::string::String {
8131 self.name.take().unwrap_or_else(|| ::std::string::String::new())
8132 }
8133
8134 pub fn blood_max(&self) -> i32 {
8137 self.blood_max.unwrap_or(0)
8138 }
8139
8140 pub fn clear_blood_max(&mut self) {
8141 self.blood_max = ::std::option::Option::None;
8142 }
8143
8144 pub fn has_blood_max(&self) -> bool {
8145 self.blood_max.is_some()
8146 }
8147
8148 pub fn set_blood_max(&mut self, v: i32) {
8150 self.blood_max = ::std::option::Option::Some(v);
8151 }
8152
8153 pub fn blood_count(&self) -> i32 {
8156 self.blood_count.unwrap_or(0)
8157 }
8158
8159 pub fn clear_blood_count(&mut self) {
8160 self.blood_count = ::std::option::Option::None;
8161 }
8162
8163 pub fn has_blood_count(&self) -> bool {
8164 self.blood_count.is_some()
8165 }
8166
8167 pub fn set_blood_count(&mut self, v: i32) {
8169 self.blood_count = ::std::option::Option::Some(v);
8170 }
8171
8172 pub fn profession_id(&self) -> i32 {
8175 self.profession_id.unwrap_or(0)
8176 }
8177
8178 pub fn clear_profession_id(&mut self) {
8179 self.profession_id = ::std::option::Option::None;
8180 }
8181
8182 pub fn has_profession_id(&self) -> bool {
8183 self.profession_id.is_some()
8184 }
8185
8186 pub fn set_profession_id(&mut self, v: i32) {
8188 self.profession_id = ::std::option::Option::Some(v);
8189 }
8190
8191 pub fn rider_id(&self) -> i32 {
8194 self.rider_id.unwrap_or(0)
8195 }
8196
8197 pub fn clear_rider_id(&mut self) {
8198 self.rider_id = ::std::option::Option::None;
8199 }
8200
8201 pub fn has_rider_id(&self) -> bool {
8202 self.rider_id.is_some()
8203 }
8204
8205 pub fn set_rider_id(&mut self, v: i32) {
8207 self.rider_id = ::std::option::Option::Some(v);
8208 }
8209
8210 pub fn subpos_x(&self) -> f32 {
8213 self.subpos_x.unwrap_or(0.)
8214 }
8215
8216 pub fn clear_subpos_x(&mut self) {
8217 self.subpos_x = ::std::option::Option::None;
8218 }
8219
8220 pub fn has_subpos_x(&self) -> bool {
8221 self.subpos_x.is_some()
8222 }
8223
8224 pub fn set_subpos_x(&mut self, v: f32) {
8226 self.subpos_x = ::std::option::Option::Some(v);
8227 }
8228
8229 pub fn subpos_y(&self) -> f32 {
8232 self.subpos_y.unwrap_or(0.)
8233 }
8234
8235 pub fn clear_subpos_y(&mut self) {
8236 self.subpos_y = ::std::option::Option::None;
8237 }
8238
8239 pub fn has_subpos_y(&self) -> bool {
8240 self.subpos_y.is_some()
8241 }
8242
8243 pub fn set_subpos_y(&mut self, v: f32) {
8245 self.subpos_y = ::std::option::Option::Some(v);
8246 }
8247
8248 pub fn subpos_z(&self) -> f32 {
8251 self.subpos_z.unwrap_or(0.)
8252 }
8253
8254 pub fn clear_subpos_z(&mut self) {
8255 self.subpos_z = ::std::option::Option::None;
8256 }
8257
8258 pub fn has_subpos_z(&self) -> bool {
8259 self.subpos_z.is_some()
8260 }
8261
8262 pub fn set_subpos_z(&mut self, v: f32) {
8264 self.subpos_z = ::std::option::Option::Some(v);
8265 }
8266
8267 pub fn age(&self) -> i32 {
8270 self.age.unwrap_or(0)
8271 }
8272
8273 pub fn clear_age(&mut self) {
8274 self.age = ::std::option::Option::None;
8275 }
8276
8277 pub fn has_age(&self) -> bool {
8278 self.age.is_some()
8279 }
8280
8281 pub fn set_age(&mut self, v: i32) {
8283 self.age = ::std::option::Option::Some(v);
8284 }
8285
8286 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
8287 let mut fields = ::std::vec::Vec::with_capacity(26);
8288 let mut oneofs = ::std::vec::Vec::with_capacity(0);
8289 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8290 "id",
8291 |m: &UnitDefinition| { &m.id },
8292 |m: &mut UnitDefinition| { &mut m.id },
8293 ));
8294 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8295 "isValid",
8296 |m: &UnitDefinition| { &m.isValid },
8297 |m: &mut UnitDefinition| { &mut m.isValid },
8298 ));
8299 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8300 "pos_x",
8301 |m: &UnitDefinition| { &m.pos_x },
8302 |m: &mut UnitDefinition| { &mut m.pos_x },
8303 ));
8304 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8305 "pos_y",
8306 |m: &UnitDefinition| { &m.pos_y },
8307 |m: &mut UnitDefinition| { &mut m.pos_y },
8308 ));
8309 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8310 "pos_z",
8311 |m: &UnitDefinition| { &m.pos_z },
8312 |m: &mut UnitDefinition| { &mut m.pos_z },
8313 ));
8314 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
8315 "race",
8316 |m: &UnitDefinition| { &m.race },
8317 |m: &mut UnitDefinition| { &mut m.race },
8318 ));
8319 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ColorDefinition>(
8320 "profession_color",
8321 |m: &UnitDefinition| { &m.profession_color },
8322 |m: &mut UnitDefinition| { &mut m.profession_color },
8323 ));
8324 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8325 "flags1",
8326 |m: &UnitDefinition| { &m.flags1 },
8327 |m: &mut UnitDefinition| { &mut m.flags1 },
8328 ));
8329 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8330 "flags2",
8331 |m: &UnitDefinition| { &m.flags2 },
8332 |m: &mut UnitDefinition| { &mut m.flags2 },
8333 ));
8334 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8335 "flags3",
8336 |m: &UnitDefinition| { &m.flags3 },
8337 |m: &mut UnitDefinition| { &mut m.flags3 },
8338 ));
8339 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8340 "is_soldier",
8341 |m: &UnitDefinition| { &m.is_soldier },
8342 |m: &mut UnitDefinition| { &mut m.is_soldier },
8343 ));
8344 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, BodySizeInfo>(
8345 "size_info",
8346 |m: &UnitDefinition| { &m.size_info },
8347 |m: &mut UnitDefinition| { &mut m.size_info },
8348 ));
8349 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8350 "name",
8351 |m: &UnitDefinition| { &m.name },
8352 |m: &mut UnitDefinition| { &mut m.name },
8353 ));
8354 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8355 "blood_max",
8356 |m: &UnitDefinition| { &m.blood_max },
8357 |m: &mut UnitDefinition| { &mut m.blood_max },
8358 ));
8359 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8360 "blood_count",
8361 |m: &UnitDefinition| { &m.blood_count },
8362 |m: &mut UnitDefinition| { &mut m.blood_count },
8363 ));
8364 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, UnitAppearance>(
8365 "appearance",
8366 |m: &UnitDefinition| { &m.appearance },
8367 |m: &mut UnitDefinition| { &mut m.appearance },
8368 ));
8369 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8370 "profession_id",
8371 |m: &UnitDefinition| { &m.profession_id },
8372 |m: &mut UnitDefinition| { &mut m.profession_id },
8373 ));
8374 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
8375 "noble_positions",
8376 |m: &UnitDefinition| { &m.noble_positions },
8377 |m: &mut UnitDefinition| { &mut m.noble_positions },
8378 ));
8379 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8380 "rider_id",
8381 |m: &UnitDefinition| { &m.rider_id },
8382 |m: &mut UnitDefinition| { &mut m.rider_id },
8383 ));
8384 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
8385 "inventory",
8386 |m: &UnitDefinition| { &m.inventory },
8387 |m: &mut UnitDefinition| { &mut m.inventory },
8388 ));
8389 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8390 "subpos_x",
8391 |m: &UnitDefinition| { &m.subpos_x },
8392 |m: &mut UnitDefinition| { &mut m.subpos_x },
8393 ));
8394 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8395 "subpos_y",
8396 |m: &UnitDefinition| { &m.subpos_y },
8397 |m: &mut UnitDefinition| { &mut m.subpos_y },
8398 ));
8399 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8400 "subpos_z",
8401 |m: &UnitDefinition| { &m.subpos_z },
8402 |m: &mut UnitDefinition| { &mut m.subpos_z },
8403 ));
8404 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
8405 "facing",
8406 |m: &UnitDefinition| { &m.facing },
8407 |m: &mut UnitDefinition| { &mut m.facing },
8408 ));
8409 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
8410 "age",
8411 |m: &UnitDefinition| { &m.age },
8412 |m: &mut UnitDefinition| { &mut m.age },
8413 ));
8414 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
8415 "wounds",
8416 |m: &UnitDefinition| { &m.wounds },
8417 |m: &mut UnitDefinition| { &mut m.wounds },
8418 ));
8419 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<UnitDefinition>(
8420 "UnitDefinition",
8421 fields,
8422 oneofs,
8423 )
8424 }
8425}
8426
8427impl ::protobuf::Message for UnitDefinition {
8428 const NAME: &'static str = "UnitDefinition";
8429
8430 fn is_initialized(&self) -> bool {
8431 if self.id.is_none() {
8432 return false;
8433 }
8434 for v in &self.race {
8435 if !v.is_initialized() {
8436 return false;
8437 }
8438 };
8439 for v in &self.profession_color {
8440 if !v.is_initialized() {
8441 return false;
8442 }
8443 };
8444 for v in &self.size_info {
8445 if !v.is_initialized() {
8446 return false;
8447 }
8448 };
8449 for v in &self.appearance {
8450 if !v.is_initialized() {
8451 return false;
8452 }
8453 };
8454 for v in &self.inventory {
8455 if !v.is_initialized() {
8456 return false;
8457 }
8458 };
8459 for v in &self.facing {
8460 if !v.is_initialized() {
8461 return false;
8462 }
8463 };
8464 for v in &self.wounds {
8465 if !v.is_initialized() {
8466 return false;
8467 }
8468 };
8469 true
8470 }
8471
8472 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
8473 while let Some(tag) = is.read_raw_tag_or_eof()? {
8474 match tag {
8475 8 => {
8476 self.id = ::std::option::Option::Some(is.read_int32()?);
8477 },
8478 16 => {
8479 self.isValid = ::std::option::Option::Some(is.read_bool()?);
8480 },
8481 24 => {
8482 self.pos_x = ::std::option::Option::Some(is.read_int32()?);
8483 },
8484 32 => {
8485 self.pos_y = ::std::option::Option::Some(is.read_int32()?);
8486 },
8487 40 => {
8488 self.pos_z = ::std::option::Option::Some(is.read_int32()?);
8489 },
8490 50 => {
8491 ::protobuf::rt::read_singular_message_into_field(is, &mut self.race)?;
8492 },
8493 58 => {
8494 ::protobuf::rt::read_singular_message_into_field(is, &mut self.profession_color)?;
8495 },
8496 64 => {
8497 self.flags1 = ::std::option::Option::Some(is.read_uint32()?);
8498 },
8499 72 => {
8500 self.flags2 = ::std::option::Option::Some(is.read_uint32()?);
8501 },
8502 80 => {
8503 self.flags3 = ::std::option::Option::Some(is.read_uint32()?);
8504 },
8505 88 => {
8506 self.is_soldier = ::std::option::Option::Some(is.read_bool()?);
8507 },
8508 98 => {
8509 ::protobuf::rt::read_singular_message_into_field(is, &mut self.size_info)?;
8510 },
8511 106 => {
8512 self.name = ::std::option::Option::Some(is.read_string()?);
8513 },
8514 112 => {
8515 self.blood_max = ::std::option::Option::Some(is.read_int32()?);
8516 },
8517 120 => {
8518 self.blood_count = ::std::option::Option::Some(is.read_int32()?);
8519 },
8520 130 => {
8521 ::protobuf::rt::read_singular_message_into_field(is, &mut self.appearance)?;
8522 },
8523 136 => {
8524 self.profession_id = ::std::option::Option::Some(is.read_int32()?);
8525 },
8526 146 => {
8527 self.noble_positions.push(is.read_string()?);
8528 },
8529 152 => {
8530 self.rider_id = ::std::option::Option::Some(is.read_int32()?);
8531 },
8532 162 => {
8533 self.inventory.push(is.read_message()?);
8534 },
8535 173 => {
8536 self.subpos_x = ::std::option::Option::Some(is.read_float()?);
8537 },
8538 181 => {
8539 self.subpos_y = ::std::option::Option::Some(is.read_float()?);
8540 },
8541 189 => {
8542 self.subpos_z = ::std::option::Option::Some(is.read_float()?);
8543 },
8544 194 => {
8545 ::protobuf::rt::read_singular_message_into_field(is, &mut self.facing)?;
8546 },
8547 200 => {
8548 self.age = ::std::option::Option::Some(is.read_int32()?);
8549 },
8550 210 => {
8551 self.wounds.push(is.read_message()?);
8552 },
8553 tag => {
8554 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
8555 },
8556 };
8557 }
8558 ::std::result::Result::Ok(())
8559 }
8560
8561 #[allow(unused_variables)]
8563 fn compute_size(&self) -> u64 {
8564 let mut my_size = 0;
8565 if let Some(v) = self.id {
8566 my_size += ::protobuf::rt::int32_size(1, v);
8567 }
8568 if let Some(v) = self.isValid {
8569 my_size += 1 + 1;
8570 }
8571 if let Some(v) = self.pos_x {
8572 my_size += ::protobuf::rt::int32_size(3, v);
8573 }
8574 if let Some(v) = self.pos_y {
8575 my_size += ::protobuf::rt::int32_size(4, v);
8576 }
8577 if let Some(v) = self.pos_z {
8578 my_size += ::protobuf::rt::int32_size(5, v);
8579 }
8580 if let Some(v) = self.race.as_ref() {
8581 let len = v.compute_size();
8582 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8583 }
8584 if let Some(v) = self.profession_color.as_ref() {
8585 let len = v.compute_size();
8586 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8587 }
8588 if let Some(v) = self.flags1 {
8589 my_size += ::protobuf::rt::uint32_size(8, v);
8590 }
8591 if let Some(v) = self.flags2 {
8592 my_size += ::protobuf::rt::uint32_size(9, v);
8593 }
8594 if let Some(v) = self.flags3 {
8595 my_size += ::protobuf::rt::uint32_size(10, v);
8596 }
8597 if let Some(v) = self.is_soldier {
8598 my_size += 1 + 1;
8599 }
8600 if let Some(v) = self.size_info.as_ref() {
8601 let len = v.compute_size();
8602 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8603 }
8604 if let Some(v) = self.name.as_ref() {
8605 my_size += ::protobuf::rt::string_size(13, &v);
8606 }
8607 if let Some(v) = self.blood_max {
8608 my_size += ::protobuf::rt::int32_size(14, v);
8609 }
8610 if let Some(v) = self.blood_count {
8611 my_size += ::protobuf::rt::int32_size(15, v);
8612 }
8613 if let Some(v) = self.appearance.as_ref() {
8614 let len = v.compute_size();
8615 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8616 }
8617 if let Some(v) = self.profession_id {
8618 my_size += ::protobuf::rt::int32_size(17, v);
8619 }
8620 for value in &self.noble_positions {
8621 my_size += ::protobuf::rt::string_size(18, &value);
8622 };
8623 if let Some(v) = self.rider_id {
8624 my_size += ::protobuf::rt::int32_size(19, v);
8625 }
8626 for value in &self.inventory {
8627 let len = value.compute_size();
8628 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8629 };
8630 if let Some(v) = self.subpos_x {
8631 my_size += 2 + 4;
8632 }
8633 if let Some(v) = self.subpos_y {
8634 my_size += 2 + 4;
8635 }
8636 if let Some(v) = self.subpos_z {
8637 my_size += 2 + 4;
8638 }
8639 if let Some(v) = self.facing.as_ref() {
8640 let len = v.compute_size();
8641 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8642 }
8643 if let Some(v) = self.age {
8644 my_size += ::protobuf::rt::int32_size(25, v);
8645 }
8646 for value in &self.wounds {
8647 let len = value.compute_size();
8648 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8649 };
8650 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
8651 self.special_fields.cached_size().set(my_size as u32);
8652 my_size
8653 }
8654
8655 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
8656 if let Some(v) = self.id {
8657 os.write_int32(1, v)?;
8658 }
8659 if let Some(v) = self.isValid {
8660 os.write_bool(2, v)?;
8661 }
8662 if let Some(v) = self.pos_x {
8663 os.write_int32(3, v)?;
8664 }
8665 if let Some(v) = self.pos_y {
8666 os.write_int32(4, v)?;
8667 }
8668 if let Some(v) = self.pos_z {
8669 os.write_int32(5, v)?;
8670 }
8671 if let Some(v) = self.race.as_ref() {
8672 ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
8673 }
8674 if let Some(v) = self.profession_color.as_ref() {
8675 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
8676 }
8677 if let Some(v) = self.flags1 {
8678 os.write_uint32(8, v)?;
8679 }
8680 if let Some(v) = self.flags2 {
8681 os.write_uint32(9, v)?;
8682 }
8683 if let Some(v) = self.flags3 {
8684 os.write_uint32(10, v)?;
8685 }
8686 if let Some(v) = self.is_soldier {
8687 os.write_bool(11, v)?;
8688 }
8689 if let Some(v) = self.size_info.as_ref() {
8690 ::protobuf::rt::write_message_field_with_cached_size(12, v, os)?;
8691 }
8692 if let Some(v) = self.name.as_ref() {
8693 os.write_string(13, v)?;
8694 }
8695 if let Some(v) = self.blood_max {
8696 os.write_int32(14, v)?;
8697 }
8698 if let Some(v) = self.blood_count {
8699 os.write_int32(15, v)?;
8700 }
8701 if let Some(v) = self.appearance.as_ref() {
8702 ::protobuf::rt::write_message_field_with_cached_size(16, v, os)?;
8703 }
8704 if let Some(v) = self.profession_id {
8705 os.write_int32(17, v)?;
8706 }
8707 for v in &self.noble_positions {
8708 os.write_string(18, &v)?;
8709 };
8710 if let Some(v) = self.rider_id {
8711 os.write_int32(19, v)?;
8712 }
8713 for v in &self.inventory {
8714 ::protobuf::rt::write_message_field_with_cached_size(20, v, os)?;
8715 };
8716 if let Some(v) = self.subpos_x {
8717 os.write_float(21, v)?;
8718 }
8719 if let Some(v) = self.subpos_y {
8720 os.write_float(22, v)?;
8721 }
8722 if let Some(v) = self.subpos_z {
8723 os.write_float(23, v)?;
8724 }
8725 if let Some(v) = self.facing.as_ref() {
8726 ::protobuf::rt::write_message_field_with_cached_size(24, v, os)?;
8727 }
8728 if let Some(v) = self.age {
8729 os.write_int32(25, v)?;
8730 }
8731 for v in &self.wounds {
8732 ::protobuf::rt::write_message_field_with_cached_size(26, v, os)?;
8733 };
8734 os.write_unknown_fields(self.special_fields.unknown_fields())?;
8735 ::std::result::Result::Ok(())
8736 }
8737
8738 fn special_fields(&self) -> &::protobuf::SpecialFields {
8739 &self.special_fields
8740 }
8741
8742 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
8743 &mut self.special_fields
8744 }
8745
8746 fn new() -> UnitDefinition {
8747 UnitDefinition::new()
8748 }
8749
8750 fn clear(&mut self) {
8751 self.id = ::std::option::Option::None;
8752 self.isValid = ::std::option::Option::None;
8753 self.pos_x = ::std::option::Option::None;
8754 self.pos_y = ::std::option::Option::None;
8755 self.pos_z = ::std::option::Option::None;
8756 self.race.clear();
8757 self.profession_color.clear();
8758 self.flags1 = ::std::option::Option::None;
8759 self.flags2 = ::std::option::Option::None;
8760 self.flags3 = ::std::option::Option::None;
8761 self.is_soldier = ::std::option::Option::None;
8762 self.size_info.clear();
8763 self.name = ::std::option::Option::None;
8764 self.blood_max = ::std::option::Option::None;
8765 self.blood_count = ::std::option::Option::None;
8766 self.appearance.clear();
8767 self.profession_id = ::std::option::Option::None;
8768 self.noble_positions.clear();
8769 self.rider_id = ::std::option::Option::None;
8770 self.inventory.clear();
8771 self.subpos_x = ::std::option::Option::None;
8772 self.subpos_y = ::std::option::Option::None;
8773 self.subpos_z = ::std::option::Option::None;
8774 self.facing.clear();
8775 self.age = ::std::option::Option::None;
8776 self.wounds.clear();
8777 self.special_fields.clear();
8778 }
8779
8780 fn default_instance() -> &'static UnitDefinition {
8781 static instance: UnitDefinition = UnitDefinition {
8782 id: ::std::option::Option::None,
8783 isValid: ::std::option::Option::None,
8784 pos_x: ::std::option::Option::None,
8785 pos_y: ::std::option::Option::None,
8786 pos_z: ::std::option::Option::None,
8787 race: ::protobuf::MessageField::none(),
8788 profession_color: ::protobuf::MessageField::none(),
8789 flags1: ::std::option::Option::None,
8790 flags2: ::std::option::Option::None,
8791 flags3: ::std::option::Option::None,
8792 is_soldier: ::std::option::Option::None,
8793 size_info: ::protobuf::MessageField::none(),
8794 name: ::std::option::Option::None,
8795 blood_max: ::std::option::Option::None,
8796 blood_count: ::std::option::Option::None,
8797 appearance: ::protobuf::MessageField::none(),
8798 profession_id: ::std::option::Option::None,
8799 noble_positions: ::std::vec::Vec::new(),
8800 rider_id: ::std::option::Option::None,
8801 inventory: ::std::vec::Vec::new(),
8802 subpos_x: ::std::option::Option::None,
8803 subpos_y: ::std::option::Option::None,
8804 subpos_z: ::std::option::Option::None,
8805 facing: ::protobuf::MessageField::none(),
8806 age: ::std::option::Option::None,
8807 wounds: ::std::vec::Vec::new(),
8808 special_fields: ::protobuf::SpecialFields::new(),
8809 };
8810 &instance
8811 }
8812}
8813
8814impl ::protobuf::MessageFull for UnitDefinition {
8815 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
8816 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
8817 descriptor.get(|| file_descriptor().message_by_package_relative_name("UnitDefinition").unwrap()).clone()
8818 }
8819}
8820
8821impl ::std::fmt::Display for UnitDefinition {
8822 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
8823 ::protobuf::text_format::fmt(self, f)
8824 }
8825}
8826
8827impl ::protobuf::reflect::ProtobufValue for UnitDefinition {
8828 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
8829}
8830
8831#[derive(PartialEq,Clone,Default,Debug)]
8833pub struct UnitList {
8834 pub creature_list: ::std::vec::Vec<UnitDefinition>,
8837 pub special_fields: ::protobuf::SpecialFields,
8840}
8841
8842impl<'a> ::std::default::Default for &'a UnitList {
8843 fn default() -> &'a UnitList {
8844 <UnitList as ::protobuf::Message>::default_instance()
8845 }
8846}
8847
8848impl UnitList {
8849 pub fn new() -> UnitList {
8850 ::std::default::Default::default()
8851 }
8852
8853 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
8854 let mut fields = ::std::vec::Vec::with_capacity(1);
8855 let mut oneofs = ::std::vec::Vec::with_capacity(0);
8856 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
8857 "creature_list",
8858 |m: &UnitList| { &m.creature_list },
8859 |m: &mut UnitList| { &mut m.creature_list },
8860 ));
8861 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<UnitList>(
8862 "UnitList",
8863 fields,
8864 oneofs,
8865 )
8866 }
8867}
8868
8869impl ::protobuf::Message for UnitList {
8870 const NAME: &'static str = "UnitList";
8871
8872 fn is_initialized(&self) -> bool {
8873 for v in &self.creature_list {
8874 if !v.is_initialized() {
8875 return false;
8876 }
8877 };
8878 true
8879 }
8880
8881 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
8882 while let Some(tag) = is.read_raw_tag_or_eof()? {
8883 match tag {
8884 10 => {
8885 self.creature_list.push(is.read_message()?);
8886 },
8887 tag => {
8888 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
8889 },
8890 };
8891 }
8892 ::std::result::Result::Ok(())
8893 }
8894
8895 #[allow(unused_variables)]
8897 fn compute_size(&self) -> u64 {
8898 let mut my_size = 0;
8899 for value in &self.creature_list {
8900 let len = value.compute_size();
8901 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
8902 };
8903 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
8904 self.special_fields.cached_size().set(my_size as u32);
8905 my_size
8906 }
8907
8908 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
8909 for v in &self.creature_list {
8910 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
8911 };
8912 os.write_unknown_fields(self.special_fields.unknown_fields())?;
8913 ::std::result::Result::Ok(())
8914 }
8915
8916 fn special_fields(&self) -> &::protobuf::SpecialFields {
8917 &self.special_fields
8918 }
8919
8920 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
8921 &mut self.special_fields
8922 }
8923
8924 fn new() -> UnitList {
8925 UnitList::new()
8926 }
8927
8928 fn clear(&mut self) {
8929 self.creature_list.clear();
8930 self.special_fields.clear();
8931 }
8932
8933 fn default_instance() -> &'static UnitList {
8934 static instance: UnitList = UnitList {
8935 creature_list: ::std::vec::Vec::new(),
8936 special_fields: ::protobuf::SpecialFields::new(),
8937 };
8938 &instance
8939 }
8940}
8941
8942impl ::protobuf::MessageFull for UnitList {
8943 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
8944 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
8945 descriptor.get(|| file_descriptor().message_by_package_relative_name("UnitList").unwrap()).clone()
8946 }
8947}
8948
8949impl ::std::fmt::Display for UnitList {
8950 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
8951 ::protobuf::text_format::fmt(self, f)
8952 }
8953}
8954
8955impl ::protobuf::reflect::ProtobufValue for UnitList {
8956 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
8957}
8958
8959#[derive(PartialEq,Clone,Default,Debug)]
8961pub struct BlockRequest {
8962 pub blocks_needed: ::std::option::Option<i32>,
8965 pub min_x: ::std::option::Option<i32>,
8967 pub max_x: ::std::option::Option<i32>,
8969 pub min_y: ::std::option::Option<i32>,
8971 pub max_y: ::std::option::Option<i32>,
8973 pub min_z: ::std::option::Option<i32>,
8975 pub max_z: ::std::option::Option<i32>,
8977 pub force_reload: ::std::option::Option<bool>,
8979 pub special_fields: ::protobuf::SpecialFields,
8982}
8983
8984impl<'a> ::std::default::Default for &'a BlockRequest {
8985 fn default() -> &'a BlockRequest {
8986 <BlockRequest as ::protobuf::Message>::default_instance()
8987 }
8988}
8989
8990impl BlockRequest {
8991 pub fn new() -> BlockRequest {
8992 ::std::default::Default::default()
8993 }
8994
8995 pub fn blocks_needed(&self) -> i32 {
8998 self.blocks_needed.unwrap_or(0)
8999 }
9000
9001 pub fn clear_blocks_needed(&mut self) {
9002 self.blocks_needed = ::std::option::Option::None;
9003 }
9004
9005 pub fn has_blocks_needed(&self) -> bool {
9006 self.blocks_needed.is_some()
9007 }
9008
9009 pub fn set_blocks_needed(&mut self, v: i32) {
9011 self.blocks_needed = ::std::option::Option::Some(v);
9012 }
9013
9014 pub fn min_x(&self) -> i32 {
9017 self.min_x.unwrap_or(0)
9018 }
9019
9020 pub fn clear_min_x(&mut self) {
9021 self.min_x = ::std::option::Option::None;
9022 }
9023
9024 pub fn has_min_x(&self) -> bool {
9025 self.min_x.is_some()
9026 }
9027
9028 pub fn set_min_x(&mut self, v: i32) {
9030 self.min_x = ::std::option::Option::Some(v);
9031 }
9032
9033 pub fn max_x(&self) -> i32 {
9036 self.max_x.unwrap_or(0)
9037 }
9038
9039 pub fn clear_max_x(&mut self) {
9040 self.max_x = ::std::option::Option::None;
9041 }
9042
9043 pub fn has_max_x(&self) -> bool {
9044 self.max_x.is_some()
9045 }
9046
9047 pub fn set_max_x(&mut self, v: i32) {
9049 self.max_x = ::std::option::Option::Some(v);
9050 }
9051
9052 pub fn min_y(&self) -> i32 {
9055 self.min_y.unwrap_or(0)
9056 }
9057
9058 pub fn clear_min_y(&mut self) {
9059 self.min_y = ::std::option::Option::None;
9060 }
9061
9062 pub fn has_min_y(&self) -> bool {
9063 self.min_y.is_some()
9064 }
9065
9066 pub fn set_min_y(&mut self, v: i32) {
9068 self.min_y = ::std::option::Option::Some(v);
9069 }
9070
9071 pub fn max_y(&self) -> i32 {
9074 self.max_y.unwrap_or(0)
9075 }
9076
9077 pub fn clear_max_y(&mut self) {
9078 self.max_y = ::std::option::Option::None;
9079 }
9080
9081 pub fn has_max_y(&self) -> bool {
9082 self.max_y.is_some()
9083 }
9084
9085 pub fn set_max_y(&mut self, v: i32) {
9087 self.max_y = ::std::option::Option::Some(v);
9088 }
9089
9090 pub fn min_z(&self) -> i32 {
9093 self.min_z.unwrap_or(0)
9094 }
9095
9096 pub fn clear_min_z(&mut self) {
9097 self.min_z = ::std::option::Option::None;
9098 }
9099
9100 pub fn has_min_z(&self) -> bool {
9101 self.min_z.is_some()
9102 }
9103
9104 pub fn set_min_z(&mut self, v: i32) {
9106 self.min_z = ::std::option::Option::Some(v);
9107 }
9108
9109 pub fn max_z(&self) -> i32 {
9112 self.max_z.unwrap_or(0)
9113 }
9114
9115 pub fn clear_max_z(&mut self) {
9116 self.max_z = ::std::option::Option::None;
9117 }
9118
9119 pub fn has_max_z(&self) -> bool {
9120 self.max_z.is_some()
9121 }
9122
9123 pub fn set_max_z(&mut self, v: i32) {
9125 self.max_z = ::std::option::Option::Some(v);
9126 }
9127
9128 pub fn force_reload(&self) -> bool {
9131 self.force_reload.unwrap_or(false)
9132 }
9133
9134 pub fn clear_force_reload(&mut self) {
9135 self.force_reload = ::std::option::Option::None;
9136 }
9137
9138 pub fn has_force_reload(&self) -> bool {
9139 self.force_reload.is_some()
9140 }
9141
9142 pub fn set_force_reload(&mut self, v: bool) {
9144 self.force_reload = ::std::option::Option::Some(v);
9145 }
9146
9147 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
9148 let mut fields = ::std::vec::Vec::with_capacity(8);
9149 let mut oneofs = ::std::vec::Vec::with_capacity(0);
9150 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9151 "blocks_needed",
9152 |m: &BlockRequest| { &m.blocks_needed },
9153 |m: &mut BlockRequest| { &mut m.blocks_needed },
9154 ));
9155 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9156 "min_x",
9157 |m: &BlockRequest| { &m.min_x },
9158 |m: &mut BlockRequest| { &mut m.min_x },
9159 ));
9160 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9161 "max_x",
9162 |m: &BlockRequest| { &m.max_x },
9163 |m: &mut BlockRequest| { &mut m.max_x },
9164 ));
9165 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9166 "min_y",
9167 |m: &BlockRequest| { &m.min_y },
9168 |m: &mut BlockRequest| { &mut m.min_y },
9169 ));
9170 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9171 "max_y",
9172 |m: &BlockRequest| { &m.max_y },
9173 |m: &mut BlockRequest| { &mut m.max_y },
9174 ));
9175 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9176 "min_z",
9177 |m: &BlockRequest| { &m.min_z },
9178 |m: &mut BlockRequest| { &mut m.min_z },
9179 ));
9180 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9181 "max_z",
9182 |m: &BlockRequest| { &m.max_z },
9183 |m: &mut BlockRequest| { &mut m.max_z },
9184 ));
9185 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9186 "force_reload",
9187 |m: &BlockRequest| { &m.force_reload },
9188 |m: &mut BlockRequest| { &mut m.force_reload },
9189 ));
9190 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BlockRequest>(
9191 "BlockRequest",
9192 fields,
9193 oneofs,
9194 )
9195 }
9196}
9197
9198impl ::protobuf::Message for BlockRequest {
9199 const NAME: &'static str = "BlockRequest";
9200
9201 fn is_initialized(&self) -> bool {
9202 true
9203 }
9204
9205 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
9206 while let Some(tag) = is.read_raw_tag_or_eof()? {
9207 match tag {
9208 8 => {
9209 self.blocks_needed = ::std::option::Option::Some(is.read_int32()?);
9210 },
9211 16 => {
9212 self.min_x = ::std::option::Option::Some(is.read_int32()?);
9213 },
9214 24 => {
9215 self.max_x = ::std::option::Option::Some(is.read_int32()?);
9216 },
9217 32 => {
9218 self.min_y = ::std::option::Option::Some(is.read_int32()?);
9219 },
9220 40 => {
9221 self.max_y = ::std::option::Option::Some(is.read_int32()?);
9222 },
9223 48 => {
9224 self.min_z = ::std::option::Option::Some(is.read_int32()?);
9225 },
9226 56 => {
9227 self.max_z = ::std::option::Option::Some(is.read_int32()?);
9228 },
9229 64 => {
9230 self.force_reload = ::std::option::Option::Some(is.read_bool()?);
9231 },
9232 tag => {
9233 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
9234 },
9235 };
9236 }
9237 ::std::result::Result::Ok(())
9238 }
9239
9240 #[allow(unused_variables)]
9242 fn compute_size(&self) -> u64 {
9243 let mut my_size = 0;
9244 if let Some(v) = self.blocks_needed {
9245 my_size += ::protobuf::rt::int32_size(1, v);
9246 }
9247 if let Some(v) = self.min_x {
9248 my_size += ::protobuf::rt::int32_size(2, v);
9249 }
9250 if let Some(v) = self.max_x {
9251 my_size += ::protobuf::rt::int32_size(3, v);
9252 }
9253 if let Some(v) = self.min_y {
9254 my_size += ::protobuf::rt::int32_size(4, v);
9255 }
9256 if let Some(v) = self.max_y {
9257 my_size += ::protobuf::rt::int32_size(5, v);
9258 }
9259 if let Some(v) = self.min_z {
9260 my_size += ::protobuf::rt::int32_size(6, v);
9261 }
9262 if let Some(v) = self.max_z {
9263 my_size += ::protobuf::rt::int32_size(7, v);
9264 }
9265 if let Some(v) = self.force_reload {
9266 my_size += 1 + 1;
9267 }
9268 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
9269 self.special_fields.cached_size().set(my_size as u32);
9270 my_size
9271 }
9272
9273 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
9274 if let Some(v) = self.blocks_needed {
9275 os.write_int32(1, v)?;
9276 }
9277 if let Some(v) = self.min_x {
9278 os.write_int32(2, v)?;
9279 }
9280 if let Some(v) = self.max_x {
9281 os.write_int32(3, v)?;
9282 }
9283 if let Some(v) = self.min_y {
9284 os.write_int32(4, v)?;
9285 }
9286 if let Some(v) = self.max_y {
9287 os.write_int32(5, v)?;
9288 }
9289 if let Some(v) = self.min_z {
9290 os.write_int32(6, v)?;
9291 }
9292 if let Some(v) = self.max_z {
9293 os.write_int32(7, v)?;
9294 }
9295 if let Some(v) = self.force_reload {
9296 os.write_bool(8, v)?;
9297 }
9298 os.write_unknown_fields(self.special_fields.unknown_fields())?;
9299 ::std::result::Result::Ok(())
9300 }
9301
9302 fn special_fields(&self) -> &::protobuf::SpecialFields {
9303 &self.special_fields
9304 }
9305
9306 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
9307 &mut self.special_fields
9308 }
9309
9310 fn new() -> BlockRequest {
9311 BlockRequest::new()
9312 }
9313
9314 fn clear(&mut self) {
9315 self.blocks_needed = ::std::option::Option::None;
9316 self.min_x = ::std::option::Option::None;
9317 self.max_x = ::std::option::Option::None;
9318 self.min_y = ::std::option::Option::None;
9319 self.max_y = ::std::option::Option::None;
9320 self.min_z = ::std::option::Option::None;
9321 self.max_z = ::std::option::Option::None;
9322 self.force_reload = ::std::option::Option::None;
9323 self.special_fields.clear();
9324 }
9325
9326 fn default_instance() -> &'static BlockRequest {
9327 static instance: BlockRequest = BlockRequest {
9328 blocks_needed: ::std::option::Option::None,
9329 min_x: ::std::option::Option::None,
9330 max_x: ::std::option::Option::None,
9331 min_y: ::std::option::Option::None,
9332 max_y: ::std::option::Option::None,
9333 min_z: ::std::option::Option::None,
9334 max_z: ::std::option::Option::None,
9335 force_reload: ::std::option::Option::None,
9336 special_fields: ::protobuf::SpecialFields::new(),
9337 };
9338 &instance
9339 }
9340}
9341
9342impl ::protobuf::MessageFull for BlockRequest {
9343 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
9344 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
9345 descriptor.get(|| file_descriptor().message_by_package_relative_name("BlockRequest").unwrap()).clone()
9346 }
9347}
9348
9349impl ::std::fmt::Display for BlockRequest {
9350 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
9351 ::protobuf::text_format::fmt(self, f)
9352 }
9353}
9354
9355impl ::protobuf::reflect::ProtobufValue for BlockRequest {
9356 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
9357}
9358
9359#[derive(PartialEq,Clone,Default,Debug)]
9361pub struct BlockList {
9362 pub map_blocks: ::std::vec::Vec<MapBlock>,
9365 pub map_x: ::std::option::Option<i32>,
9367 pub map_y: ::std::option::Option<i32>,
9369 pub engravings: ::std::vec::Vec<Engraving>,
9371 pub ocean_waves: ::std::vec::Vec<Wave>,
9373 pub special_fields: ::protobuf::SpecialFields,
9376}
9377
9378impl<'a> ::std::default::Default for &'a BlockList {
9379 fn default() -> &'a BlockList {
9380 <BlockList as ::protobuf::Message>::default_instance()
9381 }
9382}
9383
9384impl BlockList {
9385 pub fn new() -> BlockList {
9386 ::std::default::Default::default()
9387 }
9388
9389 pub fn map_x(&self) -> i32 {
9392 self.map_x.unwrap_or(0)
9393 }
9394
9395 pub fn clear_map_x(&mut self) {
9396 self.map_x = ::std::option::Option::None;
9397 }
9398
9399 pub fn has_map_x(&self) -> bool {
9400 self.map_x.is_some()
9401 }
9402
9403 pub fn set_map_x(&mut self, v: i32) {
9405 self.map_x = ::std::option::Option::Some(v);
9406 }
9407
9408 pub fn map_y(&self) -> i32 {
9411 self.map_y.unwrap_or(0)
9412 }
9413
9414 pub fn clear_map_y(&mut self) {
9415 self.map_y = ::std::option::Option::None;
9416 }
9417
9418 pub fn has_map_y(&self) -> bool {
9419 self.map_y.is_some()
9420 }
9421
9422 pub fn set_map_y(&mut self, v: i32) {
9424 self.map_y = ::std::option::Option::Some(v);
9425 }
9426
9427 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
9428 let mut fields = ::std::vec::Vec::with_capacity(5);
9429 let mut oneofs = ::std::vec::Vec::with_capacity(0);
9430 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
9431 "map_blocks",
9432 |m: &BlockList| { &m.map_blocks },
9433 |m: &mut BlockList| { &mut m.map_blocks },
9434 ));
9435 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9436 "map_x",
9437 |m: &BlockList| { &m.map_x },
9438 |m: &mut BlockList| { &mut m.map_x },
9439 ));
9440 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9441 "map_y",
9442 |m: &BlockList| { &m.map_y },
9443 |m: &mut BlockList| { &mut m.map_y },
9444 ));
9445 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
9446 "engravings",
9447 |m: &BlockList| { &m.engravings },
9448 |m: &mut BlockList| { &mut m.engravings },
9449 ));
9450 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
9451 "ocean_waves",
9452 |m: &BlockList| { &m.ocean_waves },
9453 |m: &mut BlockList| { &mut m.ocean_waves },
9454 ));
9455 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BlockList>(
9456 "BlockList",
9457 fields,
9458 oneofs,
9459 )
9460 }
9461}
9462
9463impl ::protobuf::Message for BlockList {
9464 const NAME: &'static str = "BlockList";
9465
9466 fn is_initialized(&self) -> bool {
9467 for v in &self.map_blocks {
9468 if !v.is_initialized() {
9469 return false;
9470 }
9471 };
9472 for v in &self.engravings {
9473 if !v.is_initialized() {
9474 return false;
9475 }
9476 };
9477 for v in &self.ocean_waves {
9478 if !v.is_initialized() {
9479 return false;
9480 }
9481 };
9482 true
9483 }
9484
9485 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
9486 while let Some(tag) = is.read_raw_tag_or_eof()? {
9487 match tag {
9488 10 => {
9489 self.map_blocks.push(is.read_message()?);
9490 },
9491 16 => {
9492 self.map_x = ::std::option::Option::Some(is.read_int32()?);
9493 },
9494 24 => {
9495 self.map_y = ::std::option::Option::Some(is.read_int32()?);
9496 },
9497 34 => {
9498 self.engravings.push(is.read_message()?);
9499 },
9500 42 => {
9501 self.ocean_waves.push(is.read_message()?);
9502 },
9503 tag => {
9504 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
9505 },
9506 };
9507 }
9508 ::std::result::Result::Ok(())
9509 }
9510
9511 #[allow(unused_variables)]
9513 fn compute_size(&self) -> u64 {
9514 let mut my_size = 0;
9515 for value in &self.map_blocks {
9516 let len = value.compute_size();
9517 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
9518 };
9519 if let Some(v) = self.map_x {
9520 my_size += ::protobuf::rt::int32_size(2, v);
9521 }
9522 if let Some(v) = self.map_y {
9523 my_size += ::protobuf::rt::int32_size(3, v);
9524 }
9525 for value in &self.engravings {
9526 let len = value.compute_size();
9527 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
9528 };
9529 for value in &self.ocean_waves {
9530 let len = value.compute_size();
9531 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
9532 };
9533 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
9534 self.special_fields.cached_size().set(my_size as u32);
9535 my_size
9536 }
9537
9538 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
9539 for v in &self.map_blocks {
9540 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
9541 };
9542 if let Some(v) = self.map_x {
9543 os.write_int32(2, v)?;
9544 }
9545 if let Some(v) = self.map_y {
9546 os.write_int32(3, v)?;
9547 }
9548 for v in &self.engravings {
9549 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
9550 };
9551 for v in &self.ocean_waves {
9552 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
9553 };
9554 os.write_unknown_fields(self.special_fields.unknown_fields())?;
9555 ::std::result::Result::Ok(())
9556 }
9557
9558 fn special_fields(&self) -> &::protobuf::SpecialFields {
9559 &self.special_fields
9560 }
9561
9562 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
9563 &mut self.special_fields
9564 }
9565
9566 fn new() -> BlockList {
9567 BlockList::new()
9568 }
9569
9570 fn clear(&mut self) {
9571 self.map_blocks.clear();
9572 self.map_x = ::std::option::Option::None;
9573 self.map_y = ::std::option::Option::None;
9574 self.engravings.clear();
9575 self.ocean_waves.clear();
9576 self.special_fields.clear();
9577 }
9578
9579 fn default_instance() -> &'static BlockList {
9580 static instance: BlockList = BlockList {
9581 map_blocks: ::std::vec::Vec::new(),
9582 map_x: ::std::option::Option::None,
9583 map_y: ::std::option::Option::None,
9584 engravings: ::std::vec::Vec::new(),
9585 ocean_waves: ::std::vec::Vec::new(),
9586 special_fields: ::protobuf::SpecialFields::new(),
9587 };
9588 &instance
9589 }
9590}
9591
9592impl ::protobuf::MessageFull for BlockList {
9593 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
9594 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
9595 descriptor.get(|| file_descriptor().message_by_package_relative_name("BlockList").unwrap()).clone()
9596 }
9597}
9598
9599impl ::std::fmt::Display for BlockList {
9600 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
9601 ::protobuf::text_format::fmt(self, f)
9602 }
9603}
9604
9605impl ::protobuf::reflect::ProtobufValue for BlockList {
9606 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
9607}
9608
9609#[derive(PartialEq,Clone,Default,Debug)]
9611pub struct PlantDef {
9612 pub pos_x: ::std::option::Option<i32>,
9615 pub pos_y: ::std::option::Option<i32>,
9617 pub pos_z: ::std::option::Option<i32>,
9619 pub index: ::std::option::Option<i32>,
9621 pub special_fields: ::protobuf::SpecialFields,
9624}
9625
9626impl<'a> ::std::default::Default for &'a PlantDef {
9627 fn default() -> &'a PlantDef {
9628 <PlantDef as ::protobuf::Message>::default_instance()
9629 }
9630}
9631
9632impl PlantDef {
9633 pub fn new() -> PlantDef {
9634 ::std::default::Default::default()
9635 }
9636
9637 pub fn pos_x(&self) -> i32 {
9640 self.pos_x.unwrap_or(0)
9641 }
9642
9643 pub fn clear_pos_x(&mut self) {
9644 self.pos_x = ::std::option::Option::None;
9645 }
9646
9647 pub fn has_pos_x(&self) -> bool {
9648 self.pos_x.is_some()
9649 }
9650
9651 pub fn set_pos_x(&mut self, v: i32) {
9653 self.pos_x = ::std::option::Option::Some(v);
9654 }
9655
9656 pub fn pos_y(&self) -> i32 {
9659 self.pos_y.unwrap_or(0)
9660 }
9661
9662 pub fn clear_pos_y(&mut self) {
9663 self.pos_y = ::std::option::Option::None;
9664 }
9665
9666 pub fn has_pos_y(&self) -> bool {
9667 self.pos_y.is_some()
9668 }
9669
9670 pub fn set_pos_y(&mut self, v: i32) {
9672 self.pos_y = ::std::option::Option::Some(v);
9673 }
9674
9675 pub fn pos_z(&self) -> i32 {
9678 self.pos_z.unwrap_or(0)
9679 }
9680
9681 pub fn clear_pos_z(&mut self) {
9682 self.pos_z = ::std::option::Option::None;
9683 }
9684
9685 pub fn has_pos_z(&self) -> bool {
9686 self.pos_z.is_some()
9687 }
9688
9689 pub fn set_pos_z(&mut self, v: i32) {
9691 self.pos_z = ::std::option::Option::Some(v);
9692 }
9693
9694 pub fn index(&self) -> i32 {
9697 self.index.unwrap_or(0)
9698 }
9699
9700 pub fn clear_index(&mut self) {
9701 self.index = ::std::option::Option::None;
9702 }
9703
9704 pub fn has_index(&self) -> bool {
9705 self.index.is_some()
9706 }
9707
9708 pub fn set_index(&mut self, v: i32) {
9710 self.index = ::std::option::Option::Some(v);
9711 }
9712
9713 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
9714 let mut fields = ::std::vec::Vec::with_capacity(4);
9715 let mut oneofs = ::std::vec::Vec::with_capacity(0);
9716 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9717 "pos_x",
9718 |m: &PlantDef| { &m.pos_x },
9719 |m: &mut PlantDef| { &mut m.pos_x },
9720 ));
9721 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9722 "pos_y",
9723 |m: &PlantDef| { &m.pos_y },
9724 |m: &mut PlantDef| { &mut m.pos_y },
9725 ));
9726 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9727 "pos_z",
9728 |m: &PlantDef| { &m.pos_z },
9729 |m: &mut PlantDef| { &mut m.pos_z },
9730 ));
9731 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
9732 "index",
9733 |m: &PlantDef| { &m.index },
9734 |m: &mut PlantDef| { &mut m.index },
9735 ));
9736 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantDef>(
9737 "PlantDef",
9738 fields,
9739 oneofs,
9740 )
9741 }
9742}
9743
9744impl ::protobuf::Message for PlantDef {
9745 const NAME: &'static str = "PlantDef";
9746
9747 fn is_initialized(&self) -> bool {
9748 if self.pos_x.is_none() {
9749 return false;
9750 }
9751 if self.pos_y.is_none() {
9752 return false;
9753 }
9754 if self.pos_z.is_none() {
9755 return false;
9756 }
9757 if self.index.is_none() {
9758 return false;
9759 }
9760 true
9761 }
9762
9763 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
9764 while let Some(tag) = is.read_raw_tag_or_eof()? {
9765 match tag {
9766 8 => {
9767 self.pos_x = ::std::option::Option::Some(is.read_int32()?);
9768 },
9769 16 => {
9770 self.pos_y = ::std::option::Option::Some(is.read_int32()?);
9771 },
9772 24 => {
9773 self.pos_z = ::std::option::Option::Some(is.read_int32()?);
9774 },
9775 32 => {
9776 self.index = ::std::option::Option::Some(is.read_int32()?);
9777 },
9778 tag => {
9779 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
9780 },
9781 };
9782 }
9783 ::std::result::Result::Ok(())
9784 }
9785
9786 #[allow(unused_variables)]
9788 fn compute_size(&self) -> u64 {
9789 let mut my_size = 0;
9790 if let Some(v) = self.pos_x {
9791 my_size += ::protobuf::rt::int32_size(1, v);
9792 }
9793 if let Some(v) = self.pos_y {
9794 my_size += ::protobuf::rt::int32_size(2, v);
9795 }
9796 if let Some(v) = self.pos_z {
9797 my_size += ::protobuf::rt::int32_size(3, v);
9798 }
9799 if let Some(v) = self.index {
9800 my_size += ::protobuf::rt::int32_size(4, v);
9801 }
9802 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
9803 self.special_fields.cached_size().set(my_size as u32);
9804 my_size
9805 }
9806
9807 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
9808 if let Some(v) = self.pos_x {
9809 os.write_int32(1, v)?;
9810 }
9811 if let Some(v) = self.pos_y {
9812 os.write_int32(2, v)?;
9813 }
9814 if let Some(v) = self.pos_z {
9815 os.write_int32(3, v)?;
9816 }
9817 if let Some(v) = self.index {
9818 os.write_int32(4, v)?;
9819 }
9820 os.write_unknown_fields(self.special_fields.unknown_fields())?;
9821 ::std::result::Result::Ok(())
9822 }
9823
9824 fn special_fields(&self) -> &::protobuf::SpecialFields {
9825 &self.special_fields
9826 }
9827
9828 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
9829 &mut self.special_fields
9830 }
9831
9832 fn new() -> PlantDef {
9833 PlantDef::new()
9834 }
9835
9836 fn clear(&mut self) {
9837 self.pos_x = ::std::option::Option::None;
9838 self.pos_y = ::std::option::Option::None;
9839 self.pos_z = ::std::option::Option::None;
9840 self.index = ::std::option::Option::None;
9841 self.special_fields.clear();
9842 }
9843
9844 fn default_instance() -> &'static PlantDef {
9845 static instance: PlantDef = PlantDef {
9846 pos_x: ::std::option::Option::None,
9847 pos_y: ::std::option::Option::None,
9848 pos_z: ::std::option::Option::None,
9849 index: ::std::option::Option::None,
9850 special_fields: ::protobuf::SpecialFields::new(),
9851 };
9852 &instance
9853 }
9854}
9855
9856impl ::protobuf::MessageFull for PlantDef {
9857 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
9858 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
9859 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantDef").unwrap()).clone()
9860 }
9861}
9862
9863impl ::std::fmt::Display for PlantDef {
9864 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
9865 ::protobuf::text_format::fmt(self, f)
9866 }
9867}
9868
9869impl ::protobuf::reflect::ProtobufValue for PlantDef {
9870 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
9871}
9872
9873#[derive(PartialEq,Clone,Default,Debug)]
9875pub struct PlantList {
9876 pub plant_list: ::std::vec::Vec<PlantDef>,
9879 pub special_fields: ::protobuf::SpecialFields,
9882}
9883
9884impl<'a> ::std::default::Default for &'a PlantList {
9885 fn default() -> &'a PlantList {
9886 <PlantList as ::protobuf::Message>::default_instance()
9887 }
9888}
9889
9890impl PlantList {
9891 pub fn new() -> PlantList {
9892 ::std::default::Default::default()
9893 }
9894
9895 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
9896 let mut fields = ::std::vec::Vec::with_capacity(1);
9897 let mut oneofs = ::std::vec::Vec::with_capacity(0);
9898 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
9899 "plant_list",
9900 |m: &PlantList| { &m.plant_list },
9901 |m: &mut PlantList| { &mut m.plant_list },
9902 ));
9903 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantList>(
9904 "PlantList",
9905 fields,
9906 oneofs,
9907 )
9908 }
9909}
9910
9911impl ::protobuf::Message for PlantList {
9912 const NAME: &'static str = "PlantList";
9913
9914 fn is_initialized(&self) -> bool {
9915 for v in &self.plant_list {
9916 if !v.is_initialized() {
9917 return false;
9918 }
9919 };
9920 true
9921 }
9922
9923 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
9924 while let Some(tag) = is.read_raw_tag_or_eof()? {
9925 match tag {
9926 10 => {
9927 self.plant_list.push(is.read_message()?);
9928 },
9929 tag => {
9930 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
9931 },
9932 };
9933 }
9934 ::std::result::Result::Ok(())
9935 }
9936
9937 #[allow(unused_variables)]
9939 fn compute_size(&self) -> u64 {
9940 let mut my_size = 0;
9941 for value in &self.plant_list {
9942 let len = value.compute_size();
9943 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
9944 };
9945 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
9946 self.special_fields.cached_size().set(my_size as u32);
9947 my_size
9948 }
9949
9950 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
9951 for v in &self.plant_list {
9952 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
9953 };
9954 os.write_unknown_fields(self.special_fields.unknown_fields())?;
9955 ::std::result::Result::Ok(())
9956 }
9957
9958 fn special_fields(&self) -> &::protobuf::SpecialFields {
9959 &self.special_fields
9960 }
9961
9962 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
9963 &mut self.special_fields
9964 }
9965
9966 fn new() -> PlantList {
9967 PlantList::new()
9968 }
9969
9970 fn clear(&mut self) {
9971 self.plant_list.clear();
9972 self.special_fields.clear();
9973 }
9974
9975 fn default_instance() -> &'static PlantList {
9976 static instance: PlantList = PlantList {
9977 plant_list: ::std::vec::Vec::new(),
9978 special_fields: ::protobuf::SpecialFields::new(),
9979 };
9980 &instance
9981 }
9982}
9983
9984impl ::protobuf::MessageFull for PlantList {
9985 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
9986 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
9987 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantList").unwrap()).clone()
9988 }
9989}
9990
9991impl ::std::fmt::Display for PlantList {
9992 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
9993 ::protobuf::text_format::fmt(self, f)
9994 }
9995}
9996
9997impl ::protobuf::reflect::ProtobufValue for PlantList {
9998 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
9999}
10000
10001#[derive(PartialEq,Clone,Default,Debug)]
10003pub struct ViewInfo {
10004 pub view_pos_x: ::std::option::Option<i32>,
10007 pub view_pos_y: ::std::option::Option<i32>,
10009 pub view_pos_z: ::std::option::Option<i32>,
10011 pub view_size_x: ::std::option::Option<i32>,
10013 pub view_size_y: ::std::option::Option<i32>,
10015 pub cursor_pos_x: ::std::option::Option<i32>,
10017 pub cursor_pos_y: ::std::option::Option<i32>,
10019 pub cursor_pos_z: ::std::option::Option<i32>,
10021 pub follow_unit_id: ::std::option::Option<i32>,
10023 pub follow_item_id: ::std::option::Option<i32>,
10025 pub special_fields: ::protobuf::SpecialFields,
10028}
10029
10030impl<'a> ::std::default::Default for &'a ViewInfo {
10031 fn default() -> &'a ViewInfo {
10032 <ViewInfo as ::protobuf::Message>::default_instance()
10033 }
10034}
10035
10036impl ViewInfo {
10037 pub fn new() -> ViewInfo {
10038 ::std::default::Default::default()
10039 }
10040
10041 pub fn view_pos_x(&self) -> i32 {
10044 self.view_pos_x.unwrap_or(0)
10045 }
10046
10047 pub fn clear_view_pos_x(&mut self) {
10048 self.view_pos_x = ::std::option::Option::None;
10049 }
10050
10051 pub fn has_view_pos_x(&self) -> bool {
10052 self.view_pos_x.is_some()
10053 }
10054
10055 pub fn set_view_pos_x(&mut self, v: i32) {
10057 self.view_pos_x = ::std::option::Option::Some(v);
10058 }
10059
10060 pub fn view_pos_y(&self) -> i32 {
10063 self.view_pos_y.unwrap_or(0)
10064 }
10065
10066 pub fn clear_view_pos_y(&mut self) {
10067 self.view_pos_y = ::std::option::Option::None;
10068 }
10069
10070 pub fn has_view_pos_y(&self) -> bool {
10071 self.view_pos_y.is_some()
10072 }
10073
10074 pub fn set_view_pos_y(&mut self, v: i32) {
10076 self.view_pos_y = ::std::option::Option::Some(v);
10077 }
10078
10079 pub fn view_pos_z(&self) -> i32 {
10082 self.view_pos_z.unwrap_or(0)
10083 }
10084
10085 pub fn clear_view_pos_z(&mut self) {
10086 self.view_pos_z = ::std::option::Option::None;
10087 }
10088
10089 pub fn has_view_pos_z(&self) -> bool {
10090 self.view_pos_z.is_some()
10091 }
10092
10093 pub fn set_view_pos_z(&mut self, v: i32) {
10095 self.view_pos_z = ::std::option::Option::Some(v);
10096 }
10097
10098 pub fn view_size_x(&self) -> i32 {
10101 self.view_size_x.unwrap_or(0)
10102 }
10103
10104 pub fn clear_view_size_x(&mut self) {
10105 self.view_size_x = ::std::option::Option::None;
10106 }
10107
10108 pub fn has_view_size_x(&self) -> bool {
10109 self.view_size_x.is_some()
10110 }
10111
10112 pub fn set_view_size_x(&mut self, v: i32) {
10114 self.view_size_x = ::std::option::Option::Some(v);
10115 }
10116
10117 pub fn view_size_y(&self) -> i32 {
10120 self.view_size_y.unwrap_or(0)
10121 }
10122
10123 pub fn clear_view_size_y(&mut self) {
10124 self.view_size_y = ::std::option::Option::None;
10125 }
10126
10127 pub fn has_view_size_y(&self) -> bool {
10128 self.view_size_y.is_some()
10129 }
10130
10131 pub fn set_view_size_y(&mut self, v: i32) {
10133 self.view_size_y = ::std::option::Option::Some(v);
10134 }
10135
10136 pub fn cursor_pos_x(&self) -> i32 {
10139 self.cursor_pos_x.unwrap_or(0)
10140 }
10141
10142 pub fn clear_cursor_pos_x(&mut self) {
10143 self.cursor_pos_x = ::std::option::Option::None;
10144 }
10145
10146 pub fn has_cursor_pos_x(&self) -> bool {
10147 self.cursor_pos_x.is_some()
10148 }
10149
10150 pub fn set_cursor_pos_x(&mut self, v: i32) {
10152 self.cursor_pos_x = ::std::option::Option::Some(v);
10153 }
10154
10155 pub fn cursor_pos_y(&self) -> i32 {
10158 self.cursor_pos_y.unwrap_or(0)
10159 }
10160
10161 pub fn clear_cursor_pos_y(&mut self) {
10162 self.cursor_pos_y = ::std::option::Option::None;
10163 }
10164
10165 pub fn has_cursor_pos_y(&self) -> bool {
10166 self.cursor_pos_y.is_some()
10167 }
10168
10169 pub fn set_cursor_pos_y(&mut self, v: i32) {
10171 self.cursor_pos_y = ::std::option::Option::Some(v);
10172 }
10173
10174 pub fn cursor_pos_z(&self) -> i32 {
10177 self.cursor_pos_z.unwrap_or(0)
10178 }
10179
10180 pub fn clear_cursor_pos_z(&mut self) {
10181 self.cursor_pos_z = ::std::option::Option::None;
10182 }
10183
10184 pub fn has_cursor_pos_z(&self) -> bool {
10185 self.cursor_pos_z.is_some()
10186 }
10187
10188 pub fn set_cursor_pos_z(&mut self, v: i32) {
10190 self.cursor_pos_z = ::std::option::Option::Some(v);
10191 }
10192
10193 pub fn follow_unit_id(&self) -> i32 {
10196 self.follow_unit_id.unwrap_or(-1i32)
10197 }
10198
10199 pub fn clear_follow_unit_id(&mut self) {
10200 self.follow_unit_id = ::std::option::Option::None;
10201 }
10202
10203 pub fn has_follow_unit_id(&self) -> bool {
10204 self.follow_unit_id.is_some()
10205 }
10206
10207 pub fn set_follow_unit_id(&mut self, v: i32) {
10209 self.follow_unit_id = ::std::option::Option::Some(v);
10210 }
10211
10212 pub fn follow_item_id(&self) -> i32 {
10215 self.follow_item_id.unwrap_or(-1i32)
10216 }
10217
10218 pub fn clear_follow_item_id(&mut self) {
10219 self.follow_item_id = ::std::option::Option::None;
10220 }
10221
10222 pub fn has_follow_item_id(&self) -> bool {
10223 self.follow_item_id.is_some()
10224 }
10225
10226 pub fn set_follow_item_id(&mut self, v: i32) {
10228 self.follow_item_id = ::std::option::Option::Some(v);
10229 }
10230
10231 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
10232 let mut fields = ::std::vec::Vec::with_capacity(10);
10233 let mut oneofs = ::std::vec::Vec::with_capacity(0);
10234 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10235 "view_pos_x",
10236 |m: &ViewInfo| { &m.view_pos_x },
10237 |m: &mut ViewInfo| { &mut m.view_pos_x },
10238 ));
10239 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10240 "view_pos_y",
10241 |m: &ViewInfo| { &m.view_pos_y },
10242 |m: &mut ViewInfo| { &mut m.view_pos_y },
10243 ));
10244 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10245 "view_pos_z",
10246 |m: &ViewInfo| { &m.view_pos_z },
10247 |m: &mut ViewInfo| { &mut m.view_pos_z },
10248 ));
10249 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10250 "view_size_x",
10251 |m: &ViewInfo| { &m.view_size_x },
10252 |m: &mut ViewInfo| { &mut m.view_size_x },
10253 ));
10254 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10255 "view_size_y",
10256 |m: &ViewInfo| { &m.view_size_y },
10257 |m: &mut ViewInfo| { &mut m.view_size_y },
10258 ));
10259 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10260 "cursor_pos_x",
10261 |m: &ViewInfo| { &m.cursor_pos_x },
10262 |m: &mut ViewInfo| { &mut m.cursor_pos_x },
10263 ));
10264 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10265 "cursor_pos_y",
10266 |m: &ViewInfo| { &m.cursor_pos_y },
10267 |m: &mut ViewInfo| { &mut m.cursor_pos_y },
10268 ));
10269 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10270 "cursor_pos_z",
10271 |m: &ViewInfo| { &m.cursor_pos_z },
10272 |m: &mut ViewInfo| { &mut m.cursor_pos_z },
10273 ));
10274 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10275 "follow_unit_id",
10276 |m: &ViewInfo| { &m.follow_unit_id },
10277 |m: &mut ViewInfo| { &mut m.follow_unit_id },
10278 ));
10279 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10280 "follow_item_id",
10281 |m: &ViewInfo| { &m.follow_item_id },
10282 |m: &mut ViewInfo| { &mut m.follow_item_id },
10283 ));
10284 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ViewInfo>(
10285 "ViewInfo",
10286 fields,
10287 oneofs,
10288 )
10289 }
10290}
10291
10292impl ::protobuf::Message for ViewInfo {
10293 const NAME: &'static str = "ViewInfo";
10294
10295 fn is_initialized(&self) -> bool {
10296 true
10297 }
10298
10299 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
10300 while let Some(tag) = is.read_raw_tag_or_eof()? {
10301 match tag {
10302 8 => {
10303 self.view_pos_x = ::std::option::Option::Some(is.read_int32()?);
10304 },
10305 16 => {
10306 self.view_pos_y = ::std::option::Option::Some(is.read_int32()?);
10307 },
10308 24 => {
10309 self.view_pos_z = ::std::option::Option::Some(is.read_int32()?);
10310 },
10311 32 => {
10312 self.view_size_x = ::std::option::Option::Some(is.read_int32()?);
10313 },
10314 40 => {
10315 self.view_size_y = ::std::option::Option::Some(is.read_int32()?);
10316 },
10317 48 => {
10318 self.cursor_pos_x = ::std::option::Option::Some(is.read_int32()?);
10319 },
10320 56 => {
10321 self.cursor_pos_y = ::std::option::Option::Some(is.read_int32()?);
10322 },
10323 64 => {
10324 self.cursor_pos_z = ::std::option::Option::Some(is.read_int32()?);
10325 },
10326 72 => {
10327 self.follow_unit_id = ::std::option::Option::Some(is.read_int32()?);
10328 },
10329 80 => {
10330 self.follow_item_id = ::std::option::Option::Some(is.read_int32()?);
10331 },
10332 tag => {
10333 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
10334 },
10335 };
10336 }
10337 ::std::result::Result::Ok(())
10338 }
10339
10340 #[allow(unused_variables)]
10342 fn compute_size(&self) -> u64 {
10343 let mut my_size = 0;
10344 if let Some(v) = self.view_pos_x {
10345 my_size += ::protobuf::rt::int32_size(1, v);
10346 }
10347 if let Some(v) = self.view_pos_y {
10348 my_size += ::protobuf::rt::int32_size(2, v);
10349 }
10350 if let Some(v) = self.view_pos_z {
10351 my_size += ::protobuf::rt::int32_size(3, v);
10352 }
10353 if let Some(v) = self.view_size_x {
10354 my_size += ::protobuf::rt::int32_size(4, v);
10355 }
10356 if let Some(v) = self.view_size_y {
10357 my_size += ::protobuf::rt::int32_size(5, v);
10358 }
10359 if let Some(v) = self.cursor_pos_x {
10360 my_size += ::protobuf::rt::int32_size(6, v);
10361 }
10362 if let Some(v) = self.cursor_pos_y {
10363 my_size += ::protobuf::rt::int32_size(7, v);
10364 }
10365 if let Some(v) = self.cursor_pos_z {
10366 my_size += ::protobuf::rt::int32_size(8, v);
10367 }
10368 if let Some(v) = self.follow_unit_id {
10369 my_size += ::protobuf::rt::int32_size(9, v);
10370 }
10371 if let Some(v) = self.follow_item_id {
10372 my_size += ::protobuf::rt::int32_size(10, v);
10373 }
10374 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
10375 self.special_fields.cached_size().set(my_size as u32);
10376 my_size
10377 }
10378
10379 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
10380 if let Some(v) = self.view_pos_x {
10381 os.write_int32(1, v)?;
10382 }
10383 if let Some(v) = self.view_pos_y {
10384 os.write_int32(2, v)?;
10385 }
10386 if let Some(v) = self.view_pos_z {
10387 os.write_int32(3, v)?;
10388 }
10389 if let Some(v) = self.view_size_x {
10390 os.write_int32(4, v)?;
10391 }
10392 if let Some(v) = self.view_size_y {
10393 os.write_int32(5, v)?;
10394 }
10395 if let Some(v) = self.cursor_pos_x {
10396 os.write_int32(6, v)?;
10397 }
10398 if let Some(v) = self.cursor_pos_y {
10399 os.write_int32(7, v)?;
10400 }
10401 if let Some(v) = self.cursor_pos_z {
10402 os.write_int32(8, v)?;
10403 }
10404 if let Some(v) = self.follow_unit_id {
10405 os.write_int32(9, v)?;
10406 }
10407 if let Some(v) = self.follow_item_id {
10408 os.write_int32(10, v)?;
10409 }
10410 os.write_unknown_fields(self.special_fields.unknown_fields())?;
10411 ::std::result::Result::Ok(())
10412 }
10413
10414 fn special_fields(&self) -> &::protobuf::SpecialFields {
10415 &self.special_fields
10416 }
10417
10418 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
10419 &mut self.special_fields
10420 }
10421
10422 fn new() -> ViewInfo {
10423 ViewInfo::new()
10424 }
10425
10426 fn clear(&mut self) {
10427 self.view_pos_x = ::std::option::Option::None;
10428 self.view_pos_y = ::std::option::Option::None;
10429 self.view_pos_z = ::std::option::Option::None;
10430 self.view_size_x = ::std::option::Option::None;
10431 self.view_size_y = ::std::option::Option::None;
10432 self.cursor_pos_x = ::std::option::Option::None;
10433 self.cursor_pos_y = ::std::option::Option::None;
10434 self.cursor_pos_z = ::std::option::Option::None;
10435 self.follow_unit_id = ::std::option::Option::None;
10436 self.follow_item_id = ::std::option::Option::None;
10437 self.special_fields.clear();
10438 }
10439
10440 fn default_instance() -> &'static ViewInfo {
10441 static instance: ViewInfo = ViewInfo {
10442 view_pos_x: ::std::option::Option::None,
10443 view_pos_y: ::std::option::Option::None,
10444 view_pos_z: ::std::option::Option::None,
10445 view_size_x: ::std::option::Option::None,
10446 view_size_y: ::std::option::Option::None,
10447 cursor_pos_x: ::std::option::Option::None,
10448 cursor_pos_y: ::std::option::Option::None,
10449 cursor_pos_z: ::std::option::Option::None,
10450 follow_unit_id: ::std::option::Option::None,
10451 follow_item_id: ::std::option::Option::None,
10452 special_fields: ::protobuf::SpecialFields::new(),
10453 };
10454 &instance
10455 }
10456}
10457
10458impl ::protobuf::MessageFull for ViewInfo {
10459 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
10460 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
10461 descriptor.get(|| file_descriptor().message_by_package_relative_name("ViewInfo").unwrap()).clone()
10462 }
10463}
10464
10465impl ::std::fmt::Display for ViewInfo {
10466 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
10467 ::protobuf::text_format::fmt(self, f)
10468 }
10469}
10470
10471impl ::protobuf::reflect::ProtobufValue for ViewInfo {
10472 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
10473}
10474
10475#[derive(PartialEq,Clone,Default,Debug)]
10477pub struct MapInfo {
10478 pub block_size_x: ::std::option::Option<i32>,
10481 pub block_size_y: ::std::option::Option<i32>,
10483 pub block_size_z: ::std::option::Option<i32>,
10485 pub block_pos_x: ::std::option::Option<i32>,
10487 pub block_pos_y: ::std::option::Option<i32>,
10489 pub block_pos_z: ::std::option::Option<i32>,
10491 pub world_name: ::std::option::Option<::std::string::String>,
10493 pub world_name_english: ::std::option::Option<::std::string::String>,
10495 pub save_name: ::std::option::Option<::std::string::String>,
10497 pub special_fields: ::protobuf::SpecialFields,
10500}
10501
10502impl<'a> ::std::default::Default for &'a MapInfo {
10503 fn default() -> &'a MapInfo {
10504 <MapInfo as ::protobuf::Message>::default_instance()
10505 }
10506}
10507
10508impl MapInfo {
10509 pub fn new() -> MapInfo {
10510 ::std::default::Default::default()
10511 }
10512
10513 pub fn block_size_x(&self) -> i32 {
10516 self.block_size_x.unwrap_or(0)
10517 }
10518
10519 pub fn clear_block_size_x(&mut self) {
10520 self.block_size_x = ::std::option::Option::None;
10521 }
10522
10523 pub fn has_block_size_x(&self) -> bool {
10524 self.block_size_x.is_some()
10525 }
10526
10527 pub fn set_block_size_x(&mut self, v: i32) {
10529 self.block_size_x = ::std::option::Option::Some(v);
10530 }
10531
10532 pub fn block_size_y(&self) -> i32 {
10535 self.block_size_y.unwrap_or(0)
10536 }
10537
10538 pub fn clear_block_size_y(&mut self) {
10539 self.block_size_y = ::std::option::Option::None;
10540 }
10541
10542 pub fn has_block_size_y(&self) -> bool {
10543 self.block_size_y.is_some()
10544 }
10545
10546 pub fn set_block_size_y(&mut self, v: i32) {
10548 self.block_size_y = ::std::option::Option::Some(v);
10549 }
10550
10551 pub fn block_size_z(&self) -> i32 {
10554 self.block_size_z.unwrap_or(0)
10555 }
10556
10557 pub fn clear_block_size_z(&mut self) {
10558 self.block_size_z = ::std::option::Option::None;
10559 }
10560
10561 pub fn has_block_size_z(&self) -> bool {
10562 self.block_size_z.is_some()
10563 }
10564
10565 pub fn set_block_size_z(&mut self, v: i32) {
10567 self.block_size_z = ::std::option::Option::Some(v);
10568 }
10569
10570 pub fn block_pos_x(&self) -> i32 {
10573 self.block_pos_x.unwrap_or(0)
10574 }
10575
10576 pub fn clear_block_pos_x(&mut self) {
10577 self.block_pos_x = ::std::option::Option::None;
10578 }
10579
10580 pub fn has_block_pos_x(&self) -> bool {
10581 self.block_pos_x.is_some()
10582 }
10583
10584 pub fn set_block_pos_x(&mut self, v: i32) {
10586 self.block_pos_x = ::std::option::Option::Some(v);
10587 }
10588
10589 pub fn block_pos_y(&self) -> i32 {
10592 self.block_pos_y.unwrap_or(0)
10593 }
10594
10595 pub fn clear_block_pos_y(&mut self) {
10596 self.block_pos_y = ::std::option::Option::None;
10597 }
10598
10599 pub fn has_block_pos_y(&self) -> bool {
10600 self.block_pos_y.is_some()
10601 }
10602
10603 pub fn set_block_pos_y(&mut self, v: i32) {
10605 self.block_pos_y = ::std::option::Option::Some(v);
10606 }
10607
10608 pub fn block_pos_z(&self) -> i32 {
10611 self.block_pos_z.unwrap_or(0)
10612 }
10613
10614 pub fn clear_block_pos_z(&mut self) {
10615 self.block_pos_z = ::std::option::Option::None;
10616 }
10617
10618 pub fn has_block_pos_z(&self) -> bool {
10619 self.block_pos_z.is_some()
10620 }
10621
10622 pub fn set_block_pos_z(&mut self, v: i32) {
10624 self.block_pos_z = ::std::option::Option::Some(v);
10625 }
10626
10627 pub fn world_name(&self) -> &str {
10630 match self.world_name.as_ref() {
10631 Some(v) => v,
10632 None => "",
10633 }
10634 }
10635
10636 pub fn clear_world_name(&mut self) {
10637 self.world_name = ::std::option::Option::None;
10638 }
10639
10640 pub fn has_world_name(&self) -> bool {
10641 self.world_name.is_some()
10642 }
10643
10644 pub fn set_world_name(&mut self, v: ::std::string::String) {
10646 self.world_name = ::std::option::Option::Some(v);
10647 }
10648
10649 pub fn mut_world_name(&mut self) -> &mut ::std::string::String {
10652 if self.world_name.is_none() {
10653 self.world_name = ::std::option::Option::Some(::std::string::String::new());
10654 }
10655 self.world_name.as_mut().unwrap()
10656 }
10657
10658 pub fn take_world_name(&mut self) -> ::std::string::String {
10660 self.world_name.take().unwrap_or_else(|| ::std::string::String::new())
10661 }
10662
10663 pub fn world_name_english(&self) -> &str {
10666 match self.world_name_english.as_ref() {
10667 Some(v) => v,
10668 None => "",
10669 }
10670 }
10671
10672 pub fn clear_world_name_english(&mut self) {
10673 self.world_name_english = ::std::option::Option::None;
10674 }
10675
10676 pub fn has_world_name_english(&self) -> bool {
10677 self.world_name_english.is_some()
10678 }
10679
10680 pub fn set_world_name_english(&mut self, v: ::std::string::String) {
10682 self.world_name_english = ::std::option::Option::Some(v);
10683 }
10684
10685 pub fn mut_world_name_english(&mut self) -> &mut ::std::string::String {
10688 if self.world_name_english.is_none() {
10689 self.world_name_english = ::std::option::Option::Some(::std::string::String::new());
10690 }
10691 self.world_name_english.as_mut().unwrap()
10692 }
10693
10694 pub fn take_world_name_english(&mut self) -> ::std::string::String {
10696 self.world_name_english.take().unwrap_or_else(|| ::std::string::String::new())
10697 }
10698
10699 pub fn save_name(&self) -> &str {
10702 match self.save_name.as_ref() {
10703 Some(v) => v,
10704 None => "",
10705 }
10706 }
10707
10708 pub fn clear_save_name(&mut self) {
10709 self.save_name = ::std::option::Option::None;
10710 }
10711
10712 pub fn has_save_name(&self) -> bool {
10713 self.save_name.is_some()
10714 }
10715
10716 pub fn set_save_name(&mut self, v: ::std::string::String) {
10718 self.save_name = ::std::option::Option::Some(v);
10719 }
10720
10721 pub fn mut_save_name(&mut self) -> &mut ::std::string::String {
10724 if self.save_name.is_none() {
10725 self.save_name = ::std::option::Option::Some(::std::string::String::new());
10726 }
10727 self.save_name.as_mut().unwrap()
10728 }
10729
10730 pub fn take_save_name(&mut self) -> ::std::string::String {
10732 self.save_name.take().unwrap_or_else(|| ::std::string::String::new())
10733 }
10734
10735 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
10736 let mut fields = ::std::vec::Vec::with_capacity(9);
10737 let mut oneofs = ::std::vec::Vec::with_capacity(0);
10738 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10739 "block_size_x",
10740 |m: &MapInfo| { &m.block_size_x },
10741 |m: &mut MapInfo| { &mut m.block_size_x },
10742 ));
10743 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10744 "block_size_y",
10745 |m: &MapInfo| { &m.block_size_y },
10746 |m: &mut MapInfo| { &mut m.block_size_y },
10747 ));
10748 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10749 "block_size_z",
10750 |m: &MapInfo| { &m.block_size_z },
10751 |m: &mut MapInfo| { &mut m.block_size_z },
10752 ));
10753 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10754 "block_pos_x",
10755 |m: &MapInfo| { &m.block_pos_x },
10756 |m: &mut MapInfo| { &mut m.block_pos_x },
10757 ));
10758 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10759 "block_pos_y",
10760 |m: &MapInfo| { &m.block_pos_y },
10761 |m: &mut MapInfo| { &mut m.block_pos_y },
10762 ));
10763 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10764 "block_pos_z",
10765 |m: &MapInfo| { &m.block_pos_z },
10766 |m: &mut MapInfo| { &mut m.block_pos_z },
10767 ));
10768 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10769 "world_name",
10770 |m: &MapInfo| { &m.world_name },
10771 |m: &mut MapInfo| { &mut m.world_name },
10772 ));
10773 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10774 "world_name_english",
10775 |m: &MapInfo| { &m.world_name_english },
10776 |m: &mut MapInfo| { &mut m.world_name_english },
10777 ));
10778 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
10779 "save_name",
10780 |m: &MapInfo| { &m.save_name },
10781 |m: &mut MapInfo| { &mut m.save_name },
10782 ));
10783 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<MapInfo>(
10784 "MapInfo",
10785 fields,
10786 oneofs,
10787 )
10788 }
10789}
10790
10791impl ::protobuf::Message for MapInfo {
10792 const NAME: &'static str = "MapInfo";
10793
10794 fn is_initialized(&self) -> bool {
10795 true
10796 }
10797
10798 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
10799 while let Some(tag) = is.read_raw_tag_or_eof()? {
10800 match tag {
10801 8 => {
10802 self.block_size_x = ::std::option::Option::Some(is.read_int32()?);
10803 },
10804 16 => {
10805 self.block_size_y = ::std::option::Option::Some(is.read_int32()?);
10806 },
10807 24 => {
10808 self.block_size_z = ::std::option::Option::Some(is.read_int32()?);
10809 },
10810 32 => {
10811 self.block_pos_x = ::std::option::Option::Some(is.read_int32()?);
10812 },
10813 40 => {
10814 self.block_pos_y = ::std::option::Option::Some(is.read_int32()?);
10815 },
10816 48 => {
10817 self.block_pos_z = ::std::option::Option::Some(is.read_int32()?);
10818 },
10819 58 => {
10820 self.world_name = ::std::option::Option::Some(is.read_string()?);
10821 },
10822 66 => {
10823 self.world_name_english = ::std::option::Option::Some(is.read_string()?);
10824 },
10825 74 => {
10826 self.save_name = ::std::option::Option::Some(is.read_string()?);
10827 },
10828 tag => {
10829 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
10830 },
10831 };
10832 }
10833 ::std::result::Result::Ok(())
10834 }
10835
10836 #[allow(unused_variables)]
10838 fn compute_size(&self) -> u64 {
10839 let mut my_size = 0;
10840 if let Some(v) = self.block_size_x {
10841 my_size += ::protobuf::rt::int32_size(1, v);
10842 }
10843 if let Some(v) = self.block_size_y {
10844 my_size += ::protobuf::rt::int32_size(2, v);
10845 }
10846 if let Some(v) = self.block_size_z {
10847 my_size += ::protobuf::rt::int32_size(3, v);
10848 }
10849 if let Some(v) = self.block_pos_x {
10850 my_size += ::protobuf::rt::int32_size(4, v);
10851 }
10852 if let Some(v) = self.block_pos_y {
10853 my_size += ::protobuf::rt::int32_size(5, v);
10854 }
10855 if let Some(v) = self.block_pos_z {
10856 my_size += ::protobuf::rt::int32_size(6, v);
10857 }
10858 if let Some(v) = self.world_name.as_ref() {
10859 my_size += ::protobuf::rt::string_size(7, &v);
10860 }
10861 if let Some(v) = self.world_name_english.as_ref() {
10862 my_size += ::protobuf::rt::string_size(8, &v);
10863 }
10864 if let Some(v) = self.save_name.as_ref() {
10865 my_size += ::protobuf::rt::string_size(9, &v);
10866 }
10867 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
10868 self.special_fields.cached_size().set(my_size as u32);
10869 my_size
10870 }
10871
10872 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
10873 if let Some(v) = self.block_size_x {
10874 os.write_int32(1, v)?;
10875 }
10876 if let Some(v) = self.block_size_y {
10877 os.write_int32(2, v)?;
10878 }
10879 if let Some(v) = self.block_size_z {
10880 os.write_int32(3, v)?;
10881 }
10882 if let Some(v) = self.block_pos_x {
10883 os.write_int32(4, v)?;
10884 }
10885 if let Some(v) = self.block_pos_y {
10886 os.write_int32(5, v)?;
10887 }
10888 if let Some(v) = self.block_pos_z {
10889 os.write_int32(6, v)?;
10890 }
10891 if let Some(v) = self.world_name.as_ref() {
10892 os.write_string(7, v)?;
10893 }
10894 if let Some(v) = self.world_name_english.as_ref() {
10895 os.write_string(8, v)?;
10896 }
10897 if let Some(v) = self.save_name.as_ref() {
10898 os.write_string(9, v)?;
10899 }
10900 os.write_unknown_fields(self.special_fields.unknown_fields())?;
10901 ::std::result::Result::Ok(())
10902 }
10903
10904 fn special_fields(&self) -> &::protobuf::SpecialFields {
10905 &self.special_fields
10906 }
10907
10908 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
10909 &mut self.special_fields
10910 }
10911
10912 fn new() -> MapInfo {
10913 MapInfo::new()
10914 }
10915
10916 fn clear(&mut self) {
10917 self.block_size_x = ::std::option::Option::None;
10918 self.block_size_y = ::std::option::Option::None;
10919 self.block_size_z = ::std::option::Option::None;
10920 self.block_pos_x = ::std::option::Option::None;
10921 self.block_pos_y = ::std::option::Option::None;
10922 self.block_pos_z = ::std::option::Option::None;
10923 self.world_name = ::std::option::Option::None;
10924 self.world_name_english = ::std::option::Option::None;
10925 self.save_name = ::std::option::Option::None;
10926 self.special_fields.clear();
10927 }
10928
10929 fn default_instance() -> &'static MapInfo {
10930 static instance: MapInfo = MapInfo {
10931 block_size_x: ::std::option::Option::None,
10932 block_size_y: ::std::option::Option::None,
10933 block_size_z: ::std::option::Option::None,
10934 block_pos_x: ::std::option::Option::None,
10935 block_pos_y: ::std::option::Option::None,
10936 block_pos_z: ::std::option::Option::None,
10937 world_name: ::std::option::Option::None,
10938 world_name_english: ::std::option::Option::None,
10939 save_name: ::std::option::Option::None,
10940 special_fields: ::protobuf::SpecialFields::new(),
10941 };
10942 &instance
10943 }
10944}
10945
10946impl ::protobuf::MessageFull for MapInfo {
10947 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
10948 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
10949 descriptor.get(|| file_descriptor().message_by_package_relative_name("MapInfo").unwrap()).clone()
10950 }
10951}
10952
10953impl ::std::fmt::Display for MapInfo {
10954 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
10955 ::protobuf::text_format::fmt(self, f)
10956 }
10957}
10958
10959impl ::protobuf::reflect::ProtobufValue for MapInfo {
10960 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
10961}
10962
10963#[derive(PartialEq,Clone,Default,Debug)]
10965pub struct Cloud {
10966 pub front: ::std::option::Option<::protobuf::EnumOrUnknown<FrontType>>,
10969 pub cumulus: ::std::option::Option<::protobuf::EnumOrUnknown<CumulusType>>,
10971 pub cirrus: ::std::option::Option<bool>,
10973 pub stratus: ::std::option::Option<::protobuf::EnumOrUnknown<StratusType>>,
10975 pub fog: ::std::option::Option<::protobuf::EnumOrUnknown<FogType>>,
10977 pub special_fields: ::protobuf::SpecialFields,
10980}
10981
10982impl<'a> ::std::default::Default for &'a Cloud {
10983 fn default() -> &'a Cloud {
10984 <Cloud as ::protobuf::Message>::default_instance()
10985 }
10986}
10987
10988impl Cloud {
10989 pub fn new() -> Cloud {
10990 ::std::default::Default::default()
10991 }
10992
10993 pub fn front(&self) -> FrontType {
10996 match self.front {
10997 Some(e) => e.enum_value_or(FrontType::FRONT_NONE),
10998 None => FrontType::FRONT_NONE,
10999 }
11000 }
11001
11002 pub fn clear_front(&mut self) {
11003 self.front = ::std::option::Option::None;
11004 }
11005
11006 pub fn has_front(&self) -> bool {
11007 self.front.is_some()
11008 }
11009
11010 pub fn set_front(&mut self, v: FrontType) {
11012 self.front = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
11013 }
11014
11015 pub fn cumulus(&self) -> CumulusType {
11018 match self.cumulus {
11019 Some(e) => e.enum_value_or(CumulusType::CUMULUS_NONE),
11020 None => CumulusType::CUMULUS_NONE,
11021 }
11022 }
11023
11024 pub fn clear_cumulus(&mut self) {
11025 self.cumulus = ::std::option::Option::None;
11026 }
11027
11028 pub fn has_cumulus(&self) -> bool {
11029 self.cumulus.is_some()
11030 }
11031
11032 pub fn set_cumulus(&mut self, v: CumulusType) {
11034 self.cumulus = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
11035 }
11036
11037 pub fn cirrus(&self) -> bool {
11040 self.cirrus.unwrap_or(false)
11041 }
11042
11043 pub fn clear_cirrus(&mut self) {
11044 self.cirrus = ::std::option::Option::None;
11045 }
11046
11047 pub fn has_cirrus(&self) -> bool {
11048 self.cirrus.is_some()
11049 }
11050
11051 pub fn set_cirrus(&mut self, v: bool) {
11053 self.cirrus = ::std::option::Option::Some(v);
11054 }
11055
11056 pub fn stratus(&self) -> StratusType {
11059 match self.stratus {
11060 Some(e) => e.enum_value_or(StratusType::STRATUS_NONE),
11061 None => StratusType::STRATUS_NONE,
11062 }
11063 }
11064
11065 pub fn clear_stratus(&mut self) {
11066 self.stratus = ::std::option::Option::None;
11067 }
11068
11069 pub fn has_stratus(&self) -> bool {
11070 self.stratus.is_some()
11071 }
11072
11073 pub fn set_stratus(&mut self, v: StratusType) {
11075 self.stratus = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
11076 }
11077
11078 pub fn fog(&self) -> FogType {
11081 match self.fog {
11082 Some(e) => e.enum_value_or(FogType::FOG_NONE),
11083 None => FogType::FOG_NONE,
11084 }
11085 }
11086
11087 pub fn clear_fog(&mut self) {
11088 self.fog = ::std::option::Option::None;
11089 }
11090
11091 pub fn has_fog(&self) -> bool {
11092 self.fog.is_some()
11093 }
11094
11095 pub fn set_fog(&mut self, v: FogType) {
11097 self.fog = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
11098 }
11099
11100 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
11101 let mut fields = ::std::vec::Vec::with_capacity(5);
11102 let mut oneofs = ::std::vec::Vec::with_capacity(0);
11103 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11104 "front",
11105 |m: &Cloud| { &m.front },
11106 |m: &mut Cloud| { &mut m.front },
11107 ));
11108 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11109 "cumulus",
11110 |m: &Cloud| { &m.cumulus },
11111 |m: &mut Cloud| { &mut m.cumulus },
11112 ));
11113 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11114 "cirrus",
11115 |m: &Cloud| { &m.cirrus },
11116 |m: &mut Cloud| { &mut m.cirrus },
11117 ));
11118 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11119 "stratus",
11120 |m: &Cloud| { &m.stratus },
11121 |m: &mut Cloud| { &mut m.stratus },
11122 ));
11123 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11124 "fog",
11125 |m: &Cloud| { &m.fog },
11126 |m: &mut Cloud| { &mut m.fog },
11127 ));
11128 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Cloud>(
11129 "Cloud",
11130 fields,
11131 oneofs,
11132 )
11133 }
11134}
11135
11136impl ::protobuf::Message for Cloud {
11137 const NAME: &'static str = "Cloud";
11138
11139 fn is_initialized(&self) -> bool {
11140 true
11141 }
11142
11143 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
11144 while let Some(tag) = is.read_raw_tag_or_eof()? {
11145 match tag {
11146 8 => {
11147 self.front = ::std::option::Option::Some(is.read_enum_or_unknown()?);
11148 },
11149 16 => {
11150 self.cumulus = ::std::option::Option::Some(is.read_enum_or_unknown()?);
11151 },
11152 24 => {
11153 self.cirrus = ::std::option::Option::Some(is.read_bool()?);
11154 },
11155 32 => {
11156 self.stratus = ::std::option::Option::Some(is.read_enum_or_unknown()?);
11157 },
11158 40 => {
11159 self.fog = ::std::option::Option::Some(is.read_enum_or_unknown()?);
11160 },
11161 tag => {
11162 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
11163 },
11164 };
11165 }
11166 ::std::result::Result::Ok(())
11167 }
11168
11169 #[allow(unused_variables)]
11171 fn compute_size(&self) -> u64 {
11172 let mut my_size = 0;
11173 if let Some(v) = self.front {
11174 my_size += ::protobuf::rt::int32_size(1, v.value());
11175 }
11176 if let Some(v) = self.cumulus {
11177 my_size += ::protobuf::rt::int32_size(2, v.value());
11178 }
11179 if let Some(v) = self.cirrus {
11180 my_size += 1 + 1;
11181 }
11182 if let Some(v) = self.stratus {
11183 my_size += ::protobuf::rt::int32_size(4, v.value());
11184 }
11185 if let Some(v) = self.fog {
11186 my_size += ::protobuf::rt::int32_size(5, v.value());
11187 }
11188 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
11189 self.special_fields.cached_size().set(my_size as u32);
11190 my_size
11191 }
11192
11193 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
11194 if let Some(v) = self.front {
11195 os.write_enum(1, ::protobuf::EnumOrUnknown::value(&v))?;
11196 }
11197 if let Some(v) = self.cumulus {
11198 os.write_enum(2, ::protobuf::EnumOrUnknown::value(&v))?;
11199 }
11200 if let Some(v) = self.cirrus {
11201 os.write_bool(3, v)?;
11202 }
11203 if let Some(v) = self.stratus {
11204 os.write_enum(4, ::protobuf::EnumOrUnknown::value(&v))?;
11205 }
11206 if let Some(v) = self.fog {
11207 os.write_enum(5, ::protobuf::EnumOrUnknown::value(&v))?;
11208 }
11209 os.write_unknown_fields(self.special_fields.unknown_fields())?;
11210 ::std::result::Result::Ok(())
11211 }
11212
11213 fn special_fields(&self) -> &::protobuf::SpecialFields {
11214 &self.special_fields
11215 }
11216
11217 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
11218 &mut self.special_fields
11219 }
11220
11221 fn new() -> Cloud {
11222 Cloud::new()
11223 }
11224
11225 fn clear(&mut self) {
11226 self.front = ::std::option::Option::None;
11227 self.cumulus = ::std::option::Option::None;
11228 self.cirrus = ::std::option::Option::None;
11229 self.stratus = ::std::option::Option::None;
11230 self.fog = ::std::option::Option::None;
11231 self.special_fields.clear();
11232 }
11233
11234 fn default_instance() -> &'static Cloud {
11235 static instance: Cloud = Cloud {
11236 front: ::std::option::Option::None,
11237 cumulus: ::std::option::Option::None,
11238 cirrus: ::std::option::Option::None,
11239 stratus: ::std::option::Option::None,
11240 fog: ::std::option::Option::None,
11241 special_fields: ::protobuf::SpecialFields::new(),
11242 };
11243 &instance
11244 }
11245}
11246
11247impl ::protobuf::MessageFull for Cloud {
11248 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
11249 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
11250 descriptor.get(|| file_descriptor().message_by_package_relative_name("Cloud").unwrap()).clone()
11251 }
11252}
11253
11254impl ::std::fmt::Display for Cloud {
11255 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
11256 ::protobuf::text_format::fmt(self, f)
11257 }
11258}
11259
11260impl ::protobuf::reflect::ProtobufValue for Cloud {
11261 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
11262}
11263
11264#[derive(PartialEq,Clone,Default,Debug)]
11266pub struct WorldMap {
11267 pub world_width: ::std::option::Option<i32>,
11270 pub world_height: ::std::option::Option<i32>,
11272 pub name: ::std::option::Option<::std::vec::Vec<u8>>,
11274 pub name_english: ::std::option::Option<::std::string::String>,
11276 pub elevation: ::std::vec::Vec<i32>,
11278 pub rainfall: ::std::vec::Vec<i32>,
11280 pub vegetation: ::std::vec::Vec<i32>,
11282 pub temperature: ::std::vec::Vec<i32>,
11284 pub evilness: ::std::vec::Vec<i32>,
11286 pub drainage: ::std::vec::Vec<i32>,
11288 pub volcanism: ::std::vec::Vec<i32>,
11290 pub savagery: ::std::vec::Vec<i32>,
11292 pub clouds: ::std::vec::Vec<Cloud>,
11294 pub salinity: ::std::vec::Vec<i32>,
11296 pub map_x: ::std::option::Option<i32>,
11298 pub map_y: ::std::option::Option<i32>,
11300 pub center_x: ::std::option::Option<i32>,
11302 pub center_y: ::std::option::Option<i32>,
11304 pub center_z: ::std::option::Option<i32>,
11306 pub cur_year: ::std::option::Option<i32>,
11308 pub cur_year_tick: ::std::option::Option<i32>,
11310 pub world_poles: ::std::option::Option<::protobuf::EnumOrUnknown<WorldPoles>>,
11312 pub river_tiles: ::std::vec::Vec<RiverTile>,
11314 pub water_elevation: ::std::vec::Vec<i32>,
11316 pub region_tiles: ::std::vec::Vec<RegionTile>,
11318 pub special_fields: ::protobuf::SpecialFields,
11321}
11322
11323impl<'a> ::std::default::Default for &'a WorldMap {
11324 fn default() -> &'a WorldMap {
11325 <WorldMap as ::protobuf::Message>::default_instance()
11326 }
11327}
11328
11329impl WorldMap {
11330 pub fn new() -> WorldMap {
11331 ::std::default::Default::default()
11332 }
11333
11334 pub fn world_width(&self) -> i32 {
11337 self.world_width.unwrap_or(0)
11338 }
11339
11340 pub fn clear_world_width(&mut self) {
11341 self.world_width = ::std::option::Option::None;
11342 }
11343
11344 pub fn has_world_width(&self) -> bool {
11345 self.world_width.is_some()
11346 }
11347
11348 pub fn set_world_width(&mut self, v: i32) {
11350 self.world_width = ::std::option::Option::Some(v);
11351 }
11352
11353 pub fn world_height(&self) -> i32 {
11356 self.world_height.unwrap_or(0)
11357 }
11358
11359 pub fn clear_world_height(&mut self) {
11360 self.world_height = ::std::option::Option::None;
11361 }
11362
11363 pub fn has_world_height(&self) -> bool {
11364 self.world_height.is_some()
11365 }
11366
11367 pub fn set_world_height(&mut self, v: i32) {
11369 self.world_height = ::std::option::Option::Some(v);
11370 }
11371
11372 pub fn name(&self) -> &[u8] {
11375 match self.name.as_ref() {
11376 Some(v) => v,
11377 None => &[],
11378 }
11379 }
11380
11381 pub fn clear_name(&mut self) {
11382 self.name = ::std::option::Option::None;
11383 }
11384
11385 pub fn has_name(&self) -> bool {
11386 self.name.is_some()
11387 }
11388
11389 pub fn set_name(&mut self, v: ::std::vec::Vec<u8>) {
11391 self.name = ::std::option::Option::Some(v);
11392 }
11393
11394 pub fn mut_name(&mut self) -> &mut ::std::vec::Vec<u8> {
11397 if self.name.is_none() {
11398 self.name = ::std::option::Option::Some(::std::vec::Vec::new());
11399 }
11400 self.name.as_mut().unwrap()
11401 }
11402
11403 pub fn take_name(&mut self) -> ::std::vec::Vec<u8> {
11405 self.name.take().unwrap_or_else(|| ::std::vec::Vec::new())
11406 }
11407
11408 pub fn name_english(&self) -> &str {
11411 match self.name_english.as_ref() {
11412 Some(v) => v,
11413 None => "",
11414 }
11415 }
11416
11417 pub fn clear_name_english(&mut self) {
11418 self.name_english = ::std::option::Option::None;
11419 }
11420
11421 pub fn has_name_english(&self) -> bool {
11422 self.name_english.is_some()
11423 }
11424
11425 pub fn set_name_english(&mut self, v: ::std::string::String) {
11427 self.name_english = ::std::option::Option::Some(v);
11428 }
11429
11430 pub fn mut_name_english(&mut self) -> &mut ::std::string::String {
11433 if self.name_english.is_none() {
11434 self.name_english = ::std::option::Option::Some(::std::string::String::new());
11435 }
11436 self.name_english.as_mut().unwrap()
11437 }
11438
11439 pub fn take_name_english(&mut self) -> ::std::string::String {
11441 self.name_english.take().unwrap_or_else(|| ::std::string::String::new())
11442 }
11443
11444 pub fn map_x(&self) -> i32 {
11447 self.map_x.unwrap_or(0)
11448 }
11449
11450 pub fn clear_map_x(&mut self) {
11451 self.map_x = ::std::option::Option::None;
11452 }
11453
11454 pub fn has_map_x(&self) -> bool {
11455 self.map_x.is_some()
11456 }
11457
11458 pub fn set_map_x(&mut self, v: i32) {
11460 self.map_x = ::std::option::Option::Some(v);
11461 }
11462
11463 pub fn map_y(&self) -> i32 {
11466 self.map_y.unwrap_or(0)
11467 }
11468
11469 pub fn clear_map_y(&mut self) {
11470 self.map_y = ::std::option::Option::None;
11471 }
11472
11473 pub fn has_map_y(&self) -> bool {
11474 self.map_y.is_some()
11475 }
11476
11477 pub fn set_map_y(&mut self, v: i32) {
11479 self.map_y = ::std::option::Option::Some(v);
11480 }
11481
11482 pub fn center_x(&self) -> i32 {
11485 self.center_x.unwrap_or(0)
11486 }
11487
11488 pub fn clear_center_x(&mut self) {
11489 self.center_x = ::std::option::Option::None;
11490 }
11491
11492 pub fn has_center_x(&self) -> bool {
11493 self.center_x.is_some()
11494 }
11495
11496 pub fn set_center_x(&mut self, v: i32) {
11498 self.center_x = ::std::option::Option::Some(v);
11499 }
11500
11501 pub fn center_y(&self) -> i32 {
11504 self.center_y.unwrap_or(0)
11505 }
11506
11507 pub fn clear_center_y(&mut self) {
11508 self.center_y = ::std::option::Option::None;
11509 }
11510
11511 pub fn has_center_y(&self) -> bool {
11512 self.center_y.is_some()
11513 }
11514
11515 pub fn set_center_y(&mut self, v: i32) {
11517 self.center_y = ::std::option::Option::Some(v);
11518 }
11519
11520 pub fn center_z(&self) -> i32 {
11523 self.center_z.unwrap_or(0)
11524 }
11525
11526 pub fn clear_center_z(&mut self) {
11527 self.center_z = ::std::option::Option::None;
11528 }
11529
11530 pub fn has_center_z(&self) -> bool {
11531 self.center_z.is_some()
11532 }
11533
11534 pub fn set_center_z(&mut self, v: i32) {
11536 self.center_z = ::std::option::Option::Some(v);
11537 }
11538
11539 pub fn cur_year(&self) -> i32 {
11542 self.cur_year.unwrap_or(0)
11543 }
11544
11545 pub fn clear_cur_year(&mut self) {
11546 self.cur_year = ::std::option::Option::None;
11547 }
11548
11549 pub fn has_cur_year(&self) -> bool {
11550 self.cur_year.is_some()
11551 }
11552
11553 pub fn set_cur_year(&mut self, v: i32) {
11555 self.cur_year = ::std::option::Option::Some(v);
11556 }
11557
11558 pub fn cur_year_tick(&self) -> i32 {
11561 self.cur_year_tick.unwrap_or(0)
11562 }
11563
11564 pub fn clear_cur_year_tick(&mut self) {
11565 self.cur_year_tick = ::std::option::Option::None;
11566 }
11567
11568 pub fn has_cur_year_tick(&self) -> bool {
11569 self.cur_year_tick.is_some()
11570 }
11571
11572 pub fn set_cur_year_tick(&mut self, v: i32) {
11574 self.cur_year_tick = ::std::option::Option::Some(v);
11575 }
11576
11577 pub fn world_poles(&self) -> WorldPoles {
11580 match self.world_poles {
11581 Some(e) => e.enum_value_or(WorldPoles::NO_POLES),
11582 None => WorldPoles::NO_POLES,
11583 }
11584 }
11585
11586 pub fn clear_world_poles(&mut self) {
11587 self.world_poles = ::std::option::Option::None;
11588 }
11589
11590 pub fn has_world_poles(&self) -> bool {
11591 self.world_poles.is_some()
11592 }
11593
11594 pub fn set_world_poles(&mut self, v: WorldPoles) {
11596 self.world_poles = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
11597 }
11598
11599 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
11600 let mut fields = ::std::vec::Vec::with_capacity(25);
11601 let mut oneofs = ::std::vec::Vec::with_capacity(0);
11602 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11603 "world_width",
11604 |m: &WorldMap| { &m.world_width },
11605 |m: &mut WorldMap| { &mut m.world_width },
11606 ));
11607 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11608 "world_height",
11609 |m: &WorldMap| { &m.world_height },
11610 |m: &mut WorldMap| { &mut m.world_height },
11611 ));
11612 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11613 "name",
11614 |m: &WorldMap| { &m.name },
11615 |m: &mut WorldMap| { &mut m.name },
11616 ));
11617 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11618 "name_english",
11619 |m: &WorldMap| { &m.name_english },
11620 |m: &mut WorldMap| { &mut m.name_english },
11621 ));
11622 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11623 "elevation",
11624 |m: &WorldMap| { &m.elevation },
11625 |m: &mut WorldMap| { &mut m.elevation },
11626 ));
11627 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11628 "rainfall",
11629 |m: &WorldMap| { &m.rainfall },
11630 |m: &mut WorldMap| { &mut m.rainfall },
11631 ));
11632 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11633 "vegetation",
11634 |m: &WorldMap| { &m.vegetation },
11635 |m: &mut WorldMap| { &mut m.vegetation },
11636 ));
11637 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11638 "temperature",
11639 |m: &WorldMap| { &m.temperature },
11640 |m: &mut WorldMap| { &mut m.temperature },
11641 ));
11642 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11643 "evilness",
11644 |m: &WorldMap| { &m.evilness },
11645 |m: &mut WorldMap| { &mut m.evilness },
11646 ));
11647 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11648 "drainage",
11649 |m: &WorldMap| { &m.drainage },
11650 |m: &mut WorldMap| { &mut m.drainage },
11651 ));
11652 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11653 "volcanism",
11654 |m: &WorldMap| { &m.volcanism },
11655 |m: &mut WorldMap| { &mut m.volcanism },
11656 ));
11657 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11658 "savagery",
11659 |m: &WorldMap| { &m.savagery },
11660 |m: &mut WorldMap| { &mut m.savagery },
11661 ));
11662 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11663 "clouds",
11664 |m: &WorldMap| { &m.clouds },
11665 |m: &mut WorldMap| { &mut m.clouds },
11666 ));
11667 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11668 "salinity",
11669 |m: &WorldMap| { &m.salinity },
11670 |m: &mut WorldMap| { &mut m.salinity },
11671 ));
11672 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11673 "map_x",
11674 |m: &WorldMap| { &m.map_x },
11675 |m: &mut WorldMap| { &mut m.map_x },
11676 ));
11677 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11678 "map_y",
11679 |m: &WorldMap| { &m.map_y },
11680 |m: &mut WorldMap| { &mut m.map_y },
11681 ));
11682 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11683 "center_x",
11684 |m: &WorldMap| { &m.center_x },
11685 |m: &mut WorldMap| { &mut m.center_x },
11686 ));
11687 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11688 "center_y",
11689 |m: &WorldMap| { &m.center_y },
11690 |m: &mut WorldMap| { &mut m.center_y },
11691 ));
11692 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11693 "center_z",
11694 |m: &WorldMap| { &m.center_z },
11695 |m: &mut WorldMap| { &mut m.center_z },
11696 ));
11697 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11698 "cur_year",
11699 |m: &WorldMap| { &m.cur_year },
11700 |m: &mut WorldMap| { &mut m.cur_year },
11701 ));
11702 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11703 "cur_year_tick",
11704 |m: &WorldMap| { &m.cur_year_tick },
11705 |m: &mut WorldMap| { &mut m.cur_year_tick },
11706 ));
11707 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
11708 "world_poles",
11709 |m: &WorldMap| { &m.world_poles },
11710 |m: &mut WorldMap| { &mut m.world_poles },
11711 ));
11712 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11713 "river_tiles",
11714 |m: &WorldMap| { &m.river_tiles },
11715 |m: &mut WorldMap| { &mut m.river_tiles },
11716 ));
11717 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11718 "water_elevation",
11719 |m: &WorldMap| { &m.water_elevation },
11720 |m: &mut WorldMap| { &mut m.water_elevation },
11721 ));
11722 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
11723 "region_tiles",
11724 |m: &WorldMap| { &m.region_tiles },
11725 |m: &mut WorldMap| { &mut m.region_tiles },
11726 ));
11727 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<WorldMap>(
11728 "WorldMap",
11729 fields,
11730 oneofs,
11731 )
11732 }
11733}
11734
11735impl ::protobuf::Message for WorldMap {
11736 const NAME: &'static str = "WorldMap";
11737
11738 fn is_initialized(&self) -> bool {
11739 if self.world_width.is_none() {
11740 return false;
11741 }
11742 if self.world_height.is_none() {
11743 return false;
11744 }
11745 for v in &self.clouds {
11746 if !v.is_initialized() {
11747 return false;
11748 }
11749 };
11750 for v in &self.river_tiles {
11751 if !v.is_initialized() {
11752 return false;
11753 }
11754 };
11755 for v in &self.region_tiles {
11756 if !v.is_initialized() {
11757 return false;
11758 }
11759 };
11760 true
11761 }
11762
11763 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
11764 while let Some(tag) = is.read_raw_tag_or_eof()? {
11765 match tag {
11766 8 => {
11767 self.world_width = ::std::option::Option::Some(is.read_int32()?);
11768 },
11769 16 => {
11770 self.world_height = ::std::option::Option::Some(is.read_int32()?);
11771 },
11772 26 => {
11773 self.name = ::std::option::Option::Some(is.read_bytes()?);
11774 },
11775 34 => {
11776 self.name_english = ::std::option::Option::Some(is.read_string()?);
11777 },
11778 42 => {
11779 is.read_repeated_packed_int32_into(&mut self.elevation)?;
11780 },
11781 40 => {
11782 self.elevation.push(is.read_int32()?);
11783 },
11784 50 => {
11785 is.read_repeated_packed_int32_into(&mut self.rainfall)?;
11786 },
11787 48 => {
11788 self.rainfall.push(is.read_int32()?);
11789 },
11790 58 => {
11791 is.read_repeated_packed_int32_into(&mut self.vegetation)?;
11792 },
11793 56 => {
11794 self.vegetation.push(is.read_int32()?);
11795 },
11796 66 => {
11797 is.read_repeated_packed_int32_into(&mut self.temperature)?;
11798 },
11799 64 => {
11800 self.temperature.push(is.read_int32()?);
11801 },
11802 74 => {
11803 is.read_repeated_packed_int32_into(&mut self.evilness)?;
11804 },
11805 72 => {
11806 self.evilness.push(is.read_int32()?);
11807 },
11808 82 => {
11809 is.read_repeated_packed_int32_into(&mut self.drainage)?;
11810 },
11811 80 => {
11812 self.drainage.push(is.read_int32()?);
11813 },
11814 90 => {
11815 is.read_repeated_packed_int32_into(&mut self.volcanism)?;
11816 },
11817 88 => {
11818 self.volcanism.push(is.read_int32()?);
11819 },
11820 98 => {
11821 is.read_repeated_packed_int32_into(&mut self.savagery)?;
11822 },
11823 96 => {
11824 self.savagery.push(is.read_int32()?);
11825 },
11826 106 => {
11827 self.clouds.push(is.read_message()?);
11828 },
11829 114 => {
11830 is.read_repeated_packed_int32_into(&mut self.salinity)?;
11831 },
11832 112 => {
11833 self.salinity.push(is.read_int32()?);
11834 },
11835 120 => {
11836 self.map_x = ::std::option::Option::Some(is.read_int32()?);
11837 },
11838 128 => {
11839 self.map_y = ::std::option::Option::Some(is.read_int32()?);
11840 },
11841 136 => {
11842 self.center_x = ::std::option::Option::Some(is.read_int32()?);
11843 },
11844 144 => {
11845 self.center_y = ::std::option::Option::Some(is.read_int32()?);
11846 },
11847 152 => {
11848 self.center_z = ::std::option::Option::Some(is.read_int32()?);
11849 },
11850 160 => {
11851 self.cur_year = ::std::option::Option::Some(is.read_int32()?);
11852 },
11853 168 => {
11854 self.cur_year_tick = ::std::option::Option::Some(is.read_int32()?);
11855 },
11856 176 => {
11857 self.world_poles = ::std::option::Option::Some(is.read_enum_or_unknown()?);
11858 },
11859 186 => {
11860 self.river_tiles.push(is.read_message()?);
11861 },
11862 194 => {
11863 is.read_repeated_packed_int32_into(&mut self.water_elevation)?;
11864 },
11865 192 => {
11866 self.water_elevation.push(is.read_int32()?);
11867 },
11868 202 => {
11869 self.region_tiles.push(is.read_message()?);
11870 },
11871 tag => {
11872 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
11873 },
11874 };
11875 }
11876 ::std::result::Result::Ok(())
11877 }
11878
11879 #[allow(unused_variables)]
11881 fn compute_size(&self) -> u64 {
11882 let mut my_size = 0;
11883 if let Some(v) = self.world_width {
11884 my_size += ::protobuf::rt::int32_size(1, v);
11885 }
11886 if let Some(v) = self.world_height {
11887 my_size += ::protobuf::rt::int32_size(2, v);
11888 }
11889 if let Some(v) = self.name.as_ref() {
11890 my_size += ::protobuf::rt::bytes_size(3, &v);
11891 }
11892 if let Some(v) = self.name_english.as_ref() {
11893 my_size += ::protobuf::rt::string_size(4, &v);
11894 }
11895 for value in &self.elevation {
11896 my_size += ::protobuf::rt::int32_size(5, *value);
11897 };
11898 for value in &self.rainfall {
11899 my_size += ::protobuf::rt::int32_size(6, *value);
11900 };
11901 for value in &self.vegetation {
11902 my_size += ::protobuf::rt::int32_size(7, *value);
11903 };
11904 for value in &self.temperature {
11905 my_size += ::protobuf::rt::int32_size(8, *value);
11906 };
11907 for value in &self.evilness {
11908 my_size += ::protobuf::rt::int32_size(9, *value);
11909 };
11910 for value in &self.drainage {
11911 my_size += ::protobuf::rt::int32_size(10, *value);
11912 };
11913 for value in &self.volcanism {
11914 my_size += ::protobuf::rt::int32_size(11, *value);
11915 };
11916 for value in &self.savagery {
11917 my_size += ::protobuf::rt::int32_size(12, *value);
11918 };
11919 for value in &self.clouds {
11920 let len = value.compute_size();
11921 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
11922 };
11923 for value in &self.salinity {
11924 my_size += ::protobuf::rt::int32_size(14, *value);
11925 };
11926 if let Some(v) = self.map_x {
11927 my_size += ::protobuf::rt::int32_size(15, v);
11928 }
11929 if let Some(v) = self.map_y {
11930 my_size += ::protobuf::rt::int32_size(16, v);
11931 }
11932 if let Some(v) = self.center_x {
11933 my_size += ::protobuf::rt::int32_size(17, v);
11934 }
11935 if let Some(v) = self.center_y {
11936 my_size += ::protobuf::rt::int32_size(18, v);
11937 }
11938 if let Some(v) = self.center_z {
11939 my_size += ::protobuf::rt::int32_size(19, v);
11940 }
11941 if let Some(v) = self.cur_year {
11942 my_size += ::protobuf::rt::int32_size(20, v);
11943 }
11944 if let Some(v) = self.cur_year_tick {
11945 my_size += ::protobuf::rt::int32_size(21, v);
11946 }
11947 if let Some(v) = self.world_poles {
11948 my_size += ::protobuf::rt::int32_size(22, v.value());
11949 }
11950 for value in &self.river_tiles {
11951 let len = value.compute_size();
11952 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
11953 };
11954 for value in &self.water_elevation {
11955 my_size += ::protobuf::rt::int32_size(24, *value);
11956 };
11957 for value in &self.region_tiles {
11958 let len = value.compute_size();
11959 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
11960 };
11961 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
11962 self.special_fields.cached_size().set(my_size as u32);
11963 my_size
11964 }
11965
11966 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
11967 if let Some(v) = self.world_width {
11968 os.write_int32(1, v)?;
11969 }
11970 if let Some(v) = self.world_height {
11971 os.write_int32(2, v)?;
11972 }
11973 if let Some(v) = self.name.as_ref() {
11974 os.write_bytes(3, v)?;
11975 }
11976 if let Some(v) = self.name_english.as_ref() {
11977 os.write_string(4, v)?;
11978 }
11979 for v in &self.elevation {
11980 os.write_int32(5, *v)?;
11981 };
11982 for v in &self.rainfall {
11983 os.write_int32(6, *v)?;
11984 };
11985 for v in &self.vegetation {
11986 os.write_int32(7, *v)?;
11987 };
11988 for v in &self.temperature {
11989 os.write_int32(8, *v)?;
11990 };
11991 for v in &self.evilness {
11992 os.write_int32(9, *v)?;
11993 };
11994 for v in &self.drainage {
11995 os.write_int32(10, *v)?;
11996 };
11997 for v in &self.volcanism {
11998 os.write_int32(11, *v)?;
11999 };
12000 for v in &self.savagery {
12001 os.write_int32(12, *v)?;
12002 };
12003 for v in &self.clouds {
12004 ::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
12005 };
12006 for v in &self.salinity {
12007 os.write_int32(14, *v)?;
12008 };
12009 if let Some(v) = self.map_x {
12010 os.write_int32(15, v)?;
12011 }
12012 if let Some(v) = self.map_y {
12013 os.write_int32(16, v)?;
12014 }
12015 if let Some(v) = self.center_x {
12016 os.write_int32(17, v)?;
12017 }
12018 if let Some(v) = self.center_y {
12019 os.write_int32(18, v)?;
12020 }
12021 if let Some(v) = self.center_z {
12022 os.write_int32(19, v)?;
12023 }
12024 if let Some(v) = self.cur_year {
12025 os.write_int32(20, v)?;
12026 }
12027 if let Some(v) = self.cur_year_tick {
12028 os.write_int32(21, v)?;
12029 }
12030 if let Some(v) = self.world_poles {
12031 os.write_enum(22, ::protobuf::EnumOrUnknown::value(&v))?;
12032 }
12033 for v in &self.river_tiles {
12034 ::protobuf::rt::write_message_field_with_cached_size(23, v, os)?;
12035 };
12036 for v in &self.water_elevation {
12037 os.write_int32(24, *v)?;
12038 };
12039 for v in &self.region_tiles {
12040 ::protobuf::rt::write_message_field_with_cached_size(25, v, os)?;
12041 };
12042 os.write_unknown_fields(self.special_fields.unknown_fields())?;
12043 ::std::result::Result::Ok(())
12044 }
12045
12046 fn special_fields(&self) -> &::protobuf::SpecialFields {
12047 &self.special_fields
12048 }
12049
12050 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
12051 &mut self.special_fields
12052 }
12053
12054 fn new() -> WorldMap {
12055 WorldMap::new()
12056 }
12057
12058 fn clear(&mut self) {
12059 self.world_width = ::std::option::Option::None;
12060 self.world_height = ::std::option::Option::None;
12061 self.name = ::std::option::Option::None;
12062 self.name_english = ::std::option::Option::None;
12063 self.elevation.clear();
12064 self.rainfall.clear();
12065 self.vegetation.clear();
12066 self.temperature.clear();
12067 self.evilness.clear();
12068 self.drainage.clear();
12069 self.volcanism.clear();
12070 self.savagery.clear();
12071 self.clouds.clear();
12072 self.salinity.clear();
12073 self.map_x = ::std::option::Option::None;
12074 self.map_y = ::std::option::Option::None;
12075 self.center_x = ::std::option::Option::None;
12076 self.center_y = ::std::option::Option::None;
12077 self.center_z = ::std::option::Option::None;
12078 self.cur_year = ::std::option::Option::None;
12079 self.cur_year_tick = ::std::option::Option::None;
12080 self.world_poles = ::std::option::Option::None;
12081 self.river_tiles.clear();
12082 self.water_elevation.clear();
12083 self.region_tiles.clear();
12084 self.special_fields.clear();
12085 }
12086
12087 fn default_instance() -> &'static WorldMap {
12088 static instance: WorldMap = WorldMap {
12089 world_width: ::std::option::Option::None,
12090 world_height: ::std::option::Option::None,
12091 name: ::std::option::Option::None,
12092 name_english: ::std::option::Option::None,
12093 elevation: ::std::vec::Vec::new(),
12094 rainfall: ::std::vec::Vec::new(),
12095 vegetation: ::std::vec::Vec::new(),
12096 temperature: ::std::vec::Vec::new(),
12097 evilness: ::std::vec::Vec::new(),
12098 drainage: ::std::vec::Vec::new(),
12099 volcanism: ::std::vec::Vec::new(),
12100 savagery: ::std::vec::Vec::new(),
12101 clouds: ::std::vec::Vec::new(),
12102 salinity: ::std::vec::Vec::new(),
12103 map_x: ::std::option::Option::None,
12104 map_y: ::std::option::Option::None,
12105 center_x: ::std::option::Option::None,
12106 center_y: ::std::option::Option::None,
12107 center_z: ::std::option::Option::None,
12108 cur_year: ::std::option::Option::None,
12109 cur_year_tick: ::std::option::Option::None,
12110 world_poles: ::std::option::Option::None,
12111 river_tiles: ::std::vec::Vec::new(),
12112 water_elevation: ::std::vec::Vec::new(),
12113 region_tiles: ::std::vec::Vec::new(),
12114 special_fields: ::protobuf::SpecialFields::new(),
12115 };
12116 &instance
12117 }
12118}
12119
12120impl ::protobuf::MessageFull for WorldMap {
12121 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
12122 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
12123 descriptor.get(|| file_descriptor().message_by_package_relative_name("WorldMap").unwrap()).clone()
12124 }
12125}
12126
12127impl ::std::fmt::Display for WorldMap {
12128 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
12129 ::protobuf::text_format::fmt(self, f)
12130 }
12131}
12132
12133impl ::protobuf::reflect::ProtobufValue for WorldMap {
12134 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
12135}
12136
12137#[derive(PartialEq,Clone,Default,Debug)]
12139pub struct SiteRealizationBuildingWall {
12140 pub start_x: ::std::option::Option<i32>,
12143 pub start_y: ::std::option::Option<i32>,
12145 pub start_z: ::std::option::Option<i32>,
12147 pub end_x: ::std::option::Option<i32>,
12149 pub end_y: ::std::option::Option<i32>,
12151 pub end_z: ::std::option::Option<i32>,
12153 pub special_fields: ::protobuf::SpecialFields,
12156}
12157
12158impl<'a> ::std::default::Default for &'a SiteRealizationBuildingWall {
12159 fn default() -> &'a SiteRealizationBuildingWall {
12160 <SiteRealizationBuildingWall as ::protobuf::Message>::default_instance()
12161 }
12162}
12163
12164impl SiteRealizationBuildingWall {
12165 pub fn new() -> SiteRealizationBuildingWall {
12166 ::std::default::Default::default()
12167 }
12168
12169 pub fn start_x(&self) -> i32 {
12172 self.start_x.unwrap_or(0)
12173 }
12174
12175 pub fn clear_start_x(&mut self) {
12176 self.start_x = ::std::option::Option::None;
12177 }
12178
12179 pub fn has_start_x(&self) -> bool {
12180 self.start_x.is_some()
12181 }
12182
12183 pub fn set_start_x(&mut self, v: i32) {
12185 self.start_x = ::std::option::Option::Some(v);
12186 }
12187
12188 pub fn start_y(&self) -> i32 {
12191 self.start_y.unwrap_or(0)
12192 }
12193
12194 pub fn clear_start_y(&mut self) {
12195 self.start_y = ::std::option::Option::None;
12196 }
12197
12198 pub fn has_start_y(&self) -> bool {
12199 self.start_y.is_some()
12200 }
12201
12202 pub fn set_start_y(&mut self, v: i32) {
12204 self.start_y = ::std::option::Option::Some(v);
12205 }
12206
12207 pub fn start_z(&self) -> i32 {
12210 self.start_z.unwrap_or(0)
12211 }
12212
12213 pub fn clear_start_z(&mut self) {
12214 self.start_z = ::std::option::Option::None;
12215 }
12216
12217 pub fn has_start_z(&self) -> bool {
12218 self.start_z.is_some()
12219 }
12220
12221 pub fn set_start_z(&mut self, v: i32) {
12223 self.start_z = ::std::option::Option::Some(v);
12224 }
12225
12226 pub fn end_x(&self) -> i32 {
12229 self.end_x.unwrap_or(0)
12230 }
12231
12232 pub fn clear_end_x(&mut self) {
12233 self.end_x = ::std::option::Option::None;
12234 }
12235
12236 pub fn has_end_x(&self) -> bool {
12237 self.end_x.is_some()
12238 }
12239
12240 pub fn set_end_x(&mut self, v: i32) {
12242 self.end_x = ::std::option::Option::Some(v);
12243 }
12244
12245 pub fn end_y(&self) -> i32 {
12248 self.end_y.unwrap_or(0)
12249 }
12250
12251 pub fn clear_end_y(&mut self) {
12252 self.end_y = ::std::option::Option::None;
12253 }
12254
12255 pub fn has_end_y(&self) -> bool {
12256 self.end_y.is_some()
12257 }
12258
12259 pub fn set_end_y(&mut self, v: i32) {
12261 self.end_y = ::std::option::Option::Some(v);
12262 }
12263
12264 pub fn end_z(&self) -> i32 {
12267 self.end_z.unwrap_or(0)
12268 }
12269
12270 pub fn clear_end_z(&mut self) {
12271 self.end_z = ::std::option::Option::None;
12272 }
12273
12274 pub fn has_end_z(&self) -> bool {
12275 self.end_z.is_some()
12276 }
12277
12278 pub fn set_end_z(&mut self, v: i32) {
12280 self.end_z = ::std::option::Option::Some(v);
12281 }
12282
12283 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
12284 let mut fields = ::std::vec::Vec::with_capacity(6);
12285 let mut oneofs = ::std::vec::Vec::with_capacity(0);
12286 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12287 "start_x",
12288 |m: &SiteRealizationBuildingWall| { &m.start_x },
12289 |m: &mut SiteRealizationBuildingWall| { &mut m.start_x },
12290 ));
12291 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12292 "start_y",
12293 |m: &SiteRealizationBuildingWall| { &m.start_y },
12294 |m: &mut SiteRealizationBuildingWall| { &mut m.start_y },
12295 ));
12296 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12297 "start_z",
12298 |m: &SiteRealizationBuildingWall| { &m.start_z },
12299 |m: &mut SiteRealizationBuildingWall| { &mut m.start_z },
12300 ));
12301 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12302 "end_x",
12303 |m: &SiteRealizationBuildingWall| { &m.end_x },
12304 |m: &mut SiteRealizationBuildingWall| { &mut m.end_x },
12305 ));
12306 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12307 "end_y",
12308 |m: &SiteRealizationBuildingWall| { &m.end_y },
12309 |m: &mut SiteRealizationBuildingWall| { &mut m.end_y },
12310 ));
12311 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12312 "end_z",
12313 |m: &SiteRealizationBuildingWall| { &m.end_z },
12314 |m: &mut SiteRealizationBuildingWall| { &mut m.end_z },
12315 ));
12316 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SiteRealizationBuildingWall>(
12317 "SiteRealizationBuildingWall",
12318 fields,
12319 oneofs,
12320 )
12321 }
12322}
12323
12324impl ::protobuf::Message for SiteRealizationBuildingWall {
12325 const NAME: &'static str = "SiteRealizationBuildingWall";
12326
12327 fn is_initialized(&self) -> bool {
12328 true
12329 }
12330
12331 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
12332 while let Some(tag) = is.read_raw_tag_or_eof()? {
12333 match tag {
12334 8 => {
12335 self.start_x = ::std::option::Option::Some(is.read_int32()?);
12336 },
12337 16 => {
12338 self.start_y = ::std::option::Option::Some(is.read_int32()?);
12339 },
12340 24 => {
12341 self.start_z = ::std::option::Option::Some(is.read_int32()?);
12342 },
12343 32 => {
12344 self.end_x = ::std::option::Option::Some(is.read_int32()?);
12345 },
12346 40 => {
12347 self.end_y = ::std::option::Option::Some(is.read_int32()?);
12348 },
12349 48 => {
12350 self.end_z = ::std::option::Option::Some(is.read_int32()?);
12351 },
12352 tag => {
12353 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
12354 },
12355 };
12356 }
12357 ::std::result::Result::Ok(())
12358 }
12359
12360 #[allow(unused_variables)]
12362 fn compute_size(&self) -> u64 {
12363 let mut my_size = 0;
12364 if let Some(v) = self.start_x {
12365 my_size += ::protobuf::rt::int32_size(1, v);
12366 }
12367 if let Some(v) = self.start_y {
12368 my_size += ::protobuf::rt::int32_size(2, v);
12369 }
12370 if let Some(v) = self.start_z {
12371 my_size += ::protobuf::rt::int32_size(3, v);
12372 }
12373 if let Some(v) = self.end_x {
12374 my_size += ::protobuf::rt::int32_size(4, v);
12375 }
12376 if let Some(v) = self.end_y {
12377 my_size += ::protobuf::rt::int32_size(5, v);
12378 }
12379 if let Some(v) = self.end_z {
12380 my_size += ::protobuf::rt::int32_size(6, v);
12381 }
12382 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
12383 self.special_fields.cached_size().set(my_size as u32);
12384 my_size
12385 }
12386
12387 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
12388 if let Some(v) = self.start_x {
12389 os.write_int32(1, v)?;
12390 }
12391 if let Some(v) = self.start_y {
12392 os.write_int32(2, v)?;
12393 }
12394 if let Some(v) = self.start_z {
12395 os.write_int32(3, v)?;
12396 }
12397 if let Some(v) = self.end_x {
12398 os.write_int32(4, v)?;
12399 }
12400 if let Some(v) = self.end_y {
12401 os.write_int32(5, v)?;
12402 }
12403 if let Some(v) = self.end_z {
12404 os.write_int32(6, v)?;
12405 }
12406 os.write_unknown_fields(self.special_fields.unknown_fields())?;
12407 ::std::result::Result::Ok(())
12408 }
12409
12410 fn special_fields(&self) -> &::protobuf::SpecialFields {
12411 &self.special_fields
12412 }
12413
12414 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
12415 &mut self.special_fields
12416 }
12417
12418 fn new() -> SiteRealizationBuildingWall {
12419 SiteRealizationBuildingWall::new()
12420 }
12421
12422 fn clear(&mut self) {
12423 self.start_x = ::std::option::Option::None;
12424 self.start_y = ::std::option::Option::None;
12425 self.start_z = ::std::option::Option::None;
12426 self.end_x = ::std::option::Option::None;
12427 self.end_y = ::std::option::Option::None;
12428 self.end_z = ::std::option::Option::None;
12429 self.special_fields.clear();
12430 }
12431
12432 fn default_instance() -> &'static SiteRealizationBuildingWall {
12433 static instance: SiteRealizationBuildingWall = SiteRealizationBuildingWall {
12434 start_x: ::std::option::Option::None,
12435 start_y: ::std::option::Option::None,
12436 start_z: ::std::option::Option::None,
12437 end_x: ::std::option::Option::None,
12438 end_y: ::std::option::Option::None,
12439 end_z: ::std::option::Option::None,
12440 special_fields: ::protobuf::SpecialFields::new(),
12441 };
12442 &instance
12443 }
12444}
12445
12446impl ::protobuf::MessageFull for SiteRealizationBuildingWall {
12447 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
12448 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
12449 descriptor.get(|| file_descriptor().message_by_package_relative_name("SiteRealizationBuildingWall").unwrap()).clone()
12450 }
12451}
12452
12453impl ::std::fmt::Display for SiteRealizationBuildingWall {
12454 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
12455 ::protobuf::text_format::fmt(self, f)
12456 }
12457}
12458
12459impl ::protobuf::reflect::ProtobufValue for SiteRealizationBuildingWall {
12460 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
12461}
12462
12463#[derive(PartialEq,Clone,Default,Debug)]
12465pub struct SiteRealizationBuildingTower {
12466 pub roof_z: ::std::option::Option<i32>,
12469 pub round: ::std::option::Option<bool>,
12471 pub goblin: ::std::option::Option<bool>,
12473 pub special_fields: ::protobuf::SpecialFields,
12476}
12477
12478impl<'a> ::std::default::Default for &'a SiteRealizationBuildingTower {
12479 fn default() -> &'a SiteRealizationBuildingTower {
12480 <SiteRealizationBuildingTower as ::protobuf::Message>::default_instance()
12481 }
12482}
12483
12484impl SiteRealizationBuildingTower {
12485 pub fn new() -> SiteRealizationBuildingTower {
12486 ::std::default::Default::default()
12487 }
12488
12489 pub fn roof_z(&self) -> i32 {
12492 self.roof_z.unwrap_or(0)
12493 }
12494
12495 pub fn clear_roof_z(&mut self) {
12496 self.roof_z = ::std::option::Option::None;
12497 }
12498
12499 pub fn has_roof_z(&self) -> bool {
12500 self.roof_z.is_some()
12501 }
12502
12503 pub fn set_roof_z(&mut self, v: i32) {
12505 self.roof_z = ::std::option::Option::Some(v);
12506 }
12507
12508 pub fn round(&self) -> bool {
12511 self.round.unwrap_or(false)
12512 }
12513
12514 pub fn clear_round(&mut self) {
12515 self.round = ::std::option::Option::None;
12516 }
12517
12518 pub fn has_round(&self) -> bool {
12519 self.round.is_some()
12520 }
12521
12522 pub fn set_round(&mut self, v: bool) {
12524 self.round = ::std::option::Option::Some(v);
12525 }
12526
12527 pub fn goblin(&self) -> bool {
12530 self.goblin.unwrap_or(false)
12531 }
12532
12533 pub fn clear_goblin(&mut self) {
12534 self.goblin = ::std::option::Option::None;
12535 }
12536
12537 pub fn has_goblin(&self) -> bool {
12538 self.goblin.is_some()
12539 }
12540
12541 pub fn set_goblin(&mut self, v: bool) {
12543 self.goblin = ::std::option::Option::Some(v);
12544 }
12545
12546 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
12547 let mut fields = ::std::vec::Vec::with_capacity(3);
12548 let mut oneofs = ::std::vec::Vec::with_capacity(0);
12549 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12550 "roof_z",
12551 |m: &SiteRealizationBuildingTower| { &m.roof_z },
12552 |m: &mut SiteRealizationBuildingTower| { &mut m.roof_z },
12553 ));
12554 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12555 "round",
12556 |m: &SiteRealizationBuildingTower| { &m.round },
12557 |m: &mut SiteRealizationBuildingTower| { &mut m.round },
12558 ));
12559 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12560 "goblin",
12561 |m: &SiteRealizationBuildingTower| { &m.goblin },
12562 |m: &mut SiteRealizationBuildingTower| { &mut m.goblin },
12563 ));
12564 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SiteRealizationBuildingTower>(
12565 "SiteRealizationBuildingTower",
12566 fields,
12567 oneofs,
12568 )
12569 }
12570}
12571
12572impl ::protobuf::Message for SiteRealizationBuildingTower {
12573 const NAME: &'static str = "SiteRealizationBuildingTower";
12574
12575 fn is_initialized(&self) -> bool {
12576 true
12577 }
12578
12579 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
12580 while let Some(tag) = is.read_raw_tag_or_eof()? {
12581 match tag {
12582 8 => {
12583 self.roof_z = ::std::option::Option::Some(is.read_int32()?);
12584 },
12585 16 => {
12586 self.round = ::std::option::Option::Some(is.read_bool()?);
12587 },
12588 24 => {
12589 self.goblin = ::std::option::Option::Some(is.read_bool()?);
12590 },
12591 tag => {
12592 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
12593 },
12594 };
12595 }
12596 ::std::result::Result::Ok(())
12597 }
12598
12599 #[allow(unused_variables)]
12601 fn compute_size(&self) -> u64 {
12602 let mut my_size = 0;
12603 if let Some(v) = self.roof_z {
12604 my_size += ::protobuf::rt::int32_size(1, v);
12605 }
12606 if let Some(v) = self.round {
12607 my_size += 1 + 1;
12608 }
12609 if let Some(v) = self.goblin {
12610 my_size += 1 + 1;
12611 }
12612 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
12613 self.special_fields.cached_size().set(my_size as u32);
12614 my_size
12615 }
12616
12617 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
12618 if let Some(v) = self.roof_z {
12619 os.write_int32(1, v)?;
12620 }
12621 if let Some(v) = self.round {
12622 os.write_bool(2, v)?;
12623 }
12624 if let Some(v) = self.goblin {
12625 os.write_bool(3, v)?;
12626 }
12627 os.write_unknown_fields(self.special_fields.unknown_fields())?;
12628 ::std::result::Result::Ok(())
12629 }
12630
12631 fn special_fields(&self) -> &::protobuf::SpecialFields {
12632 &self.special_fields
12633 }
12634
12635 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
12636 &mut self.special_fields
12637 }
12638
12639 fn new() -> SiteRealizationBuildingTower {
12640 SiteRealizationBuildingTower::new()
12641 }
12642
12643 fn clear(&mut self) {
12644 self.roof_z = ::std::option::Option::None;
12645 self.round = ::std::option::Option::None;
12646 self.goblin = ::std::option::Option::None;
12647 self.special_fields.clear();
12648 }
12649
12650 fn default_instance() -> &'static SiteRealizationBuildingTower {
12651 static instance: SiteRealizationBuildingTower = SiteRealizationBuildingTower {
12652 roof_z: ::std::option::Option::None,
12653 round: ::std::option::Option::None,
12654 goblin: ::std::option::Option::None,
12655 special_fields: ::protobuf::SpecialFields::new(),
12656 };
12657 &instance
12658 }
12659}
12660
12661impl ::protobuf::MessageFull for SiteRealizationBuildingTower {
12662 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
12663 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
12664 descriptor.get(|| file_descriptor().message_by_package_relative_name("SiteRealizationBuildingTower").unwrap()).clone()
12665 }
12666}
12667
12668impl ::std::fmt::Display for SiteRealizationBuildingTower {
12669 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
12670 ::protobuf::text_format::fmt(self, f)
12671 }
12672}
12673
12674impl ::protobuf::reflect::ProtobufValue for SiteRealizationBuildingTower {
12675 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
12676}
12677
12678#[derive(PartialEq,Clone,Default,Debug)]
12680pub struct TrenchSpoke {
12681 pub mound_start: ::std::option::Option<i32>,
12684 pub trench_start: ::std::option::Option<i32>,
12686 pub trench_end: ::std::option::Option<i32>,
12688 pub mound_end: ::std::option::Option<i32>,
12690 pub special_fields: ::protobuf::SpecialFields,
12693}
12694
12695impl<'a> ::std::default::Default for &'a TrenchSpoke {
12696 fn default() -> &'a TrenchSpoke {
12697 <TrenchSpoke as ::protobuf::Message>::default_instance()
12698 }
12699}
12700
12701impl TrenchSpoke {
12702 pub fn new() -> TrenchSpoke {
12703 ::std::default::Default::default()
12704 }
12705
12706 pub fn mound_start(&self) -> i32 {
12709 self.mound_start.unwrap_or(0)
12710 }
12711
12712 pub fn clear_mound_start(&mut self) {
12713 self.mound_start = ::std::option::Option::None;
12714 }
12715
12716 pub fn has_mound_start(&self) -> bool {
12717 self.mound_start.is_some()
12718 }
12719
12720 pub fn set_mound_start(&mut self, v: i32) {
12722 self.mound_start = ::std::option::Option::Some(v);
12723 }
12724
12725 pub fn trench_start(&self) -> i32 {
12728 self.trench_start.unwrap_or(0)
12729 }
12730
12731 pub fn clear_trench_start(&mut self) {
12732 self.trench_start = ::std::option::Option::None;
12733 }
12734
12735 pub fn has_trench_start(&self) -> bool {
12736 self.trench_start.is_some()
12737 }
12738
12739 pub fn set_trench_start(&mut self, v: i32) {
12741 self.trench_start = ::std::option::Option::Some(v);
12742 }
12743
12744 pub fn trench_end(&self) -> i32 {
12747 self.trench_end.unwrap_or(0)
12748 }
12749
12750 pub fn clear_trench_end(&mut self) {
12751 self.trench_end = ::std::option::Option::None;
12752 }
12753
12754 pub fn has_trench_end(&self) -> bool {
12755 self.trench_end.is_some()
12756 }
12757
12758 pub fn set_trench_end(&mut self, v: i32) {
12760 self.trench_end = ::std::option::Option::Some(v);
12761 }
12762
12763 pub fn mound_end(&self) -> i32 {
12766 self.mound_end.unwrap_or(0)
12767 }
12768
12769 pub fn clear_mound_end(&mut self) {
12770 self.mound_end = ::std::option::Option::None;
12771 }
12772
12773 pub fn has_mound_end(&self) -> bool {
12774 self.mound_end.is_some()
12775 }
12776
12777 pub fn set_mound_end(&mut self, v: i32) {
12779 self.mound_end = ::std::option::Option::Some(v);
12780 }
12781
12782 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
12783 let mut fields = ::std::vec::Vec::with_capacity(4);
12784 let mut oneofs = ::std::vec::Vec::with_capacity(0);
12785 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12786 "mound_start",
12787 |m: &TrenchSpoke| { &m.mound_start },
12788 |m: &mut TrenchSpoke| { &mut m.mound_start },
12789 ));
12790 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12791 "trench_start",
12792 |m: &TrenchSpoke| { &m.trench_start },
12793 |m: &mut TrenchSpoke| { &mut m.trench_start },
12794 ));
12795 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12796 "trench_end",
12797 |m: &TrenchSpoke| { &m.trench_end },
12798 |m: &mut TrenchSpoke| { &mut m.trench_end },
12799 ));
12800 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
12801 "mound_end",
12802 |m: &TrenchSpoke| { &m.mound_end },
12803 |m: &mut TrenchSpoke| { &mut m.mound_end },
12804 ));
12805 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TrenchSpoke>(
12806 "TrenchSpoke",
12807 fields,
12808 oneofs,
12809 )
12810 }
12811}
12812
12813impl ::protobuf::Message for TrenchSpoke {
12814 const NAME: &'static str = "TrenchSpoke";
12815
12816 fn is_initialized(&self) -> bool {
12817 true
12818 }
12819
12820 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
12821 while let Some(tag) = is.read_raw_tag_or_eof()? {
12822 match tag {
12823 8 => {
12824 self.mound_start = ::std::option::Option::Some(is.read_int32()?);
12825 },
12826 16 => {
12827 self.trench_start = ::std::option::Option::Some(is.read_int32()?);
12828 },
12829 24 => {
12830 self.trench_end = ::std::option::Option::Some(is.read_int32()?);
12831 },
12832 32 => {
12833 self.mound_end = ::std::option::Option::Some(is.read_int32()?);
12834 },
12835 tag => {
12836 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
12837 },
12838 };
12839 }
12840 ::std::result::Result::Ok(())
12841 }
12842
12843 #[allow(unused_variables)]
12845 fn compute_size(&self) -> u64 {
12846 let mut my_size = 0;
12847 if let Some(v) = self.mound_start {
12848 my_size += ::protobuf::rt::int32_size(1, v);
12849 }
12850 if let Some(v) = self.trench_start {
12851 my_size += ::protobuf::rt::int32_size(2, v);
12852 }
12853 if let Some(v) = self.trench_end {
12854 my_size += ::protobuf::rt::int32_size(3, v);
12855 }
12856 if let Some(v) = self.mound_end {
12857 my_size += ::protobuf::rt::int32_size(4, v);
12858 }
12859 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
12860 self.special_fields.cached_size().set(my_size as u32);
12861 my_size
12862 }
12863
12864 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
12865 if let Some(v) = self.mound_start {
12866 os.write_int32(1, v)?;
12867 }
12868 if let Some(v) = self.trench_start {
12869 os.write_int32(2, v)?;
12870 }
12871 if let Some(v) = self.trench_end {
12872 os.write_int32(3, v)?;
12873 }
12874 if let Some(v) = self.mound_end {
12875 os.write_int32(4, v)?;
12876 }
12877 os.write_unknown_fields(self.special_fields.unknown_fields())?;
12878 ::std::result::Result::Ok(())
12879 }
12880
12881 fn special_fields(&self) -> &::protobuf::SpecialFields {
12882 &self.special_fields
12883 }
12884
12885 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
12886 &mut self.special_fields
12887 }
12888
12889 fn new() -> TrenchSpoke {
12890 TrenchSpoke::new()
12891 }
12892
12893 fn clear(&mut self) {
12894 self.mound_start = ::std::option::Option::None;
12895 self.trench_start = ::std::option::Option::None;
12896 self.trench_end = ::std::option::Option::None;
12897 self.mound_end = ::std::option::Option::None;
12898 self.special_fields.clear();
12899 }
12900
12901 fn default_instance() -> &'static TrenchSpoke {
12902 static instance: TrenchSpoke = TrenchSpoke {
12903 mound_start: ::std::option::Option::None,
12904 trench_start: ::std::option::Option::None,
12905 trench_end: ::std::option::Option::None,
12906 mound_end: ::std::option::Option::None,
12907 special_fields: ::protobuf::SpecialFields::new(),
12908 };
12909 &instance
12910 }
12911}
12912
12913impl ::protobuf::MessageFull for TrenchSpoke {
12914 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
12915 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
12916 descriptor.get(|| file_descriptor().message_by_package_relative_name("TrenchSpoke").unwrap()).clone()
12917 }
12918}
12919
12920impl ::std::fmt::Display for TrenchSpoke {
12921 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
12922 ::protobuf::text_format::fmt(self, f)
12923 }
12924}
12925
12926impl ::protobuf::reflect::ProtobufValue for TrenchSpoke {
12927 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
12928}
12929
12930#[derive(PartialEq,Clone,Default,Debug)]
12932pub struct SiteRealizationBuildingTrenches {
12933 pub spokes: ::std::vec::Vec<TrenchSpoke>,
12936 pub special_fields: ::protobuf::SpecialFields,
12939}
12940
12941impl<'a> ::std::default::Default for &'a SiteRealizationBuildingTrenches {
12942 fn default() -> &'a SiteRealizationBuildingTrenches {
12943 <SiteRealizationBuildingTrenches as ::protobuf::Message>::default_instance()
12944 }
12945}
12946
12947impl SiteRealizationBuildingTrenches {
12948 pub fn new() -> SiteRealizationBuildingTrenches {
12949 ::std::default::Default::default()
12950 }
12951
12952 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
12953 let mut fields = ::std::vec::Vec::with_capacity(1);
12954 let mut oneofs = ::std::vec::Vec::with_capacity(0);
12955 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
12956 "spokes",
12957 |m: &SiteRealizationBuildingTrenches| { &m.spokes },
12958 |m: &mut SiteRealizationBuildingTrenches| { &mut m.spokes },
12959 ));
12960 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SiteRealizationBuildingTrenches>(
12961 "SiteRealizationBuildingTrenches",
12962 fields,
12963 oneofs,
12964 )
12965 }
12966}
12967
12968impl ::protobuf::Message for SiteRealizationBuildingTrenches {
12969 const NAME: &'static str = "SiteRealizationBuildingTrenches";
12970
12971 fn is_initialized(&self) -> bool {
12972 true
12973 }
12974
12975 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
12976 while let Some(tag) = is.read_raw_tag_or_eof()? {
12977 match tag {
12978 10 => {
12979 self.spokes.push(is.read_message()?);
12980 },
12981 tag => {
12982 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
12983 },
12984 };
12985 }
12986 ::std::result::Result::Ok(())
12987 }
12988
12989 #[allow(unused_variables)]
12991 fn compute_size(&self) -> u64 {
12992 let mut my_size = 0;
12993 for value in &self.spokes {
12994 let len = value.compute_size();
12995 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
12996 };
12997 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
12998 self.special_fields.cached_size().set(my_size as u32);
12999 my_size
13000 }
13001
13002 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
13003 for v in &self.spokes {
13004 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
13005 };
13006 os.write_unknown_fields(self.special_fields.unknown_fields())?;
13007 ::std::result::Result::Ok(())
13008 }
13009
13010 fn special_fields(&self) -> &::protobuf::SpecialFields {
13011 &self.special_fields
13012 }
13013
13014 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
13015 &mut self.special_fields
13016 }
13017
13018 fn new() -> SiteRealizationBuildingTrenches {
13019 SiteRealizationBuildingTrenches::new()
13020 }
13021
13022 fn clear(&mut self) {
13023 self.spokes.clear();
13024 self.special_fields.clear();
13025 }
13026
13027 fn default_instance() -> &'static SiteRealizationBuildingTrenches {
13028 static instance: SiteRealizationBuildingTrenches = SiteRealizationBuildingTrenches {
13029 spokes: ::std::vec::Vec::new(),
13030 special_fields: ::protobuf::SpecialFields::new(),
13031 };
13032 &instance
13033 }
13034}
13035
13036impl ::protobuf::MessageFull for SiteRealizationBuildingTrenches {
13037 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
13038 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
13039 descriptor.get(|| file_descriptor().message_by_package_relative_name("SiteRealizationBuildingTrenches").unwrap()).clone()
13040 }
13041}
13042
13043impl ::std::fmt::Display for SiteRealizationBuildingTrenches {
13044 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13045 ::protobuf::text_format::fmt(self, f)
13046 }
13047}
13048
13049impl ::protobuf::reflect::ProtobufValue for SiteRealizationBuildingTrenches {
13050 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
13051}
13052
13053#[derive(PartialEq,Clone,Default,Debug)]
13055pub struct SiteRealizationBuilding {
13056 pub id: ::std::option::Option<i32>,
13059 pub min_x: ::std::option::Option<i32>,
13061 pub min_y: ::std::option::Option<i32>,
13063 pub max_x: ::std::option::Option<i32>,
13065 pub max_y: ::std::option::Option<i32>,
13067 pub material: ::protobuf::MessageField<MatPair>,
13069 pub wall_info: ::protobuf::MessageField<SiteRealizationBuildingWall>,
13071 pub tower_info: ::protobuf::MessageField<SiteRealizationBuildingTower>,
13073 pub trench_info: ::protobuf::MessageField<SiteRealizationBuildingTrenches>,
13075 pub type_: ::std::option::Option<i32>,
13077 pub special_fields: ::protobuf::SpecialFields,
13080}
13081
13082impl<'a> ::std::default::Default for &'a SiteRealizationBuilding {
13083 fn default() -> &'a SiteRealizationBuilding {
13084 <SiteRealizationBuilding as ::protobuf::Message>::default_instance()
13085 }
13086}
13087
13088impl SiteRealizationBuilding {
13089 pub fn new() -> SiteRealizationBuilding {
13090 ::std::default::Default::default()
13091 }
13092
13093 pub fn id(&self) -> i32 {
13096 self.id.unwrap_or(0)
13097 }
13098
13099 pub fn clear_id(&mut self) {
13100 self.id = ::std::option::Option::None;
13101 }
13102
13103 pub fn has_id(&self) -> bool {
13104 self.id.is_some()
13105 }
13106
13107 pub fn set_id(&mut self, v: i32) {
13109 self.id = ::std::option::Option::Some(v);
13110 }
13111
13112 pub fn min_x(&self) -> i32 {
13115 self.min_x.unwrap_or(0)
13116 }
13117
13118 pub fn clear_min_x(&mut self) {
13119 self.min_x = ::std::option::Option::None;
13120 }
13121
13122 pub fn has_min_x(&self) -> bool {
13123 self.min_x.is_some()
13124 }
13125
13126 pub fn set_min_x(&mut self, v: i32) {
13128 self.min_x = ::std::option::Option::Some(v);
13129 }
13130
13131 pub fn min_y(&self) -> i32 {
13134 self.min_y.unwrap_or(0)
13135 }
13136
13137 pub fn clear_min_y(&mut self) {
13138 self.min_y = ::std::option::Option::None;
13139 }
13140
13141 pub fn has_min_y(&self) -> bool {
13142 self.min_y.is_some()
13143 }
13144
13145 pub fn set_min_y(&mut self, v: i32) {
13147 self.min_y = ::std::option::Option::Some(v);
13148 }
13149
13150 pub fn max_x(&self) -> i32 {
13153 self.max_x.unwrap_or(0)
13154 }
13155
13156 pub fn clear_max_x(&mut self) {
13157 self.max_x = ::std::option::Option::None;
13158 }
13159
13160 pub fn has_max_x(&self) -> bool {
13161 self.max_x.is_some()
13162 }
13163
13164 pub fn set_max_x(&mut self, v: i32) {
13166 self.max_x = ::std::option::Option::Some(v);
13167 }
13168
13169 pub fn max_y(&self) -> i32 {
13172 self.max_y.unwrap_or(0)
13173 }
13174
13175 pub fn clear_max_y(&mut self) {
13176 self.max_y = ::std::option::Option::None;
13177 }
13178
13179 pub fn has_max_y(&self) -> bool {
13180 self.max_y.is_some()
13181 }
13182
13183 pub fn set_max_y(&mut self, v: i32) {
13185 self.max_y = ::std::option::Option::Some(v);
13186 }
13187
13188 pub fn type_(&self) -> i32 {
13191 self.type_.unwrap_or(0)
13192 }
13193
13194 pub fn clear_type_(&mut self) {
13195 self.type_ = ::std::option::Option::None;
13196 }
13197
13198 pub fn has_type(&self) -> bool {
13199 self.type_.is_some()
13200 }
13201
13202 pub fn set_type(&mut self, v: i32) {
13204 self.type_ = ::std::option::Option::Some(v);
13205 }
13206
13207 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
13208 let mut fields = ::std::vec::Vec::with_capacity(10);
13209 let mut oneofs = ::std::vec::Vec::with_capacity(0);
13210 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13211 "id",
13212 |m: &SiteRealizationBuilding| { &m.id },
13213 |m: &mut SiteRealizationBuilding| { &mut m.id },
13214 ));
13215 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13216 "min_x",
13217 |m: &SiteRealizationBuilding| { &m.min_x },
13218 |m: &mut SiteRealizationBuilding| { &mut m.min_x },
13219 ));
13220 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13221 "min_y",
13222 |m: &SiteRealizationBuilding| { &m.min_y },
13223 |m: &mut SiteRealizationBuilding| { &mut m.min_y },
13224 ));
13225 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13226 "max_x",
13227 |m: &SiteRealizationBuilding| { &m.max_x },
13228 |m: &mut SiteRealizationBuilding| { &mut m.max_x },
13229 ));
13230 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13231 "max_y",
13232 |m: &SiteRealizationBuilding| { &m.max_y },
13233 |m: &mut SiteRealizationBuilding| { &mut m.max_y },
13234 ));
13235 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
13236 "material",
13237 |m: &SiteRealizationBuilding| { &m.material },
13238 |m: &mut SiteRealizationBuilding| { &mut m.material },
13239 ));
13240 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, SiteRealizationBuildingWall>(
13241 "wall_info",
13242 |m: &SiteRealizationBuilding| { &m.wall_info },
13243 |m: &mut SiteRealizationBuilding| { &mut m.wall_info },
13244 ));
13245 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, SiteRealizationBuildingTower>(
13246 "tower_info",
13247 |m: &SiteRealizationBuilding| { &m.tower_info },
13248 |m: &mut SiteRealizationBuilding| { &mut m.tower_info },
13249 ));
13250 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, SiteRealizationBuildingTrenches>(
13251 "trench_info",
13252 |m: &SiteRealizationBuilding| { &m.trench_info },
13253 |m: &mut SiteRealizationBuilding| { &mut m.trench_info },
13254 ));
13255 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13256 "type",
13257 |m: &SiteRealizationBuilding| { &m.type_ },
13258 |m: &mut SiteRealizationBuilding| { &mut m.type_ },
13259 ));
13260 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SiteRealizationBuilding>(
13261 "SiteRealizationBuilding",
13262 fields,
13263 oneofs,
13264 )
13265 }
13266}
13267
13268impl ::protobuf::Message for SiteRealizationBuilding {
13269 const NAME: &'static str = "SiteRealizationBuilding";
13270
13271 fn is_initialized(&self) -> bool {
13272 for v in &self.material {
13273 if !v.is_initialized() {
13274 return false;
13275 }
13276 };
13277 for v in &self.wall_info {
13278 if !v.is_initialized() {
13279 return false;
13280 }
13281 };
13282 for v in &self.tower_info {
13283 if !v.is_initialized() {
13284 return false;
13285 }
13286 };
13287 for v in &self.trench_info {
13288 if !v.is_initialized() {
13289 return false;
13290 }
13291 };
13292 true
13293 }
13294
13295 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
13296 while let Some(tag) = is.read_raw_tag_or_eof()? {
13297 match tag {
13298 8 => {
13299 self.id = ::std::option::Option::Some(is.read_int32()?);
13300 },
13301 24 => {
13302 self.min_x = ::std::option::Option::Some(is.read_int32()?);
13303 },
13304 32 => {
13305 self.min_y = ::std::option::Option::Some(is.read_int32()?);
13306 },
13307 40 => {
13308 self.max_x = ::std::option::Option::Some(is.read_int32()?);
13309 },
13310 48 => {
13311 self.max_y = ::std::option::Option::Some(is.read_int32()?);
13312 },
13313 58 => {
13314 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
13315 },
13316 66 => {
13317 ::protobuf::rt::read_singular_message_into_field(is, &mut self.wall_info)?;
13318 },
13319 74 => {
13320 ::protobuf::rt::read_singular_message_into_field(is, &mut self.tower_info)?;
13321 },
13322 82 => {
13323 ::protobuf::rt::read_singular_message_into_field(is, &mut self.trench_info)?;
13324 },
13325 88 => {
13326 self.type_ = ::std::option::Option::Some(is.read_int32()?);
13327 },
13328 tag => {
13329 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
13330 },
13331 };
13332 }
13333 ::std::result::Result::Ok(())
13334 }
13335
13336 #[allow(unused_variables)]
13338 fn compute_size(&self) -> u64 {
13339 let mut my_size = 0;
13340 if let Some(v) = self.id {
13341 my_size += ::protobuf::rt::int32_size(1, v);
13342 }
13343 if let Some(v) = self.min_x {
13344 my_size += ::protobuf::rt::int32_size(3, v);
13345 }
13346 if let Some(v) = self.min_y {
13347 my_size += ::protobuf::rt::int32_size(4, v);
13348 }
13349 if let Some(v) = self.max_x {
13350 my_size += ::protobuf::rt::int32_size(5, v);
13351 }
13352 if let Some(v) = self.max_y {
13353 my_size += ::protobuf::rt::int32_size(6, v);
13354 }
13355 if let Some(v) = self.material.as_ref() {
13356 let len = v.compute_size();
13357 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13358 }
13359 if let Some(v) = self.wall_info.as_ref() {
13360 let len = v.compute_size();
13361 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13362 }
13363 if let Some(v) = self.tower_info.as_ref() {
13364 let len = v.compute_size();
13365 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13366 }
13367 if let Some(v) = self.trench_info.as_ref() {
13368 let len = v.compute_size();
13369 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13370 }
13371 if let Some(v) = self.type_ {
13372 my_size += ::protobuf::rt::int32_size(11, v);
13373 }
13374 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
13375 self.special_fields.cached_size().set(my_size as u32);
13376 my_size
13377 }
13378
13379 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
13380 if let Some(v) = self.id {
13381 os.write_int32(1, v)?;
13382 }
13383 if let Some(v) = self.min_x {
13384 os.write_int32(3, v)?;
13385 }
13386 if let Some(v) = self.min_y {
13387 os.write_int32(4, v)?;
13388 }
13389 if let Some(v) = self.max_x {
13390 os.write_int32(5, v)?;
13391 }
13392 if let Some(v) = self.max_y {
13393 os.write_int32(6, v)?;
13394 }
13395 if let Some(v) = self.material.as_ref() {
13396 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
13397 }
13398 if let Some(v) = self.wall_info.as_ref() {
13399 ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
13400 }
13401 if let Some(v) = self.tower_info.as_ref() {
13402 ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
13403 }
13404 if let Some(v) = self.trench_info.as_ref() {
13405 ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
13406 }
13407 if let Some(v) = self.type_ {
13408 os.write_int32(11, v)?;
13409 }
13410 os.write_unknown_fields(self.special_fields.unknown_fields())?;
13411 ::std::result::Result::Ok(())
13412 }
13413
13414 fn special_fields(&self) -> &::protobuf::SpecialFields {
13415 &self.special_fields
13416 }
13417
13418 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
13419 &mut self.special_fields
13420 }
13421
13422 fn new() -> SiteRealizationBuilding {
13423 SiteRealizationBuilding::new()
13424 }
13425
13426 fn clear(&mut self) {
13427 self.id = ::std::option::Option::None;
13428 self.min_x = ::std::option::Option::None;
13429 self.min_y = ::std::option::Option::None;
13430 self.max_x = ::std::option::Option::None;
13431 self.max_y = ::std::option::Option::None;
13432 self.material.clear();
13433 self.wall_info.clear();
13434 self.tower_info.clear();
13435 self.trench_info.clear();
13436 self.type_ = ::std::option::Option::None;
13437 self.special_fields.clear();
13438 }
13439
13440 fn default_instance() -> &'static SiteRealizationBuilding {
13441 static instance: SiteRealizationBuilding = SiteRealizationBuilding {
13442 id: ::std::option::Option::None,
13443 min_x: ::std::option::Option::None,
13444 min_y: ::std::option::Option::None,
13445 max_x: ::std::option::Option::None,
13446 max_y: ::std::option::Option::None,
13447 material: ::protobuf::MessageField::none(),
13448 wall_info: ::protobuf::MessageField::none(),
13449 tower_info: ::protobuf::MessageField::none(),
13450 trench_info: ::protobuf::MessageField::none(),
13451 type_: ::std::option::Option::None,
13452 special_fields: ::protobuf::SpecialFields::new(),
13453 };
13454 &instance
13455 }
13456}
13457
13458impl ::protobuf::MessageFull for SiteRealizationBuilding {
13459 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
13460 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
13461 descriptor.get(|| file_descriptor().message_by_package_relative_name("SiteRealizationBuilding").unwrap()).clone()
13462 }
13463}
13464
13465impl ::std::fmt::Display for SiteRealizationBuilding {
13466 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13467 ::protobuf::text_format::fmt(self, f)
13468 }
13469}
13470
13471impl ::protobuf::reflect::ProtobufValue for SiteRealizationBuilding {
13472 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
13473}
13474
13475#[derive(PartialEq,Clone,Default,Debug)]
13477pub struct RegionTile {
13478 pub elevation: ::std::option::Option<i32>,
13481 pub rainfall: ::std::option::Option<i32>,
13483 pub vegetation: ::std::option::Option<i32>,
13485 pub temperature: ::std::option::Option<i32>,
13487 pub evilness: ::std::option::Option<i32>,
13489 pub drainage: ::std::option::Option<i32>,
13491 pub volcanism: ::std::option::Option<i32>,
13493 pub savagery: ::std::option::Option<i32>,
13495 pub salinity: ::std::option::Option<i32>,
13497 pub river_tiles: ::protobuf::MessageField<RiverTile>,
13499 pub water_elevation: ::std::option::Option<i32>,
13501 pub surface_material: ::protobuf::MessageField<MatPair>,
13503 pub plant_materials: ::std::vec::Vec<MatPair>,
13505 pub buildings: ::std::vec::Vec<SiteRealizationBuilding>,
13507 pub stone_materials: ::std::vec::Vec<MatPair>,
13509 pub tree_materials: ::std::vec::Vec<MatPair>,
13511 pub snow: ::std::option::Option<i32>,
13513 pub special_fields: ::protobuf::SpecialFields,
13516}
13517
13518impl<'a> ::std::default::Default for &'a RegionTile {
13519 fn default() -> &'a RegionTile {
13520 <RegionTile as ::protobuf::Message>::default_instance()
13521 }
13522}
13523
13524impl RegionTile {
13525 pub fn new() -> RegionTile {
13526 ::std::default::Default::default()
13527 }
13528
13529 pub fn elevation(&self) -> i32 {
13532 self.elevation.unwrap_or(0)
13533 }
13534
13535 pub fn clear_elevation(&mut self) {
13536 self.elevation = ::std::option::Option::None;
13537 }
13538
13539 pub fn has_elevation(&self) -> bool {
13540 self.elevation.is_some()
13541 }
13542
13543 pub fn set_elevation(&mut self, v: i32) {
13545 self.elevation = ::std::option::Option::Some(v);
13546 }
13547
13548 pub fn rainfall(&self) -> i32 {
13551 self.rainfall.unwrap_or(0)
13552 }
13553
13554 pub fn clear_rainfall(&mut self) {
13555 self.rainfall = ::std::option::Option::None;
13556 }
13557
13558 pub fn has_rainfall(&self) -> bool {
13559 self.rainfall.is_some()
13560 }
13561
13562 pub fn set_rainfall(&mut self, v: i32) {
13564 self.rainfall = ::std::option::Option::Some(v);
13565 }
13566
13567 pub fn vegetation(&self) -> i32 {
13570 self.vegetation.unwrap_or(0)
13571 }
13572
13573 pub fn clear_vegetation(&mut self) {
13574 self.vegetation = ::std::option::Option::None;
13575 }
13576
13577 pub fn has_vegetation(&self) -> bool {
13578 self.vegetation.is_some()
13579 }
13580
13581 pub fn set_vegetation(&mut self, v: i32) {
13583 self.vegetation = ::std::option::Option::Some(v);
13584 }
13585
13586 pub fn temperature(&self) -> i32 {
13589 self.temperature.unwrap_or(0)
13590 }
13591
13592 pub fn clear_temperature(&mut self) {
13593 self.temperature = ::std::option::Option::None;
13594 }
13595
13596 pub fn has_temperature(&self) -> bool {
13597 self.temperature.is_some()
13598 }
13599
13600 pub fn set_temperature(&mut self, v: i32) {
13602 self.temperature = ::std::option::Option::Some(v);
13603 }
13604
13605 pub fn evilness(&self) -> i32 {
13608 self.evilness.unwrap_or(0)
13609 }
13610
13611 pub fn clear_evilness(&mut self) {
13612 self.evilness = ::std::option::Option::None;
13613 }
13614
13615 pub fn has_evilness(&self) -> bool {
13616 self.evilness.is_some()
13617 }
13618
13619 pub fn set_evilness(&mut self, v: i32) {
13621 self.evilness = ::std::option::Option::Some(v);
13622 }
13623
13624 pub fn drainage(&self) -> i32 {
13627 self.drainage.unwrap_or(0)
13628 }
13629
13630 pub fn clear_drainage(&mut self) {
13631 self.drainage = ::std::option::Option::None;
13632 }
13633
13634 pub fn has_drainage(&self) -> bool {
13635 self.drainage.is_some()
13636 }
13637
13638 pub fn set_drainage(&mut self, v: i32) {
13640 self.drainage = ::std::option::Option::Some(v);
13641 }
13642
13643 pub fn volcanism(&self) -> i32 {
13646 self.volcanism.unwrap_or(0)
13647 }
13648
13649 pub fn clear_volcanism(&mut self) {
13650 self.volcanism = ::std::option::Option::None;
13651 }
13652
13653 pub fn has_volcanism(&self) -> bool {
13654 self.volcanism.is_some()
13655 }
13656
13657 pub fn set_volcanism(&mut self, v: i32) {
13659 self.volcanism = ::std::option::Option::Some(v);
13660 }
13661
13662 pub fn savagery(&self) -> i32 {
13665 self.savagery.unwrap_or(0)
13666 }
13667
13668 pub fn clear_savagery(&mut self) {
13669 self.savagery = ::std::option::Option::None;
13670 }
13671
13672 pub fn has_savagery(&self) -> bool {
13673 self.savagery.is_some()
13674 }
13675
13676 pub fn set_savagery(&mut self, v: i32) {
13678 self.savagery = ::std::option::Option::Some(v);
13679 }
13680
13681 pub fn salinity(&self) -> i32 {
13684 self.salinity.unwrap_or(0)
13685 }
13686
13687 pub fn clear_salinity(&mut self) {
13688 self.salinity = ::std::option::Option::None;
13689 }
13690
13691 pub fn has_salinity(&self) -> bool {
13692 self.salinity.is_some()
13693 }
13694
13695 pub fn set_salinity(&mut self, v: i32) {
13697 self.salinity = ::std::option::Option::Some(v);
13698 }
13699
13700 pub fn water_elevation(&self) -> i32 {
13703 self.water_elevation.unwrap_or(0)
13704 }
13705
13706 pub fn clear_water_elevation(&mut self) {
13707 self.water_elevation = ::std::option::Option::None;
13708 }
13709
13710 pub fn has_water_elevation(&self) -> bool {
13711 self.water_elevation.is_some()
13712 }
13713
13714 pub fn set_water_elevation(&mut self, v: i32) {
13716 self.water_elevation = ::std::option::Option::Some(v);
13717 }
13718
13719 pub fn snow(&self) -> i32 {
13722 self.snow.unwrap_or(0)
13723 }
13724
13725 pub fn clear_snow(&mut self) {
13726 self.snow = ::std::option::Option::None;
13727 }
13728
13729 pub fn has_snow(&self) -> bool {
13730 self.snow.is_some()
13731 }
13732
13733 pub fn set_snow(&mut self, v: i32) {
13735 self.snow = ::std::option::Option::Some(v);
13736 }
13737
13738 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
13739 let mut fields = ::std::vec::Vec::with_capacity(17);
13740 let mut oneofs = ::std::vec::Vec::with_capacity(0);
13741 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13742 "elevation",
13743 |m: &RegionTile| { &m.elevation },
13744 |m: &mut RegionTile| { &mut m.elevation },
13745 ));
13746 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13747 "rainfall",
13748 |m: &RegionTile| { &m.rainfall },
13749 |m: &mut RegionTile| { &mut m.rainfall },
13750 ));
13751 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13752 "vegetation",
13753 |m: &RegionTile| { &m.vegetation },
13754 |m: &mut RegionTile| { &mut m.vegetation },
13755 ));
13756 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13757 "temperature",
13758 |m: &RegionTile| { &m.temperature },
13759 |m: &mut RegionTile| { &mut m.temperature },
13760 ));
13761 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13762 "evilness",
13763 |m: &RegionTile| { &m.evilness },
13764 |m: &mut RegionTile| { &mut m.evilness },
13765 ));
13766 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13767 "drainage",
13768 |m: &RegionTile| { &m.drainage },
13769 |m: &mut RegionTile| { &mut m.drainage },
13770 ));
13771 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13772 "volcanism",
13773 |m: &RegionTile| { &m.volcanism },
13774 |m: &mut RegionTile| { &mut m.volcanism },
13775 ));
13776 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13777 "savagery",
13778 |m: &RegionTile| { &m.savagery },
13779 |m: &mut RegionTile| { &mut m.savagery },
13780 ));
13781 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13782 "salinity",
13783 |m: &RegionTile| { &m.salinity },
13784 |m: &mut RegionTile| { &mut m.salinity },
13785 ));
13786 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, RiverTile>(
13787 "river_tiles",
13788 |m: &RegionTile| { &m.river_tiles },
13789 |m: &mut RegionTile| { &mut m.river_tiles },
13790 ));
13791 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13792 "water_elevation",
13793 |m: &RegionTile| { &m.water_elevation },
13794 |m: &mut RegionTile| { &mut m.water_elevation },
13795 ));
13796 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
13797 "surface_material",
13798 |m: &RegionTile| { &m.surface_material },
13799 |m: &mut RegionTile| { &mut m.surface_material },
13800 ));
13801 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
13802 "plant_materials",
13803 |m: &RegionTile| { &m.plant_materials },
13804 |m: &mut RegionTile| { &mut m.plant_materials },
13805 ));
13806 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
13807 "buildings",
13808 |m: &RegionTile| { &m.buildings },
13809 |m: &mut RegionTile| { &mut m.buildings },
13810 ));
13811 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
13812 "stone_materials",
13813 |m: &RegionTile| { &m.stone_materials },
13814 |m: &mut RegionTile| { &mut m.stone_materials },
13815 ));
13816 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
13817 "tree_materials",
13818 |m: &RegionTile| { &m.tree_materials },
13819 |m: &mut RegionTile| { &mut m.tree_materials },
13820 ));
13821 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
13822 "snow",
13823 |m: &RegionTile| { &m.snow },
13824 |m: &mut RegionTile| { &mut m.snow },
13825 ));
13826 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RegionTile>(
13827 "RegionTile",
13828 fields,
13829 oneofs,
13830 )
13831 }
13832}
13833
13834impl ::protobuf::Message for RegionTile {
13835 const NAME: &'static str = "RegionTile";
13836
13837 fn is_initialized(&self) -> bool {
13838 for v in &self.river_tiles {
13839 if !v.is_initialized() {
13840 return false;
13841 }
13842 };
13843 for v in &self.surface_material {
13844 if !v.is_initialized() {
13845 return false;
13846 }
13847 };
13848 for v in &self.plant_materials {
13849 if !v.is_initialized() {
13850 return false;
13851 }
13852 };
13853 for v in &self.buildings {
13854 if !v.is_initialized() {
13855 return false;
13856 }
13857 };
13858 for v in &self.stone_materials {
13859 if !v.is_initialized() {
13860 return false;
13861 }
13862 };
13863 for v in &self.tree_materials {
13864 if !v.is_initialized() {
13865 return false;
13866 }
13867 };
13868 true
13869 }
13870
13871 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
13872 while let Some(tag) = is.read_raw_tag_or_eof()? {
13873 match tag {
13874 8 => {
13875 self.elevation = ::std::option::Option::Some(is.read_int32()?);
13876 },
13877 16 => {
13878 self.rainfall = ::std::option::Option::Some(is.read_int32()?);
13879 },
13880 24 => {
13881 self.vegetation = ::std::option::Option::Some(is.read_int32()?);
13882 },
13883 32 => {
13884 self.temperature = ::std::option::Option::Some(is.read_int32()?);
13885 },
13886 40 => {
13887 self.evilness = ::std::option::Option::Some(is.read_int32()?);
13888 },
13889 48 => {
13890 self.drainage = ::std::option::Option::Some(is.read_int32()?);
13891 },
13892 56 => {
13893 self.volcanism = ::std::option::Option::Some(is.read_int32()?);
13894 },
13895 64 => {
13896 self.savagery = ::std::option::Option::Some(is.read_int32()?);
13897 },
13898 72 => {
13899 self.salinity = ::std::option::Option::Some(is.read_int32()?);
13900 },
13901 82 => {
13902 ::protobuf::rt::read_singular_message_into_field(is, &mut self.river_tiles)?;
13903 },
13904 88 => {
13905 self.water_elevation = ::std::option::Option::Some(is.read_int32()?);
13906 },
13907 98 => {
13908 ::protobuf::rt::read_singular_message_into_field(is, &mut self.surface_material)?;
13909 },
13910 106 => {
13911 self.plant_materials.push(is.read_message()?);
13912 },
13913 114 => {
13914 self.buildings.push(is.read_message()?);
13915 },
13916 122 => {
13917 self.stone_materials.push(is.read_message()?);
13918 },
13919 130 => {
13920 self.tree_materials.push(is.read_message()?);
13921 },
13922 136 => {
13923 self.snow = ::std::option::Option::Some(is.read_int32()?);
13924 },
13925 tag => {
13926 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
13927 },
13928 };
13929 }
13930 ::std::result::Result::Ok(())
13931 }
13932
13933 #[allow(unused_variables)]
13935 fn compute_size(&self) -> u64 {
13936 let mut my_size = 0;
13937 if let Some(v) = self.elevation {
13938 my_size += ::protobuf::rt::int32_size(1, v);
13939 }
13940 if let Some(v) = self.rainfall {
13941 my_size += ::protobuf::rt::int32_size(2, v);
13942 }
13943 if let Some(v) = self.vegetation {
13944 my_size += ::protobuf::rt::int32_size(3, v);
13945 }
13946 if let Some(v) = self.temperature {
13947 my_size += ::protobuf::rt::int32_size(4, v);
13948 }
13949 if let Some(v) = self.evilness {
13950 my_size += ::protobuf::rt::int32_size(5, v);
13951 }
13952 if let Some(v) = self.drainage {
13953 my_size += ::protobuf::rt::int32_size(6, v);
13954 }
13955 if let Some(v) = self.volcanism {
13956 my_size += ::protobuf::rt::int32_size(7, v);
13957 }
13958 if let Some(v) = self.savagery {
13959 my_size += ::protobuf::rt::int32_size(8, v);
13960 }
13961 if let Some(v) = self.salinity {
13962 my_size += ::protobuf::rt::int32_size(9, v);
13963 }
13964 if let Some(v) = self.river_tiles.as_ref() {
13965 let len = v.compute_size();
13966 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13967 }
13968 if let Some(v) = self.water_elevation {
13969 my_size += ::protobuf::rt::int32_size(11, v);
13970 }
13971 if let Some(v) = self.surface_material.as_ref() {
13972 let len = v.compute_size();
13973 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13974 }
13975 for value in &self.plant_materials {
13976 let len = value.compute_size();
13977 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13978 };
13979 for value in &self.buildings {
13980 let len = value.compute_size();
13981 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13982 };
13983 for value in &self.stone_materials {
13984 let len = value.compute_size();
13985 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13986 };
13987 for value in &self.tree_materials {
13988 let len = value.compute_size();
13989 my_size += 2 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
13990 };
13991 if let Some(v) = self.snow {
13992 my_size += ::protobuf::rt::int32_size(17, v);
13993 }
13994 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
13995 self.special_fields.cached_size().set(my_size as u32);
13996 my_size
13997 }
13998
13999 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
14000 if let Some(v) = self.elevation {
14001 os.write_int32(1, v)?;
14002 }
14003 if let Some(v) = self.rainfall {
14004 os.write_int32(2, v)?;
14005 }
14006 if let Some(v) = self.vegetation {
14007 os.write_int32(3, v)?;
14008 }
14009 if let Some(v) = self.temperature {
14010 os.write_int32(4, v)?;
14011 }
14012 if let Some(v) = self.evilness {
14013 os.write_int32(5, v)?;
14014 }
14015 if let Some(v) = self.drainage {
14016 os.write_int32(6, v)?;
14017 }
14018 if let Some(v) = self.volcanism {
14019 os.write_int32(7, v)?;
14020 }
14021 if let Some(v) = self.savagery {
14022 os.write_int32(8, v)?;
14023 }
14024 if let Some(v) = self.salinity {
14025 os.write_int32(9, v)?;
14026 }
14027 if let Some(v) = self.river_tiles.as_ref() {
14028 ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
14029 }
14030 if let Some(v) = self.water_elevation {
14031 os.write_int32(11, v)?;
14032 }
14033 if let Some(v) = self.surface_material.as_ref() {
14034 ::protobuf::rt::write_message_field_with_cached_size(12, v, os)?;
14035 }
14036 for v in &self.plant_materials {
14037 ::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
14038 };
14039 for v in &self.buildings {
14040 ::protobuf::rt::write_message_field_with_cached_size(14, v, os)?;
14041 };
14042 for v in &self.stone_materials {
14043 ::protobuf::rt::write_message_field_with_cached_size(15, v, os)?;
14044 };
14045 for v in &self.tree_materials {
14046 ::protobuf::rt::write_message_field_with_cached_size(16, v, os)?;
14047 };
14048 if let Some(v) = self.snow {
14049 os.write_int32(17, v)?;
14050 }
14051 os.write_unknown_fields(self.special_fields.unknown_fields())?;
14052 ::std::result::Result::Ok(())
14053 }
14054
14055 fn special_fields(&self) -> &::protobuf::SpecialFields {
14056 &self.special_fields
14057 }
14058
14059 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
14060 &mut self.special_fields
14061 }
14062
14063 fn new() -> RegionTile {
14064 RegionTile::new()
14065 }
14066
14067 fn clear(&mut self) {
14068 self.elevation = ::std::option::Option::None;
14069 self.rainfall = ::std::option::Option::None;
14070 self.vegetation = ::std::option::Option::None;
14071 self.temperature = ::std::option::Option::None;
14072 self.evilness = ::std::option::Option::None;
14073 self.drainage = ::std::option::Option::None;
14074 self.volcanism = ::std::option::Option::None;
14075 self.savagery = ::std::option::Option::None;
14076 self.salinity = ::std::option::Option::None;
14077 self.river_tiles.clear();
14078 self.water_elevation = ::std::option::Option::None;
14079 self.surface_material.clear();
14080 self.plant_materials.clear();
14081 self.buildings.clear();
14082 self.stone_materials.clear();
14083 self.tree_materials.clear();
14084 self.snow = ::std::option::Option::None;
14085 self.special_fields.clear();
14086 }
14087
14088 fn default_instance() -> &'static RegionTile {
14089 static instance: RegionTile = RegionTile {
14090 elevation: ::std::option::Option::None,
14091 rainfall: ::std::option::Option::None,
14092 vegetation: ::std::option::Option::None,
14093 temperature: ::std::option::Option::None,
14094 evilness: ::std::option::Option::None,
14095 drainage: ::std::option::Option::None,
14096 volcanism: ::std::option::Option::None,
14097 savagery: ::std::option::Option::None,
14098 salinity: ::std::option::Option::None,
14099 river_tiles: ::protobuf::MessageField::none(),
14100 water_elevation: ::std::option::Option::None,
14101 surface_material: ::protobuf::MessageField::none(),
14102 plant_materials: ::std::vec::Vec::new(),
14103 buildings: ::std::vec::Vec::new(),
14104 stone_materials: ::std::vec::Vec::new(),
14105 tree_materials: ::std::vec::Vec::new(),
14106 snow: ::std::option::Option::None,
14107 special_fields: ::protobuf::SpecialFields::new(),
14108 };
14109 &instance
14110 }
14111}
14112
14113impl ::protobuf::MessageFull for RegionTile {
14114 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
14115 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
14116 descriptor.get(|| file_descriptor().message_by_package_relative_name("RegionTile").unwrap()).clone()
14117 }
14118}
14119
14120impl ::std::fmt::Display for RegionTile {
14121 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
14122 ::protobuf::text_format::fmt(self, f)
14123 }
14124}
14125
14126impl ::protobuf::reflect::ProtobufValue for RegionTile {
14127 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
14128}
14129
14130#[derive(PartialEq,Clone,Default,Debug)]
14132pub struct RegionMap {
14133 pub map_x: ::std::option::Option<i32>,
14136 pub map_y: ::std::option::Option<i32>,
14138 pub name: ::std::option::Option<::std::string::String>,
14140 pub name_english: ::std::option::Option<::std::string::String>,
14142 pub tiles: ::std::vec::Vec<RegionTile>,
14144 pub special_fields: ::protobuf::SpecialFields,
14147}
14148
14149impl<'a> ::std::default::Default for &'a RegionMap {
14150 fn default() -> &'a RegionMap {
14151 <RegionMap as ::protobuf::Message>::default_instance()
14152 }
14153}
14154
14155impl RegionMap {
14156 pub fn new() -> RegionMap {
14157 ::std::default::Default::default()
14158 }
14159
14160 pub fn map_x(&self) -> i32 {
14163 self.map_x.unwrap_or(0)
14164 }
14165
14166 pub fn clear_map_x(&mut self) {
14167 self.map_x = ::std::option::Option::None;
14168 }
14169
14170 pub fn has_map_x(&self) -> bool {
14171 self.map_x.is_some()
14172 }
14173
14174 pub fn set_map_x(&mut self, v: i32) {
14176 self.map_x = ::std::option::Option::Some(v);
14177 }
14178
14179 pub fn map_y(&self) -> i32 {
14182 self.map_y.unwrap_or(0)
14183 }
14184
14185 pub fn clear_map_y(&mut self) {
14186 self.map_y = ::std::option::Option::None;
14187 }
14188
14189 pub fn has_map_y(&self) -> bool {
14190 self.map_y.is_some()
14191 }
14192
14193 pub fn set_map_y(&mut self, v: i32) {
14195 self.map_y = ::std::option::Option::Some(v);
14196 }
14197
14198 pub fn name(&self) -> &str {
14201 match self.name.as_ref() {
14202 Some(v) => v,
14203 None => "",
14204 }
14205 }
14206
14207 pub fn clear_name(&mut self) {
14208 self.name = ::std::option::Option::None;
14209 }
14210
14211 pub fn has_name(&self) -> bool {
14212 self.name.is_some()
14213 }
14214
14215 pub fn set_name(&mut self, v: ::std::string::String) {
14217 self.name = ::std::option::Option::Some(v);
14218 }
14219
14220 pub fn mut_name(&mut self) -> &mut ::std::string::String {
14223 if self.name.is_none() {
14224 self.name = ::std::option::Option::Some(::std::string::String::new());
14225 }
14226 self.name.as_mut().unwrap()
14227 }
14228
14229 pub fn take_name(&mut self) -> ::std::string::String {
14231 self.name.take().unwrap_or_else(|| ::std::string::String::new())
14232 }
14233
14234 pub fn name_english(&self) -> &str {
14237 match self.name_english.as_ref() {
14238 Some(v) => v,
14239 None => "",
14240 }
14241 }
14242
14243 pub fn clear_name_english(&mut self) {
14244 self.name_english = ::std::option::Option::None;
14245 }
14246
14247 pub fn has_name_english(&self) -> bool {
14248 self.name_english.is_some()
14249 }
14250
14251 pub fn set_name_english(&mut self, v: ::std::string::String) {
14253 self.name_english = ::std::option::Option::Some(v);
14254 }
14255
14256 pub fn mut_name_english(&mut self) -> &mut ::std::string::String {
14259 if self.name_english.is_none() {
14260 self.name_english = ::std::option::Option::Some(::std::string::String::new());
14261 }
14262 self.name_english.as_mut().unwrap()
14263 }
14264
14265 pub fn take_name_english(&mut self) -> ::std::string::String {
14267 self.name_english.take().unwrap_or_else(|| ::std::string::String::new())
14268 }
14269
14270 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
14271 let mut fields = ::std::vec::Vec::with_capacity(5);
14272 let mut oneofs = ::std::vec::Vec::with_capacity(0);
14273 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14274 "map_x",
14275 |m: &RegionMap| { &m.map_x },
14276 |m: &mut RegionMap| { &mut m.map_x },
14277 ));
14278 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14279 "map_y",
14280 |m: &RegionMap| { &m.map_y },
14281 |m: &mut RegionMap| { &mut m.map_y },
14282 ));
14283 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14284 "name",
14285 |m: &RegionMap| { &m.name },
14286 |m: &mut RegionMap| { &mut m.name },
14287 ));
14288 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14289 "name_english",
14290 |m: &RegionMap| { &m.name_english },
14291 |m: &mut RegionMap| { &mut m.name_english },
14292 ));
14293 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14294 "tiles",
14295 |m: &RegionMap| { &m.tiles },
14296 |m: &mut RegionMap| { &mut m.tiles },
14297 ));
14298 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RegionMap>(
14299 "RegionMap",
14300 fields,
14301 oneofs,
14302 )
14303 }
14304}
14305
14306impl ::protobuf::Message for RegionMap {
14307 const NAME: &'static str = "RegionMap";
14308
14309 fn is_initialized(&self) -> bool {
14310 for v in &self.tiles {
14311 if !v.is_initialized() {
14312 return false;
14313 }
14314 };
14315 true
14316 }
14317
14318 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
14319 while let Some(tag) = is.read_raw_tag_or_eof()? {
14320 match tag {
14321 8 => {
14322 self.map_x = ::std::option::Option::Some(is.read_int32()?);
14323 },
14324 16 => {
14325 self.map_y = ::std::option::Option::Some(is.read_int32()?);
14326 },
14327 26 => {
14328 self.name = ::std::option::Option::Some(is.read_string()?);
14329 },
14330 34 => {
14331 self.name_english = ::std::option::Option::Some(is.read_string()?);
14332 },
14333 42 => {
14334 self.tiles.push(is.read_message()?);
14335 },
14336 tag => {
14337 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
14338 },
14339 };
14340 }
14341 ::std::result::Result::Ok(())
14342 }
14343
14344 #[allow(unused_variables)]
14346 fn compute_size(&self) -> u64 {
14347 let mut my_size = 0;
14348 if let Some(v) = self.map_x {
14349 my_size += ::protobuf::rt::int32_size(1, v);
14350 }
14351 if let Some(v) = self.map_y {
14352 my_size += ::protobuf::rt::int32_size(2, v);
14353 }
14354 if let Some(v) = self.name.as_ref() {
14355 my_size += ::protobuf::rt::string_size(3, &v);
14356 }
14357 if let Some(v) = self.name_english.as_ref() {
14358 my_size += ::protobuf::rt::string_size(4, &v);
14359 }
14360 for value in &self.tiles {
14361 let len = value.compute_size();
14362 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
14363 };
14364 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
14365 self.special_fields.cached_size().set(my_size as u32);
14366 my_size
14367 }
14368
14369 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
14370 if let Some(v) = self.map_x {
14371 os.write_int32(1, v)?;
14372 }
14373 if let Some(v) = self.map_y {
14374 os.write_int32(2, v)?;
14375 }
14376 if let Some(v) = self.name.as_ref() {
14377 os.write_string(3, v)?;
14378 }
14379 if let Some(v) = self.name_english.as_ref() {
14380 os.write_string(4, v)?;
14381 }
14382 for v in &self.tiles {
14383 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
14384 };
14385 os.write_unknown_fields(self.special_fields.unknown_fields())?;
14386 ::std::result::Result::Ok(())
14387 }
14388
14389 fn special_fields(&self) -> &::protobuf::SpecialFields {
14390 &self.special_fields
14391 }
14392
14393 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
14394 &mut self.special_fields
14395 }
14396
14397 fn new() -> RegionMap {
14398 RegionMap::new()
14399 }
14400
14401 fn clear(&mut self) {
14402 self.map_x = ::std::option::Option::None;
14403 self.map_y = ::std::option::Option::None;
14404 self.name = ::std::option::Option::None;
14405 self.name_english = ::std::option::Option::None;
14406 self.tiles.clear();
14407 self.special_fields.clear();
14408 }
14409
14410 fn default_instance() -> &'static RegionMap {
14411 static instance: RegionMap = RegionMap {
14412 map_x: ::std::option::Option::None,
14413 map_y: ::std::option::Option::None,
14414 name: ::std::option::Option::None,
14415 name_english: ::std::option::Option::None,
14416 tiles: ::std::vec::Vec::new(),
14417 special_fields: ::protobuf::SpecialFields::new(),
14418 };
14419 &instance
14420 }
14421}
14422
14423impl ::protobuf::MessageFull for RegionMap {
14424 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
14425 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
14426 descriptor.get(|| file_descriptor().message_by_package_relative_name("RegionMap").unwrap()).clone()
14427 }
14428}
14429
14430impl ::std::fmt::Display for RegionMap {
14431 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
14432 ::protobuf::text_format::fmt(self, f)
14433 }
14434}
14435
14436impl ::protobuf::reflect::ProtobufValue for RegionMap {
14437 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
14438}
14439
14440#[derive(PartialEq,Clone,Default,Debug)]
14442pub struct RegionMaps {
14443 pub world_maps: ::std::vec::Vec<WorldMap>,
14446 pub region_maps: ::std::vec::Vec<RegionMap>,
14448 pub special_fields: ::protobuf::SpecialFields,
14451}
14452
14453impl<'a> ::std::default::Default for &'a RegionMaps {
14454 fn default() -> &'a RegionMaps {
14455 <RegionMaps as ::protobuf::Message>::default_instance()
14456 }
14457}
14458
14459impl RegionMaps {
14460 pub fn new() -> RegionMaps {
14461 ::std::default::Default::default()
14462 }
14463
14464 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
14465 let mut fields = ::std::vec::Vec::with_capacity(2);
14466 let mut oneofs = ::std::vec::Vec::with_capacity(0);
14467 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14468 "world_maps",
14469 |m: &RegionMaps| { &m.world_maps },
14470 |m: &mut RegionMaps| { &mut m.world_maps },
14471 ));
14472 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14473 "region_maps",
14474 |m: &RegionMaps| { &m.region_maps },
14475 |m: &mut RegionMaps| { &mut m.region_maps },
14476 ));
14477 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RegionMaps>(
14478 "RegionMaps",
14479 fields,
14480 oneofs,
14481 )
14482 }
14483}
14484
14485impl ::protobuf::Message for RegionMaps {
14486 const NAME: &'static str = "RegionMaps";
14487
14488 fn is_initialized(&self) -> bool {
14489 for v in &self.world_maps {
14490 if !v.is_initialized() {
14491 return false;
14492 }
14493 };
14494 for v in &self.region_maps {
14495 if !v.is_initialized() {
14496 return false;
14497 }
14498 };
14499 true
14500 }
14501
14502 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
14503 while let Some(tag) = is.read_raw_tag_or_eof()? {
14504 match tag {
14505 10 => {
14506 self.world_maps.push(is.read_message()?);
14507 },
14508 18 => {
14509 self.region_maps.push(is.read_message()?);
14510 },
14511 tag => {
14512 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
14513 },
14514 };
14515 }
14516 ::std::result::Result::Ok(())
14517 }
14518
14519 #[allow(unused_variables)]
14521 fn compute_size(&self) -> u64 {
14522 let mut my_size = 0;
14523 for value in &self.world_maps {
14524 let len = value.compute_size();
14525 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
14526 };
14527 for value in &self.region_maps {
14528 let len = value.compute_size();
14529 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
14530 };
14531 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
14532 self.special_fields.cached_size().set(my_size as u32);
14533 my_size
14534 }
14535
14536 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
14537 for v in &self.world_maps {
14538 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
14539 };
14540 for v in &self.region_maps {
14541 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
14542 };
14543 os.write_unknown_fields(self.special_fields.unknown_fields())?;
14544 ::std::result::Result::Ok(())
14545 }
14546
14547 fn special_fields(&self) -> &::protobuf::SpecialFields {
14548 &self.special_fields
14549 }
14550
14551 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
14552 &mut self.special_fields
14553 }
14554
14555 fn new() -> RegionMaps {
14556 RegionMaps::new()
14557 }
14558
14559 fn clear(&mut self) {
14560 self.world_maps.clear();
14561 self.region_maps.clear();
14562 self.special_fields.clear();
14563 }
14564
14565 fn default_instance() -> &'static RegionMaps {
14566 static instance: RegionMaps = RegionMaps {
14567 world_maps: ::std::vec::Vec::new(),
14568 region_maps: ::std::vec::Vec::new(),
14569 special_fields: ::protobuf::SpecialFields::new(),
14570 };
14571 &instance
14572 }
14573}
14574
14575impl ::protobuf::MessageFull for RegionMaps {
14576 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
14577 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
14578 descriptor.get(|| file_descriptor().message_by_package_relative_name("RegionMaps").unwrap()).clone()
14579 }
14580}
14581
14582impl ::std::fmt::Display for RegionMaps {
14583 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
14584 ::protobuf::text_format::fmt(self, f)
14585 }
14586}
14587
14588impl ::protobuf::reflect::ProtobufValue for RegionMaps {
14589 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
14590}
14591
14592#[derive(PartialEq,Clone,Default,Debug)]
14594pub struct PatternDescriptor {
14595 pub id: ::std::option::Option<::std::string::String>,
14598 pub colors: ::std::vec::Vec<ColorDefinition>,
14600 pub pattern: ::std::option::Option<::protobuf::EnumOrUnknown<PatternType>>,
14602 pub special_fields: ::protobuf::SpecialFields,
14605}
14606
14607impl<'a> ::std::default::Default for &'a PatternDescriptor {
14608 fn default() -> &'a PatternDescriptor {
14609 <PatternDescriptor as ::protobuf::Message>::default_instance()
14610 }
14611}
14612
14613impl PatternDescriptor {
14614 pub fn new() -> PatternDescriptor {
14615 ::std::default::Default::default()
14616 }
14617
14618 pub fn id(&self) -> &str {
14621 match self.id.as_ref() {
14622 Some(v) => v,
14623 None => "",
14624 }
14625 }
14626
14627 pub fn clear_id(&mut self) {
14628 self.id = ::std::option::Option::None;
14629 }
14630
14631 pub fn has_id(&self) -> bool {
14632 self.id.is_some()
14633 }
14634
14635 pub fn set_id(&mut self, v: ::std::string::String) {
14637 self.id = ::std::option::Option::Some(v);
14638 }
14639
14640 pub fn mut_id(&mut self) -> &mut ::std::string::String {
14643 if self.id.is_none() {
14644 self.id = ::std::option::Option::Some(::std::string::String::new());
14645 }
14646 self.id.as_mut().unwrap()
14647 }
14648
14649 pub fn take_id(&mut self) -> ::std::string::String {
14651 self.id.take().unwrap_or_else(|| ::std::string::String::new())
14652 }
14653
14654 pub fn pattern(&self) -> PatternType {
14657 match self.pattern {
14658 Some(e) => e.enum_value_or(PatternType::MONOTONE),
14659 None => PatternType::MONOTONE,
14660 }
14661 }
14662
14663 pub fn clear_pattern(&mut self) {
14664 self.pattern = ::std::option::Option::None;
14665 }
14666
14667 pub fn has_pattern(&self) -> bool {
14668 self.pattern.is_some()
14669 }
14670
14671 pub fn set_pattern(&mut self, v: PatternType) {
14673 self.pattern = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
14674 }
14675
14676 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
14677 let mut fields = ::std::vec::Vec::with_capacity(3);
14678 let mut oneofs = ::std::vec::Vec::with_capacity(0);
14679 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14680 "id",
14681 |m: &PatternDescriptor| { &m.id },
14682 |m: &mut PatternDescriptor| { &mut m.id },
14683 ));
14684 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14685 "colors",
14686 |m: &PatternDescriptor| { &m.colors },
14687 |m: &mut PatternDescriptor| { &mut m.colors },
14688 ));
14689 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14690 "pattern",
14691 |m: &PatternDescriptor| { &m.pattern },
14692 |m: &mut PatternDescriptor| { &mut m.pattern },
14693 ));
14694 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PatternDescriptor>(
14695 "PatternDescriptor",
14696 fields,
14697 oneofs,
14698 )
14699 }
14700}
14701
14702impl ::protobuf::Message for PatternDescriptor {
14703 const NAME: &'static str = "PatternDescriptor";
14704
14705 fn is_initialized(&self) -> bool {
14706 for v in &self.colors {
14707 if !v.is_initialized() {
14708 return false;
14709 }
14710 };
14711 true
14712 }
14713
14714 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
14715 while let Some(tag) = is.read_raw_tag_or_eof()? {
14716 match tag {
14717 10 => {
14718 self.id = ::std::option::Option::Some(is.read_string()?);
14719 },
14720 18 => {
14721 self.colors.push(is.read_message()?);
14722 },
14723 24 => {
14724 self.pattern = ::std::option::Option::Some(is.read_enum_or_unknown()?);
14725 },
14726 tag => {
14727 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
14728 },
14729 };
14730 }
14731 ::std::result::Result::Ok(())
14732 }
14733
14734 #[allow(unused_variables)]
14736 fn compute_size(&self) -> u64 {
14737 let mut my_size = 0;
14738 if let Some(v) = self.id.as_ref() {
14739 my_size += ::protobuf::rt::string_size(1, &v);
14740 }
14741 for value in &self.colors {
14742 let len = value.compute_size();
14743 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
14744 };
14745 if let Some(v) = self.pattern {
14746 my_size += ::protobuf::rt::int32_size(3, v.value());
14747 }
14748 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
14749 self.special_fields.cached_size().set(my_size as u32);
14750 my_size
14751 }
14752
14753 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
14754 if let Some(v) = self.id.as_ref() {
14755 os.write_string(1, v)?;
14756 }
14757 for v in &self.colors {
14758 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
14759 };
14760 if let Some(v) = self.pattern {
14761 os.write_enum(3, ::protobuf::EnumOrUnknown::value(&v))?;
14762 }
14763 os.write_unknown_fields(self.special_fields.unknown_fields())?;
14764 ::std::result::Result::Ok(())
14765 }
14766
14767 fn special_fields(&self) -> &::protobuf::SpecialFields {
14768 &self.special_fields
14769 }
14770
14771 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
14772 &mut self.special_fields
14773 }
14774
14775 fn new() -> PatternDescriptor {
14776 PatternDescriptor::new()
14777 }
14778
14779 fn clear(&mut self) {
14780 self.id = ::std::option::Option::None;
14781 self.colors.clear();
14782 self.pattern = ::std::option::Option::None;
14783 self.special_fields.clear();
14784 }
14785
14786 fn default_instance() -> &'static PatternDescriptor {
14787 static instance: PatternDescriptor = PatternDescriptor {
14788 id: ::std::option::Option::None,
14789 colors: ::std::vec::Vec::new(),
14790 pattern: ::std::option::Option::None,
14791 special_fields: ::protobuf::SpecialFields::new(),
14792 };
14793 &instance
14794 }
14795}
14796
14797impl ::protobuf::MessageFull for PatternDescriptor {
14798 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
14799 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
14800 descriptor.get(|| file_descriptor().message_by_package_relative_name("PatternDescriptor").unwrap()).clone()
14801 }
14802}
14803
14804impl ::std::fmt::Display for PatternDescriptor {
14805 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
14806 ::protobuf::text_format::fmt(self, f)
14807 }
14808}
14809
14810impl ::protobuf::reflect::ProtobufValue for PatternDescriptor {
14811 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
14812}
14813
14814#[derive(PartialEq,Clone,Default,Debug)]
14816pub struct ColorModifierRaw {
14817 pub patterns: ::std::vec::Vec<PatternDescriptor>,
14820 pub body_part_id: ::std::vec::Vec<i32>,
14822 pub tissue_layer_id: ::std::vec::Vec<i32>,
14824 pub start_date: ::std::option::Option<i32>,
14826 pub end_date: ::std::option::Option<i32>,
14828 pub part: ::std::option::Option<::std::string::String>,
14830 pub special_fields: ::protobuf::SpecialFields,
14833}
14834
14835impl<'a> ::std::default::Default for &'a ColorModifierRaw {
14836 fn default() -> &'a ColorModifierRaw {
14837 <ColorModifierRaw as ::protobuf::Message>::default_instance()
14838 }
14839}
14840
14841impl ColorModifierRaw {
14842 pub fn new() -> ColorModifierRaw {
14843 ::std::default::Default::default()
14844 }
14845
14846 pub fn start_date(&self) -> i32 {
14849 self.start_date.unwrap_or(0)
14850 }
14851
14852 pub fn clear_start_date(&mut self) {
14853 self.start_date = ::std::option::Option::None;
14854 }
14855
14856 pub fn has_start_date(&self) -> bool {
14857 self.start_date.is_some()
14858 }
14859
14860 pub fn set_start_date(&mut self, v: i32) {
14862 self.start_date = ::std::option::Option::Some(v);
14863 }
14864
14865 pub fn end_date(&self) -> i32 {
14868 self.end_date.unwrap_or(0)
14869 }
14870
14871 pub fn clear_end_date(&mut self) {
14872 self.end_date = ::std::option::Option::None;
14873 }
14874
14875 pub fn has_end_date(&self) -> bool {
14876 self.end_date.is_some()
14877 }
14878
14879 pub fn set_end_date(&mut self, v: i32) {
14881 self.end_date = ::std::option::Option::Some(v);
14882 }
14883
14884 pub fn part(&self) -> &str {
14887 match self.part.as_ref() {
14888 Some(v) => v,
14889 None => "",
14890 }
14891 }
14892
14893 pub fn clear_part(&mut self) {
14894 self.part = ::std::option::Option::None;
14895 }
14896
14897 pub fn has_part(&self) -> bool {
14898 self.part.is_some()
14899 }
14900
14901 pub fn set_part(&mut self, v: ::std::string::String) {
14903 self.part = ::std::option::Option::Some(v);
14904 }
14905
14906 pub fn mut_part(&mut self) -> &mut ::std::string::String {
14909 if self.part.is_none() {
14910 self.part = ::std::option::Option::Some(::std::string::String::new());
14911 }
14912 self.part.as_mut().unwrap()
14913 }
14914
14915 pub fn take_part(&mut self) -> ::std::string::String {
14917 self.part.take().unwrap_or_else(|| ::std::string::String::new())
14918 }
14919
14920 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
14921 let mut fields = ::std::vec::Vec::with_capacity(6);
14922 let mut oneofs = ::std::vec::Vec::with_capacity(0);
14923 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14924 "patterns",
14925 |m: &ColorModifierRaw| { &m.patterns },
14926 |m: &mut ColorModifierRaw| { &mut m.patterns },
14927 ));
14928 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14929 "body_part_id",
14930 |m: &ColorModifierRaw| { &m.body_part_id },
14931 |m: &mut ColorModifierRaw| { &mut m.body_part_id },
14932 ));
14933 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
14934 "tissue_layer_id",
14935 |m: &ColorModifierRaw| { &m.tissue_layer_id },
14936 |m: &mut ColorModifierRaw| { &mut m.tissue_layer_id },
14937 ));
14938 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14939 "start_date",
14940 |m: &ColorModifierRaw| { &m.start_date },
14941 |m: &mut ColorModifierRaw| { &mut m.start_date },
14942 ));
14943 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14944 "end_date",
14945 |m: &ColorModifierRaw| { &m.end_date },
14946 |m: &mut ColorModifierRaw| { &mut m.end_date },
14947 ));
14948 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
14949 "part",
14950 |m: &ColorModifierRaw| { &m.part },
14951 |m: &mut ColorModifierRaw| { &mut m.part },
14952 ));
14953 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ColorModifierRaw>(
14954 "ColorModifierRaw",
14955 fields,
14956 oneofs,
14957 )
14958 }
14959}
14960
14961impl ::protobuf::Message for ColorModifierRaw {
14962 const NAME: &'static str = "ColorModifierRaw";
14963
14964 fn is_initialized(&self) -> bool {
14965 for v in &self.patterns {
14966 if !v.is_initialized() {
14967 return false;
14968 }
14969 };
14970 true
14971 }
14972
14973 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
14974 while let Some(tag) = is.read_raw_tag_or_eof()? {
14975 match tag {
14976 10 => {
14977 self.patterns.push(is.read_message()?);
14978 },
14979 18 => {
14980 is.read_repeated_packed_int32_into(&mut self.body_part_id)?;
14981 },
14982 16 => {
14983 self.body_part_id.push(is.read_int32()?);
14984 },
14985 26 => {
14986 is.read_repeated_packed_int32_into(&mut self.tissue_layer_id)?;
14987 },
14988 24 => {
14989 self.tissue_layer_id.push(is.read_int32()?);
14990 },
14991 32 => {
14992 self.start_date = ::std::option::Option::Some(is.read_int32()?);
14993 },
14994 40 => {
14995 self.end_date = ::std::option::Option::Some(is.read_int32()?);
14996 },
14997 50 => {
14998 self.part = ::std::option::Option::Some(is.read_string()?);
14999 },
15000 tag => {
15001 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
15002 },
15003 };
15004 }
15005 ::std::result::Result::Ok(())
15006 }
15007
15008 #[allow(unused_variables)]
15010 fn compute_size(&self) -> u64 {
15011 let mut my_size = 0;
15012 for value in &self.patterns {
15013 let len = value.compute_size();
15014 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
15015 };
15016 for value in &self.body_part_id {
15017 my_size += ::protobuf::rt::int32_size(2, *value);
15018 };
15019 for value in &self.tissue_layer_id {
15020 my_size += ::protobuf::rt::int32_size(3, *value);
15021 };
15022 if let Some(v) = self.start_date {
15023 my_size += ::protobuf::rt::int32_size(4, v);
15024 }
15025 if let Some(v) = self.end_date {
15026 my_size += ::protobuf::rt::int32_size(5, v);
15027 }
15028 if let Some(v) = self.part.as_ref() {
15029 my_size += ::protobuf::rt::string_size(6, &v);
15030 }
15031 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
15032 self.special_fields.cached_size().set(my_size as u32);
15033 my_size
15034 }
15035
15036 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
15037 for v in &self.patterns {
15038 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
15039 };
15040 for v in &self.body_part_id {
15041 os.write_int32(2, *v)?;
15042 };
15043 for v in &self.tissue_layer_id {
15044 os.write_int32(3, *v)?;
15045 };
15046 if let Some(v) = self.start_date {
15047 os.write_int32(4, v)?;
15048 }
15049 if let Some(v) = self.end_date {
15050 os.write_int32(5, v)?;
15051 }
15052 if let Some(v) = self.part.as_ref() {
15053 os.write_string(6, v)?;
15054 }
15055 os.write_unknown_fields(self.special_fields.unknown_fields())?;
15056 ::std::result::Result::Ok(())
15057 }
15058
15059 fn special_fields(&self) -> &::protobuf::SpecialFields {
15060 &self.special_fields
15061 }
15062
15063 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
15064 &mut self.special_fields
15065 }
15066
15067 fn new() -> ColorModifierRaw {
15068 ColorModifierRaw::new()
15069 }
15070
15071 fn clear(&mut self) {
15072 self.patterns.clear();
15073 self.body_part_id.clear();
15074 self.tissue_layer_id.clear();
15075 self.start_date = ::std::option::Option::None;
15076 self.end_date = ::std::option::Option::None;
15077 self.part = ::std::option::Option::None;
15078 self.special_fields.clear();
15079 }
15080
15081 fn default_instance() -> &'static ColorModifierRaw {
15082 static instance: ColorModifierRaw = ColorModifierRaw {
15083 patterns: ::std::vec::Vec::new(),
15084 body_part_id: ::std::vec::Vec::new(),
15085 tissue_layer_id: ::std::vec::Vec::new(),
15086 start_date: ::std::option::Option::None,
15087 end_date: ::std::option::Option::None,
15088 part: ::std::option::Option::None,
15089 special_fields: ::protobuf::SpecialFields::new(),
15090 };
15091 &instance
15092 }
15093}
15094
15095impl ::protobuf::MessageFull for ColorModifierRaw {
15096 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
15097 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
15098 descriptor.get(|| file_descriptor().message_by_package_relative_name("ColorModifierRaw").unwrap()).clone()
15099 }
15100}
15101
15102impl ::std::fmt::Display for ColorModifierRaw {
15103 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15104 ::protobuf::text_format::fmt(self, f)
15105 }
15106}
15107
15108impl ::protobuf::reflect::ProtobufValue for ColorModifierRaw {
15109 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
15110}
15111
15112#[derive(PartialEq,Clone,Default,Debug)]
15114pub struct BodyPartLayerRaw {
15115 pub layer_name: ::std::option::Option<::std::string::String>,
15118 pub tissue_id: ::std::option::Option<i32>,
15120 pub layer_depth: ::std::option::Option<i32>,
15122 pub bp_modifiers: ::std::vec::Vec<i32>,
15124 pub special_fields: ::protobuf::SpecialFields,
15127}
15128
15129impl<'a> ::std::default::Default for &'a BodyPartLayerRaw {
15130 fn default() -> &'a BodyPartLayerRaw {
15131 <BodyPartLayerRaw as ::protobuf::Message>::default_instance()
15132 }
15133}
15134
15135impl BodyPartLayerRaw {
15136 pub fn new() -> BodyPartLayerRaw {
15137 ::std::default::Default::default()
15138 }
15139
15140 pub fn layer_name(&self) -> &str {
15143 match self.layer_name.as_ref() {
15144 Some(v) => v,
15145 None => "",
15146 }
15147 }
15148
15149 pub fn clear_layer_name(&mut self) {
15150 self.layer_name = ::std::option::Option::None;
15151 }
15152
15153 pub fn has_layer_name(&self) -> bool {
15154 self.layer_name.is_some()
15155 }
15156
15157 pub fn set_layer_name(&mut self, v: ::std::string::String) {
15159 self.layer_name = ::std::option::Option::Some(v);
15160 }
15161
15162 pub fn mut_layer_name(&mut self) -> &mut ::std::string::String {
15165 if self.layer_name.is_none() {
15166 self.layer_name = ::std::option::Option::Some(::std::string::String::new());
15167 }
15168 self.layer_name.as_mut().unwrap()
15169 }
15170
15171 pub fn take_layer_name(&mut self) -> ::std::string::String {
15173 self.layer_name.take().unwrap_or_else(|| ::std::string::String::new())
15174 }
15175
15176 pub fn tissue_id(&self) -> i32 {
15179 self.tissue_id.unwrap_or(0)
15180 }
15181
15182 pub fn clear_tissue_id(&mut self) {
15183 self.tissue_id = ::std::option::Option::None;
15184 }
15185
15186 pub fn has_tissue_id(&self) -> bool {
15187 self.tissue_id.is_some()
15188 }
15189
15190 pub fn set_tissue_id(&mut self, v: i32) {
15192 self.tissue_id = ::std::option::Option::Some(v);
15193 }
15194
15195 pub fn layer_depth(&self) -> i32 {
15198 self.layer_depth.unwrap_or(0)
15199 }
15200
15201 pub fn clear_layer_depth(&mut self) {
15202 self.layer_depth = ::std::option::Option::None;
15203 }
15204
15205 pub fn has_layer_depth(&self) -> bool {
15206 self.layer_depth.is_some()
15207 }
15208
15209 pub fn set_layer_depth(&mut self, v: i32) {
15211 self.layer_depth = ::std::option::Option::Some(v);
15212 }
15213
15214 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
15215 let mut fields = ::std::vec::Vec::with_capacity(4);
15216 let mut oneofs = ::std::vec::Vec::with_capacity(0);
15217 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15218 "layer_name",
15219 |m: &BodyPartLayerRaw| { &m.layer_name },
15220 |m: &mut BodyPartLayerRaw| { &mut m.layer_name },
15221 ));
15222 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15223 "tissue_id",
15224 |m: &BodyPartLayerRaw| { &m.tissue_id },
15225 |m: &mut BodyPartLayerRaw| { &mut m.tissue_id },
15226 ));
15227 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15228 "layer_depth",
15229 |m: &BodyPartLayerRaw| { &m.layer_depth },
15230 |m: &mut BodyPartLayerRaw| { &mut m.layer_depth },
15231 ));
15232 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
15233 "bp_modifiers",
15234 |m: &BodyPartLayerRaw| { &m.bp_modifiers },
15235 |m: &mut BodyPartLayerRaw| { &mut m.bp_modifiers },
15236 ));
15237 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BodyPartLayerRaw>(
15238 "BodyPartLayerRaw",
15239 fields,
15240 oneofs,
15241 )
15242 }
15243}
15244
15245impl ::protobuf::Message for BodyPartLayerRaw {
15246 const NAME: &'static str = "BodyPartLayerRaw";
15247
15248 fn is_initialized(&self) -> bool {
15249 true
15250 }
15251
15252 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
15253 while let Some(tag) = is.read_raw_tag_or_eof()? {
15254 match tag {
15255 10 => {
15256 self.layer_name = ::std::option::Option::Some(is.read_string()?);
15257 },
15258 16 => {
15259 self.tissue_id = ::std::option::Option::Some(is.read_int32()?);
15260 },
15261 24 => {
15262 self.layer_depth = ::std::option::Option::Some(is.read_int32()?);
15263 },
15264 34 => {
15265 is.read_repeated_packed_int32_into(&mut self.bp_modifiers)?;
15266 },
15267 32 => {
15268 self.bp_modifiers.push(is.read_int32()?);
15269 },
15270 tag => {
15271 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
15272 },
15273 };
15274 }
15275 ::std::result::Result::Ok(())
15276 }
15277
15278 #[allow(unused_variables)]
15280 fn compute_size(&self) -> u64 {
15281 let mut my_size = 0;
15282 if let Some(v) = self.layer_name.as_ref() {
15283 my_size += ::protobuf::rt::string_size(1, &v);
15284 }
15285 if let Some(v) = self.tissue_id {
15286 my_size += ::protobuf::rt::int32_size(2, v);
15287 }
15288 if let Some(v) = self.layer_depth {
15289 my_size += ::protobuf::rt::int32_size(3, v);
15290 }
15291 for value in &self.bp_modifiers {
15292 my_size += ::protobuf::rt::int32_size(4, *value);
15293 };
15294 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
15295 self.special_fields.cached_size().set(my_size as u32);
15296 my_size
15297 }
15298
15299 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
15300 if let Some(v) = self.layer_name.as_ref() {
15301 os.write_string(1, v)?;
15302 }
15303 if let Some(v) = self.tissue_id {
15304 os.write_int32(2, v)?;
15305 }
15306 if let Some(v) = self.layer_depth {
15307 os.write_int32(3, v)?;
15308 }
15309 for v in &self.bp_modifiers {
15310 os.write_int32(4, *v)?;
15311 };
15312 os.write_unknown_fields(self.special_fields.unknown_fields())?;
15313 ::std::result::Result::Ok(())
15314 }
15315
15316 fn special_fields(&self) -> &::protobuf::SpecialFields {
15317 &self.special_fields
15318 }
15319
15320 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
15321 &mut self.special_fields
15322 }
15323
15324 fn new() -> BodyPartLayerRaw {
15325 BodyPartLayerRaw::new()
15326 }
15327
15328 fn clear(&mut self) {
15329 self.layer_name = ::std::option::Option::None;
15330 self.tissue_id = ::std::option::Option::None;
15331 self.layer_depth = ::std::option::Option::None;
15332 self.bp_modifiers.clear();
15333 self.special_fields.clear();
15334 }
15335
15336 fn default_instance() -> &'static BodyPartLayerRaw {
15337 static instance: BodyPartLayerRaw = BodyPartLayerRaw {
15338 layer_name: ::std::option::Option::None,
15339 tissue_id: ::std::option::Option::None,
15340 layer_depth: ::std::option::Option::None,
15341 bp_modifiers: ::std::vec::Vec::new(),
15342 special_fields: ::protobuf::SpecialFields::new(),
15343 };
15344 &instance
15345 }
15346}
15347
15348impl ::protobuf::MessageFull for BodyPartLayerRaw {
15349 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
15350 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
15351 descriptor.get(|| file_descriptor().message_by_package_relative_name("BodyPartLayerRaw").unwrap()).clone()
15352 }
15353}
15354
15355impl ::std::fmt::Display for BodyPartLayerRaw {
15356 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15357 ::protobuf::text_format::fmt(self, f)
15358 }
15359}
15360
15361impl ::protobuf::reflect::ProtobufValue for BodyPartLayerRaw {
15362 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
15363}
15364
15365#[derive(PartialEq,Clone,Default,Debug)]
15367pub struct BodyPartRaw {
15368 pub token: ::std::option::Option<::std::string::String>,
15371 pub category: ::std::option::Option<::std::string::String>,
15373 pub parent: ::std::option::Option<i32>,
15375 pub flags: ::std::vec::Vec<bool>,
15377 pub layers: ::std::vec::Vec<BodyPartLayerRaw>,
15379 pub relsize: ::std::option::Option<i32>,
15381 pub special_fields: ::protobuf::SpecialFields,
15384}
15385
15386impl<'a> ::std::default::Default for &'a BodyPartRaw {
15387 fn default() -> &'a BodyPartRaw {
15388 <BodyPartRaw as ::protobuf::Message>::default_instance()
15389 }
15390}
15391
15392impl BodyPartRaw {
15393 pub fn new() -> BodyPartRaw {
15394 ::std::default::Default::default()
15395 }
15396
15397 pub fn token(&self) -> &str {
15400 match self.token.as_ref() {
15401 Some(v) => v,
15402 None => "",
15403 }
15404 }
15405
15406 pub fn clear_token(&mut self) {
15407 self.token = ::std::option::Option::None;
15408 }
15409
15410 pub fn has_token(&self) -> bool {
15411 self.token.is_some()
15412 }
15413
15414 pub fn set_token(&mut self, v: ::std::string::String) {
15416 self.token = ::std::option::Option::Some(v);
15417 }
15418
15419 pub fn mut_token(&mut self) -> &mut ::std::string::String {
15422 if self.token.is_none() {
15423 self.token = ::std::option::Option::Some(::std::string::String::new());
15424 }
15425 self.token.as_mut().unwrap()
15426 }
15427
15428 pub fn take_token(&mut self) -> ::std::string::String {
15430 self.token.take().unwrap_or_else(|| ::std::string::String::new())
15431 }
15432
15433 pub fn category(&self) -> &str {
15436 match self.category.as_ref() {
15437 Some(v) => v,
15438 None => "",
15439 }
15440 }
15441
15442 pub fn clear_category(&mut self) {
15443 self.category = ::std::option::Option::None;
15444 }
15445
15446 pub fn has_category(&self) -> bool {
15447 self.category.is_some()
15448 }
15449
15450 pub fn set_category(&mut self, v: ::std::string::String) {
15452 self.category = ::std::option::Option::Some(v);
15453 }
15454
15455 pub fn mut_category(&mut self) -> &mut ::std::string::String {
15458 if self.category.is_none() {
15459 self.category = ::std::option::Option::Some(::std::string::String::new());
15460 }
15461 self.category.as_mut().unwrap()
15462 }
15463
15464 pub fn take_category(&mut self) -> ::std::string::String {
15466 self.category.take().unwrap_or_else(|| ::std::string::String::new())
15467 }
15468
15469 pub fn parent(&self) -> i32 {
15472 self.parent.unwrap_or(0)
15473 }
15474
15475 pub fn clear_parent(&mut self) {
15476 self.parent = ::std::option::Option::None;
15477 }
15478
15479 pub fn has_parent(&self) -> bool {
15480 self.parent.is_some()
15481 }
15482
15483 pub fn set_parent(&mut self, v: i32) {
15485 self.parent = ::std::option::Option::Some(v);
15486 }
15487
15488 pub fn relsize(&self) -> i32 {
15491 self.relsize.unwrap_or(0)
15492 }
15493
15494 pub fn clear_relsize(&mut self) {
15495 self.relsize = ::std::option::Option::None;
15496 }
15497
15498 pub fn has_relsize(&self) -> bool {
15499 self.relsize.is_some()
15500 }
15501
15502 pub fn set_relsize(&mut self, v: i32) {
15504 self.relsize = ::std::option::Option::Some(v);
15505 }
15506
15507 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
15508 let mut fields = ::std::vec::Vec::with_capacity(6);
15509 let mut oneofs = ::std::vec::Vec::with_capacity(0);
15510 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15511 "token",
15512 |m: &BodyPartRaw| { &m.token },
15513 |m: &mut BodyPartRaw| { &mut m.token },
15514 ));
15515 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15516 "category",
15517 |m: &BodyPartRaw| { &m.category },
15518 |m: &mut BodyPartRaw| { &mut m.category },
15519 ));
15520 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15521 "parent",
15522 |m: &BodyPartRaw| { &m.parent },
15523 |m: &mut BodyPartRaw| { &mut m.parent },
15524 ));
15525 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
15526 "flags",
15527 |m: &BodyPartRaw| { &m.flags },
15528 |m: &mut BodyPartRaw| { &mut m.flags },
15529 ));
15530 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
15531 "layers",
15532 |m: &BodyPartRaw| { &m.layers },
15533 |m: &mut BodyPartRaw| { &mut m.layers },
15534 ));
15535 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15536 "relsize",
15537 |m: &BodyPartRaw| { &m.relsize },
15538 |m: &mut BodyPartRaw| { &mut m.relsize },
15539 ));
15540 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BodyPartRaw>(
15541 "BodyPartRaw",
15542 fields,
15543 oneofs,
15544 )
15545 }
15546}
15547
15548impl ::protobuf::Message for BodyPartRaw {
15549 const NAME: &'static str = "BodyPartRaw";
15550
15551 fn is_initialized(&self) -> bool {
15552 true
15553 }
15554
15555 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
15556 while let Some(tag) = is.read_raw_tag_or_eof()? {
15557 match tag {
15558 10 => {
15559 self.token = ::std::option::Option::Some(is.read_string()?);
15560 },
15561 18 => {
15562 self.category = ::std::option::Option::Some(is.read_string()?);
15563 },
15564 24 => {
15565 self.parent = ::std::option::Option::Some(is.read_int32()?);
15566 },
15567 34 => {
15568 is.read_repeated_packed_bool_into(&mut self.flags)?;
15569 },
15570 32 => {
15571 self.flags.push(is.read_bool()?);
15572 },
15573 42 => {
15574 self.layers.push(is.read_message()?);
15575 },
15576 48 => {
15577 self.relsize = ::std::option::Option::Some(is.read_int32()?);
15578 },
15579 tag => {
15580 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
15581 },
15582 };
15583 }
15584 ::std::result::Result::Ok(())
15585 }
15586
15587 #[allow(unused_variables)]
15589 fn compute_size(&self) -> u64 {
15590 let mut my_size = 0;
15591 if let Some(v) = self.token.as_ref() {
15592 my_size += ::protobuf::rt::string_size(1, &v);
15593 }
15594 if let Some(v) = self.category.as_ref() {
15595 my_size += ::protobuf::rt::string_size(2, &v);
15596 }
15597 if let Some(v) = self.parent {
15598 my_size += ::protobuf::rt::int32_size(3, v);
15599 }
15600 my_size += 2 * self.flags.len() as u64;
15601 for value in &self.layers {
15602 let len = value.compute_size();
15603 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
15604 };
15605 if let Some(v) = self.relsize {
15606 my_size += ::protobuf::rt::int32_size(6, v);
15607 }
15608 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
15609 self.special_fields.cached_size().set(my_size as u32);
15610 my_size
15611 }
15612
15613 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
15614 if let Some(v) = self.token.as_ref() {
15615 os.write_string(1, v)?;
15616 }
15617 if let Some(v) = self.category.as_ref() {
15618 os.write_string(2, v)?;
15619 }
15620 if let Some(v) = self.parent {
15621 os.write_int32(3, v)?;
15622 }
15623 for v in &self.flags {
15624 os.write_bool(4, *v)?;
15625 };
15626 for v in &self.layers {
15627 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
15628 };
15629 if let Some(v) = self.relsize {
15630 os.write_int32(6, v)?;
15631 }
15632 os.write_unknown_fields(self.special_fields.unknown_fields())?;
15633 ::std::result::Result::Ok(())
15634 }
15635
15636 fn special_fields(&self) -> &::protobuf::SpecialFields {
15637 &self.special_fields
15638 }
15639
15640 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
15641 &mut self.special_fields
15642 }
15643
15644 fn new() -> BodyPartRaw {
15645 BodyPartRaw::new()
15646 }
15647
15648 fn clear(&mut self) {
15649 self.token = ::std::option::Option::None;
15650 self.category = ::std::option::Option::None;
15651 self.parent = ::std::option::Option::None;
15652 self.flags.clear();
15653 self.layers.clear();
15654 self.relsize = ::std::option::Option::None;
15655 self.special_fields.clear();
15656 }
15657
15658 fn default_instance() -> &'static BodyPartRaw {
15659 static instance: BodyPartRaw = BodyPartRaw {
15660 token: ::std::option::Option::None,
15661 category: ::std::option::Option::None,
15662 parent: ::std::option::Option::None,
15663 flags: ::std::vec::Vec::new(),
15664 layers: ::std::vec::Vec::new(),
15665 relsize: ::std::option::Option::None,
15666 special_fields: ::protobuf::SpecialFields::new(),
15667 };
15668 &instance
15669 }
15670}
15671
15672impl ::protobuf::MessageFull for BodyPartRaw {
15673 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
15674 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
15675 descriptor.get(|| file_descriptor().message_by_package_relative_name("BodyPartRaw").unwrap()).clone()
15676 }
15677}
15678
15679impl ::std::fmt::Display for BodyPartRaw {
15680 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15681 ::protobuf::text_format::fmt(self, f)
15682 }
15683}
15684
15685impl ::protobuf::reflect::ProtobufValue for BodyPartRaw {
15686 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
15687}
15688
15689#[derive(PartialEq,Clone,Default,Debug)]
15691pub struct BpAppearanceModifier {
15692 pub type_: ::std::option::Option<::std::string::String>,
15695 pub mod_min: ::std::option::Option<i32>,
15697 pub mod_max: ::std::option::Option<i32>,
15699 pub special_fields: ::protobuf::SpecialFields,
15702}
15703
15704impl<'a> ::std::default::Default for &'a BpAppearanceModifier {
15705 fn default() -> &'a BpAppearanceModifier {
15706 <BpAppearanceModifier as ::protobuf::Message>::default_instance()
15707 }
15708}
15709
15710impl BpAppearanceModifier {
15711 pub fn new() -> BpAppearanceModifier {
15712 ::std::default::Default::default()
15713 }
15714
15715 pub fn type_(&self) -> &str {
15718 match self.type_.as_ref() {
15719 Some(v) => v,
15720 None => "",
15721 }
15722 }
15723
15724 pub fn clear_type_(&mut self) {
15725 self.type_ = ::std::option::Option::None;
15726 }
15727
15728 pub fn has_type(&self) -> bool {
15729 self.type_.is_some()
15730 }
15731
15732 pub fn set_type(&mut self, v: ::std::string::String) {
15734 self.type_ = ::std::option::Option::Some(v);
15735 }
15736
15737 pub fn mut_type(&mut self) -> &mut ::std::string::String {
15740 if self.type_.is_none() {
15741 self.type_ = ::std::option::Option::Some(::std::string::String::new());
15742 }
15743 self.type_.as_mut().unwrap()
15744 }
15745
15746 pub fn take_type_(&mut self) -> ::std::string::String {
15748 self.type_.take().unwrap_or_else(|| ::std::string::String::new())
15749 }
15750
15751 pub fn mod_min(&self) -> i32 {
15754 self.mod_min.unwrap_or(0)
15755 }
15756
15757 pub fn clear_mod_min(&mut self) {
15758 self.mod_min = ::std::option::Option::None;
15759 }
15760
15761 pub fn has_mod_min(&self) -> bool {
15762 self.mod_min.is_some()
15763 }
15764
15765 pub fn set_mod_min(&mut self, v: i32) {
15767 self.mod_min = ::std::option::Option::Some(v);
15768 }
15769
15770 pub fn mod_max(&self) -> i32 {
15773 self.mod_max.unwrap_or(0)
15774 }
15775
15776 pub fn clear_mod_max(&mut self) {
15777 self.mod_max = ::std::option::Option::None;
15778 }
15779
15780 pub fn has_mod_max(&self) -> bool {
15781 self.mod_max.is_some()
15782 }
15783
15784 pub fn set_mod_max(&mut self, v: i32) {
15786 self.mod_max = ::std::option::Option::Some(v);
15787 }
15788
15789 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
15790 let mut fields = ::std::vec::Vec::with_capacity(3);
15791 let mut oneofs = ::std::vec::Vec::with_capacity(0);
15792 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15793 "type",
15794 |m: &BpAppearanceModifier| { &m.type_ },
15795 |m: &mut BpAppearanceModifier| { &mut m.type_ },
15796 ));
15797 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15798 "mod_min",
15799 |m: &BpAppearanceModifier| { &m.mod_min },
15800 |m: &mut BpAppearanceModifier| { &mut m.mod_min },
15801 ));
15802 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
15803 "mod_max",
15804 |m: &BpAppearanceModifier| { &m.mod_max },
15805 |m: &mut BpAppearanceModifier| { &mut m.mod_max },
15806 ));
15807 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<BpAppearanceModifier>(
15808 "BpAppearanceModifier",
15809 fields,
15810 oneofs,
15811 )
15812 }
15813}
15814
15815impl ::protobuf::Message for BpAppearanceModifier {
15816 const NAME: &'static str = "BpAppearanceModifier";
15817
15818 fn is_initialized(&self) -> bool {
15819 true
15820 }
15821
15822 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
15823 while let Some(tag) = is.read_raw_tag_or_eof()? {
15824 match tag {
15825 10 => {
15826 self.type_ = ::std::option::Option::Some(is.read_string()?);
15827 },
15828 16 => {
15829 self.mod_min = ::std::option::Option::Some(is.read_int32()?);
15830 },
15831 24 => {
15832 self.mod_max = ::std::option::Option::Some(is.read_int32()?);
15833 },
15834 tag => {
15835 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
15836 },
15837 };
15838 }
15839 ::std::result::Result::Ok(())
15840 }
15841
15842 #[allow(unused_variables)]
15844 fn compute_size(&self) -> u64 {
15845 let mut my_size = 0;
15846 if let Some(v) = self.type_.as_ref() {
15847 my_size += ::protobuf::rt::string_size(1, &v);
15848 }
15849 if let Some(v) = self.mod_min {
15850 my_size += ::protobuf::rt::int32_size(2, v);
15851 }
15852 if let Some(v) = self.mod_max {
15853 my_size += ::protobuf::rt::int32_size(3, v);
15854 }
15855 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
15856 self.special_fields.cached_size().set(my_size as u32);
15857 my_size
15858 }
15859
15860 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
15861 if let Some(v) = self.type_.as_ref() {
15862 os.write_string(1, v)?;
15863 }
15864 if let Some(v) = self.mod_min {
15865 os.write_int32(2, v)?;
15866 }
15867 if let Some(v) = self.mod_max {
15868 os.write_int32(3, v)?;
15869 }
15870 os.write_unknown_fields(self.special_fields.unknown_fields())?;
15871 ::std::result::Result::Ok(())
15872 }
15873
15874 fn special_fields(&self) -> &::protobuf::SpecialFields {
15875 &self.special_fields
15876 }
15877
15878 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
15879 &mut self.special_fields
15880 }
15881
15882 fn new() -> BpAppearanceModifier {
15883 BpAppearanceModifier::new()
15884 }
15885
15886 fn clear(&mut self) {
15887 self.type_ = ::std::option::Option::None;
15888 self.mod_min = ::std::option::Option::None;
15889 self.mod_max = ::std::option::Option::None;
15890 self.special_fields.clear();
15891 }
15892
15893 fn default_instance() -> &'static BpAppearanceModifier {
15894 static instance: BpAppearanceModifier = BpAppearanceModifier {
15895 type_: ::std::option::Option::None,
15896 mod_min: ::std::option::Option::None,
15897 mod_max: ::std::option::Option::None,
15898 special_fields: ::protobuf::SpecialFields::new(),
15899 };
15900 &instance
15901 }
15902}
15903
15904impl ::protobuf::MessageFull for BpAppearanceModifier {
15905 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
15906 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
15907 descriptor.get(|| file_descriptor().message_by_package_relative_name("BpAppearanceModifier").unwrap()).clone()
15908 }
15909}
15910
15911impl ::std::fmt::Display for BpAppearanceModifier {
15912 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15913 ::protobuf::text_format::fmt(self, f)
15914 }
15915}
15916
15917impl ::protobuf::reflect::ProtobufValue for BpAppearanceModifier {
15918 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
15919}
15920
15921#[derive(PartialEq,Clone,Default,Debug)]
15923pub struct TissueRaw {
15924 pub id: ::std::option::Option<::std::string::String>,
15927 pub name: ::std::option::Option<::std::string::String>,
15929 pub material: ::protobuf::MessageField<MatPair>,
15931 pub subordinate_to_tissue: ::std::option::Option<::std::string::String>,
15933 pub special_fields: ::protobuf::SpecialFields,
15936}
15937
15938impl<'a> ::std::default::Default for &'a TissueRaw {
15939 fn default() -> &'a TissueRaw {
15940 <TissueRaw as ::protobuf::Message>::default_instance()
15941 }
15942}
15943
15944impl TissueRaw {
15945 pub fn new() -> TissueRaw {
15946 ::std::default::Default::default()
15947 }
15948
15949 pub fn id(&self) -> &str {
15952 match self.id.as_ref() {
15953 Some(v) => v,
15954 None => "",
15955 }
15956 }
15957
15958 pub fn clear_id(&mut self) {
15959 self.id = ::std::option::Option::None;
15960 }
15961
15962 pub fn has_id(&self) -> bool {
15963 self.id.is_some()
15964 }
15965
15966 pub fn set_id(&mut self, v: ::std::string::String) {
15968 self.id = ::std::option::Option::Some(v);
15969 }
15970
15971 pub fn mut_id(&mut self) -> &mut ::std::string::String {
15974 if self.id.is_none() {
15975 self.id = ::std::option::Option::Some(::std::string::String::new());
15976 }
15977 self.id.as_mut().unwrap()
15978 }
15979
15980 pub fn take_id(&mut self) -> ::std::string::String {
15982 self.id.take().unwrap_or_else(|| ::std::string::String::new())
15983 }
15984
15985 pub fn name(&self) -> &str {
15988 match self.name.as_ref() {
15989 Some(v) => v,
15990 None => "",
15991 }
15992 }
15993
15994 pub fn clear_name(&mut self) {
15995 self.name = ::std::option::Option::None;
15996 }
15997
15998 pub fn has_name(&self) -> bool {
15999 self.name.is_some()
16000 }
16001
16002 pub fn set_name(&mut self, v: ::std::string::String) {
16004 self.name = ::std::option::Option::Some(v);
16005 }
16006
16007 pub fn mut_name(&mut self) -> &mut ::std::string::String {
16010 if self.name.is_none() {
16011 self.name = ::std::option::Option::Some(::std::string::String::new());
16012 }
16013 self.name.as_mut().unwrap()
16014 }
16015
16016 pub fn take_name(&mut self) -> ::std::string::String {
16018 self.name.take().unwrap_or_else(|| ::std::string::String::new())
16019 }
16020
16021 pub fn subordinate_to_tissue(&self) -> &str {
16024 match self.subordinate_to_tissue.as_ref() {
16025 Some(v) => v,
16026 None => "",
16027 }
16028 }
16029
16030 pub fn clear_subordinate_to_tissue(&mut self) {
16031 self.subordinate_to_tissue = ::std::option::Option::None;
16032 }
16033
16034 pub fn has_subordinate_to_tissue(&self) -> bool {
16035 self.subordinate_to_tissue.is_some()
16036 }
16037
16038 pub fn set_subordinate_to_tissue(&mut self, v: ::std::string::String) {
16040 self.subordinate_to_tissue = ::std::option::Option::Some(v);
16041 }
16042
16043 pub fn mut_subordinate_to_tissue(&mut self) -> &mut ::std::string::String {
16046 if self.subordinate_to_tissue.is_none() {
16047 self.subordinate_to_tissue = ::std::option::Option::Some(::std::string::String::new());
16048 }
16049 self.subordinate_to_tissue.as_mut().unwrap()
16050 }
16051
16052 pub fn take_subordinate_to_tissue(&mut self) -> ::std::string::String {
16054 self.subordinate_to_tissue.take().unwrap_or_else(|| ::std::string::String::new())
16055 }
16056
16057 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
16058 let mut fields = ::std::vec::Vec::with_capacity(4);
16059 let mut oneofs = ::std::vec::Vec::with_capacity(0);
16060 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16061 "id",
16062 |m: &TissueRaw| { &m.id },
16063 |m: &mut TissueRaw| { &mut m.id },
16064 ));
16065 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16066 "name",
16067 |m: &TissueRaw| { &m.name },
16068 |m: &mut TissueRaw| { &mut m.name },
16069 ));
16070 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
16071 "material",
16072 |m: &TissueRaw| { &m.material },
16073 |m: &mut TissueRaw| { &mut m.material },
16074 ));
16075 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16076 "subordinate_to_tissue",
16077 |m: &TissueRaw| { &m.subordinate_to_tissue },
16078 |m: &mut TissueRaw| { &mut m.subordinate_to_tissue },
16079 ));
16080 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TissueRaw>(
16081 "TissueRaw",
16082 fields,
16083 oneofs,
16084 )
16085 }
16086}
16087
16088impl ::protobuf::Message for TissueRaw {
16089 const NAME: &'static str = "TissueRaw";
16090
16091 fn is_initialized(&self) -> bool {
16092 for v in &self.material {
16093 if !v.is_initialized() {
16094 return false;
16095 }
16096 };
16097 true
16098 }
16099
16100 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
16101 while let Some(tag) = is.read_raw_tag_or_eof()? {
16102 match tag {
16103 10 => {
16104 self.id = ::std::option::Option::Some(is.read_string()?);
16105 },
16106 18 => {
16107 self.name = ::std::option::Option::Some(is.read_string()?);
16108 },
16109 26 => {
16110 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
16111 },
16112 34 => {
16113 self.subordinate_to_tissue = ::std::option::Option::Some(is.read_string()?);
16114 },
16115 tag => {
16116 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
16117 },
16118 };
16119 }
16120 ::std::result::Result::Ok(())
16121 }
16122
16123 #[allow(unused_variables)]
16125 fn compute_size(&self) -> u64 {
16126 let mut my_size = 0;
16127 if let Some(v) = self.id.as_ref() {
16128 my_size += ::protobuf::rt::string_size(1, &v);
16129 }
16130 if let Some(v) = self.name.as_ref() {
16131 my_size += ::protobuf::rt::string_size(2, &v);
16132 }
16133 if let Some(v) = self.material.as_ref() {
16134 let len = v.compute_size();
16135 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
16136 }
16137 if let Some(v) = self.subordinate_to_tissue.as_ref() {
16138 my_size += ::protobuf::rt::string_size(4, &v);
16139 }
16140 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
16141 self.special_fields.cached_size().set(my_size as u32);
16142 my_size
16143 }
16144
16145 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
16146 if let Some(v) = self.id.as_ref() {
16147 os.write_string(1, v)?;
16148 }
16149 if let Some(v) = self.name.as_ref() {
16150 os.write_string(2, v)?;
16151 }
16152 if let Some(v) = self.material.as_ref() {
16153 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
16154 }
16155 if let Some(v) = self.subordinate_to_tissue.as_ref() {
16156 os.write_string(4, v)?;
16157 }
16158 os.write_unknown_fields(self.special_fields.unknown_fields())?;
16159 ::std::result::Result::Ok(())
16160 }
16161
16162 fn special_fields(&self) -> &::protobuf::SpecialFields {
16163 &self.special_fields
16164 }
16165
16166 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
16167 &mut self.special_fields
16168 }
16169
16170 fn new() -> TissueRaw {
16171 TissueRaw::new()
16172 }
16173
16174 fn clear(&mut self) {
16175 self.id = ::std::option::Option::None;
16176 self.name = ::std::option::Option::None;
16177 self.material.clear();
16178 self.subordinate_to_tissue = ::std::option::Option::None;
16179 self.special_fields.clear();
16180 }
16181
16182 fn default_instance() -> &'static TissueRaw {
16183 static instance: TissueRaw = TissueRaw {
16184 id: ::std::option::Option::None,
16185 name: ::std::option::Option::None,
16186 material: ::protobuf::MessageField::none(),
16187 subordinate_to_tissue: ::std::option::Option::None,
16188 special_fields: ::protobuf::SpecialFields::new(),
16189 };
16190 &instance
16191 }
16192}
16193
16194impl ::protobuf::MessageFull for TissueRaw {
16195 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
16196 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
16197 descriptor.get(|| file_descriptor().message_by_package_relative_name("TissueRaw").unwrap()).clone()
16198 }
16199}
16200
16201impl ::std::fmt::Display for TissueRaw {
16202 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
16203 ::protobuf::text_format::fmt(self, f)
16204 }
16205}
16206
16207impl ::protobuf::reflect::ProtobufValue for TissueRaw {
16208 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
16209}
16210
16211#[derive(PartialEq,Clone,Default,Debug)]
16213pub struct CasteRaw {
16214 pub index: ::std::option::Option<i32>,
16217 pub caste_id: ::std::option::Option<::std::string::String>,
16219 pub caste_name: ::std::vec::Vec<::std::string::String>,
16221 pub baby_name: ::std::vec::Vec<::std::string::String>,
16223 pub child_name: ::std::vec::Vec<::std::string::String>,
16225 pub gender: ::std::option::Option<i32>,
16227 pub body_parts: ::std::vec::Vec<BodyPartRaw>,
16229 pub total_relsize: ::std::option::Option<i32>,
16231 pub modifiers: ::std::vec::Vec<BpAppearanceModifier>,
16233 pub modifier_idx: ::std::vec::Vec<i32>,
16235 pub part_idx: ::std::vec::Vec<i32>,
16237 pub layer_idx: ::std::vec::Vec<i32>,
16239 pub body_appearance_modifiers: ::std::vec::Vec<BpAppearanceModifier>,
16241 pub color_modifiers: ::std::vec::Vec<ColorModifierRaw>,
16243 pub description: ::std::option::Option<::std::string::String>,
16245 pub adult_size: ::std::option::Option<i32>,
16247 pub special_fields: ::protobuf::SpecialFields,
16250}
16251
16252impl<'a> ::std::default::Default for &'a CasteRaw {
16253 fn default() -> &'a CasteRaw {
16254 <CasteRaw as ::protobuf::Message>::default_instance()
16255 }
16256}
16257
16258impl CasteRaw {
16259 pub fn new() -> CasteRaw {
16260 ::std::default::Default::default()
16261 }
16262
16263 pub fn index(&self) -> i32 {
16266 self.index.unwrap_or(0)
16267 }
16268
16269 pub fn clear_index(&mut self) {
16270 self.index = ::std::option::Option::None;
16271 }
16272
16273 pub fn has_index(&self) -> bool {
16274 self.index.is_some()
16275 }
16276
16277 pub fn set_index(&mut self, v: i32) {
16279 self.index = ::std::option::Option::Some(v);
16280 }
16281
16282 pub fn caste_id(&self) -> &str {
16285 match self.caste_id.as_ref() {
16286 Some(v) => v,
16287 None => "",
16288 }
16289 }
16290
16291 pub fn clear_caste_id(&mut self) {
16292 self.caste_id = ::std::option::Option::None;
16293 }
16294
16295 pub fn has_caste_id(&self) -> bool {
16296 self.caste_id.is_some()
16297 }
16298
16299 pub fn set_caste_id(&mut self, v: ::std::string::String) {
16301 self.caste_id = ::std::option::Option::Some(v);
16302 }
16303
16304 pub fn mut_caste_id(&mut self) -> &mut ::std::string::String {
16307 if self.caste_id.is_none() {
16308 self.caste_id = ::std::option::Option::Some(::std::string::String::new());
16309 }
16310 self.caste_id.as_mut().unwrap()
16311 }
16312
16313 pub fn take_caste_id(&mut self) -> ::std::string::String {
16315 self.caste_id.take().unwrap_or_else(|| ::std::string::String::new())
16316 }
16317
16318 pub fn gender(&self) -> i32 {
16321 self.gender.unwrap_or(0)
16322 }
16323
16324 pub fn clear_gender(&mut self) {
16325 self.gender = ::std::option::Option::None;
16326 }
16327
16328 pub fn has_gender(&self) -> bool {
16329 self.gender.is_some()
16330 }
16331
16332 pub fn set_gender(&mut self, v: i32) {
16334 self.gender = ::std::option::Option::Some(v);
16335 }
16336
16337 pub fn total_relsize(&self) -> i32 {
16340 self.total_relsize.unwrap_or(0)
16341 }
16342
16343 pub fn clear_total_relsize(&mut self) {
16344 self.total_relsize = ::std::option::Option::None;
16345 }
16346
16347 pub fn has_total_relsize(&self) -> bool {
16348 self.total_relsize.is_some()
16349 }
16350
16351 pub fn set_total_relsize(&mut self, v: i32) {
16353 self.total_relsize = ::std::option::Option::Some(v);
16354 }
16355
16356 pub fn description(&self) -> &str {
16359 match self.description.as_ref() {
16360 Some(v) => v,
16361 None => "",
16362 }
16363 }
16364
16365 pub fn clear_description(&mut self) {
16366 self.description = ::std::option::Option::None;
16367 }
16368
16369 pub fn has_description(&self) -> bool {
16370 self.description.is_some()
16371 }
16372
16373 pub fn set_description(&mut self, v: ::std::string::String) {
16375 self.description = ::std::option::Option::Some(v);
16376 }
16377
16378 pub fn mut_description(&mut self) -> &mut ::std::string::String {
16381 if self.description.is_none() {
16382 self.description = ::std::option::Option::Some(::std::string::String::new());
16383 }
16384 self.description.as_mut().unwrap()
16385 }
16386
16387 pub fn take_description(&mut self) -> ::std::string::String {
16389 self.description.take().unwrap_or_else(|| ::std::string::String::new())
16390 }
16391
16392 pub fn adult_size(&self) -> i32 {
16395 self.adult_size.unwrap_or(0)
16396 }
16397
16398 pub fn clear_adult_size(&mut self) {
16399 self.adult_size = ::std::option::Option::None;
16400 }
16401
16402 pub fn has_adult_size(&self) -> bool {
16403 self.adult_size.is_some()
16404 }
16405
16406 pub fn set_adult_size(&mut self, v: i32) {
16408 self.adult_size = ::std::option::Option::Some(v);
16409 }
16410
16411 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
16412 let mut fields = ::std::vec::Vec::with_capacity(16);
16413 let mut oneofs = ::std::vec::Vec::with_capacity(0);
16414 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16415 "index",
16416 |m: &CasteRaw| { &m.index },
16417 |m: &mut CasteRaw| { &mut m.index },
16418 ));
16419 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16420 "caste_id",
16421 |m: &CasteRaw| { &m.caste_id },
16422 |m: &mut CasteRaw| { &mut m.caste_id },
16423 ));
16424 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16425 "caste_name",
16426 |m: &CasteRaw| { &m.caste_name },
16427 |m: &mut CasteRaw| { &mut m.caste_name },
16428 ));
16429 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16430 "baby_name",
16431 |m: &CasteRaw| { &m.baby_name },
16432 |m: &mut CasteRaw| { &mut m.baby_name },
16433 ));
16434 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16435 "child_name",
16436 |m: &CasteRaw| { &m.child_name },
16437 |m: &mut CasteRaw| { &mut m.child_name },
16438 ));
16439 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16440 "gender",
16441 |m: &CasteRaw| { &m.gender },
16442 |m: &mut CasteRaw| { &mut m.gender },
16443 ));
16444 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16445 "body_parts",
16446 |m: &CasteRaw| { &m.body_parts },
16447 |m: &mut CasteRaw| { &mut m.body_parts },
16448 ));
16449 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16450 "total_relsize",
16451 |m: &CasteRaw| { &m.total_relsize },
16452 |m: &mut CasteRaw| { &mut m.total_relsize },
16453 ));
16454 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16455 "modifiers",
16456 |m: &CasteRaw| { &m.modifiers },
16457 |m: &mut CasteRaw| { &mut m.modifiers },
16458 ));
16459 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16460 "modifier_idx",
16461 |m: &CasteRaw| { &m.modifier_idx },
16462 |m: &mut CasteRaw| { &mut m.modifier_idx },
16463 ));
16464 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16465 "part_idx",
16466 |m: &CasteRaw| { &m.part_idx },
16467 |m: &mut CasteRaw| { &mut m.part_idx },
16468 ));
16469 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16470 "layer_idx",
16471 |m: &CasteRaw| { &m.layer_idx },
16472 |m: &mut CasteRaw| { &mut m.layer_idx },
16473 ));
16474 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16475 "body_appearance_modifiers",
16476 |m: &CasteRaw| { &m.body_appearance_modifiers },
16477 |m: &mut CasteRaw| { &mut m.body_appearance_modifiers },
16478 ));
16479 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16480 "color_modifiers",
16481 |m: &CasteRaw| { &m.color_modifiers },
16482 |m: &mut CasteRaw| { &mut m.color_modifiers },
16483 ));
16484 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16485 "description",
16486 |m: &CasteRaw| { &m.description },
16487 |m: &mut CasteRaw| { &mut m.description },
16488 ));
16489 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16490 "adult_size",
16491 |m: &CasteRaw| { &m.adult_size },
16492 |m: &mut CasteRaw| { &mut m.adult_size },
16493 ));
16494 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<CasteRaw>(
16495 "CasteRaw",
16496 fields,
16497 oneofs,
16498 )
16499 }
16500}
16501
16502impl ::protobuf::Message for CasteRaw {
16503 const NAME: &'static str = "CasteRaw";
16504
16505 fn is_initialized(&self) -> bool {
16506 for v in &self.body_parts {
16507 if !v.is_initialized() {
16508 return false;
16509 }
16510 };
16511 for v in &self.modifiers {
16512 if !v.is_initialized() {
16513 return false;
16514 }
16515 };
16516 for v in &self.body_appearance_modifiers {
16517 if !v.is_initialized() {
16518 return false;
16519 }
16520 };
16521 for v in &self.color_modifiers {
16522 if !v.is_initialized() {
16523 return false;
16524 }
16525 };
16526 true
16527 }
16528
16529 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
16530 while let Some(tag) = is.read_raw_tag_or_eof()? {
16531 match tag {
16532 8 => {
16533 self.index = ::std::option::Option::Some(is.read_int32()?);
16534 },
16535 18 => {
16536 self.caste_id = ::std::option::Option::Some(is.read_string()?);
16537 },
16538 26 => {
16539 self.caste_name.push(is.read_string()?);
16540 },
16541 34 => {
16542 self.baby_name.push(is.read_string()?);
16543 },
16544 42 => {
16545 self.child_name.push(is.read_string()?);
16546 },
16547 48 => {
16548 self.gender = ::std::option::Option::Some(is.read_int32()?);
16549 },
16550 58 => {
16551 self.body_parts.push(is.read_message()?);
16552 },
16553 64 => {
16554 self.total_relsize = ::std::option::Option::Some(is.read_int32()?);
16555 },
16556 74 => {
16557 self.modifiers.push(is.read_message()?);
16558 },
16559 82 => {
16560 is.read_repeated_packed_int32_into(&mut self.modifier_idx)?;
16561 },
16562 80 => {
16563 self.modifier_idx.push(is.read_int32()?);
16564 },
16565 90 => {
16566 is.read_repeated_packed_int32_into(&mut self.part_idx)?;
16567 },
16568 88 => {
16569 self.part_idx.push(is.read_int32()?);
16570 },
16571 98 => {
16572 is.read_repeated_packed_int32_into(&mut self.layer_idx)?;
16573 },
16574 96 => {
16575 self.layer_idx.push(is.read_int32()?);
16576 },
16577 106 => {
16578 self.body_appearance_modifiers.push(is.read_message()?);
16579 },
16580 114 => {
16581 self.color_modifiers.push(is.read_message()?);
16582 },
16583 122 => {
16584 self.description = ::std::option::Option::Some(is.read_string()?);
16585 },
16586 128 => {
16587 self.adult_size = ::std::option::Option::Some(is.read_int32()?);
16588 },
16589 tag => {
16590 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
16591 },
16592 };
16593 }
16594 ::std::result::Result::Ok(())
16595 }
16596
16597 #[allow(unused_variables)]
16599 fn compute_size(&self) -> u64 {
16600 let mut my_size = 0;
16601 if let Some(v) = self.index {
16602 my_size += ::protobuf::rt::int32_size(1, v);
16603 }
16604 if let Some(v) = self.caste_id.as_ref() {
16605 my_size += ::protobuf::rt::string_size(2, &v);
16606 }
16607 for value in &self.caste_name {
16608 my_size += ::protobuf::rt::string_size(3, &value);
16609 };
16610 for value in &self.baby_name {
16611 my_size += ::protobuf::rt::string_size(4, &value);
16612 };
16613 for value in &self.child_name {
16614 my_size += ::protobuf::rt::string_size(5, &value);
16615 };
16616 if let Some(v) = self.gender {
16617 my_size += ::protobuf::rt::int32_size(6, v);
16618 }
16619 for value in &self.body_parts {
16620 let len = value.compute_size();
16621 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
16622 };
16623 if let Some(v) = self.total_relsize {
16624 my_size += ::protobuf::rt::int32_size(8, v);
16625 }
16626 for value in &self.modifiers {
16627 let len = value.compute_size();
16628 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
16629 };
16630 for value in &self.modifier_idx {
16631 my_size += ::protobuf::rt::int32_size(10, *value);
16632 };
16633 for value in &self.part_idx {
16634 my_size += ::protobuf::rt::int32_size(11, *value);
16635 };
16636 for value in &self.layer_idx {
16637 my_size += ::protobuf::rt::int32_size(12, *value);
16638 };
16639 for value in &self.body_appearance_modifiers {
16640 let len = value.compute_size();
16641 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
16642 };
16643 for value in &self.color_modifiers {
16644 let len = value.compute_size();
16645 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
16646 };
16647 if let Some(v) = self.description.as_ref() {
16648 my_size += ::protobuf::rt::string_size(15, &v);
16649 }
16650 if let Some(v) = self.adult_size {
16651 my_size += ::protobuf::rt::int32_size(16, v);
16652 }
16653 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
16654 self.special_fields.cached_size().set(my_size as u32);
16655 my_size
16656 }
16657
16658 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
16659 if let Some(v) = self.index {
16660 os.write_int32(1, v)?;
16661 }
16662 if let Some(v) = self.caste_id.as_ref() {
16663 os.write_string(2, v)?;
16664 }
16665 for v in &self.caste_name {
16666 os.write_string(3, &v)?;
16667 };
16668 for v in &self.baby_name {
16669 os.write_string(4, &v)?;
16670 };
16671 for v in &self.child_name {
16672 os.write_string(5, &v)?;
16673 };
16674 if let Some(v) = self.gender {
16675 os.write_int32(6, v)?;
16676 }
16677 for v in &self.body_parts {
16678 ::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
16679 };
16680 if let Some(v) = self.total_relsize {
16681 os.write_int32(8, v)?;
16682 }
16683 for v in &self.modifiers {
16684 ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
16685 };
16686 for v in &self.modifier_idx {
16687 os.write_int32(10, *v)?;
16688 };
16689 for v in &self.part_idx {
16690 os.write_int32(11, *v)?;
16691 };
16692 for v in &self.layer_idx {
16693 os.write_int32(12, *v)?;
16694 };
16695 for v in &self.body_appearance_modifiers {
16696 ::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
16697 };
16698 for v in &self.color_modifiers {
16699 ::protobuf::rt::write_message_field_with_cached_size(14, v, os)?;
16700 };
16701 if let Some(v) = self.description.as_ref() {
16702 os.write_string(15, v)?;
16703 }
16704 if let Some(v) = self.adult_size {
16705 os.write_int32(16, v)?;
16706 }
16707 os.write_unknown_fields(self.special_fields.unknown_fields())?;
16708 ::std::result::Result::Ok(())
16709 }
16710
16711 fn special_fields(&self) -> &::protobuf::SpecialFields {
16712 &self.special_fields
16713 }
16714
16715 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
16716 &mut self.special_fields
16717 }
16718
16719 fn new() -> CasteRaw {
16720 CasteRaw::new()
16721 }
16722
16723 fn clear(&mut self) {
16724 self.index = ::std::option::Option::None;
16725 self.caste_id = ::std::option::Option::None;
16726 self.caste_name.clear();
16727 self.baby_name.clear();
16728 self.child_name.clear();
16729 self.gender = ::std::option::Option::None;
16730 self.body_parts.clear();
16731 self.total_relsize = ::std::option::Option::None;
16732 self.modifiers.clear();
16733 self.modifier_idx.clear();
16734 self.part_idx.clear();
16735 self.layer_idx.clear();
16736 self.body_appearance_modifiers.clear();
16737 self.color_modifiers.clear();
16738 self.description = ::std::option::Option::None;
16739 self.adult_size = ::std::option::Option::None;
16740 self.special_fields.clear();
16741 }
16742
16743 fn default_instance() -> &'static CasteRaw {
16744 static instance: CasteRaw = CasteRaw {
16745 index: ::std::option::Option::None,
16746 caste_id: ::std::option::Option::None,
16747 caste_name: ::std::vec::Vec::new(),
16748 baby_name: ::std::vec::Vec::new(),
16749 child_name: ::std::vec::Vec::new(),
16750 gender: ::std::option::Option::None,
16751 body_parts: ::std::vec::Vec::new(),
16752 total_relsize: ::std::option::Option::None,
16753 modifiers: ::std::vec::Vec::new(),
16754 modifier_idx: ::std::vec::Vec::new(),
16755 part_idx: ::std::vec::Vec::new(),
16756 layer_idx: ::std::vec::Vec::new(),
16757 body_appearance_modifiers: ::std::vec::Vec::new(),
16758 color_modifiers: ::std::vec::Vec::new(),
16759 description: ::std::option::Option::None,
16760 adult_size: ::std::option::Option::None,
16761 special_fields: ::protobuf::SpecialFields::new(),
16762 };
16763 &instance
16764 }
16765}
16766
16767impl ::protobuf::MessageFull for CasteRaw {
16768 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
16769 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
16770 descriptor.get(|| file_descriptor().message_by_package_relative_name("CasteRaw").unwrap()).clone()
16771 }
16772}
16773
16774impl ::std::fmt::Display for CasteRaw {
16775 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
16776 ::protobuf::text_format::fmt(self, f)
16777 }
16778}
16779
16780impl ::protobuf::reflect::ProtobufValue for CasteRaw {
16781 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
16782}
16783
16784#[derive(PartialEq,Clone,Default,Debug)]
16786pub struct CreatureRaw {
16787 pub index: ::std::option::Option<i32>,
16790 pub creature_id: ::std::option::Option<::std::string::String>,
16792 pub name: ::std::vec::Vec<::std::string::String>,
16794 pub general_baby_name: ::std::vec::Vec<::std::string::String>,
16796 pub general_child_name: ::std::vec::Vec<::std::string::String>,
16798 pub creature_tile: ::std::option::Option<i32>,
16800 pub creature_soldier_tile: ::std::option::Option<i32>,
16802 pub color: ::protobuf::MessageField<ColorDefinition>,
16804 pub adultsize: ::std::option::Option<i32>,
16806 pub caste: ::std::vec::Vec<CasteRaw>,
16808 pub tissues: ::std::vec::Vec<TissueRaw>,
16810 pub flags: ::std::vec::Vec<bool>,
16812 pub special_fields: ::protobuf::SpecialFields,
16815}
16816
16817impl<'a> ::std::default::Default for &'a CreatureRaw {
16818 fn default() -> &'a CreatureRaw {
16819 <CreatureRaw as ::protobuf::Message>::default_instance()
16820 }
16821}
16822
16823impl CreatureRaw {
16824 pub fn new() -> CreatureRaw {
16825 ::std::default::Default::default()
16826 }
16827
16828 pub fn index(&self) -> i32 {
16831 self.index.unwrap_or(0)
16832 }
16833
16834 pub fn clear_index(&mut self) {
16835 self.index = ::std::option::Option::None;
16836 }
16837
16838 pub fn has_index(&self) -> bool {
16839 self.index.is_some()
16840 }
16841
16842 pub fn set_index(&mut self, v: i32) {
16844 self.index = ::std::option::Option::Some(v);
16845 }
16846
16847 pub fn creature_id(&self) -> &str {
16850 match self.creature_id.as_ref() {
16851 Some(v) => v,
16852 None => "",
16853 }
16854 }
16855
16856 pub fn clear_creature_id(&mut self) {
16857 self.creature_id = ::std::option::Option::None;
16858 }
16859
16860 pub fn has_creature_id(&self) -> bool {
16861 self.creature_id.is_some()
16862 }
16863
16864 pub fn set_creature_id(&mut self, v: ::std::string::String) {
16866 self.creature_id = ::std::option::Option::Some(v);
16867 }
16868
16869 pub fn mut_creature_id(&mut self) -> &mut ::std::string::String {
16872 if self.creature_id.is_none() {
16873 self.creature_id = ::std::option::Option::Some(::std::string::String::new());
16874 }
16875 self.creature_id.as_mut().unwrap()
16876 }
16877
16878 pub fn take_creature_id(&mut self) -> ::std::string::String {
16880 self.creature_id.take().unwrap_or_else(|| ::std::string::String::new())
16881 }
16882
16883 pub fn creature_tile(&self) -> i32 {
16886 self.creature_tile.unwrap_or(0)
16887 }
16888
16889 pub fn clear_creature_tile(&mut self) {
16890 self.creature_tile = ::std::option::Option::None;
16891 }
16892
16893 pub fn has_creature_tile(&self) -> bool {
16894 self.creature_tile.is_some()
16895 }
16896
16897 pub fn set_creature_tile(&mut self, v: i32) {
16899 self.creature_tile = ::std::option::Option::Some(v);
16900 }
16901
16902 pub fn creature_soldier_tile(&self) -> i32 {
16905 self.creature_soldier_tile.unwrap_or(0)
16906 }
16907
16908 pub fn clear_creature_soldier_tile(&mut self) {
16909 self.creature_soldier_tile = ::std::option::Option::None;
16910 }
16911
16912 pub fn has_creature_soldier_tile(&self) -> bool {
16913 self.creature_soldier_tile.is_some()
16914 }
16915
16916 pub fn set_creature_soldier_tile(&mut self, v: i32) {
16918 self.creature_soldier_tile = ::std::option::Option::Some(v);
16919 }
16920
16921 pub fn adultsize(&self) -> i32 {
16924 self.adultsize.unwrap_or(0)
16925 }
16926
16927 pub fn clear_adultsize(&mut self) {
16928 self.adultsize = ::std::option::Option::None;
16929 }
16930
16931 pub fn has_adultsize(&self) -> bool {
16932 self.adultsize.is_some()
16933 }
16934
16935 pub fn set_adultsize(&mut self, v: i32) {
16937 self.adultsize = ::std::option::Option::Some(v);
16938 }
16939
16940 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
16941 let mut fields = ::std::vec::Vec::with_capacity(12);
16942 let mut oneofs = ::std::vec::Vec::with_capacity(0);
16943 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16944 "index",
16945 |m: &CreatureRaw| { &m.index },
16946 |m: &mut CreatureRaw| { &mut m.index },
16947 ));
16948 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16949 "creature_id",
16950 |m: &CreatureRaw| { &m.creature_id },
16951 |m: &mut CreatureRaw| { &mut m.creature_id },
16952 ));
16953 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16954 "name",
16955 |m: &CreatureRaw| { &m.name },
16956 |m: &mut CreatureRaw| { &mut m.name },
16957 ));
16958 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16959 "general_baby_name",
16960 |m: &CreatureRaw| { &m.general_baby_name },
16961 |m: &mut CreatureRaw| { &mut m.general_baby_name },
16962 ));
16963 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16964 "general_child_name",
16965 |m: &CreatureRaw| { &m.general_child_name },
16966 |m: &mut CreatureRaw| { &mut m.general_child_name },
16967 ));
16968 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16969 "creature_tile",
16970 |m: &CreatureRaw| { &m.creature_tile },
16971 |m: &mut CreatureRaw| { &mut m.creature_tile },
16972 ));
16973 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16974 "creature_soldier_tile",
16975 |m: &CreatureRaw| { &m.creature_soldier_tile },
16976 |m: &mut CreatureRaw| { &mut m.creature_soldier_tile },
16977 ));
16978 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ColorDefinition>(
16979 "color",
16980 |m: &CreatureRaw| { &m.color },
16981 |m: &mut CreatureRaw| { &mut m.color },
16982 ));
16983 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
16984 "adultsize",
16985 |m: &CreatureRaw| { &m.adultsize },
16986 |m: &mut CreatureRaw| { &mut m.adultsize },
16987 ));
16988 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16989 "caste",
16990 |m: &CreatureRaw| { &m.caste },
16991 |m: &mut CreatureRaw| { &mut m.caste },
16992 ));
16993 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16994 "tissues",
16995 |m: &CreatureRaw| { &m.tissues },
16996 |m: &mut CreatureRaw| { &mut m.tissues },
16997 ));
16998 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
16999 "flags",
17000 |m: &CreatureRaw| { &m.flags },
17001 |m: &mut CreatureRaw| { &mut m.flags },
17002 ));
17003 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<CreatureRaw>(
17004 "CreatureRaw",
17005 fields,
17006 oneofs,
17007 )
17008 }
17009}
17010
17011impl ::protobuf::Message for CreatureRaw {
17012 const NAME: &'static str = "CreatureRaw";
17013
17014 fn is_initialized(&self) -> bool {
17015 for v in &self.color {
17016 if !v.is_initialized() {
17017 return false;
17018 }
17019 };
17020 for v in &self.caste {
17021 if !v.is_initialized() {
17022 return false;
17023 }
17024 };
17025 for v in &self.tissues {
17026 if !v.is_initialized() {
17027 return false;
17028 }
17029 };
17030 true
17031 }
17032
17033 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
17034 while let Some(tag) = is.read_raw_tag_or_eof()? {
17035 match tag {
17036 8 => {
17037 self.index = ::std::option::Option::Some(is.read_int32()?);
17038 },
17039 18 => {
17040 self.creature_id = ::std::option::Option::Some(is.read_string()?);
17041 },
17042 26 => {
17043 self.name.push(is.read_string()?);
17044 },
17045 34 => {
17046 self.general_baby_name.push(is.read_string()?);
17047 },
17048 42 => {
17049 self.general_child_name.push(is.read_string()?);
17050 },
17051 48 => {
17052 self.creature_tile = ::std::option::Option::Some(is.read_int32()?);
17053 },
17054 56 => {
17055 self.creature_soldier_tile = ::std::option::Option::Some(is.read_int32()?);
17056 },
17057 66 => {
17058 ::protobuf::rt::read_singular_message_into_field(is, &mut self.color)?;
17059 },
17060 72 => {
17061 self.adultsize = ::std::option::Option::Some(is.read_int32()?);
17062 },
17063 82 => {
17064 self.caste.push(is.read_message()?);
17065 },
17066 90 => {
17067 self.tissues.push(is.read_message()?);
17068 },
17069 98 => {
17070 is.read_repeated_packed_bool_into(&mut self.flags)?;
17071 },
17072 96 => {
17073 self.flags.push(is.read_bool()?);
17074 },
17075 tag => {
17076 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
17077 },
17078 };
17079 }
17080 ::std::result::Result::Ok(())
17081 }
17082
17083 #[allow(unused_variables)]
17085 fn compute_size(&self) -> u64 {
17086 let mut my_size = 0;
17087 if let Some(v) = self.index {
17088 my_size += ::protobuf::rt::int32_size(1, v);
17089 }
17090 if let Some(v) = self.creature_id.as_ref() {
17091 my_size += ::protobuf::rt::string_size(2, &v);
17092 }
17093 for value in &self.name {
17094 my_size += ::protobuf::rt::string_size(3, &value);
17095 };
17096 for value in &self.general_baby_name {
17097 my_size += ::protobuf::rt::string_size(4, &value);
17098 };
17099 for value in &self.general_child_name {
17100 my_size += ::protobuf::rt::string_size(5, &value);
17101 };
17102 if let Some(v) = self.creature_tile {
17103 my_size += ::protobuf::rt::int32_size(6, v);
17104 }
17105 if let Some(v) = self.creature_soldier_tile {
17106 my_size += ::protobuf::rt::int32_size(7, v);
17107 }
17108 if let Some(v) = self.color.as_ref() {
17109 let len = v.compute_size();
17110 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17111 }
17112 if let Some(v) = self.adultsize {
17113 my_size += ::protobuf::rt::int32_size(9, v);
17114 }
17115 for value in &self.caste {
17116 let len = value.compute_size();
17117 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17118 };
17119 for value in &self.tissues {
17120 let len = value.compute_size();
17121 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17122 };
17123 my_size += 2 * self.flags.len() as u64;
17124 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
17125 self.special_fields.cached_size().set(my_size as u32);
17126 my_size
17127 }
17128
17129 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
17130 if let Some(v) = self.index {
17131 os.write_int32(1, v)?;
17132 }
17133 if let Some(v) = self.creature_id.as_ref() {
17134 os.write_string(2, v)?;
17135 }
17136 for v in &self.name {
17137 os.write_string(3, &v)?;
17138 };
17139 for v in &self.general_baby_name {
17140 os.write_string(4, &v)?;
17141 };
17142 for v in &self.general_child_name {
17143 os.write_string(5, &v)?;
17144 };
17145 if let Some(v) = self.creature_tile {
17146 os.write_int32(6, v)?;
17147 }
17148 if let Some(v) = self.creature_soldier_tile {
17149 os.write_int32(7, v)?;
17150 }
17151 if let Some(v) = self.color.as_ref() {
17152 ::protobuf::rt::write_message_field_with_cached_size(8, v, os)?;
17153 }
17154 if let Some(v) = self.adultsize {
17155 os.write_int32(9, v)?;
17156 }
17157 for v in &self.caste {
17158 ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
17159 };
17160 for v in &self.tissues {
17161 ::protobuf::rt::write_message_field_with_cached_size(11, v, os)?;
17162 };
17163 for v in &self.flags {
17164 os.write_bool(12, *v)?;
17165 };
17166 os.write_unknown_fields(self.special_fields.unknown_fields())?;
17167 ::std::result::Result::Ok(())
17168 }
17169
17170 fn special_fields(&self) -> &::protobuf::SpecialFields {
17171 &self.special_fields
17172 }
17173
17174 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
17175 &mut self.special_fields
17176 }
17177
17178 fn new() -> CreatureRaw {
17179 CreatureRaw::new()
17180 }
17181
17182 fn clear(&mut self) {
17183 self.index = ::std::option::Option::None;
17184 self.creature_id = ::std::option::Option::None;
17185 self.name.clear();
17186 self.general_baby_name.clear();
17187 self.general_child_name.clear();
17188 self.creature_tile = ::std::option::Option::None;
17189 self.creature_soldier_tile = ::std::option::Option::None;
17190 self.color.clear();
17191 self.adultsize = ::std::option::Option::None;
17192 self.caste.clear();
17193 self.tissues.clear();
17194 self.flags.clear();
17195 self.special_fields.clear();
17196 }
17197
17198 fn default_instance() -> &'static CreatureRaw {
17199 static instance: CreatureRaw = CreatureRaw {
17200 index: ::std::option::Option::None,
17201 creature_id: ::std::option::Option::None,
17202 name: ::std::vec::Vec::new(),
17203 general_baby_name: ::std::vec::Vec::new(),
17204 general_child_name: ::std::vec::Vec::new(),
17205 creature_tile: ::std::option::Option::None,
17206 creature_soldier_tile: ::std::option::Option::None,
17207 color: ::protobuf::MessageField::none(),
17208 adultsize: ::std::option::Option::None,
17209 caste: ::std::vec::Vec::new(),
17210 tissues: ::std::vec::Vec::new(),
17211 flags: ::std::vec::Vec::new(),
17212 special_fields: ::protobuf::SpecialFields::new(),
17213 };
17214 &instance
17215 }
17216}
17217
17218impl ::protobuf::MessageFull for CreatureRaw {
17219 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
17220 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
17221 descriptor.get(|| file_descriptor().message_by_package_relative_name("CreatureRaw").unwrap()).clone()
17222 }
17223}
17224
17225impl ::std::fmt::Display for CreatureRaw {
17226 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
17227 ::protobuf::text_format::fmt(self, f)
17228 }
17229}
17230
17231impl ::protobuf::reflect::ProtobufValue for CreatureRaw {
17232 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
17233}
17234
17235#[derive(PartialEq,Clone,Default,Debug)]
17237pub struct CreatureRawList {
17238 pub creature_raws: ::std::vec::Vec<CreatureRaw>,
17241 pub special_fields: ::protobuf::SpecialFields,
17244}
17245
17246impl<'a> ::std::default::Default for &'a CreatureRawList {
17247 fn default() -> &'a CreatureRawList {
17248 <CreatureRawList as ::protobuf::Message>::default_instance()
17249 }
17250}
17251
17252impl CreatureRawList {
17253 pub fn new() -> CreatureRawList {
17254 ::std::default::Default::default()
17255 }
17256
17257 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
17258 let mut fields = ::std::vec::Vec::with_capacity(1);
17259 let mut oneofs = ::std::vec::Vec::with_capacity(0);
17260 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
17261 "creature_raws",
17262 |m: &CreatureRawList| { &m.creature_raws },
17263 |m: &mut CreatureRawList| { &mut m.creature_raws },
17264 ));
17265 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<CreatureRawList>(
17266 "CreatureRawList",
17267 fields,
17268 oneofs,
17269 )
17270 }
17271}
17272
17273impl ::protobuf::Message for CreatureRawList {
17274 const NAME: &'static str = "CreatureRawList";
17275
17276 fn is_initialized(&self) -> bool {
17277 for v in &self.creature_raws {
17278 if !v.is_initialized() {
17279 return false;
17280 }
17281 };
17282 true
17283 }
17284
17285 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
17286 while let Some(tag) = is.read_raw_tag_or_eof()? {
17287 match tag {
17288 10 => {
17289 self.creature_raws.push(is.read_message()?);
17290 },
17291 tag => {
17292 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
17293 },
17294 };
17295 }
17296 ::std::result::Result::Ok(())
17297 }
17298
17299 #[allow(unused_variables)]
17301 fn compute_size(&self) -> u64 {
17302 let mut my_size = 0;
17303 for value in &self.creature_raws {
17304 let len = value.compute_size();
17305 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17306 };
17307 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
17308 self.special_fields.cached_size().set(my_size as u32);
17309 my_size
17310 }
17311
17312 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
17313 for v in &self.creature_raws {
17314 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
17315 };
17316 os.write_unknown_fields(self.special_fields.unknown_fields())?;
17317 ::std::result::Result::Ok(())
17318 }
17319
17320 fn special_fields(&self) -> &::protobuf::SpecialFields {
17321 &self.special_fields
17322 }
17323
17324 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
17325 &mut self.special_fields
17326 }
17327
17328 fn new() -> CreatureRawList {
17329 CreatureRawList::new()
17330 }
17331
17332 fn clear(&mut self) {
17333 self.creature_raws.clear();
17334 self.special_fields.clear();
17335 }
17336
17337 fn default_instance() -> &'static CreatureRawList {
17338 static instance: CreatureRawList = CreatureRawList {
17339 creature_raws: ::std::vec::Vec::new(),
17340 special_fields: ::protobuf::SpecialFields::new(),
17341 };
17342 &instance
17343 }
17344}
17345
17346impl ::protobuf::MessageFull for CreatureRawList {
17347 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
17348 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
17349 descriptor.get(|| file_descriptor().message_by_package_relative_name("CreatureRawList").unwrap()).clone()
17350 }
17351}
17352
17353impl ::std::fmt::Display for CreatureRawList {
17354 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
17355 ::protobuf::text_format::fmt(self, f)
17356 }
17357}
17358
17359impl ::protobuf::reflect::ProtobufValue for CreatureRawList {
17360 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
17361}
17362
17363#[derive(PartialEq,Clone,Default,Debug)]
17365pub struct Army {
17366 pub id: ::std::option::Option<i32>,
17369 pub pos_x: ::std::option::Option<i32>,
17371 pub pos_y: ::std::option::Option<i32>,
17373 pub pos_z: ::std::option::Option<i32>,
17375 pub leader: ::protobuf::MessageField<UnitDefinition>,
17377 pub members: ::std::vec::Vec<UnitDefinition>,
17379 pub flags: ::std::option::Option<u32>,
17381 pub special_fields: ::protobuf::SpecialFields,
17384}
17385
17386impl<'a> ::std::default::Default for &'a Army {
17387 fn default() -> &'a Army {
17388 <Army as ::protobuf::Message>::default_instance()
17389 }
17390}
17391
17392impl Army {
17393 pub fn new() -> Army {
17394 ::std::default::Default::default()
17395 }
17396
17397 pub fn id(&self) -> i32 {
17400 self.id.unwrap_or(0)
17401 }
17402
17403 pub fn clear_id(&mut self) {
17404 self.id = ::std::option::Option::None;
17405 }
17406
17407 pub fn has_id(&self) -> bool {
17408 self.id.is_some()
17409 }
17410
17411 pub fn set_id(&mut self, v: i32) {
17413 self.id = ::std::option::Option::Some(v);
17414 }
17415
17416 pub fn pos_x(&self) -> i32 {
17419 self.pos_x.unwrap_or(0)
17420 }
17421
17422 pub fn clear_pos_x(&mut self) {
17423 self.pos_x = ::std::option::Option::None;
17424 }
17425
17426 pub fn has_pos_x(&self) -> bool {
17427 self.pos_x.is_some()
17428 }
17429
17430 pub fn set_pos_x(&mut self, v: i32) {
17432 self.pos_x = ::std::option::Option::Some(v);
17433 }
17434
17435 pub fn pos_y(&self) -> i32 {
17438 self.pos_y.unwrap_or(0)
17439 }
17440
17441 pub fn clear_pos_y(&mut self) {
17442 self.pos_y = ::std::option::Option::None;
17443 }
17444
17445 pub fn has_pos_y(&self) -> bool {
17446 self.pos_y.is_some()
17447 }
17448
17449 pub fn set_pos_y(&mut self, v: i32) {
17451 self.pos_y = ::std::option::Option::Some(v);
17452 }
17453
17454 pub fn pos_z(&self) -> i32 {
17457 self.pos_z.unwrap_or(0)
17458 }
17459
17460 pub fn clear_pos_z(&mut self) {
17461 self.pos_z = ::std::option::Option::None;
17462 }
17463
17464 pub fn has_pos_z(&self) -> bool {
17465 self.pos_z.is_some()
17466 }
17467
17468 pub fn set_pos_z(&mut self, v: i32) {
17470 self.pos_z = ::std::option::Option::Some(v);
17471 }
17472
17473 pub fn flags(&self) -> u32 {
17476 self.flags.unwrap_or(0)
17477 }
17478
17479 pub fn clear_flags(&mut self) {
17480 self.flags = ::std::option::Option::None;
17481 }
17482
17483 pub fn has_flags(&self) -> bool {
17484 self.flags.is_some()
17485 }
17486
17487 pub fn set_flags(&mut self, v: u32) {
17489 self.flags = ::std::option::Option::Some(v);
17490 }
17491
17492 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
17493 let mut fields = ::std::vec::Vec::with_capacity(7);
17494 let mut oneofs = ::std::vec::Vec::with_capacity(0);
17495 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17496 "id",
17497 |m: &Army| { &m.id },
17498 |m: &mut Army| { &mut m.id },
17499 ));
17500 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17501 "pos_x",
17502 |m: &Army| { &m.pos_x },
17503 |m: &mut Army| { &mut m.pos_x },
17504 ));
17505 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17506 "pos_y",
17507 |m: &Army| { &m.pos_y },
17508 |m: &mut Army| { &mut m.pos_y },
17509 ));
17510 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17511 "pos_z",
17512 |m: &Army| { &m.pos_z },
17513 |m: &mut Army| { &mut m.pos_z },
17514 ));
17515 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, UnitDefinition>(
17516 "leader",
17517 |m: &Army| { &m.leader },
17518 |m: &mut Army| { &mut m.leader },
17519 ));
17520 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
17521 "members",
17522 |m: &Army| { &m.members },
17523 |m: &mut Army| { &mut m.members },
17524 ));
17525 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17526 "flags",
17527 |m: &Army| { &m.flags },
17528 |m: &mut Army| { &mut m.flags },
17529 ));
17530 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Army>(
17531 "Army",
17532 fields,
17533 oneofs,
17534 )
17535 }
17536}
17537
17538impl ::protobuf::Message for Army {
17539 const NAME: &'static str = "Army";
17540
17541 fn is_initialized(&self) -> bool {
17542 for v in &self.leader {
17543 if !v.is_initialized() {
17544 return false;
17545 }
17546 };
17547 for v in &self.members {
17548 if !v.is_initialized() {
17549 return false;
17550 }
17551 };
17552 true
17553 }
17554
17555 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
17556 while let Some(tag) = is.read_raw_tag_or_eof()? {
17557 match tag {
17558 8 => {
17559 self.id = ::std::option::Option::Some(is.read_int32()?);
17560 },
17561 16 => {
17562 self.pos_x = ::std::option::Option::Some(is.read_int32()?);
17563 },
17564 24 => {
17565 self.pos_y = ::std::option::Option::Some(is.read_int32()?);
17566 },
17567 32 => {
17568 self.pos_z = ::std::option::Option::Some(is.read_int32()?);
17569 },
17570 42 => {
17571 ::protobuf::rt::read_singular_message_into_field(is, &mut self.leader)?;
17572 },
17573 50 => {
17574 self.members.push(is.read_message()?);
17575 },
17576 56 => {
17577 self.flags = ::std::option::Option::Some(is.read_uint32()?);
17578 },
17579 tag => {
17580 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
17581 },
17582 };
17583 }
17584 ::std::result::Result::Ok(())
17585 }
17586
17587 #[allow(unused_variables)]
17589 fn compute_size(&self) -> u64 {
17590 let mut my_size = 0;
17591 if let Some(v) = self.id {
17592 my_size += ::protobuf::rt::int32_size(1, v);
17593 }
17594 if let Some(v) = self.pos_x {
17595 my_size += ::protobuf::rt::int32_size(2, v);
17596 }
17597 if let Some(v) = self.pos_y {
17598 my_size += ::protobuf::rt::int32_size(3, v);
17599 }
17600 if let Some(v) = self.pos_z {
17601 my_size += ::protobuf::rt::int32_size(4, v);
17602 }
17603 if let Some(v) = self.leader.as_ref() {
17604 let len = v.compute_size();
17605 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17606 }
17607 for value in &self.members {
17608 let len = value.compute_size();
17609 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17610 };
17611 if let Some(v) = self.flags {
17612 my_size += ::protobuf::rt::uint32_size(7, v);
17613 }
17614 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
17615 self.special_fields.cached_size().set(my_size as u32);
17616 my_size
17617 }
17618
17619 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
17620 if let Some(v) = self.id {
17621 os.write_int32(1, v)?;
17622 }
17623 if let Some(v) = self.pos_x {
17624 os.write_int32(2, v)?;
17625 }
17626 if let Some(v) = self.pos_y {
17627 os.write_int32(3, v)?;
17628 }
17629 if let Some(v) = self.pos_z {
17630 os.write_int32(4, v)?;
17631 }
17632 if let Some(v) = self.leader.as_ref() {
17633 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
17634 }
17635 for v in &self.members {
17636 ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
17637 };
17638 if let Some(v) = self.flags {
17639 os.write_uint32(7, v)?;
17640 }
17641 os.write_unknown_fields(self.special_fields.unknown_fields())?;
17642 ::std::result::Result::Ok(())
17643 }
17644
17645 fn special_fields(&self) -> &::protobuf::SpecialFields {
17646 &self.special_fields
17647 }
17648
17649 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
17650 &mut self.special_fields
17651 }
17652
17653 fn new() -> Army {
17654 Army::new()
17655 }
17656
17657 fn clear(&mut self) {
17658 self.id = ::std::option::Option::None;
17659 self.pos_x = ::std::option::Option::None;
17660 self.pos_y = ::std::option::Option::None;
17661 self.pos_z = ::std::option::Option::None;
17662 self.leader.clear();
17663 self.members.clear();
17664 self.flags = ::std::option::Option::None;
17665 self.special_fields.clear();
17666 }
17667
17668 fn default_instance() -> &'static Army {
17669 static instance: Army = Army {
17670 id: ::std::option::Option::None,
17671 pos_x: ::std::option::Option::None,
17672 pos_y: ::std::option::Option::None,
17673 pos_z: ::std::option::Option::None,
17674 leader: ::protobuf::MessageField::none(),
17675 members: ::std::vec::Vec::new(),
17676 flags: ::std::option::Option::None,
17677 special_fields: ::protobuf::SpecialFields::new(),
17678 };
17679 &instance
17680 }
17681}
17682
17683impl ::protobuf::MessageFull for Army {
17684 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
17685 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
17686 descriptor.get(|| file_descriptor().message_by_package_relative_name("Army").unwrap()).clone()
17687 }
17688}
17689
17690impl ::std::fmt::Display for Army {
17691 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
17692 ::protobuf::text_format::fmt(self, f)
17693 }
17694}
17695
17696impl ::protobuf::reflect::ProtobufValue for Army {
17697 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
17698}
17699
17700#[derive(PartialEq,Clone,Default,Debug)]
17702pub struct ArmyList {
17703 pub armies: ::std::vec::Vec<Army>,
17706 pub special_fields: ::protobuf::SpecialFields,
17709}
17710
17711impl<'a> ::std::default::Default for &'a ArmyList {
17712 fn default() -> &'a ArmyList {
17713 <ArmyList as ::protobuf::Message>::default_instance()
17714 }
17715}
17716
17717impl ArmyList {
17718 pub fn new() -> ArmyList {
17719 ::std::default::Default::default()
17720 }
17721
17722 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
17723 let mut fields = ::std::vec::Vec::with_capacity(1);
17724 let mut oneofs = ::std::vec::Vec::with_capacity(0);
17725 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
17726 "armies",
17727 |m: &ArmyList| { &m.armies },
17728 |m: &mut ArmyList| { &mut m.armies },
17729 ));
17730 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ArmyList>(
17731 "ArmyList",
17732 fields,
17733 oneofs,
17734 )
17735 }
17736}
17737
17738impl ::protobuf::Message for ArmyList {
17739 const NAME: &'static str = "ArmyList";
17740
17741 fn is_initialized(&self) -> bool {
17742 for v in &self.armies {
17743 if !v.is_initialized() {
17744 return false;
17745 }
17746 };
17747 true
17748 }
17749
17750 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
17751 while let Some(tag) = is.read_raw_tag_or_eof()? {
17752 match tag {
17753 10 => {
17754 self.armies.push(is.read_message()?);
17755 },
17756 tag => {
17757 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
17758 },
17759 };
17760 }
17761 ::std::result::Result::Ok(())
17762 }
17763
17764 #[allow(unused_variables)]
17766 fn compute_size(&self) -> u64 {
17767 let mut my_size = 0;
17768 for value in &self.armies {
17769 let len = value.compute_size();
17770 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
17771 };
17772 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
17773 self.special_fields.cached_size().set(my_size as u32);
17774 my_size
17775 }
17776
17777 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
17778 for v in &self.armies {
17779 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
17780 };
17781 os.write_unknown_fields(self.special_fields.unknown_fields())?;
17782 ::std::result::Result::Ok(())
17783 }
17784
17785 fn special_fields(&self) -> &::protobuf::SpecialFields {
17786 &self.special_fields
17787 }
17788
17789 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
17790 &mut self.special_fields
17791 }
17792
17793 fn new() -> ArmyList {
17794 ArmyList::new()
17795 }
17796
17797 fn clear(&mut self) {
17798 self.armies.clear();
17799 self.special_fields.clear();
17800 }
17801
17802 fn default_instance() -> &'static ArmyList {
17803 static instance: ArmyList = ArmyList {
17804 armies: ::std::vec::Vec::new(),
17805 special_fields: ::protobuf::SpecialFields::new(),
17806 };
17807 &instance
17808 }
17809}
17810
17811impl ::protobuf::MessageFull for ArmyList {
17812 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
17813 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
17814 descriptor.get(|| file_descriptor().message_by_package_relative_name("ArmyList").unwrap()).clone()
17815 }
17816}
17817
17818impl ::std::fmt::Display for ArmyList {
17819 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
17820 ::protobuf::text_format::fmt(self, f)
17821 }
17822}
17823
17824impl ::protobuf::reflect::ProtobufValue for ArmyList {
17825 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
17826}
17827
17828#[derive(PartialEq,Clone,Default,Debug)]
17830pub struct GrowthPrint {
17831 pub priority: ::std::option::Option<i32>,
17834 pub color: ::std::option::Option<i32>,
17836 pub timing_start: ::std::option::Option<i32>,
17838 pub timing_end: ::std::option::Option<i32>,
17840 pub tile: ::std::option::Option<i32>,
17842 pub special_fields: ::protobuf::SpecialFields,
17845}
17846
17847impl<'a> ::std::default::Default for &'a GrowthPrint {
17848 fn default() -> &'a GrowthPrint {
17849 <GrowthPrint as ::protobuf::Message>::default_instance()
17850 }
17851}
17852
17853impl GrowthPrint {
17854 pub fn new() -> GrowthPrint {
17855 ::std::default::Default::default()
17856 }
17857
17858 pub fn priority(&self) -> i32 {
17861 self.priority.unwrap_or(0)
17862 }
17863
17864 pub fn clear_priority(&mut self) {
17865 self.priority = ::std::option::Option::None;
17866 }
17867
17868 pub fn has_priority(&self) -> bool {
17869 self.priority.is_some()
17870 }
17871
17872 pub fn set_priority(&mut self, v: i32) {
17874 self.priority = ::std::option::Option::Some(v);
17875 }
17876
17877 pub fn color(&self) -> i32 {
17880 self.color.unwrap_or(0)
17881 }
17882
17883 pub fn clear_color(&mut self) {
17884 self.color = ::std::option::Option::None;
17885 }
17886
17887 pub fn has_color(&self) -> bool {
17888 self.color.is_some()
17889 }
17890
17891 pub fn set_color(&mut self, v: i32) {
17893 self.color = ::std::option::Option::Some(v);
17894 }
17895
17896 pub fn timing_start(&self) -> i32 {
17899 self.timing_start.unwrap_or(0)
17900 }
17901
17902 pub fn clear_timing_start(&mut self) {
17903 self.timing_start = ::std::option::Option::None;
17904 }
17905
17906 pub fn has_timing_start(&self) -> bool {
17907 self.timing_start.is_some()
17908 }
17909
17910 pub fn set_timing_start(&mut self, v: i32) {
17912 self.timing_start = ::std::option::Option::Some(v);
17913 }
17914
17915 pub fn timing_end(&self) -> i32 {
17918 self.timing_end.unwrap_or(0)
17919 }
17920
17921 pub fn clear_timing_end(&mut self) {
17922 self.timing_end = ::std::option::Option::None;
17923 }
17924
17925 pub fn has_timing_end(&self) -> bool {
17926 self.timing_end.is_some()
17927 }
17928
17929 pub fn set_timing_end(&mut self, v: i32) {
17931 self.timing_end = ::std::option::Option::Some(v);
17932 }
17933
17934 pub fn tile(&self) -> i32 {
17937 self.tile.unwrap_or(0)
17938 }
17939
17940 pub fn clear_tile(&mut self) {
17941 self.tile = ::std::option::Option::None;
17942 }
17943
17944 pub fn has_tile(&self) -> bool {
17945 self.tile.is_some()
17946 }
17947
17948 pub fn set_tile(&mut self, v: i32) {
17950 self.tile = ::std::option::Option::Some(v);
17951 }
17952
17953 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
17954 let mut fields = ::std::vec::Vec::with_capacity(5);
17955 let mut oneofs = ::std::vec::Vec::with_capacity(0);
17956 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17957 "priority",
17958 |m: &GrowthPrint| { &m.priority },
17959 |m: &mut GrowthPrint| { &mut m.priority },
17960 ));
17961 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17962 "color",
17963 |m: &GrowthPrint| { &m.color },
17964 |m: &mut GrowthPrint| { &mut m.color },
17965 ));
17966 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17967 "timing_start",
17968 |m: &GrowthPrint| { &m.timing_start },
17969 |m: &mut GrowthPrint| { &mut m.timing_start },
17970 ));
17971 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17972 "timing_end",
17973 |m: &GrowthPrint| { &m.timing_end },
17974 |m: &mut GrowthPrint| { &mut m.timing_end },
17975 ));
17976 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
17977 "tile",
17978 |m: &GrowthPrint| { &m.tile },
17979 |m: &mut GrowthPrint| { &mut m.tile },
17980 ));
17981 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<GrowthPrint>(
17982 "GrowthPrint",
17983 fields,
17984 oneofs,
17985 )
17986 }
17987}
17988
17989impl ::protobuf::Message for GrowthPrint {
17990 const NAME: &'static str = "GrowthPrint";
17991
17992 fn is_initialized(&self) -> bool {
17993 true
17994 }
17995
17996 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
17997 while let Some(tag) = is.read_raw_tag_or_eof()? {
17998 match tag {
17999 8 => {
18000 self.priority = ::std::option::Option::Some(is.read_int32()?);
18001 },
18002 16 => {
18003 self.color = ::std::option::Option::Some(is.read_int32()?);
18004 },
18005 24 => {
18006 self.timing_start = ::std::option::Option::Some(is.read_int32()?);
18007 },
18008 32 => {
18009 self.timing_end = ::std::option::Option::Some(is.read_int32()?);
18010 },
18011 40 => {
18012 self.tile = ::std::option::Option::Some(is.read_int32()?);
18013 },
18014 tag => {
18015 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
18016 },
18017 };
18018 }
18019 ::std::result::Result::Ok(())
18020 }
18021
18022 #[allow(unused_variables)]
18024 fn compute_size(&self) -> u64 {
18025 let mut my_size = 0;
18026 if let Some(v) = self.priority {
18027 my_size += ::protobuf::rt::int32_size(1, v);
18028 }
18029 if let Some(v) = self.color {
18030 my_size += ::protobuf::rt::int32_size(2, v);
18031 }
18032 if let Some(v) = self.timing_start {
18033 my_size += ::protobuf::rt::int32_size(3, v);
18034 }
18035 if let Some(v) = self.timing_end {
18036 my_size += ::protobuf::rt::int32_size(4, v);
18037 }
18038 if let Some(v) = self.tile {
18039 my_size += ::protobuf::rt::int32_size(5, v);
18040 }
18041 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
18042 self.special_fields.cached_size().set(my_size as u32);
18043 my_size
18044 }
18045
18046 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
18047 if let Some(v) = self.priority {
18048 os.write_int32(1, v)?;
18049 }
18050 if let Some(v) = self.color {
18051 os.write_int32(2, v)?;
18052 }
18053 if let Some(v) = self.timing_start {
18054 os.write_int32(3, v)?;
18055 }
18056 if let Some(v) = self.timing_end {
18057 os.write_int32(4, v)?;
18058 }
18059 if let Some(v) = self.tile {
18060 os.write_int32(5, v)?;
18061 }
18062 os.write_unknown_fields(self.special_fields.unknown_fields())?;
18063 ::std::result::Result::Ok(())
18064 }
18065
18066 fn special_fields(&self) -> &::protobuf::SpecialFields {
18067 &self.special_fields
18068 }
18069
18070 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
18071 &mut self.special_fields
18072 }
18073
18074 fn new() -> GrowthPrint {
18075 GrowthPrint::new()
18076 }
18077
18078 fn clear(&mut self) {
18079 self.priority = ::std::option::Option::None;
18080 self.color = ::std::option::Option::None;
18081 self.timing_start = ::std::option::Option::None;
18082 self.timing_end = ::std::option::Option::None;
18083 self.tile = ::std::option::Option::None;
18084 self.special_fields.clear();
18085 }
18086
18087 fn default_instance() -> &'static GrowthPrint {
18088 static instance: GrowthPrint = GrowthPrint {
18089 priority: ::std::option::Option::None,
18090 color: ::std::option::Option::None,
18091 timing_start: ::std::option::Option::None,
18092 timing_end: ::std::option::Option::None,
18093 tile: ::std::option::Option::None,
18094 special_fields: ::protobuf::SpecialFields::new(),
18095 };
18096 &instance
18097 }
18098}
18099
18100impl ::protobuf::MessageFull for GrowthPrint {
18101 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
18102 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
18103 descriptor.get(|| file_descriptor().message_by_package_relative_name("GrowthPrint").unwrap()).clone()
18104 }
18105}
18106
18107impl ::std::fmt::Display for GrowthPrint {
18108 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
18109 ::protobuf::text_format::fmt(self, f)
18110 }
18111}
18112
18113impl ::protobuf::reflect::ProtobufValue for GrowthPrint {
18114 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
18115}
18116
18117#[derive(PartialEq,Clone,Default,Debug)]
18119pub struct TreeGrowth {
18120 pub index: ::std::option::Option<i32>,
18123 pub id: ::std::option::Option<::std::string::String>,
18125 pub name: ::std::option::Option<::std::string::String>,
18127 pub mat: ::protobuf::MessageField<MatPair>,
18129 pub prints: ::std::vec::Vec<GrowthPrint>,
18131 pub timing_start: ::std::option::Option<i32>,
18133 pub timing_end: ::std::option::Option<i32>,
18135 pub twigs: ::std::option::Option<bool>,
18137 pub light_branches: ::std::option::Option<bool>,
18139 pub heavy_branches: ::std::option::Option<bool>,
18141 pub trunk: ::std::option::Option<bool>,
18143 pub roots: ::std::option::Option<bool>,
18145 pub cap: ::std::option::Option<bool>,
18147 pub sapling: ::std::option::Option<bool>,
18149 pub trunk_height_start: ::std::option::Option<i32>,
18151 pub trunk_height_end: ::std::option::Option<i32>,
18153 pub special_fields: ::protobuf::SpecialFields,
18156}
18157
18158impl<'a> ::std::default::Default for &'a TreeGrowth {
18159 fn default() -> &'a TreeGrowth {
18160 <TreeGrowth as ::protobuf::Message>::default_instance()
18161 }
18162}
18163
18164impl TreeGrowth {
18165 pub fn new() -> TreeGrowth {
18166 ::std::default::Default::default()
18167 }
18168
18169 pub fn index(&self) -> i32 {
18172 self.index.unwrap_or(0)
18173 }
18174
18175 pub fn clear_index(&mut self) {
18176 self.index = ::std::option::Option::None;
18177 }
18178
18179 pub fn has_index(&self) -> bool {
18180 self.index.is_some()
18181 }
18182
18183 pub fn set_index(&mut self, v: i32) {
18185 self.index = ::std::option::Option::Some(v);
18186 }
18187
18188 pub fn id(&self) -> &str {
18191 match self.id.as_ref() {
18192 Some(v) => v,
18193 None => "",
18194 }
18195 }
18196
18197 pub fn clear_id(&mut self) {
18198 self.id = ::std::option::Option::None;
18199 }
18200
18201 pub fn has_id(&self) -> bool {
18202 self.id.is_some()
18203 }
18204
18205 pub fn set_id(&mut self, v: ::std::string::String) {
18207 self.id = ::std::option::Option::Some(v);
18208 }
18209
18210 pub fn mut_id(&mut self) -> &mut ::std::string::String {
18213 if self.id.is_none() {
18214 self.id = ::std::option::Option::Some(::std::string::String::new());
18215 }
18216 self.id.as_mut().unwrap()
18217 }
18218
18219 pub fn take_id(&mut self) -> ::std::string::String {
18221 self.id.take().unwrap_or_else(|| ::std::string::String::new())
18222 }
18223
18224 pub fn name(&self) -> &str {
18227 match self.name.as_ref() {
18228 Some(v) => v,
18229 None => "",
18230 }
18231 }
18232
18233 pub fn clear_name(&mut self) {
18234 self.name = ::std::option::Option::None;
18235 }
18236
18237 pub fn has_name(&self) -> bool {
18238 self.name.is_some()
18239 }
18240
18241 pub fn set_name(&mut self, v: ::std::string::String) {
18243 self.name = ::std::option::Option::Some(v);
18244 }
18245
18246 pub fn mut_name(&mut self) -> &mut ::std::string::String {
18249 if self.name.is_none() {
18250 self.name = ::std::option::Option::Some(::std::string::String::new());
18251 }
18252 self.name.as_mut().unwrap()
18253 }
18254
18255 pub fn take_name(&mut self) -> ::std::string::String {
18257 self.name.take().unwrap_or_else(|| ::std::string::String::new())
18258 }
18259
18260 pub fn timing_start(&self) -> i32 {
18263 self.timing_start.unwrap_or(0)
18264 }
18265
18266 pub fn clear_timing_start(&mut self) {
18267 self.timing_start = ::std::option::Option::None;
18268 }
18269
18270 pub fn has_timing_start(&self) -> bool {
18271 self.timing_start.is_some()
18272 }
18273
18274 pub fn set_timing_start(&mut self, v: i32) {
18276 self.timing_start = ::std::option::Option::Some(v);
18277 }
18278
18279 pub fn timing_end(&self) -> i32 {
18282 self.timing_end.unwrap_or(0)
18283 }
18284
18285 pub fn clear_timing_end(&mut self) {
18286 self.timing_end = ::std::option::Option::None;
18287 }
18288
18289 pub fn has_timing_end(&self) -> bool {
18290 self.timing_end.is_some()
18291 }
18292
18293 pub fn set_timing_end(&mut self, v: i32) {
18295 self.timing_end = ::std::option::Option::Some(v);
18296 }
18297
18298 pub fn twigs(&self) -> bool {
18301 self.twigs.unwrap_or(false)
18302 }
18303
18304 pub fn clear_twigs(&mut self) {
18305 self.twigs = ::std::option::Option::None;
18306 }
18307
18308 pub fn has_twigs(&self) -> bool {
18309 self.twigs.is_some()
18310 }
18311
18312 pub fn set_twigs(&mut self, v: bool) {
18314 self.twigs = ::std::option::Option::Some(v);
18315 }
18316
18317 pub fn light_branches(&self) -> bool {
18320 self.light_branches.unwrap_or(false)
18321 }
18322
18323 pub fn clear_light_branches(&mut self) {
18324 self.light_branches = ::std::option::Option::None;
18325 }
18326
18327 pub fn has_light_branches(&self) -> bool {
18328 self.light_branches.is_some()
18329 }
18330
18331 pub fn set_light_branches(&mut self, v: bool) {
18333 self.light_branches = ::std::option::Option::Some(v);
18334 }
18335
18336 pub fn heavy_branches(&self) -> bool {
18339 self.heavy_branches.unwrap_or(false)
18340 }
18341
18342 pub fn clear_heavy_branches(&mut self) {
18343 self.heavy_branches = ::std::option::Option::None;
18344 }
18345
18346 pub fn has_heavy_branches(&self) -> bool {
18347 self.heavy_branches.is_some()
18348 }
18349
18350 pub fn set_heavy_branches(&mut self, v: bool) {
18352 self.heavy_branches = ::std::option::Option::Some(v);
18353 }
18354
18355 pub fn trunk(&self) -> bool {
18358 self.trunk.unwrap_or(false)
18359 }
18360
18361 pub fn clear_trunk(&mut self) {
18362 self.trunk = ::std::option::Option::None;
18363 }
18364
18365 pub fn has_trunk(&self) -> bool {
18366 self.trunk.is_some()
18367 }
18368
18369 pub fn set_trunk(&mut self, v: bool) {
18371 self.trunk = ::std::option::Option::Some(v);
18372 }
18373
18374 pub fn roots(&self) -> bool {
18377 self.roots.unwrap_or(false)
18378 }
18379
18380 pub fn clear_roots(&mut self) {
18381 self.roots = ::std::option::Option::None;
18382 }
18383
18384 pub fn has_roots(&self) -> bool {
18385 self.roots.is_some()
18386 }
18387
18388 pub fn set_roots(&mut self, v: bool) {
18390 self.roots = ::std::option::Option::Some(v);
18391 }
18392
18393 pub fn cap(&self) -> bool {
18396 self.cap.unwrap_or(false)
18397 }
18398
18399 pub fn clear_cap(&mut self) {
18400 self.cap = ::std::option::Option::None;
18401 }
18402
18403 pub fn has_cap(&self) -> bool {
18404 self.cap.is_some()
18405 }
18406
18407 pub fn set_cap(&mut self, v: bool) {
18409 self.cap = ::std::option::Option::Some(v);
18410 }
18411
18412 pub fn sapling(&self) -> bool {
18415 self.sapling.unwrap_or(false)
18416 }
18417
18418 pub fn clear_sapling(&mut self) {
18419 self.sapling = ::std::option::Option::None;
18420 }
18421
18422 pub fn has_sapling(&self) -> bool {
18423 self.sapling.is_some()
18424 }
18425
18426 pub fn set_sapling(&mut self, v: bool) {
18428 self.sapling = ::std::option::Option::Some(v);
18429 }
18430
18431 pub fn trunk_height_start(&self) -> i32 {
18434 self.trunk_height_start.unwrap_or(0)
18435 }
18436
18437 pub fn clear_trunk_height_start(&mut self) {
18438 self.trunk_height_start = ::std::option::Option::None;
18439 }
18440
18441 pub fn has_trunk_height_start(&self) -> bool {
18442 self.trunk_height_start.is_some()
18443 }
18444
18445 pub fn set_trunk_height_start(&mut self, v: i32) {
18447 self.trunk_height_start = ::std::option::Option::Some(v);
18448 }
18449
18450 pub fn trunk_height_end(&self) -> i32 {
18453 self.trunk_height_end.unwrap_or(0)
18454 }
18455
18456 pub fn clear_trunk_height_end(&mut self) {
18457 self.trunk_height_end = ::std::option::Option::None;
18458 }
18459
18460 pub fn has_trunk_height_end(&self) -> bool {
18461 self.trunk_height_end.is_some()
18462 }
18463
18464 pub fn set_trunk_height_end(&mut self, v: i32) {
18466 self.trunk_height_end = ::std::option::Option::Some(v);
18467 }
18468
18469 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
18470 let mut fields = ::std::vec::Vec::with_capacity(16);
18471 let mut oneofs = ::std::vec::Vec::with_capacity(0);
18472 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18473 "index",
18474 |m: &TreeGrowth| { &m.index },
18475 |m: &mut TreeGrowth| { &mut m.index },
18476 ));
18477 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18478 "id",
18479 |m: &TreeGrowth| { &m.id },
18480 |m: &mut TreeGrowth| { &mut m.id },
18481 ));
18482 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18483 "name",
18484 |m: &TreeGrowth| { &m.name },
18485 |m: &mut TreeGrowth| { &mut m.name },
18486 ));
18487 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
18488 "mat",
18489 |m: &TreeGrowth| { &m.mat },
18490 |m: &mut TreeGrowth| { &mut m.mat },
18491 ));
18492 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
18493 "prints",
18494 |m: &TreeGrowth| { &m.prints },
18495 |m: &mut TreeGrowth| { &mut m.prints },
18496 ));
18497 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18498 "timing_start",
18499 |m: &TreeGrowth| { &m.timing_start },
18500 |m: &mut TreeGrowth| { &mut m.timing_start },
18501 ));
18502 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18503 "timing_end",
18504 |m: &TreeGrowth| { &m.timing_end },
18505 |m: &mut TreeGrowth| { &mut m.timing_end },
18506 ));
18507 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18508 "twigs",
18509 |m: &TreeGrowth| { &m.twigs },
18510 |m: &mut TreeGrowth| { &mut m.twigs },
18511 ));
18512 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18513 "light_branches",
18514 |m: &TreeGrowth| { &m.light_branches },
18515 |m: &mut TreeGrowth| { &mut m.light_branches },
18516 ));
18517 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18518 "heavy_branches",
18519 |m: &TreeGrowth| { &m.heavy_branches },
18520 |m: &mut TreeGrowth| { &mut m.heavy_branches },
18521 ));
18522 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18523 "trunk",
18524 |m: &TreeGrowth| { &m.trunk },
18525 |m: &mut TreeGrowth| { &mut m.trunk },
18526 ));
18527 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18528 "roots",
18529 |m: &TreeGrowth| { &m.roots },
18530 |m: &mut TreeGrowth| { &mut m.roots },
18531 ));
18532 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18533 "cap",
18534 |m: &TreeGrowth| { &m.cap },
18535 |m: &mut TreeGrowth| { &mut m.cap },
18536 ));
18537 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18538 "sapling",
18539 |m: &TreeGrowth| { &m.sapling },
18540 |m: &mut TreeGrowth| { &mut m.sapling },
18541 ));
18542 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18543 "trunk_height_start",
18544 |m: &TreeGrowth| { &m.trunk_height_start },
18545 |m: &mut TreeGrowth| { &mut m.trunk_height_start },
18546 ));
18547 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18548 "trunk_height_end",
18549 |m: &TreeGrowth| { &m.trunk_height_end },
18550 |m: &mut TreeGrowth| { &mut m.trunk_height_end },
18551 ));
18552 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<TreeGrowth>(
18553 "TreeGrowth",
18554 fields,
18555 oneofs,
18556 )
18557 }
18558}
18559
18560impl ::protobuf::Message for TreeGrowth {
18561 const NAME: &'static str = "TreeGrowth";
18562
18563 fn is_initialized(&self) -> bool {
18564 for v in &self.mat {
18565 if !v.is_initialized() {
18566 return false;
18567 }
18568 };
18569 for v in &self.prints {
18570 if !v.is_initialized() {
18571 return false;
18572 }
18573 };
18574 true
18575 }
18576
18577 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
18578 while let Some(tag) = is.read_raw_tag_or_eof()? {
18579 match tag {
18580 8 => {
18581 self.index = ::std::option::Option::Some(is.read_int32()?);
18582 },
18583 18 => {
18584 self.id = ::std::option::Option::Some(is.read_string()?);
18585 },
18586 26 => {
18587 self.name = ::std::option::Option::Some(is.read_string()?);
18588 },
18589 34 => {
18590 ::protobuf::rt::read_singular_message_into_field(is, &mut self.mat)?;
18591 },
18592 42 => {
18593 self.prints.push(is.read_message()?);
18594 },
18595 48 => {
18596 self.timing_start = ::std::option::Option::Some(is.read_int32()?);
18597 },
18598 56 => {
18599 self.timing_end = ::std::option::Option::Some(is.read_int32()?);
18600 },
18601 64 => {
18602 self.twigs = ::std::option::Option::Some(is.read_bool()?);
18603 },
18604 72 => {
18605 self.light_branches = ::std::option::Option::Some(is.read_bool()?);
18606 },
18607 80 => {
18608 self.heavy_branches = ::std::option::Option::Some(is.read_bool()?);
18609 },
18610 88 => {
18611 self.trunk = ::std::option::Option::Some(is.read_bool()?);
18612 },
18613 96 => {
18614 self.roots = ::std::option::Option::Some(is.read_bool()?);
18615 },
18616 104 => {
18617 self.cap = ::std::option::Option::Some(is.read_bool()?);
18618 },
18619 112 => {
18620 self.sapling = ::std::option::Option::Some(is.read_bool()?);
18621 },
18622 120 => {
18623 self.trunk_height_start = ::std::option::Option::Some(is.read_int32()?);
18624 },
18625 128 => {
18626 self.trunk_height_end = ::std::option::Option::Some(is.read_int32()?);
18627 },
18628 tag => {
18629 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
18630 },
18631 };
18632 }
18633 ::std::result::Result::Ok(())
18634 }
18635
18636 #[allow(unused_variables)]
18638 fn compute_size(&self) -> u64 {
18639 let mut my_size = 0;
18640 if let Some(v) = self.index {
18641 my_size += ::protobuf::rt::int32_size(1, v);
18642 }
18643 if let Some(v) = self.id.as_ref() {
18644 my_size += ::protobuf::rt::string_size(2, &v);
18645 }
18646 if let Some(v) = self.name.as_ref() {
18647 my_size += ::protobuf::rt::string_size(3, &v);
18648 }
18649 if let Some(v) = self.mat.as_ref() {
18650 let len = v.compute_size();
18651 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
18652 }
18653 for value in &self.prints {
18654 let len = value.compute_size();
18655 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
18656 };
18657 if let Some(v) = self.timing_start {
18658 my_size += ::protobuf::rt::int32_size(6, v);
18659 }
18660 if let Some(v) = self.timing_end {
18661 my_size += ::protobuf::rt::int32_size(7, v);
18662 }
18663 if let Some(v) = self.twigs {
18664 my_size += 1 + 1;
18665 }
18666 if let Some(v) = self.light_branches {
18667 my_size += 1 + 1;
18668 }
18669 if let Some(v) = self.heavy_branches {
18670 my_size += 1 + 1;
18671 }
18672 if let Some(v) = self.trunk {
18673 my_size += 1 + 1;
18674 }
18675 if let Some(v) = self.roots {
18676 my_size += 1 + 1;
18677 }
18678 if let Some(v) = self.cap {
18679 my_size += 1 + 1;
18680 }
18681 if let Some(v) = self.sapling {
18682 my_size += 1 + 1;
18683 }
18684 if let Some(v) = self.trunk_height_start {
18685 my_size += ::protobuf::rt::int32_size(15, v);
18686 }
18687 if let Some(v) = self.trunk_height_end {
18688 my_size += ::protobuf::rt::int32_size(16, v);
18689 }
18690 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
18691 self.special_fields.cached_size().set(my_size as u32);
18692 my_size
18693 }
18694
18695 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
18696 if let Some(v) = self.index {
18697 os.write_int32(1, v)?;
18698 }
18699 if let Some(v) = self.id.as_ref() {
18700 os.write_string(2, v)?;
18701 }
18702 if let Some(v) = self.name.as_ref() {
18703 os.write_string(3, v)?;
18704 }
18705 if let Some(v) = self.mat.as_ref() {
18706 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
18707 }
18708 for v in &self.prints {
18709 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
18710 };
18711 if let Some(v) = self.timing_start {
18712 os.write_int32(6, v)?;
18713 }
18714 if let Some(v) = self.timing_end {
18715 os.write_int32(7, v)?;
18716 }
18717 if let Some(v) = self.twigs {
18718 os.write_bool(8, v)?;
18719 }
18720 if let Some(v) = self.light_branches {
18721 os.write_bool(9, v)?;
18722 }
18723 if let Some(v) = self.heavy_branches {
18724 os.write_bool(10, v)?;
18725 }
18726 if let Some(v) = self.trunk {
18727 os.write_bool(11, v)?;
18728 }
18729 if let Some(v) = self.roots {
18730 os.write_bool(12, v)?;
18731 }
18732 if let Some(v) = self.cap {
18733 os.write_bool(13, v)?;
18734 }
18735 if let Some(v) = self.sapling {
18736 os.write_bool(14, v)?;
18737 }
18738 if let Some(v) = self.trunk_height_start {
18739 os.write_int32(15, v)?;
18740 }
18741 if let Some(v) = self.trunk_height_end {
18742 os.write_int32(16, v)?;
18743 }
18744 os.write_unknown_fields(self.special_fields.unknown_fields())?;
18745 ::std::result::Result::Ok(())
18746 }
18747
18748 fn special_fields(&self) -> &::protobuf::SpecialFields {
18749 &self.special_fields
18750 }
18751
18752 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
18753 &mut self.special_fields
18754 }
18755
18756 fn new() -> TreeGrowth {
18757 TreeGrowth::new()
18758 }
18759
18760 fn clear(&mut self) {
18761 self.index = ::std::option::Option::None;
18762 self.id = ::std::option::Option::None;
18763 self.name = ::std::option::Option::None;
18764 self.mat.clear();
18765 self.prints.clear();
18766 self.timing_start = ::std::option::Option::None;
18767 self.timing_end = ::std::option::Option::None;
18768 self.twigs = ::std::option::Option::None;
18769 self.light_branches = ::std::option::Option::None;
18770 self.heavy_branches = ::std::option::Option::None;
18771 self.trunk = ::std::option::Option::None;
18772 self.roots = ::std::option::Option::None;
18773 self.cap = ::std::option::Option::None;
18774 self.sapling = ::std::option::Option::None;
18775 self.trunk_height_start = ::std::option::Option::None;
18776 self.trunk_height_end = ::std::option::Option::None;
18777 self.special_fields.clear();
18778 }
18779
18780 fn default_instance() -> &'static TreeGrowth {
18781 static instance: TreeGrowth = TreeGrowth {
18782 index: ::std::option::Option::None,
18783 id: ::std::option::Option::None,
18784 name: ::std::option::Option::None,
18785 mat: ::protobuf::MessageField::none(),
18786 prints: ::std::vec::Vec::new(),
18787 timing_start: ::std::option::Option::None,
18788 timing_end: ::std::option::Option::None,
18789 twigs: ::std::option::Option::None,
18790 light_branches: ::std::option::Option::None,
18791 heavy_branches: ::std::option::Option::None,
18792 trunk: ::std::option::Option::None,
18793 roots: ::std::option::Option::None,
18794 cap: ::std::option::Option::None,
18795 sapling: ::std::option::Option::None,
18796 trunk_height_start: ::std::option::Option::None,
18797 trunk_height_end: ::std::option::Option::None,
18798 special_fields: ::protobuf::SpecialFields::new(),
18799 };
18800 &instance
18801 }
18802}
18803
18804impl ::protobuf::MessageFull for TreeGrowth {
18805 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
18806 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
18807 descriptor.get(|| file_descriptor().message_by_package_relative_name("TreeGrowth").unwrap()).clone()
18808 }
18809}
18810
18811impl ::std::fmt::Display for TreeGrowth {
18812 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
18813 ::protobuf::text_format::fmt(self, f)
18814 }
18815}
18816
18817impl ::protobuf::reflect::ProtobufValue for TreeGrowth {
18818 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
18819}
18820
18821#[derive(PartialEq,Clone,Default,Debug)]
18823pub struct PlantRaw {
18824 pub index: ::std::option::Option<i32>,
18827 pub id: ::std::option::Option<::std::string::String>,
18829 pub name: ::std::option::Option<::std::string::String>,
18831 pub growths: ::std::vec::Vec<TreeGrowth>,
18833 pub tile: ::std::option::Option<i32>,
18835 pub special_fields: ::protobuf::SpecialFields,
18838}
18839
18840impl<'a> ::std::default::Default for &'a PlantRaw {
18841 fn default() -> &'a PlantRaw {
18842 <PlantRaw as ::protobuf::Message>::default_instance()
18843 }
18844}
18845
18846impl PlantRaw {
18847 pub fn new() -> PlantRaw {
18848 ::std::default::Default::default()
18849 }
18850
18851 pub fn index(&self) -> i32 {
18854 self.index.unwrap_or(0)
18855 }
18856
18857 pub fn clear_index(&mut self) {
18858 self.index = ::std::option::Option::None;
18859 }
18860
18861 pub fn has_index(&self) -> bool {
18862 self.index.is_some()
18863 }
18864
18865 pub fn set_index(&mut self, v: i32) {
18867 self.index = ::std::option::Option::Some(v);
18868 }
18869
18870 pub fn id(&self) -> &str {
18873 match self.id.as_ref() {
18874 Some(v) => v,
18875 None => "",
18876 }
18877 }
18878
18879 pub fn clear_id(&mut self) {
18880 self.id = ::std::option::Option::None;
18881 }
18882
18883 pub fn has_id(&self) -> bool {
18884 self.id.is_some()
18885 }
18886
18887 pub fn set_id(&mut self, v: ::std::string::String) {
18889 self.id = ::std::option::Option::Some(v);
18890 }
18891
18892 pub fn mut_id(&mut self) -> &mut ::std::string::String {
18895 if self.id.is_none() {
18896 self.id = ::std::option::Option::Some(::std::string::String::new());
18897 }
18898 self.id.as_mut().unwrap()
18899 }
18900
18901 pub fn take_id(&mut self) -> ::std::string::String {
18903 self.id.take().unwrap_or_else(|| ::std::string::String::new())
18904 }
18905
18906 pub fn name(&self) -> &str {
18909 match self.name.as_ref() {
18910 Some(v) => v,
18911 None => "",
18912 }
18913 }
18914
18915 pub fn clear_name(&mut self) {
18916 self.name = ::std::option::Option::None;
18917 }
18918
18919 pub fn has_name(&self) -> bool {
18920 self.name.is_some()
18921 }
18922
18923 pub fn set_name(&mut self, v: ::std::string::String) {
18925 self.name = ::std::option::Option::Some(v);
18926 }
18927
18928 pub fn mut_name(&mut self) -> &mut ::std::string::String {
18931 if self.name.is_none() {
18932 self.name = ::std::option::Option::Some(::std::string::String::new());
18933 }
18934 self.name.as_mut().unwrap()
18935 }
18936
18937 pub fn take_name(&mut self) -> ::std::string::String {
18939 self.name.take().unwrap_or_else(|| ::std::string::String::new())
18940 }
18941
18942 pub fn tile(&self) -> i32 {
18945 self.tile.unwrap_or(0)
18946 }
18947
18948 pub fn clear_tile(&mut self) {
18949 self.tile = ::std::option::Option::None;
18950 }
18951
18952 pub fn has_tile(&self) -> bool {
18953 self.tile.is_some()
18954 }
18955
18956 pub fn set_tile(&mut self, v: i32) {
18958 self.tile = ::std::option::Option::Some(v);
18959 }
18960
18961 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
18962 let mut fields = ::std::vec::Vec::with_capacity(5);
18963 let mut oneofs = ::std::vec::Vec::with_capacity(0);
18964 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18965 "index",
18966 |m: &PlantRaw| { &m.index },
18967 |m: &mut PlantRaw| { &mut m.index },
18968 ));
18969 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18970 "id",
18971 |m: &PlantRaw| { &m.id },
18972 |m: &mut PlantRaw| { &mut m.id },
18973 ));
18974 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18975 "name",
18976 |m: &PlantRaw| { &m.name },
18977 |m: &mut PlantRaw| { &mut m.name },
18978 ));
18979 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
18980 "growths",
18981 |m: &PlantRaw| { &m.growths },
18982 |m: &mut PlantRaw| { &mut m.growths },
18983 ));
18984 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
18985 "tile",
18986 |m: &PlantRaw| { &m.tile },
18987 |m: &mut PlantRaw| { &mut m.tile },
18988 ));
18989 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantRaw>(
18990 "PlantRaw",
18991 fields,
18992 oneofs,
18993 )
18994 }
18995}
18996
18997impl ::protobuf::Message for PlantRaw {
18998 const NAME: &'static str = "PlantRaw";
18999
19000 fn is_initialized(&self) -> bool {
19001 for v in &self.growths {
19002 if !v.is_initialized() {
19003 return false;
19004 }
19005 };
19006 true
19007 }
19008
19009 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
19010 while let Some(tag) = is.read_raw_tag_or_eof()? {
19011 match tag {
19012 8 => {
19013 self.index = ::std::option::Option::Some(is.read_int32()?);
19014 },
19015 18 => {
19016 self.id = ::std::option::Option::Some(is.read_string()?);
19017 },
19018 26 => {
19019 self.name = ::std::option::Option::Some(is.read_string()?);
19020 },
19021 34 => {
19022 self.growths.push(is.read_message()?);
19023 },
19024 40 => {
19025 self.tile = ::std::option::Option::Some(is.read_int32()?);
19026 },
19027 tag => {
19028 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
19029 },
19030 };
19031 }
19032 ::std::result::Result::Ok(())
19033 }
19034
19035 #[allow(unused_variables)]
19037 fn compute_size(&self) -> u64 {
19038 let mut my_size = 0;
19039 if let Some(v) = self.index {
19040 my_size += ::protobuf::rt::int32_size(1, v);
19041 }
19042 if let Some(v) = self.id.as_ref() {
19043 my_size += ::protobuf::rt::string_size(2, &v);
19044 }
19045 if let Some(v) = self.name.as_ref() {
19046 my_size += ::protobuf::rt::string_size(3, &v);
19047 }
19048 for value in &self.growths {
19049 let len = value.compute_size();
19050 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
19051 };
19052 if let Some(v) = self.tile {
19053 my_size += ::protobuf::rt::int32_size(5, v);
19054 }
19055 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
19056 self.special_fields.cached_size().set(my_size as u32);
19057 my_size
19058 }
19059
19060 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
19061 if let Some(v) = self.index {
19062 os.write_int32(1, v)?;
19063 }
19064 if let Some(v) = self.id.as_ref() {
19065 os.write_string(2, v)?;
19066 }
19067 if let Some(v) = self.name.as_ref() {
19068 os.write_string(3, v)?;
19069 }
19070 for v in &self.growths {
19071 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
19072 };
19073 if let Some(v) = self.tile {
19074 os.write_int32(5, v)?;
19075 }
19076 os.write_unknown_fields(self.special_fields.unknown_fields())?;
19077 ::std::result::Result::Ok(())
19078 }
19079
19080 fn special_fields(&self) -> &::protobuf::SpecialFields {
19081 &self.special_fields
19082 }
19083
19084 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
19085 &mut self.special_fields
19086 }
19087
19088 fn new() -> PlantRaw {
19089 PlantRaw::new()
19090 }
19091
19092 fn clear(&mut self) {
19093 self.index = ::std::option::Option::None;
19094 self.id = ::std::option::Option::None;
19095 self.name = ::std::option::Option::None;
19096 self.growths.clear();
19097 self.tile = ::std::option::Option::None;
19098 self.special_fields.clear();
19099 }
19100
19101 fn default_instance() -> &'static PlantRaw {
19102 static instance: PlantRaw = PlantRaw {
19103 index: ::std::option::Option::None,
19104 id: ::std::option::Option::None,
19105 name: ::std::option::Option::None,
19106 growths: ::std::vec::Vec::new(),
19107 tile: ::std::option::Option::None,
19108 special_fields: ::protobuf::SpecialFields::new(),
19109 };
19110 &instance
19111 }
19112}
19113
19114impl ::protobuf::MessageFull for PlantRaw {
19115 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
19116 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
19117 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantRaw").unwrap()).clone()
19118 }
19119}
19120
19121impl ::std::fmt::Display for PlantRaw {
19122 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
19123 ::protobuf::text_format::fmt(self, f)
19124 }
19125}
19126
19127impl ::protobuf::reflect::ProtobufValue for PlantRaw {
19128 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
19129}
19130
19131#[derive(PartialEq,Clone,Default,Debug)]
19133pub struct PlantRawList {
19134 pub plant_raws: ::std::vec::Vec<PlantRaw>,
19137 pub special_fields: ::protobuf::SpecialFields,
19140}
19141
19142impl<'a> ::std::default::Default for &'a PlantRawList {
19143 fn default() -> &'a PlantRawList {
19144 <PlantRawList as ::protobuf::Message>::default_instance()
19145 }
19146}
19147
19148impl PlantRawList {
19149 pub fn new() -> PlantRawList {
19150 ::std::default::Default::default()
19151 }
19152
19153 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
19154 let mut fields = ::std::vec::Vec::with_capacity(1);
19155 let mut oneofs = ::std::vec::Vec::with_capacity(0);
19156 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
19157 "plant_raws",
19158 |m: &PlantRawList| { &m.plant_raws },
19159 |m: &mut PlantRawList| { &mut m.plant_raws },
19160 ));
19161 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<PlantRawList>(
19162 "PlantRawList",
19163 fields,
19164 oneofs,
19165 )
19166 }
19167}
19168
19169impl ::protobuf::Message for PlantRawList {
19170 const NAME: &'static str = "PlantRawList";
19171
19172 fn is_initialized(&self) -> bool {
19173 for v in &self.plant_raws {
19174 if !v.is_initialized() {
19175 return false;
19176 }
19177 };
19178 true
19179 }
19180
19181 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
19182 while let Some(tag) = is.read_raw_tag_or_eof()? {
19183 match tag {
19184 10 => {
19185 self.plant_raws.push(is.read_message()?);
19186 },
19187 tag => {
19188 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
19189 },
19190 };
19191 }
19192 ::std::result::Result::Ok(())
19193 }
19194
19195 #[allow(unused_variables)]
19197 fn compute_size(&self) -> u64 {
19198 let mut my_size = 0;
19199 for value in &self.plant_raws {
19200 let len = value.compute_size();
19201 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
19202 };
19203 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
19204 self.special_fields.cached_size().set(my_size as u32);
19205 my_size
19206 }
19207
19208 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
19209 for v in &self.plant_raws {
19210 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
19211 };
19212 os.write_unknown_fields(self.special_fields.unknown_fields())?;
19213 ::std::result::Result::Ok(())
19214 }
19215
19216 fn special_fields(&self) -> &::protobuf::SpecialFields {
19217 &self.special_fields
19218 }
19219
19220 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
19221 &mut self.special_fields
19222 }
19223
19224 fn new() -> PlantRawList {
19225 PlantRawList::new()
19226 }
19227
19228 fn clear(&mut self) {
19229 self.plant_raws.clear();
19230 self.special_fields.clear();
19231 }
19232
19233 fn default_instance() -> &'static PlantRawList {
19234 static instance: PlantRawList = PlantRawList {
19235 plant_raws: ::std::vec::Vec::new(),
19236 special_fields: ::protobuf::SpecialFields::new(),
19237 };
19238 &instance
19239 }
19240}
19241
19242impl ::protobuf::MessageFull for PlantRawList {
19243 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
19244 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
19245 descriptor.get(|| file_descriptor().message_by_package_relative_name("PlantRawList").unwrap()).clone()
19246 }
19247}
19248
19249impl ::std::fmt::Display for PlantRawList {
19250 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
19251 ::protobuf::text_format::fmt(self, f)
19252 }
19253}
19254
19255impl ::protobuf::reflect::ProtobufValue for PlantRawList {
19256 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
19257}
19258
19259#[derive(PartialEq,Clone,Default,Debug)]
19261pub struct ScreenTile {
19262 pub character: ::std::option::Option<u32>,
19265 pub foreground: ::std::option::Option<u32>,
19267 pub background: ::std::option::Option<u32>,
19269 pub special_fields: ::protobuf::SpecialFields,
19272}
19273
19274impl<'a> ::std::default::Default for &'a ScreenTile {
19275 fn default() -> &'a ScreenTile {
19276 <ScreenTile as ::protobuf::Message>::default_instance()
19277 }
19278}
19279
19280impl ScreenTile {
19281 pub fn new() -> ScreenTile {
19282 ::std::default::Default::default()
19283 }
19284
19285 pub fn character(&self) -> u32 {
19288 self.character.unwrap_or(0)
19289 }
19290
19291 pub fn clear_character(&mut self) {
19292 self.character = ::std::option::Option::None;
19293 }
19294
19295 pub fn has_character(&self) -> bool {
19296 self.character.is_some()
19297 }
19298
19299 pub fn set_character(&mut self, v: u32) {
19301 self.character = ::std::option::Option::Some(v);
19302 }
19303
19304 pub fn foreground(&self) -> u32 {
19307 self.foreground.unwrap_or(0)
19308 }
19309
19310 pub fn clear_foreground(&mut self) {
19311 self.foreground = ::std::option::Option::None;
19312 }
19313
19314 pub fn has_foreground(&self) -> bool {
19315 self.foreground.is_some()
19316 }
19317
19318 pub fn set_foreground(&mut self, v: u32) {
19320 self.foreground = ::std::option::Option::Some(v);
19321 }
19322
19323 pub fn background(&self) -> u32 {
19326 self.background.unwrap_or(0)
19327 }
19328
19329 pub fn clear_background(&mut self) {
19330 self.background = ::std::option::Option::None;
19331 }
19332
19333 pub fn has_background(&self) -> bool {
19334 self.background.is_some()
19335 }
19336
19337 pub fn set_background(&mut self, v: u32) {
19339 self.background = ::std::option::Option::Some(v);
19340 }
19341
19342 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
19343 let mut fields = ::std::vec::Vec::with_capacity(3);
19344 let mut oneofs = ::std::vec::Vec::with_capacity(0);
19345 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19346 "character",
19347 |m: &ScreenTile| { &m.character },
19348 |m: &mut ScreenTile| { &mut m.character },
19349 ));
19350 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19351 "foreground",
19352 |m: &ScreenTile| { &m.foreground },
19353 |m: &mut ScreenTile| { &mut m.foreground },
19354 ));
19355 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19356 "background",
19357 |m: &ScreenTile| { &m.background },
19358 |m: &mut ScreenTile| { &mut m.background },
19359 ));
19360 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ScreenTile>(
19361 "ScreenTile",
19362 fields,
19363 oneofs,
19364 )
19365 }
19366}
19367
19368impl ::protobuf::Message for ScreenTile {
19369 const NAME: &'static str = "ScreenTile";
19370
19371 fn is_initialized(&self) -> bool {
19372 true
19373 }
19374
19375 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
19376 while let Some(tag) = is.read_raw_tag_or_eof()? {
19377 match tag {
19378 8 => {
19379 self.character = ::std::option::Option::Some(is.read_uint32()?);
19380 },
19381 16 => {
19382 self.foreground = ::std::option::Option::Some(is.read_uint32()?);
19383 },
19384 24 => {
19385 self.background = ::std::option::Option::Some(is.read_uint32()?);
19386 },
19387 tag => {
19388 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
19389 },
19390 };
19391 }
19392 ::std::result::Result::Ok(())
19393 }
19394
19395 #[allow(unused_variables)]
19397 fn compute_size(&self) -> u64 {
19398 let mut my_size = 0;
19399 if let Some(v) = self.character {
19400 my_size += ::protobuf::rt::uint32_size(1, v);
19401 }
19402 if let Some(v) = self.foreground {
19403 my_size += ::protobuf::rt::uint32_size(2, v);
19404 }
19405 if let Some(v) = self.background {
19406 my_size += ::protobuf::rt::uint32_size(3, v);
19407 }
19408 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
19409 self.special_fields.cached_size().set(my_size as u32);
19410 my_size
19411 }
19412
19413 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
19414 if let Some(v) = self.character {
19415 os.write_uint32(1, v)?;
19416 }
19417 if let Some(v) = self.foreground {
19418 os.write_uint32(2, v)?;
19419 }
19420 if let Some(v) = self.background {
19421 os.write_uint32(3, v)?;
19422 }
19423 os.write_unknown_fields(self.special_fields.unknown_fields())?;
19424 ::std::result::Result::Ok(())
19425 }
19426
19427 fn special_fields(&self) -> &::protobuf::SpecialFields {
19428 &self.special_fields
19429 }
19430
19431 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
19432 &mut self.special_fields
19433 }
19434
19435 fn new() -> ScreenTile {
19436 ScreenTile::new()
19437 }
19438
19439 fn clear(&mut self) {
19440 self.character = ::std::option::Option::None;
19441 self.foreground = ::std::option::Option::None;
19442 self.background = ::std::option::Option::None;
19443 self.special_fields.clear();
19444 }
19445
19446 fn default_instance() -> &'static ScreenTile {
19447 static instance: ScreenTile = ScreenTile {
19448 character: ::std::option::Option::None,
19449 foreground: ::std::option::Option::None,
19450 background: ::std::option::Option::None,
19451 special_fields: ::protobuf::SpecialFields::new(),
19452 };
19453 &instance
19454 }
19455}
19456
19457impl ::protobuf::MessageFull for ScreenTile {
19458 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
19459 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
19460 descriptor.get(|| file_descriptor().message_by_package_relative_name("ScreenTile").unwrap()).clone()
19461 }
19462}
19463
19464impl ::std::fmt::Display for ScreenTile {
19465 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
19466 ::protobuf::text_format::fmt(self, f)
19467 }
19468}
19469
19470impl ::protobuf::reflect::ProtobufValue for ScreenTile {
19471 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
19472}
19473
19474#[derive(PartialEq,Clone,Default,Debug)]
19476pub struct ScreenCapture {
19477 pub width: ::std::option::Option<u32>,
19480 pub height: ::std::option::Option<u32>,
19482 pub tiles: ::std::vec::Vec<ScreenTile>,
19484 pub special_fields: ::protobuf::SpecialFields,
19487}
19488
19489impl<'a> ::std::default::Default for &'a ScreenCapture {
19490 fn default() -> &'a ScreenCapture {
19491 <ScreenCapture as ::protobuf::Message>::default_instance()
19492 }
19493}
19494
19495impl ScreenCapture {
19496 pub fn new() -> ScreenCapture {
19497 ::std::default::Default::default()
19498 }
19499
19500 pub fn width(&self) -> u32 {
19503 self.width.unwrap_or(0)
19504 }
19505
19506 pub fn clear_width(&mut self) {
19507 self.width = ::std::option::Option::None;
19508 }
19509
19510 pub fn has_width(&self) -> bool {
19511 self.width.is_some()
19512 }
19513
19514 pub fn set_width(&mut self, v: u32) {
19516 self.width = ::std::option::Option::Some(v);
19517 }
19518
19519 pub fn height(&self) -> u32 {
19522 self.height.unwrap_or(0)
19523 }
19524
19525 pub fn clear_height(&mut self) {
19526 self.height = ::std::option::Option::None;
19527 }
19528
19529 pub fn has_height(&self) -> bool {
19530 self.height.is_some()
19531 }
19532
19533 pub fn set_height(&mut self, v: u32) {
19535 self.height = ::std::option::Option::Some(v);
19536 }
19537
19538 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
19539 let mut fields = ::std::vec::Vec::with_capacity(3);
19540 let mut oneofs = ::std::vec::Vec::with_capacity(0);
19541 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19542 "width",
19543 |m: &ScreenCapture| { &m.width },
19544 |m: &mut ScreenCapture| { &mut m.width },
19545 ));
19546 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19547 "height",
19548 |m: &ScreenCapture| { &m.height },
19549 |m: &mut ScreenCapture| { &mut m.height },
19550 ));
19551 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
19552 "tiles",
19553 |m: &ScreenCapture| { &m.tiles },
19554 |m: &mut ScreenCapture| { &mut m.tiles },
19555 ));
19556 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ScreenCapture>(
19557 "ScreenCapture",
19558 fields,
19559 oneofs,
19560 )
19561 }
19562}
19563
19564impl ::protobuf::Message for ScreenCapture {
19565 const NAME: &'static str = "ScreenCapture";
19566
19567 fn is_initialized(&self) -> bool {
19568 true
19569 }
19570
19571 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
19572 while let Some(tag) = is.read_raw_tag_or_eof()? {
19573 match tag {
19574 8 => {
19575 self.width = ::std::option::Option::Some(is.read_uint32()?);
19576 },
19577 16 => {
19578 self.height = ::std::option::Option::Some(is.read_uint32()?);
19579 },
19580 26 => {
19581 self.tiles.push(is.read_message()?);
19582 },
19583 tag => {
19584 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
19585 },
19586 };
19587 }
19588 ::std::result::Result::Ok(())
19589 }
19590
19591 #[allow(unused_variables)]
19593 fn compute_size(&self) -> u64 {
19594 let mut my_size = 0;
19595 if let Some(v) = self.width {
19596 my_size += ::protobuf::rt::uint32_size(1, v);
19597 }
19598 if let Some(v) = self.height {
19599 my_size += ::protobuf::rt::uint32_size(2, v);
19600 }
19601 for value in &self.tiles {
19602 let len = value.compute_size();
19603 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
19604 };
19605 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
19606 self.special_fields.cached_size().set(my_size as u32);
19607 my_size
19608 }
19609
19610 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
19611 if let Some(v) = self.width {
19612 os.write_uint32(1, v)?;
19613 }
19614 if let Some(v) = self.height {
19615 os.write_uint32(2, v)?;
19616 }
19617 for v in &self.tiles {
19618 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
19619 };
19620 os.write_unknown_fields(self.special_fields.unknown_fields())?;
19621 ::std::result::Result::Ok(())
19622 }
19623
19624 fn special_fields(&self) -> &::protobuf::SpecialFields {
19625 &self.special_fields
19626 }
19627
19628 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
19629 &mut self.special_fields
19630 }
19631
19632 fn new() -> ScreenCapture {
19633 ScreenCapture::new()
19634 }
19635
19636 fn clear(&mut self) {
19637 self.width = ::std::option::Option::None;
19638 self.height = ::std::option::Option::None;
19639 self.tiles.clear();
19640 self.special_fields.clear();
19641 }
19642
19643 fn default_instance() -> &'static ScreenCapture {
19644 static instance: ScreenCapture = ScreenCapture {
19645 width: ::std::option::Option::None,
19646 height: ::std::option::Option::None,
19647 tiles: ::std::vec::Vec::new(),
19648 special_fields: ::protobuf::SpecialFields::new(),
19649 };
19650 &instance
19651 }
19652}
19653
19654impl ::protobuf::MessageFull for ScreenCapture {
19655 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
19656 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
19657 descriptor.get(|| file_descriptor().message_by_package_relative_name("ScreenCapture").unwrap()).clone()
19658 }
19659}
19660
19661impl ::std::fmt::Display for ScreenCapture {
19662 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
19663 ::protobuf::text_format::fmt(self, f)
19664 }
19665}
19666
19667impl ::protobuf::reflect::ProtobufValue for ScreenCapture {
19668 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
19669}
19670
19671#[derive(PartialEq,Clone,Default,Debug)]
19673pub struct KeyboardEvent {
19674 pub type_: ::std::option::Option<u32>,
19677 pub which: ::std::option::Option<u32>,
19679 pub state: ::std::option::Option<u32>,
19681 pub scancode: ::std::option::Option<u32>,
19683 pub sym: ::std::option::Option<u32>,
19685 pub mod_: ::std::option::Option<u32>,
19687 pub unicode: ::std::option::Option<u32>,
19689 pub special_fields: ::protobuf::SpecialFields,
19692}
19693
19694impl<'a> ::std::default::Default for &'a KeyboardEvent {
19695 fn default() -> &'a KeyboardEvent {
19696 <KeyboardEvent as ::protobuf::Message>::default_instance()
19697 }
19698}
19699
19700impl KeyboardEvent {
19701 pub fn new() -> KeyboardEvent {
19702 ::std::default::Default::default()
19703 }
19704
19705 pub fn type_(&self) -> u32 {
19708 self.type_.unwrap_or(0)
19709 }
19710
19711 pub fn clear_type_(&mut self) {
19712 self.type_ = ::std::option::Option::None;
19713 }
19714
19715 pub fn has_type(&self) -> bool {
19716 self.type_.is_some()
19717 }
19718
19719 pub fn set_type(&mut self, v: u32) {
19721 self.type_ = ::std::option::Option::Some(v);
19722 }
19723
19724 pub fn which(&self) -> u32 {
19727 self.which.unwrap_or(0)
19728 }
19729
19730 pub fn clear_which(&mut self) {
19731 self.which = ::std::option::Option::None;
19732 }
19733
19734 pub fn has_which(&self) -> bool {
19735 self.which.is_some()
19736 }
19737
19738 pub fn set_which(&mut self, v: u32) {
19740 self.which = ::std::option::Option::Some(v);
19741 }
19742
19743 pub fn state(&self) -> u32 {
19746 self.state.unwrap_or(0)
19747 }
19748
19749 pub fn clear_state(&mut self) {
19750 self.state = ::std::option::Option::None;
19751 }
19752
19753 pub fn has_state(&self) -> bool {
19754 self.state.is_some()
19755 }
19756
19757 pub fn set_state(&mut self, v: u32) {
19759 self.state = ::std::option::Option::Some(v);
19760 }
19761
19762 pub fn scancode(&self) -> u32 {
19765 self.scancode.unwrap_or(0)
19766 }
19767
19768 pub fn clear_scancode(&mut self) {
19769 self.scancode = ::std::option::Option::None;
19770 }
19771
19772 pub fn has_scancode(&self) -> bool {
19773 self.scancode.is_some()
19774 }
19775
19776 pub fn set_scancode(&mut self, v: u32) {
19778 self.scancode = ::std::option::Option::Some(v);
19779 }
19780
19781 pub fn sym(&self) -> u32 {
19784 self.sym.unwrap_or(0)
19785 }
19786
19787 pub fn clear_sym(&mut self) {
19788 self.sym = ::std::option::Option::None;
19789 }
19790
19791 pub fn has_sym(&self) -> bool {
19792 self.sym.is_some()
19793 }
19794
19795 pub fn set_sym(&mut self, v: u32) {
19797 self.sym = ::std::option::Option::Some(v);
19798 }
19799
19800 pub fn mod_(&self) -> u32 {
19803 self.mod_.unwrap_or(0)
19804 }
19805
19806 pub fn clear_mod_(&mut self) {
19807 self.mod_ = ::std::option::Option::None;
19808 }
19809
19810 pub fn has_mod(&self) -> bool {
19811 self.mod_.is_some()
19812 }
19813
19814 pub fn set_mod(&mut self, v: u32) {
19816 self.mod_ = ::std::option::Option::Some(v);
19817 }
19818
19819 pub fn unicode(&self) -> u32 {
19822 self.unicode.unwrap_or(0)
19823 }
19824
19825 pub fn clear_unicode(&mut self) {
19826 self.unicode = ::std::option::Option::None;
19827 }
19828
19829 pub fn has_unicode(&self) -> bool {
19830 self.unicode.is_some()
19831 }
19832
19833 pub fn set_unicode(&mut self, v: u32) {
19835 self.unicode = ::std::option::Option::Some(v);
19836 }
19837
19838 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
19839 let mut fields = ::std::vec::Vec::with_capacity(7);
19840 let mut oneofs = ::std::vec::Vec::with_capacity(0);
19841 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19842 "type",
19843 |m: &KeyboardEvent| { &m.type_ },
19844 |m: &mut KeyboardEvent| { &mut m.type_ },
19845 ));
19846 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19847 "which",
19848 |m: &KeyboardEvent| { &m.which },
19849 |m: &mut KeyboardEvent| { &mut m.which },
19850 ));
19851 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19852 "state",
19853 |m: &KeyboardEvent| { &m.state },
19854 |m: &mut KeyboardEvent| { &mut m.state },
19855 ));
19856 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19857 "scancode",
19858 |m: &KeyboardEvent| { &m.scancode },
19859 |m: &mut KeyboardEvent| { &mut m.scancode },
19860 ));
19861 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19862 "sym",
19863 |m: &KeyboardEvent| { &m.sym },
19864 |m: &mut KeyboardEvent| { &mut m.sym },
19865 ));
19866 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19867 "mod",
19868 |m: &KeyboardEvent| { &m.mod_ },
19869 |m: &mut KeyboardEvent| { &mut m.mod_ },
19870 ));
19871 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
19872 "unicode",
19873 |m: &KeyboardEvent| { &m.unicode },
19874 |m: &mut KeyboardEvent| { &mut m.unicode },
19875 ));
19876 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<KeyboardEvent>(
19877 "KeyboardEvent",
19878 fields,
19879 oneofs,
19880 )
19881 }
19882}
19883
19884impl ::protobuf::Message for KeyboardEvent {
19885 const NAME: &'static str = "KeyboardEvent";
19886
19887 fn is_initialized(&self) -> bool {
19888 true
19889 }
19890
19891 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
19892 while let Some(tag) = is.read_raw_tag_or_eof()? {
19893 match tag {
19894 8 => {
19895 self.type_ = ::std::option::Option::Some(is.read_uint32()?);
19896 },
19897 16 => {
19898 self.which = ::std::option::Option::Some(is.read_uint32()?);
19899 },
19900 24 => {
19901 self.state = ::std::option::Option::Some(is.read_uint32()?);
19902 },
19903 32 => {
19904 self.scancode = ::std::option::Option::Some(is.read_uint32()?);
19905 },
19906 40 => {
19907 self.sym = ::std::option::Option::Some(is.read_uint32()?);
19908 },
19909 48 => {
19910 self.mod_ = ::std::option::Option::Some(is.read_uint32()?);
19911 },
19912 56 => {
19913 self.unicode = ::std::option::Option::Some(is.read_uint32()?);
19914 },
19915 tag => {
19916 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
19917 },
19918 };
19919 }
19920 ::std::result::Result::Ok(())
19921 }
19922
19923 #[allow(unused_variables)]
19925 fn compute_size(&self) -> u64 {
19926 let mut my_size = 0;
19927 if let Some(v) = self.type_ {
19928 my_size += ::protobuf::rt::uint32_size(1, v);
19929 }
19930 if let Some(v) = self.which {
19931 my_size += ::protobuf::rt::uint32_size(2, v);
19932 }
19933 if let Some(v) = self.state {
19934 my_size += ::protobuf::rt::uint32_size(3, v);
19935 }
19936 if let Some(v) = self.scancode {
19937 my_size += ::protobuf::rt::uint32_size(4, v);
19938 }
19939 if let Some(v) = self.sym {
19940 my_size += ::protobuf::rt::uint32_size(5, v);
19941 }
19942 if let Some(v) = self.mod_ {
19943 my_size += ::protobuf::rt::uint32_size(6, v);
19944 }
19945 if let Some(v) = self.unicode {
19946 my_size += ::protobuf::rt::uint32_size(7, v);
19947 }
19948 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
19949 self.special_fields.cached_size().set(my_size as u32);
19950 my_size
19951 }
19952
19953 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
19954 if let Some(v) = self.type_ {
19955 os.write_uint32(1, v)?;
19956 }
19957 if let Some(v) = self.which {
19958 os.write_uint32(2, v)?;
19959 }
19960 if let Some(v) = self.state {
19961 os.write_uint32(3, v)?;
19962 }
19963 if let Some(v) = self.scancode {
19964 os.write_uint32(4, v)?;
19965 }
19966 if let Some(v) = self.sym {
19967 os.write_uint32(5, v)?;
19968 }
19969 if let Some(v) = self.mod_ {
19970 os.write_uint32(6, v)?;
19971 }
19972 if let Some(v) = self.unicode {
19973 os.write_uint32(7, v)?;
19974 }
19975 os.write_unknown_fields(self.special_fields.unknown_fields())?;
19976 ::std::result::Result::Ok(())
19977 }
19978
19979 fn special_fields(&self) -> &::protobuf::SpecialFields {
19980 &self.special_fields
19981 }
19982
19983 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
19984 &mut self.special_fields
19985 }
19986
19987 fn new() -> KeyboardEvent {
19988 KeyboardEvent::new()
19989 }
19990
19991 fn clear(&mut self) {
19992 self.type_ = ::std::option::Option::None;
19993 self.which = ::std::option::Option::None;
19994 self.state = ::std::option::Option::None;
19995 self.scancode = ::std::option::Option::None;
19996 self.sym = ::std::option::Option::None;
19997 self.mod_ = ::std::option::Option::None;
19998 self.unicode = ::std::option::Option::None;
19999 self.special_fields.clear();
20000 }
20001
20002 fn default_instance() -> &'static KeyboardEvent {
20003 static instance: KeyboardEvent = KeyboardEvent {
20004 type_: ::std::option::Option::None,
20005 which: ::std::option::Option::None,
20006 state: ::std::option::Option::None,
20007 scancode: ::std::option::Option::None,
20008 sym: ::std::option::Option::None,
20009 mod_: ::std::option::Option::None,
20010 unicode: ::std::option::Option::None,
20011 special_fields: ::protobuf::SpecialFields::new(),
20012 };
20013 &instance
20014 }
20015}
20016
20017impl ::protobuf::MessageFull for KeyboardEvent {
20018 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
20019 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
20020 descriptor.get(|| file_descriptor().message_by_package_relative_name("KeyboardEvent").unwrap()).clone()
20021 }
20022}
20023
20024impl ::std::fmt::Display for KeyboardEvent {
20025 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20026 ::protobuf::text_format::fmt(self, f)
20027 }
20028}
20029
20030impl ::protobuf::reflect::ProtobufValue for KeyboardEvent {
20031 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
20032}
20033
20034#[derive(PartialEq,Clone,Default,Debug)]
20036pub struct DigCommand {
20037 pub designation: ::std::option::Option<::protobuf::EnumOrUnknown<TileDigDesignation>>,
20040 pub locations: ::std::vec::Vec<Coord>,
20042 pub special_fields: ::protobuf::SpecialFields,
20045}
20046
20047impl<'a> ::std::default::Default for &'a DigCommand {
20048 fn default() -> &'a DigCommand {
20049 <DigCommand as ::protobuf::Message>::default_instance()
20050 }
20051}
20052
20053impl DigCommand {
20054 pub fn new() -> DigCommand {
20055 ::std::default::Default::default()
20056 }
20057
20058 pub fn designation(&self) -> TileDigDesignation {
20061 match self.designation {
20062 Some(e) => e.enum_value_or(TileDigDesignation::NO_DIG),
20063 None => TileDigDesignation::NO_DIG,
20064 }
20065 }
20066
20067 pub fn clear_designation(&mut self) {
20068 self.designation = ::std::option::Option::None;
20069 }
20070
20071 pub fn has_designation(&self) -> bool {
20072 self.designation.is_some()
20073 }
20074
20075 pub fn set_designation(&mut self, v: TileDigDesignation) {
20077 self.designation = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
20078 }
20079
20080 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
20081 let mut fields = ::std::vec::Vec::with_capacity(2);
20082 let mut oneofs = ::std::vec::Vec::with_capacity(0);
20083 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20084 "designation",
20085 |m: &DigCommand| { &m.designation },
20086 |m: &mut DigCommand| { &mut m.designation },
20087 ));
20088 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
20089 "locations",
20090 |m: &DigCommand| { &m.locations },
20091 |m: &mut DigCommand| { &mut m.locations },
20092 ));
20093 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<DigCommand>(
20094 "DigCommand",
20095 fields,
20096 oneofs,
20097 )
20098 }
20099}
20100
20101impl ::protobuf::Message for DigCommand {
20102 const NAME: &'static str = "DigCommand";
20103
20104 fn is_initialized(&self) -> bool {
20105 true
20106 }
20107
20108 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
20109 while let Some(tag) = is.read_raw_tag_or_eof()? {
20110 match tag {
20111 8 => {
20112 self.designation = ::std::option::Option::Some(is.read_enum_or_unknown()?);
20113 },
20114 18 => {
20115 self.locations.push(is.read_message()?);
20116 },
20117 tag => {
20118 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
20119 },
20120 };
20121 }
20122 ::std::result::Result::Ok(())
20123 }
20124
20125 #[allow(unused_variables)]
20127 fn compute_size(&self) -> u64 {
20128 let mut my_size = 0;
20129 if let Some(v) = self.designation {
20130 my_size += ::protobuf::rt::int32_size(1, v.value());
20131 }
20132 for value in &self.locations {
20133 let len = value.compute_size();
20134 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
20135 };
20136 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
20137 self.special_fields.cached_size().set(my_size as u32);
20138 my_size
20139 }
20140
20141 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
20142 if let Some(v) = self.designation {
20143 os.write_enum(1, ::protobuf::EnumOrUnknown::value(&v))?;
20144 }
20145 for v in &self.locations {
20146 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
20147 };
20148 os.write_unknown_fields(self.special_fields.unknown_fields())?;
20149 ::std::result::Result::Ok(())
20150 }
20151
20152 fn special_fields(&self) -> &::protobuf::SpecialFields {
20153 &self.special_fields
20154 }
20155
20156 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
20157 &mut self.special_fields
20158 }
20159
20160 fn new() -> DigCommand {
20161 DigCommand::new()
20162 }
20163
20164 fn clear(&mut self) {
20165 self.designation = ::std::option::Option::None;
20166 self.locations.clear();
20167 self.special_fields.clear();
20168 }
20169
20170 fn default_instance() -> &'static DigCommand {
20171 static instance: DigCommand = DigCommand {
20172 designation: ::std::option::Option::None,
20173 locations: ::std::vec::Vec::new(),
20174 special_fields: ::protobuf::SpecialFields::new(),
20175 };
20176 &instance
20177 }
20178}
20179
20180impl ::protobuf::MessageFull for DigCommand {
20181 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
20182 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
20183 descriptor.get(|| file_descriptor().message_by_package_relative_name("DigCommand").unwrap()).clone()
20184 }
20185}
20186
20187impl ::std::fmt::Display for DigCommand {
20188 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20189 ::protobuf::text_format::fmt(self, f)
20190 }
20191}
20192
20193impl ::protobuf::reflect::ProtobufValue for DigCommand {
20194 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
20195}
20196
20197#[derive(PartialEq,Clone,Default,Debug)]
20199pub struct SingleBool {
20200 pub Value: ::std::option::Option<bool>,
20203 pub special_fields: ::protobuf::SpecialFields,
20206}
20207
20208impl<'a> ::std::default::Default for &'a SingleBool {
20209 fn default() -> &'a SingleBool {
20210 <SingleBool as ::protobuf::Message>::default_instance()
20211 }
20212}
20213
20214impl SingleBool {
20215 pub fn new() -> SingleBool {
20216 ::std::default::Default::default()
20217 }
20218
20219 pub fn Value(&self) -> bool {
20222 self.Value.unwrap_or(false)
20223 }
20224
20225 pub fn clear_Value(&mut self) {
20226 self.Value = ::std::option::Option::None;
20227 }
20228
20229 pub fn has_Value(&self) -> bool {
20230 self.Value.is_some()
20231 }
20232
20233 pub fn set_Value(&mut self, v: bool) {
20235 self.Value = ::std::option::Option::Some(v);
20236 }
20237
20238 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
20239 let mut fields = ::std::vec::Vec::with_capacity(1);
20240 let mut oneofs = ::std::vec::Vec::with_capacity(0);
20241 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20242 "Value",
20243 |m: &SingleBool| { &m.Value },
20244 |m: &mut SingleBool| { &mut m.Value },
20245 ));
20246 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SingleBool>(
20247 "SingleBool",
20248 fields,
20249 oneofs,
20250 )
20251 }
20252}
20253
20254impl ::protobuf::Message for SingleBool {
20255 const NAME: &'static str = "SingleBool";
20256
20257 fn is_initialized(&self) -> bool {
20258 true
20259 }
20260
20261 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
20262 while let Some(tag) = is.read_raw_tag_or_eof()? {
20263 match tag {
20264 8 => {
20265 self.Value = ::std::option::Option::Some(is.read_bool()?);
20266 },
20267 tag => {
20268 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
20269 },
20270 };
20271 }
20272 ::std::result::Result::Ok(())
20273 }
20274
20275 #[allow(unused_variables)]
20277 fn compute_size(&self) -> u64 {
20278 let mut my_size = 0;
20279 if let Some(v) = self.Value {
20280 my_size += 1 + 1;
20281 }
20282 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
20283 self.special_fields.cached_size().set(my_size as u32);
20284 my_size
20285 }
20286
20287 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
20288 if let Some(v) = self.Value {
20289 os.write_bool(1, v)?;
20290 }
20291 os.write_unknown_fields(self.special_fields.unknown_fields())?;
20292 ::std::result::Result::Ok(())
20293 }
20294
20295 fn special_fields(&self) -> &::protobuf::SpecialFields {
20296 &self.special_fields
20297 }
20298
20299 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
20300 &mut self.special_fields
20301 }
20302
20303 fn new() -> SingleBool {
20304 SingleBool::new()
20305 }
20306
20307 fn clear(&mut self) {
20308 self.Value = ::std::option::Option::None;
20309 self.special_fields.clear();
20310 }
20311
20312 fn default_instance() -> &'static SingleBool {
20313 static instance: SingleBool = SingleBool {
20314 Value: ::std::option::Option::None,
20315 special_fields: ::protobuf::SpecialFields::new(),
20316 };
20317 &instance
20318 }
20319}
20320
20321impl ::protobuf::MessageFull for SingleBool {
20322 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
20323 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
20324 descriptor.get(|| file_descriptor().message_by_package_relative_name("SingleBool").unwrap()).clone()
20325 }
20326}
20327
20328impl ::std::fmt::Display for SingleBool {
20329 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20330 ::protobuf::text_format::fmt(self, f)
20331 }
20332}
20333
20334impl ::protobuf::reflect::ProtobufValue for SingleBool {
20335 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
20336}
20337
20338#[derive(PartialEq,Clone,Default,Debug)]
20340pub struct VersionInfo {
20341 pub dwarf_fortress_version: ::std::option::Option<::std::string::String>,
20344 pub dfhack_version: ::std::option::Option<::std::string::String>,
20346 pub remote_fortress_reader_version: ::std::option::Option<::std::string::String>,
20348 pub special_fields: ::protobuf::SpecialFields,
20351}
20352
20353impl<'a> ::std::default::Default for &'a VersionInfo {
20354 fn default() -> &'a VersionInfo {
20355 <VersionInfo as ::protobuf::Message>::default_instance()
20356 }
20357}
20358
20359impl VersionInfo {
20360 pub fn new() -> VersionInfo {
20361 ::std::default::Default::default()
20362 }
20363
20364 pub fn dwarf_fortress_version(&self) -> &str {
20367 match self.dwarf_fortress_version.as_ref() {
20368 Some(v) => v,
20369 None => "",
20370 }
20371 }
20372
20373 pub fn clear_dwarf_fortress_version(&mut self) {
20374 self.dwarf_fortress_version = ::std::option::Option::None;
20375 }
20376
20377 pub fn has_dwarf_fortress_version(&self) -> bool {
20378 self.dwarf_fortress_version.is_some()
20379 }
20380
20381 pub fn set_dwarf_fortress_version(&mut self, v: ::std::string::String) {
20383 self.dwarf_fortress_version = ::std::option::Option::Some(v);
20384 }
20385
20386 pub fn mut_dwarf_fortress_version(&mut self) -> &mut ::std::string::String {
20389 if self.dwarf_fortress_version.is_none() {
20390 self.dwarf_fortress_version = ::std::option::Option::Some(::std::string::String::new());
20391 }
20392 self.dwarf_fortress_version.as_mut().unwrap()
20393 }
20394
20395 pub fn take_dwarf_fortress_version(&mut self) -> ::std::string::String {
20397 self.dwarf_fortress_version.take().unwrap_or_else(|| ::std::string::String::new())
20398 }
20399
20400 pub fn dfhack_version(&self) -> &str {
20403 match self.dfhack_version.as_ref() {
20404 Some(v) => v,
20405 None => "",
20406 }
20407 }
20408
20409 pub fn clear_dfhack_version(&mut self) {
20410 self.dfhack_version = ::std::option::Option::None;
20411 }
20412
20413 pub fn has_dfhack_version(&self) -> bool {
20414 self.dfhack_version.is_some()
20415 }
20416
20417 pub fn set_dfhack_version(&mut self, v: ::std::string::String) {
20419 self.dfhack_version = ::std::option::Option::Some(v);
20420 }
20421
20422 pub fn mut_dfhack_version(&mut self) -> &mut ::std::string::String {
20425 if self.dfhack_version.is_none() {
20426 self.dfhack_version = ::std::option::Option::Some(::std::string::String::new());
20427 }
20428 self.dfhack_version.as_mut().unwrap()
20429 }
20430
20431 pub fn take_dfhack_version(&mut self) -> ::std::string::String {
20433 self.dfhack_version.take().unwrap_or_else(|| ::std::string::String::new())
20434 }
20435
20436 pub fn remote_fortress_reader_version(&self) -> &str {
20439 match self.remote_fortress_reader_version.as_ref() {
20440 Some(v) => v,
20441 None => "",
20442 }
20443 }
20444
20445 pub fn clear_remote_fortress_reader_version(&mut self) {
20446 self.remote_fortress_reader_version = ::std::option::Option::None;
20447 }
20448
20449 pub fn has_remote_fortress_reader_version(&self) -> bool {
20450 self.remote_fortress_reader_version.is_some()
20451 }
20452
20453 pub fn set_remote_fortress_reader_version(&mut self, v: ::std::string::String) {
20455 self.remote_fortress_reader_version = ::std::option::Option::Some(v);
20456 }
20457
20458 pub fn mut_remote_fortress_reader_version(&mut self) -> &mut ::std::string::String {
20461 if self.remote_fortress_reader_version.is_none() {
20462 self.remote_fortress_reader_version = ::std::option::Option::Some(::std::string::String::new());
20463 }
20464 self.remote_fortress_reader_version.as_mut().unwrap()
20465 }
20466
20467 pub fn take_remote_fortress_reader_version(&mut self) -> ::std::string::String {
20469 self.remote_fortress_reader_version.take().unwrap_or_else(|| ::std::string::String::new())
20470 }
20471
20472 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
20473 let mut fields = ::std::vec::Vec::with_capacity(3);
20474 let mut oneofs = ::std::vec::Vec::with_capacity(0);
20475 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20476 "dwarf_fortress_version",
20477 |m: &VersionInfo| { &m.dwarf_fortress_version },
20478 |m: &mut VersionInfo| { &mut m.dwarf_fortress_version },
20479 ));
20480 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20481 "dfhack_version",
20482 |m: &VersionInfo| { &m.dfhack_version },
20483 |m: &mut VersionInfo| { &mut m.dfhack_version },
20484 ));
20485 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20486 "remote_fortress_reader_version",
20487 |m: &VersionInfo| { &m.remote_fortress_reader_version },
20488 |m: &mut VersionInfo| { &mut m.remote_fortress_reader_version },
20489 ));
20490 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<VersionInfo>(
20491 "VersionInfo",
20492 fields,
20493 oneofs,
20494 )
20495 }
20496}
20497
20498impl ::protobuf::Message for VersionInfo {
20499 const NAME: &'static str = "VersionInfo";
20500
20501 fn is_initialized(&self) -> bool {
20502 true
20503 }
20504
20505 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
20506 while let Some(tag) = is.read_raw_tag_or_eof()? {
20507 match tag {
20508 10 => {
20509 self.dwarf_fortress_version = ::std::option::Option::Some(is.read_string()?);
20510 },
20511 18 => {
20512 self.dfhack_version = ::std::option::Option::Some(is.read_string()?);
20513 },
20514 26 => {
20515 self.remote_fortress_reader_version = ::std::option::Option::Some(is.read_string()?);
20516 },
20517 tag => {
20518 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
20519 },
20520 };
20521 }
20522 ::std::result::Result::Ok(())
20523 }
20524
20525 #[allow(unused_variables)]
20527 fn compute_size(&self) -> u64 {
20528 let mut my_size = 0;
20529 if let Some(v) = self.dwarf_fortress_version.as_ref() {
20530 my_size += ::protobuf::rt::string_size(1, &v);
20531 }
20532 if let Some(v) = self.dfhack_version.as_ref() {
20533 my_size += ::protobuf::rt::string_size(2, &v);
20534 }
20535 if let Some(v) = self.remote_fortress_reader_version.as_ref() {
20536 my_size += ::protobuf::rt::string_size(3, &v);
20537 }
20538 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
20539 self.special_fields.cached_size().set(my_size as u32);
20540 my_size
20541 }
20542
20543 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
20544 if let Some(v) = self.dwarf_fortress_version.as_ref() {
20545 os.write_string(1, v)?;
20546 }
20547 if let Some(v) = self.dfhack_version.as_ref() {
20548 os.write_string(2, v)?;
20549 }
20550 if let Some(v) = self.remote_fortress_reader_version.as_ref() {
20551 os.write_string(3, v)?;
20552 }
20553 os.write_unknown_fields(self.special_fields.unknown_fields())?;
20554 ::std::result::Result::Ok(())
20555 }
20556
20557 fn special_fields(&self) -> &::protobuf::SpecialFields {
20558 &self.special_fields
20559 }
20560
20561 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
20562 &mut self.special_fields
20563 }
20564
20565 fn new() -> VersionInfo {
20566 VersionInfo::new()
20567 }
20568
20569 fn clear(&mut self) {
20570 self.dwarf_fortress_version = ::std::option::Option::None;
20571 self.dfhack_version = ::std::option::Option::None;
20572 self.remote_fortress_reader_version = ::std::option::Option::None;
20573 self.special_fields.clear();
20574 }
20575
20576 fn default_instance() -> &'static VersionInfo {
20577 static instance: VersionInfo = VersionInfo {
20578 dwarf_fortress_version: ::std::option::Option::None,
20579 dfhack_version: ::std::option::Option::None,
20580 remote_fortress_reader_version: ::std::option::Option::None,
20581 special_fields: ::protobuf::SpecialFields::new(),
20582 };
20583 &instance
20584 }
20585}
20586
20587impl ::protobuf::MessageFull for VersionInfo {
20588 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
20589 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
20590 descriptor.get(|| file_descriptor().message_by_package_relative_name("VersionInfo").unwrap()).clone()
20591 }
20592}
20593
20594impl ::std::fmt::Display for VersionInfo {
20595 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20596 ::protobuf::text_format::fmt(self, f)
20597 }
20598}
20599
20600impl ::protobuf::reflect::ProtobufValue for VersionInfo {
20601 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
20602}
20603
20604#[derive(PartialEq,Clone,Default,Debug)]
20606pub struct ListRequest {
20607 pub list_start: ::std::option::Option<i32>,
20610 pub list_end: ::std::option::Option<i32>,
20612 pub special_fields: ::protobuf::SpecialFields,
20615}
20616
20617impl<'a> ::std::default::Default for &'a ListRequest {
20618 fn default() -> &'a ListRequest {
20619 <ListRequest as ::protobuf::Message>::default_instance()
20620 }
20621}
20622
20623impl ListRequest {
20624 pub fn new() -> ListRequest {
20625 ::std::default::Default::default()
20626 }
20627
20628 pub fn list_start(&self) -> i32 {
20631 self.list_start.unwrap_or(0)
20632 }
20633
20634 pub fn clear_list_start(&mut self) {
20635 self.list_start = ::std::option::Option::None;
20636 }
20637
20638 pub fn has_list_start(&self) -> bool {
20639 self.list_start.is_some()
20640 }
20641
20642 pub fn set_list_start(&mut self, v: i32) {
20644 self.list_start = ::std::option::Option::Some(v);
20645 }
20646
20647 pub fn list_end(&self) -> i32 {
20650 self.list_end.unwrap_or(0)
20651 }
20652
20653 pub fn clear_list_end(&mut self) {
20654 self.list_end = ::std::option::Option::None;
20655 }
20656
20657 pub fn has_list_end(&self) -> bool {
20658 self.list_end.is_some()
20659 }
20660
20661 pub fn set_list_end(&mut self, v: i32) {
20663 self.list_end = ::std::option::Option::Some(v);
20664 }
20665
20666 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
20667 let mut fields = ::std::vec::Vec::with_capacity(2);
20668 let mut oneofs = ::std::vec::Vec::with_capacity(0);
20669 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20670 "list_start",
20671 |m: &ListRequest| { &m.list_start },
20672 |m: &mut ListRequest| { &mut m.list_start },
20673 ));
20674 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
20675 "list_end",
20676 |m: &ListRequest| { &m.list_end },
20677 |m: &mut ListRequest| { &mut m.list_end },
20678 ));
20679 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ListRequest>(
20680 "ListRequest",
20681 fields,
20682 oneofs,
20683 )
20684 }
20685}
20686
20687impl ::protobuf::Message for ListRequest {
20688 const NAME: &'static str = "ListRequest";
20689
20690 fn is_initialized(&self) -> bool {
20691 true
20692 }
20693
20694 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
20695 while let Some(tag) = is.read_raw_tag_or_eof()? {
20696 match tag {
20697 8 => {
20698 self.list_start = ::std::option::Option::Some(is.read_int32()?);
20699 },
20700 16 => {
20701 self.list_end = ::std::option::Option::Some(is.read_int32()?);
20702 },
20703 tag => {
20704 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
20705 },
20706 };
20707 }
20708 ::std::result::Result::Ok(())
20709 }
20710
20711 #[allow(unused_variables)]
20713 fn compute_size(&self) -> u64 {
20714 let mut my_size = 0;
20715 if let Some(v) = self.list_start {
20716 my_size += ::protobuf::rt::int32_size(1, v);
20717 }
20718 if let Some(v) = self.list_end {
20719 my_size += ::protobuf::rt::int32_size(2, v);
20720 }
20721 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
20722 self.special_fields.cached_size().set(my_size as u32);
20723 my_size
20724 }
20725
20726 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
20727 if let Some(v) = self.list_start {
20728 os.write_int32(1, v)?;
20729 }
20730 if let Some(v) = self.list_end {
20731 os.write_int32(2, v)?;
20732 }
20733 os.write_unknown_fields(self.special_fields.unknown_fields())?;
20734 ::std::result::Result::Ok(())
20735 }
20736
20737 fn special_fields(&self) -> &::protobuf::SpecialFields {
20738 &self.special_fields
20739 }
20740
20741 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
20742 &mut self.special_fields
20743 }
20744
20745 fn new() -> ListRequest {
20746 ListRequest::new()
20747 }
20748
20749 fn clear(&mut self) {
20750 self.list_start = ::std::option::Option::None;
20751 self.list_end = ::std::option::Option::None;
20752 self.special_fields.clear();
20753 }
20754
20755 fn default_instance() -> &'static ListRequest {
20756 static instance: ListRequest = ListRequest {
20757 list_start: ::std::option::Option::None,
20758 list_end: ::std::option::Option::None,
20759 special_fields: ::protobuf::SpecialFields::new(),
20760 };
20761 &instance
20762 }
20763}
20764
20765impl ::protobuf::MessageFull for ListRequest {
20766 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
20767 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
20768 descriptor.get(|| file_descriptor().message_by_package_relative_name("ListRequest").unwrap()).clone()
20769 }
20770}
20771
20772impl ::std::fmt::Display for ListRequest {
20773 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20774 ::protobuf::text_format::fmt(self, f)
20775 }
20776}
20777
20778impl ::protobuf::reflect::ProtobufValue for ListRequest {
20779 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
20780}
20781
20782#[derive(PartialEq,Clone,Default,Debug)]
20784pub struct Report {
20785 pub type_: ::std::option::Option<i32>,
20788 pub text: ::std::option::Option<::std::string::String>,
20790 pub color: ::protobuf::MessageField<ColorDefinition>,
20792 pub duration: ::std::option::Option<i32>,
20794 pub continuation: ::std::option::Option<bool>,
20796 pub unconscious: ::std::option::Option<bool>,
20798 pub announcement: ::std::option::Option<bool>,
20800 pub repeat_count: ::std::option::Option<i32>,
20802 pub pos: ::protobuf::MessageField<Coord>,
20804 pub id: ::std::option::Option<i32>,
20806 pub year: ::std::option::Option<i32>,
20808 pub time: ::std::option::Option<i32>,
20810 pub special_fields: ::protobuf::SpecialFields,
20813}
20814
20815impl<'a> ::std::default::Default for &'a Report {
20816 fn default() -> &'a Report {
20817 <Report as ::protobuf::Message>::default_instance()
20818 }
20819}
20820
20821impl Report {
20822 pub fn new() -> Report {
20823 ::std::default::Default::default()
20824 }
20825
20826 pub fn type_(&self) -> i32 {
20829 self.type_.unwrap_or(0)
20830 }
20831
20832 pub fn clear_type_(&mut self) {
20833 self.type_ = ::std::option::Option::None;
20834 }
20835
20836 pub fn has_type(&self) -> bool {
20837 self.type_.is_some()
20838 }
20839
20840 pub fn set_type(&mut self, v: i32) {
20842 self.type_ = ::std::option::Option::Some(v);
20843 }
20844
20845 pub fn text(&self) -> &str {
20848 match self.text.as_ref() {
20849 Some(v) => v,
20850 None => "",
20851 }
20852 }
20853
20854 pub fn clear_text(&mut self) {
20855 self.text = ::std::option::Option::None;
20856 }
20857
20858 pub fn has_text(&self) -> bool {
20859 self.text.is_some()
20860 }
20861
20862 pub fn set_text(&mut self, v: ::std::string::String) {
20864 self.text = ::std::option::Option::Some(v);
20865 }
20866
20867 pub fn mut_text(&mut self) -> &mut ::std::string::String {
20870 if self.text.is_none() {
20871 self.text = ::std::option::Option::Some(::std::string::String::new());
20872 }
20873 self.text.as_mut().unwrap()
20874 }
20875
20876 pub fn take_text(&mut self) -> ::std::string::String {
20878 self.text.take().unwrap_or_else(|| ::std::string::String::new())
20879 }
20880
20881 pub fn duration(&self) -> i32 {
20884 self.duration.unwrap_or(0)
20885 }
20886
20887 pub fn clear_duration(&mut self) {
20888 self.duration = ::std::option::Option::None;
20889 }
20890
20891 pub fn has_duration(&self) -> bool {
20892 self.duration.is_some()
20893 }
20894
20895 pub fn set_duration(&mut self, v: i32) {
20897 self.duration = ::std::option::Option::Some(v);
20898 }
20899
20900 pub fn continuation(&self) -> bool {
20903 self.continuation.unwrap_or(false)
20904 }
20905
20906 pub fn clear_continuation(&mut self) {
20907 self.continuation = ::std::option::Option::None;
20908 }
20909
20910 pub fn has_continuation(&self) -> bool {
20911 self.continuation.is_some()
20912 }
20913
20914 pub fn set_continuation(&mut self, v: bool) {
20916 self.continuation = ::std::option::Option::Some(v);
20917 }
20918
20919 pub fn unconscious(&self) -> bool {
20922 self.unconscious.unwrap_or(false)
20923 }
20924
20925 pub fn clear_unconscious(&mut self) {
20926 self.unconscious = ::std::option::Option::None;
20927 }
20928
20929 pub fn has_unconscious(&self) -> bool {
20930 self.unconscious.is_some()
20931 }
20932
20933 pub fn set_unconscious(&mut self, v: bool) {
20935 self.unconscious = ::std::option::Option::Some(v);
20936 }
20937
20938 pub fn announcement(&self) -> bool {
20941 self.announcement.unwrap_or(false)
20942 }
20943
20944 pub fn clear_announcement(&mut self) {
20945 self.announcement = ::std::option::Option::None;
20946 }
20947
20948 pub fn has_announcement(&self) -> bool {
20949 self.announcement.is_some()
20950 }
20951
20952 pub fn set_announcement(&mut self, v: bool) {
20954 self.announcement = ::std::option::Option::Some(v);
20955 }
20956
20957 pub fn repeat_count(&self) -> i32 {
20960 self.repeat_count.unwrap_or(0)
20961 }
20962
20963 pub fn clear_repeat_count(&mut self) {
20964 self.repeat_count = ::std::option::Option::None;
20965 }
20966
20967 pub fn has_repeat_count(&self) -> bool {
20968 self.repeat_count.is_some()
20969 }
20970
20971 pub fn set_repeat_count(&mut self, v: i32) {
20973 self.repeat_count = ::std::option::Option::Some(v);
20974 }
20975
20976 pub fn id(&self) -> i32 {
20979 self.id.unwrap_or(0)
20980 }
20981
20982 pub fn clear_id(&mut self) {
20983 self.id = ::std::option::Option::None;
20984 }
20985
20986 pub fn has_id(&self) -> bool {
20987 self.id.is_some()
20988 }
20989
20990 pub fn set_id(&mut self, v: i32) {
20992 self.id = ::std::option::Option::Some(v);
20993 }
20994
20995 pub fn year(&self) -> i32 {
20998 self.year.unwrap_or(0)
20999 }
21000
21001 pub fn clear_year(&mut self) {
21002 self.year = ::std::option::Option::None;
21003 }
21004
21005 pub fn has_year(&self) -> bool {
21006 self.year.is_some()
21007 }
21008
21009 pub fn set_year(&mut self, v: i32) {
21011 self.year = ::std::option::Option::Some(v);
21012 }
21013
21014 pub fn time(&self) -> i32 {
21017 self.time.unwrap_or(0)
21018 }
21019
21020 pub fn clear_time(&mut self) {
21021 self.time = ::std::option::Option::None;
21022 }
21023
21024 pub fn has_time(&self) -> bool {
21025 self.time.is_some()
21026 }
21027
21028 pub fn set_time(&mut self, v: i32) {
21030 self.time = ::std::option::Option::Some(v);
21031 }
21032
21033 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
21034 let mut fields = ::std::vec::Vec::with_capacity(12);
21035 let mut oneofs = ::std::vec::Vec::with_capacity(0);
21036 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21037 "type",
21038 |m: &Report| { &m.type_ },
21039 |m: &mut Report| { &mut m.type_ },
21040 ));
21041 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21042 "text",
21043 |m: &Report| { &m.text },
21044 |m: &mut Report| { &mut m.text },
21045 ));
21046 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ColorDefinition>(
21047 "color",
21048 |m: &Report| { &m.color },
21049 |m: &mut Report| { &mut m.color },
21050 ));
21051 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21052 "duration",
21053 |m: &Report| { &m.duration },
21054 |m: &mut Report| { &mut m.duration },
21055 ));
21056 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21057 "continuation",
21058 |m: &Report| { &m.continuation },
21059 |m: &mut Report| { &mut m.continuation },
21060 ));
21061 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21062 "unconscious",
21063 |m: &Report| { &m.unconscious },
21064 |m: &mut Report| { &mut m.unconscious },
21065 ));
21066 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21067 "announcement",
21068 |m: &Report| { &m.announcement },
21069 |m: &mut Report| { &mut m.announcement },
21070 ));
21071 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21072 "repeat_count",
21073 |m: &Report| { &m.repeat_count },
21074 |m: &mut Report| { &mut m.repeat_count },
21075 ));
21076 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
21077 "pos",
21078 |m: &Report| { &m.pos },
21079 |m: &mut Report| { &mut m.pos },
21080 ));
21081 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21082 "id",
21083 |m: &Report| { &m.id },
21084 |m: &mut Report| { &mut m.id },
21085 ));
21086 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21087 "year",
21088 |m: &Report| { &m.year },
21089 |m: &mut Report| { &mut m.year },
21090 ));
21091 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21092 "time",
21093 |m: &Report| { &m.time },
21094 |m: &mut Report| { &mut m.time },
21095 ));
21096 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Report>(
21097 "Report",
21098 fields,
21099 oneofs,
21100 )
21101 }
21102}
21103
21104impl ::protobuf::Message for Report {
21105 const NAME: &'static str = "Report";
21106
21107 fn is_initialized(&self) -> bool {
21108 for v in &self.color {
21109 if !v.is_initialized() {
21110 return false;
21111 }
21112 };
21113 for v in &self.pos {
21114 if !v.is_initialized() {
21115 return false;
21116 }
21117 };
21118 true
21119 }
21120
21121 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
21122 while let Some(tag) = is.read_raw_tag_or_eof()? {
21123 match tag {
21124 8 => {
21125 self.type_ = ::std::option::Option::Some(is.read_int32()?);
21126 },
21127 18 => {
21128 self.text = ::std::option::Option::Some(is.read_string()?);
21129 },
21130 26 => {
21131 ::protobuf::rt::read_singular_message_into_field(is, &mut self.color)?;
21132 },
21133 32 => {
21134 self.duration = ::std::option::Option::Some(is.read_int32()?);
21135 },
21136 40 => {
21137 self.continuation = ::std::option::Option::Some(is.read_bool()?);
21138 },
21139 48 => {
21140 self.unconscious = ::std::option::Option::Some(is.read_bool()?);
21141 },
21142 56 => {
21143 self.announcement = ::std::option::Option::Some(is.read_bool()?);
21144 },
21145 64 => {
21146 self.repeat_count = ::std::option::Option::Some(is.read_int32()?);
21147 },
21148 74 => {
21149 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
21150 },
21151 80 => {
21152 self.id = ::std::option::Option::Some(is.read_int32()?);
21153 },
21154 88 => {
21155 self.year = ::std::option::Option::Some(is.read_int32()?);
21156 },
21157 96 => {
21158 self.time = ::std::option::Option::Some(is.read_int32()?);
21159 },
21160 tag => {
21161 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
21162 },
21163 };
21164 }
21165 ::std::result::Result::Ok(())
21166 }
21167
21168 #[allow(unused_variables)]
21170 fn compute_size(&self) -> u64 {
21171 let mut my_size = 0;
21172 if let Some(v) = self.type_ {
21173 my_size += ::protobuf::rt::int32_size(1, v);
21174 }
21175 if let Some(v) = self.text.as_ref() {
21176 my_size += ::protobuf::rt::string_size(2, &v);
21177 }
21178 if let Some(v) = self.color.as_ref() {
21179 let len = v.compute_size();
21180 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21181 }
21182 if let Some(v) = self.duration {
21183 my_size += ::protobuf::rt::int32_size(4, v);
21184 }
21185 if let Some(v) = self.continuation {
21186 my_size += 1 + 1;
21187 }
21188 if let Some(v) = self.unconscious {
21189 my_size += 1 + 1;
21190 }
21191 if let Some(v) = self.announcement {
21192 my_size += 1 + 1;
21193 }
21194 if let Some(v) = self.repeat_count {
21195 my_size += ::protobuf::rt::int32_size(8, v);
21196 }
21197 if let Some(v) = self.pos.as_ref() {
21198 let len = v.compute_size();
21199 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21200 }
21201 if let Some(v) = self.id {
21202 my_size += ::protobuf::rt::int32_size(10, v);
21203 }
21204 if let Some(v) = self.year {
21205 my_size += ::protobuf::rt::int32_size(11, v);
21206 }
21207 if let Some(v) = self.time {
21208 my_size += ::protobuf::rt::int32_size(12, v);
21209 }
21210 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
21211 self.special_fields.cached_size().set(my_size as u32);
21212 my_size
21213 }
21214
21215 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
21216 if let Some(v) = self.type_ {
21217 os.write_int32(1, v)?;
21218 }
21219 if let Some(v) = self.text.as_ref() {
21220 os.write_string(2, v)?;
21221 }
21222 if let Some(v) = self.color.as_ref() {
21223 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
21224 }
21225 if let Some(v) = self.duration {
21226 os.write_int32(4, v)?;
21227 }
21228 if let Some(v) = self.continuation {
21229 os.write_bool(5, v)?;
21230 }
21231 if let Some(v) = self.unconscious {
21232 os.write_bool(6, v)?;
21233 }
21234 if let Some(v) = self.announcement {
21235 os.write_bool(7, v)?;
21236 }
21237 if let Some(v) = self.repeat_count {
21238 os.write_int32(8, v)?;
21239 }
21240 if let Some(v) = self.pos.as_ref() {
21241 ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
21242 }
21243 if let Some(v) = self.id {
21244 os.write_int32(10, v)?;
21245 }
21246 if let Some(v) = self.year {
21247 os.write_int32(11, v)?;
21248 }
21249 if let Some(v) = self.time {
21250 os.write_int32(12, v)?;
21251 }
21252 os.write_unknown_fields(self.special_fields.unknown_fields())?;
21253 ::std::result::Result::Ok(())
21254 }
21255
21256 fn special_fields(&self) -> &::protobuf::SpecialFields {
21257 &self.special_fields
21258 }
21259
21260 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
21261 &mut self.special_fields
21262 }
21263
21264 fn new() -> Report {
21265 Report::new()
21266 }
21267
21268 fn clear(&mut self) {
21269 self.type_ = ::std::option::Option::None;
21270 self.text = ::std::option::Option::None;
21271 self.color.clear();
21272 self.duration = ::std::option::Option::None;
21273 self.continuation = ::std::option::Option::None;
21274 self.unconscious = ::std::option::Option::None;
21275 self.announcement = ::std::option::Option::None;
21276 self.repeat_count = ::std::option::Option::None;
21277 self.pos.clear();
21278 self.id = ::std::option::Option::None;
21279 self.year = ::std::option::Option::None;
21280 self.time = ::std::option::Option::None;
21281 self.special_fields.clear();
21282 }
21283
21284 fn default_instance() -> &'static Report {
21285 static instance: Report = Report {
21286 type_: ::std::option::Option::None,
21287 text: ::std::option::Option::None,
21288 color: ::protobuf::MessageField::none(),
21289 duration: ::std::option::Option::None,
21290 continuation: ::std::option::Option::None,
21291 unconscious: ::std::option::Option::None,
21292 announcement: ::std::option::Option::None,
21293 repeat_count: ::std::option::Option::None,
21294 pos: ::protobuf::MessageField::none(),
21295 id: ::std::option::Option::None,
21296 year: ::std::option::Option::None,
21297 time: ::std::option::Option::None,
21298 special_fields: ::protobuf::SpecialFields::new(),
21299 };
21300 &instance
21301 }
21302}
21303
21304impl ::protobuf::MessageFull for Report {
21305 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
21306 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
21307 descriptor.get(|| file_descriptor().message_by_package_relative_name("Report").unwrap()).clone()
21308 }
21309}
21310
21311impl ::std::fmt::Display for Report {
21312 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
21313 ::protobuf::text_format::fmt(self, f)
21314 }
21315}
21316
21317impl ::protobuf::reflect::ProtobufValue for Report {
21318 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
21319}
21320
21321#[derive(PartialEq,Clone,Default,Debug)]
21323pub struct Status {
21324 pub reports: ::std::vec::Vec<Report>,
21327 pub special_fields: ::protobuf::SpecialFields,
21330}
21331
21332impl<'a> ::std::default::Default for &'a Status {
21333 fn default() -> &'a Status {
21334 <Status as ::protobuf::Message>::default_instance()
21335 }
21336}
21337
21338impl Status {
21339 pub fn new() -> Status {
21340 ::std::default::Default::default()
21341 }
21342
21343 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
21344 let mut fields = ::std::vec::Vec::with_capacity(1);
21345 let mut oneofs = ::std::vec::Vec::with_capacity(0);
21346 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
21347 "reports",
21348 |m: &Status| { &m.reports },
21349 |m: &mut Status| { &mut m.reports },
21350 ));
21351 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Status>(
21352 "Status",
21353 fields,
21354 oneofs,
21355 )
21356 }
21357}
21358
21359impl ::protobuf::Message for Status {
21360 const NAME: &'static str = "Status";
21361
21362 fn is_initialized(&self) -> bool {
21363 for v in &self.reports {
21364 if !v.is_initialized() {
21365 return false;
21366 }
21367 };
21368 true
21369 }
21370
21371 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
21372 while let Some(tag) = is.read_raw_tag_or_eof()? {
21373 match tag {
21374 10 => {
21375 self.reports.push(is.read_message()?);
21376 },
21377 tag => {
21378 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
21379 },
21380 };
21381 }
21382 ::std::result::Result::Ok(())
21383 }
21384
21385 #[allow(unused_variables)]
21387 fn compute_size(&self) -> u64 {
21388 let mut my_size = 0;
21389 for value in &self.reports {
21390 let len = value.compute_size();
21391 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21392 };
21393 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
21394 self.special_fields.cached_size().set(my_size as u32);
21395 my_size
21396 }
21397
21398 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
21399 for v in &self.reports {
21400 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
21401 };
21402 os.write_unknown_fields(self.special_fields.unknown_fields())?;
21403 ::std::result::Result::Ok(())
21404 }
21405
21406 fn special_fields(&self) -> &::protobuf::SpecialFields {
21407 &self.special_fields
21408 }
21409
21410 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
21411 &mut self.special_fields
21412 }
21413
21414 fn new() -> Status {
21415 Status::new()
21416 }
21417
21418 fn clear(&mut self) {
21419 self.reports.clear();
21420 self.special_fields.clear();
21421 }
21422
21423 fn default_instance() -> &'static Status {
21424 static instance: Status = Status {
21425 reports: ::std::vec::Vec::new(),
21426 special_fields: ::protobuf::SpecialFields::new(),
21427 };
21428 &instance
21429 }
21430}
21431
21432impl ::protobuf::MessageFull for Status {
21433 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
21434 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
21435 descriptor.get(|| file_descriptor().message_by_package_relative_name("Status").unwrap()).clone()
21436 }
21437}
21438
21439impl ::std::fmt::Display for Status {
21440 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
21441 ::protobuf::text_format::fmt(self, f)
21442 }
21443}
21444
21445impl ::protobuf::reflect::ProtobufValue for Status {
21446 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
21447}
21448
21449#[derive(PartialEq,Clone,Default,Debug)]
21451pub struct ShapeDescriptior {
21452 pub id: ::std::option::Option<::std::string::String>,
21455 pub tile: ::std::option::Option<i32>,
21457 pub special_fields: ::protobuf::SpecialFields,
21460}
21461
21462impl<'a> ::std::default::Default for &'a ShapeDescriptior {
21463 fn default() -> &'a ShapeDescriptior {
21464 <ShapeDescriptior as ::protobuf::Message>::default_instance()
21465 }
21466}
21467
21468impl ShapeDescriptior {
21469 pub fn new() -> ShapeDescriptior {
21470 ::std::default::Default::default()
21471 }
21472
21473 pub fn id(&self) -> &str {
21476 match self.id.as_ref() {
21477 Some(v) => v,
21478 None => "",
21479 }
21480 }
21481
21482 pub fn clear_id(&mut self) {
21483 self.id = ::std::option::Option::None;
21484 }
21485
21486 pub fn has_id(&self) -> bool {
21487 self.id.is_some()
21488 }
21489
21490 pub fn set_id(&mut self, v: ::std::string::String) {
21492 self.id = ::std::option::Option::Some(v);
21493 }
21494
21495 pub fn mut_id(&mut self) -> &mut ::std::string::String {
21498 if self.id.is_none() {
21499 self.id = ::std::option::Option::Some(::std::string::String::new());
21500 }
21501 self.id.as_mut().unwrap()
21502 }
21503
21504 pub fn take_id(&mut self) -> ::std::string::String {
21506 self.id.take().unwrap_or_else(|| ::std::string::String::new())
21507 }
21508
21509 pub fn tile(&self) -> i32 {
21512 self.tile.unwrap_or(0)
21513 }
21514
21515 pub fn clear_tile(&mut self) {
21516 self.tile = ::std::option::Option::None;
21517 }
21518
21519 pub fn has_tile(&self) -> bool {
21520 self.tile.is_some()
21521 }
21522
21523 pub fn set_tile(&mut self, v: i32) {
21525 self.tile = ::std::option::Option::Some(v);
21526 }
21527
21528 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
21529 let mut fields = ::std::vec::Vec::with_capacity(2);
21530 let mut oneofs = ::std::vec::Vec::with_capacity(0);
21531 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21532 "id",
21533 |m: &ShapeDescriptior| { &m.id },
21534 |m: &mut ShapeDescriptior| { &mut m.id },
21535 ));
21536 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21537 "tile",
21538 |m: &ShapeDescriptior| { &m.tile },
21539 |m: &mut ShapeDescriptior| { &mut m.tile },
21540 ));
21541 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ShapeDescriptior>(
21542 "ShapeDescriptior",
21543 fields,
21544 oneofs,
21545 )
21546 }
21547}
21548
21549impl ::protobuf::Message for ShapeDescriptior {
21550 const NAME: &'static str = "ShapeDescriptior";
21551
21552 fn is_initialized(&self) -> bool {
21553 true
21554 }
21555
21556 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
21557 while let Some(tag) = is.read_raw_tag_or_eof()? {
21558 match tag {
21559 10 => {
21560 self.id = ::std::option::Option::Some(is.read_string()?);
21561 },
21562 16 => {
21563 self.tile = ::std::option::Option::Some(is.read_int32()?);
21564 },
21565 tag => {
21566 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
21567 },
21568 };
21569 }
21570 ::std::result::Result::Ok(())
21571 }
21572
21573 #[allow(unused_variables)]
21575 fn compute_size(&self) -> u64 {
21576 let mut my_size = 0;
21577 if let Some(v) = self.id.as_ref() {
21578 my_size += ::protobuf::rt::string_size(1, &v);
21579 }
21580 if let Some(v) = self.tile {
21581 my_size += ::protobuf::rt::int32_size(2, v);
21582 }
21583 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
21584 self.special_fields.cached_size().set(my_size as u32);
21585 my_size
21586 }
21587
21588 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
21589 if let Some(v) = self.id.as_ref() {
21590 os.write_string(1, v)?;
21591 }
21592 if let Some(v) = self.tile {
21593 os.write_int32(2, v)?;
21594 }
21595 os.write_unknown_fields(self.special_fields.unknown_fields())?;
21596 ::std::result::Result::Ok(())
21597 }
21598
21599 fn special_fields(&self) -> &::protobuf::SpecialFields {
21600 &self.special_fields
21601 }
21602
21603 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
21604 &mut self.special_fields
21605 }
21606
21607 fn new() -> ShapeDescriptior {
21608 ShapeDescriptior::new()
21609 }
21610
21611 fn clear(&mut self) {
21612 self.id = ::std::option::Option::None;
21613 self.tile = ::std::option::Option::None;
21614 self.special_fields.clear();
21615 }
21616
21617 fn default_instance() -> &'static ShapeDescriptior {
21618 static instance: ShapeDescriptior = ShapeDescriptior {
21619 id: ::std::option::Option::None,
21620 tile: ::std::option::Option::None,
21621 special_fields: ::protobuf::SpecialFields::new(),
21622 };
21623 &instance
21624 }
21625}
21626
21627impl ::protobuf::MessageFull for ShapeDescriptior {
21628 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
21629 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
21630 descriptor.get(|| file_descriptor().message_by_package_relative_name("ShapeDescriptior").unwrap()).clone()
21631 }
21632}
21633
21634impl ::std::fmt::Display for ShapeDescriptior {
21635 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
21636 ::protobuf::text_format::fmt(self, f)
21637 }
21638}
21639
21640impl ::protobuf::reflect::ProtobufValue for ShapeDescriptior {
21641 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
21642}
21643
21644#[derive(PartialEq,Clone,Default,Debug)]
21646pub struct Language {
21647 pub shapes: ::std::vec::Vec<ShapeDescriptior>,
21650 pub special_fields: ::protobuf::SpecialFields,
21653}
21654
21655impl<'a> ::std::default::Default for &'a Language {
21656 fn default() -> &'a Language {
21657 <Language as ::protobuf::Message>::default_instance()
21658 }
21659}
21660
21661impl Language {
21662 pub fn new() -> Language {
21663 ::std::default::Default::default()
21664 }
21665
21666 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
21667 let mut fields = ::std::vec::Vec::with_capacity(1);
21668 let mut oneofs = ::std::vec::Vec::with_capacity(0);
21669 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
21670 "shapes",
21671 |m: &Language| { &m.shapes },
21672 |m: &mut Language| { &mut m.shapes },
21673 ));
21674 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Language>(
21675 "Language",
21676 fields,
21677 oneofs,
21678 )
21679 }
21680}
21681
21682impl ::protobuf::Message for Language {
21683 const NAME: &'static str = "Language";
21684
21685 fn is_initialized(&self) -> bool {
21686 true
21687 }
21688
21689 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
21690 while let Some(tag) = is.read_raw_tag_or_eof()? {
21691 match tag {
21692 10 => {
21693 self.shapes.push(is.read_message()?);
21694 },
21695 tag => {
21696 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
21697 },
21698 };
21699 }
21700 ::std::result::Result::Ok(())
21701 }
21702
21703 #[allow(unused_variables)]
21705 fn compute_size(&self) -> u64 {
21706 let mut my_size = 0;
21707 for value in &self.shapes {
21708 let len = value.compute_size();
21709 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21710 };
21711 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
21712 self.special_fields.cached_size().set(my_size as u32);
21713 my_size
21714 }
21715
21716 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
21717 for v in &self.shapes {
21718 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
21719 };
21720 os.write_unknown_fields(self.special_fields.unknown_fields())?;
21721 ::std::result::Result::Ok(())
21722 }
21723
21724 fn special_fields(&self) -> &::protobuf::SpecialFields {
21725 &self.special_fields
21726 }
21727
21728 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
21729 &mut self.special_fields
21730 }
21731
21732 fn new() -> Language {
21733 Language::new()
21734 }
21735
21736 fn clear(&mut self) {
21737 self.shapes.clear();
21738 self.special_fields.clear();
21739 }
21740
21741 fn default_instance() -> &'static Language {
21742 static instance: Language = Language {
21743 shapes: ::std::vec::Vec::new(),
21744 special_fields: ::protobuf::SpecialFields::new(),
21745 };
21746 &instance
21747 }
21748}
21749
21750impl ::protobuf::MessageFull for Language {
21751 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
21752 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
21753 descriptor.get(|| file_descriptor().message_by_package_relative_name("Language").unwrap()).clone()
21754 }
21755}
21756
21757impl ::std::fmt::Display for Language {
21758 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
21759 ::protobuf::text_format::fmt(self, f)
21760 }
21761}
21762
21763impl ::protobuf::reflect::ProtobufValue for Language {
21764 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
21765}
21766
21767#[derive(PartialEq,Clone,Default,Debug)]
21769pub struct ItemImprovement {
21770 pub material: ::protobuf::MessageField<MatPair>,
21773 pub shape: ::std::option::Option<i32>,
21775 pub specific_type: ::std::option::Option<i32>,
21777 pub image: ::protobuf::MessageField<ArtImage>,
21779 pub type_: ::std::option::Option<i32>,
21781 pub special_fields: ::protobuf::SpecialFields,
21784}
21785
21786impl<'a> ::std::default::Default for &'a ItemImprovement {
21787 fn default() -> &'a ItemImprovement {
21788 <ItemImprovement as ::protobuf::Message>::default_instance()
21789 }
21790}
21791
21792impl ItemImprovement {
21793 pub fn new() -> ItemImprovement {
21794 ::std::default::Default::default()
21795 }
21796
21797 pub fn shape(&self) -> i32 {
21800 self.shape.unwrap_or(0)
21801 }
21802
21803 pub fn clear_shape(&mut self) {
21804 self.shape = ::std::option::Option::None;
21805 }
21806
21807 pub fn has_shape(&self) -> bool {
21808 self.shape.is_some()
21809 }
21810
21811 pub fn set_shape(&mut self, v: i32) {
21813 self.shape = ::std::option::Option::Some(v);
21814 }
21815
21816 pub fn specific_type(&self) -> i32 {
21819 self.specific_type.unwrap_or(0)
21820 }
21821
21822 pub fn clear_specific_type(&mut self) {
21823 self.specific_type = ::std::option::Option::None;
21824 }
21825
21826 pub fn has_specific_type(&self) -> bool {
21827 self.specific_type.is_some()
21828 }
21829
21830 pub fn set_specific_type(&mut self, v: i32) {
21832 self.specific_type = ::std::option::Option::Some(v);
21833 }
21834
21835 pub fn type_(&self) -> i32 {
21838 self.type_.unwrap_or(0)
21839 }
21840
21841 pub fn clear_type_(&mut self) {
21842 self.type_ = ::std::option::Option::None;
21843 }
21844
21845 pub fn has_type(&self) -> bool {
21846 self.type_.is_some()
21847 }
21848
21849 pub fn set_type(&mut self, v: i32) {
21851 self.type_ = ::std::option::Option::Some(v);
21852 }
21853
21854 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
21855 let mut fields = ::std::vec::Vec::with_capacity(5);
21856 let mut oneofs = ::std::vec::Vec::with_capacity(0);
21857 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
21858 "material",
21859 |m: &ItemImprovement| { &m.material },
21860 |m: &mut ItemImprovement| { &mut m.material },
21861 ));
21862 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21863 "shape",
21864 |m: &ItemImprovement| { &m.shape },
21865 |m: &mut ItemImprovement| { &mut m.shape },
21866 ));
21867 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21868 "specific_type",
21869 |m: &ItemImprovement| { &m.specific_type },
21870 |m: &mut ItemImprovement| { &mut m.specific_type },
21871 ));
21872 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ArtImage>(
21873 "image",
21874 |m: &ItemImprovement| { &m.image },
21875 |m: &mut ItemImprovement| { &mut m.image },
21876 ));
21877 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
21878 "type",
21879 |m: &ItemImprovement| { &m.type_ },
21880 |m: &mut ItemImprovement| { &mut m.type_ },
21881 ));
21882 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ItemImprovement>(
21883 "ItemImprovement",
21884 fields,
21885 oneofs,
21886 )
21887 }
21888}
21889
21890impl ::protobuf::Message for ItemImprovement {
21891 const NAME: &'static str = "ItemImprovement";
21892
21893 fn is_initialized(&self) -> bool {
21894 for v in &self.material {
21895 if !v.is_initialized() {
21896 return false;
21897 }
21898 };
21899 for v in &self.image {
21900 if !v.is_initialized() {
21901 return false;
21902 }
21903 };
21904 true
21905 }
21906
21907 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
21908 while let Some(tag) = is.read_raw_tag_or_eof()? {
21909 match tag {
21910 10 => {
21911 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
21912 },
21913 24 => {
21914 self.shape = ::std::option::Option::Some(is.read_int32()?);
21915 },
21916 32 => {
21917 self.specific_type = ::std::option::Option::Some(is.read_int32()?);
21918 },
21919 42 => {
21920 ::protobuf::rt::read_singular_message_into_field(is, &mut self.image)?;
21921 },
21922 48 => {
21923 self.type_ = ::std::option::Option::Some(is.read_int32()?);
21924 },
21925 tag => {
21926 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
21927 },
21928 };
21929 }
21930 ::std::result::Result::Ok(())
21931 }
21932
21933 #[allow(unused_variables)]
21935 fn compute_size(&self) -> u64 {
21936 let mut my_size = 0;
21937 if let Some(v) = self.material.as_ref() {
21938 let len = v.compute_size();
21939 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21940 }
21941 if let Some(v) = self.shape {
21942 my_size += ::protobuf::rt::int32_size(3, v);
21943 }
21944 if let Some(v) = self.specific_type {
21945 my_size += ::protobuf::rt::int32_size(4, v);
21946 }
21947 if let Some(v) = self.image.as_ref() {
21948 let len = v.compute_size();
21949 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
21950 }
21951 if let Some(v) = self.type_ {
21952 my_size += ::protobuf::rt::int32_size(6, v);
21953 }
21954 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
21955 self.special_fields.cached_size().set(my_size as u32);
21956 my_size
21957 }
21958
21959 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
21960 if let Some(v) = self.material.as_ref() {
21961 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
21962 }
21963 if let Some(v) = self.shape {
21964 os.write_int32(3, v)?;
21965 }
21966 if let Some(v) = self.specific_type {
21967 os.write_int32(4, v)?;
21968 }
21969 if let Some(v) = self.image.as_ref() {
21970 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
21971 }
21972 if let Some(v) = self.type_ {
21973 os.write_int32(6, v)?;
21974 }
21975 os.write_unknown_fields(self.special_fields.unknown_fields())?;
21976 ::std::result::Result::Ok(())
21977 }
21978
21979 fn special_fields(&self) -> &::protobuf::SpecialFields {
21980 &self.special_fields
21981 }
21982
21983 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
21984 &mut self.special_fields
21985 }
21986
21987 fn new() -> ItemImprovement {
21988 ItemImprovement::new()
21989 }
21990
21991 fn clear(&mut self) {
21992 self.material.clear();
21993 self.shape = ::std::option::Option::None;
21994 self.specific_type = ::std::option::Option::None;
21995 self.image.clear();
21996 self.type_ = ::std::option::Option::None;
21997 self.special_fields.clear();
21998 }
21999
22000 fn default_instance() -> &'static ItemImprovement {
22001 static instance: ItemImprovement = ItemImprovement {
22002 material: ::protobuf::MessageField::none(),
22003 shape: ::std::option::Option::None,
22004 specific_type: ::std::option::Option::None,
22005 image: ::protobuf::MessageField::none(),
22006 type_: ::std::option::Option::None,
22007 special_fields: ::protobuf::SpecialFields::new(),
22008 };
22009 &instance
22010 }
22011}
22012
22013impl ::protobuf::MessageFull for ItemImprovement {
22014 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
22015 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
22016 descriptor.get(|| file_descriptor().message_by_package_relative_name("ItemImprovement").unwrap()).clone()
22017 }
22018}
22019
22020impl ::std::fmt::Display for ItemImprovement {
22021 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
22022 ::protobuf::text_format::fmt(self, f)
22023 }
22024}
22025
22026impl ::protobuf::reflect::ProtobufValue for ItemImprovement {
22027 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
22028}
22029
22030#[derive(PartialEq,Clone,Default,Debug)]
22032pub struct ArtImageElement {
22033 pub count: ::std::option::Option<i32>,
22036 pub type_: ::std::option::Option<::protobuf::EnumOrUnknown<ArtImageElementType>>,
22038 pub creature_item: ::protobuf::MessageField<MatPair>,
22040 pub material: ::protobuf::MessageField<MatPair>,
22042 pub id: ::std::option::Option<i32>,
22044 pub special_fields: ::protobuf::SpecialFields,
22047}
22048
22049impl<'a> ::std::default::Default for &'a ArtImageElement {
22050 fn default() -> &'a ArtImageElement {
22051 <ArtImageElement as ::protobuf::Message>::default_instance()
22052 }
22053}
22054
22055impl ArtImageElement {
22056 pub fn new() -> ArtImageElement {
22057 ::std::default::Default::default()
22058 }
22059
22060 pub fn count(&self) -> i32 {
22063 self.count.unwrap_or(0)
22064 }
22065
22066 pub fn clear_count(&mut self) {
22067 self.count = ::std::option::Option::None;
22068 }
22069
22070 pub fn has_count(&self) -> bool {
22071 self.count.is_some()
22072 }
22073
22074 pub fn set_count(&mut self, v: i32) {
22076 self.count = ::std::option::Option::Some(v);
22077 }
22078
22079 pub fn type_(&self) -> ArtImageElementType {
22082 match self.type_ {
22083 Some(e) => e.enum_value_or(ArtImageElementType::IMAGE_CREATURE),
22084 None => ArtImageElementType::IMAGE_CREATURE,
22085 }
22086 }
22087
22088 pub fn clear_type_(&mut self) {
22089 self.type_ = ::std::option::Option::None;
22090 }
22091
22092 pub fn has_type(&self) -> bool {
22093 self.type_.is_some()
22094 }
22095
22096 pub fn set_type(&mut self, v: ArtImageElementType) {
22098 self.type_ = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
22099 }
22100
22101 pub fn id(&self) -> i32 {
22104 self.id.unwrap_or(0)
22105 }
22106
22107 pub fn clear_id(&mut self) {
22108 self.id = ::std::option::Option::None;
22109 }
22110
22111 pub fn has_id(&self) -> bool {
22112 self.id.is_some()
22113 }
22114
22115 pub fn set_id(&mut self, v: i32) {
22117 self.id = ::std::option::Option::Some(v);
22118 }
22119
22120 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
22121 let mut fields = ::std::vec::Vec::with_capacity(5);
22122 let mut oneofs = ::std::vec::Vec::with_capacity(0);
22123 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22124 "count",
22125 |m: &ArtImageElement| { &m.count },
22126 |m: &mut ArtImageElement| { &mut m.count },
22127 ));
22128 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22129 "type",
22130 |m: &ArtImageElement| { &m.type_ },
22131 |m: &mut ArtImageElement| { &mut m.type_ },
22132 ));
22133 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
22134 "creature_item",
22135 |m: &ArtImageElement| { &m.creature_item },
22136 |m: &mut ArtImageElement| { &mut m.creature_item },
22137 ));
22138 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
22139 "material",
22140 |m: &ArtImageElement| { &m.material },
22141 |m: &mut ArtImageElement| { &mut m.material },
22142 ));
22143 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22144 "id",
22145 |m: &ArtImageElement| { &m.id },
22146 |m: &mut ArtImageElement| { &mut m.id },
22147 ));
22148 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ArtImageElement>(
22149 "ArtImageElement",
22150 fields,
22151 oneofs,
22152 )
22153 }
22154}
22155
22156impl ::protobuf::Message for ArtImageElement {
22157 const NAME: &'static str = "ArtImageElement";
22158
22159 fn is_initialized(&self) -> bool {
22160 for v in &self.creature_item {
22161 if !v.is_initialized() {
22162 return false;
22163 }
22164 };
22165 for v in &self.material {
22166 if !v.is_initialized() {
22167 return false;
22168 }
22169 };
22170 true
22171 }
22172
22173 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
22174 while let Some(tag) = is.read_raw_tag_or_eof()? {
22175 match tag {
22176 8 => {
22177 self.count = ::std::option::Option::Some(is.read_int32()?);
22178 },
22179 16 => {
22180 self.type_ = ::std::option::Option::Some(is.read_enum_or_unknown()?);
22181 },
22182 26 => {
22183 ::protobuf::rt::read_singular_message_into_field(is, &mut self.creature_item)?;
22184 },
22185 42 => {
22186 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
22187 },
22188 48 => {
22189 self.id = ::std::option::Option::Some(is.read_int32()?);
22190 },
22191 tag => {
22192 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
22193 },
22194 };
22195 }
22196 ::std::result::Result::Ok(())
22197 }
22198
22199 #[allow(unused_variables)]
22201 fn compute_size(&self) -> u64 {
22202 let mut my_size = 0;
22203 if let Some(v) = self.count {
22204 my_size += ::protobuf::rt::int32_size(1, v);
22205 }
22206 if let Some(v) = self.type_ {
22207 my_size += ::protobuf::rt::int32_size(2, v.value());
22208 }
22209 if let Some(v) = self.creature_item.as_ref() {
22210 let len = v.compute_size();
22211 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
22212 }
22213 if let Some(v) = self.material.as_ref() {
22214 let len = v.compute_size();
22215 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
22216 }
22217 if let Some(v) = self.id {
22218 my_size += ::protobuf::rt::int32_size(6, v);
22219 }
22220 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
22221 self.special_fields.cached_size().set(my_size as u32);
22222 my_size
22223 }
22224
22225 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
22226 if let Some(v) = self.count {
22227 os.write_int32(1, v)?;
22228 }
22229 if let Some(v) = self.type_ {
22230 os.write_enum(2, ::protobuf::EnumOrUnknown::value(&v))?;
22231 }
22232 if let Some(v) = self.creature_item.as_ref() {
22233 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
22234 }
22235 if let Some(v) = self.material.as_ref() {
22236 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
22237 }
22238 if let Some(v) = self.id {
22239 os.write_int32(6, v)?;
22240 }
22241 os.write_unknown_fields(self.special_fields.unknown_fields())?;
22242 ::std::result::Result::Ok(())
22243 }
22244
22245 fn special_fields(&self) -> &::protobuf::SpecialFields {
22246 &self.special_fields
22247 }
22248
22249 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
22250 &mut self.special_fields
22251 }
22252
22253 fn new() -> ArtImageElement {
22254 ArtImageElement::new()
22255 }
22256
22257 fn clear(&mut self) {
22258 self.count = ::std::option::Option::None;
22259 self.type_ = ::std::option::Option::None;
22260 self.creature_item.clear();
22261 self.material.clear();
22262 self.id = ::std::option::Option::None;
22263 self.special_fields.clear();
22264 }
22265
22266 fn default_instance() -> &'static ArtImageElement {
22267 static instance: ArtImageElement = ArtImageElement {
22268 count: ::std::option::Option::None,
22269 type_: ::std::option::Option::None,
22270 creature_item: ::protobuf::MessageField::none(),
22271 material: ::protobuf::MessageField::none(),
22272 id: ::std::option::Option::None,
22273 special_fields: ::protobuf::SpecialFields::new(),
22274 };
22275 &instance
22276 }
22277}
22278
22279impl ::protobuf::MessageFull for ArtImageElement {
22280 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
22281 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
22282 descriptor.get(|| file_descriptor().message_by_package_relative_name("ArtImageElement").unwrap()).clone()
22283 }
22284}
22285
22286impl ::std::fmt::Display for ArtImageElement {
22287 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
22288 ::protobuf::text_format::fmt(self, f)
22289 }
22290}
22291
22292impl ::protobuf::reflect::ProtobufValue for ArtImageElement {
22293 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
22294}
22295
22296#[derive(PartialEq,Clone,Default,Debug)]
22298pub struct ArtImageProperty {
22299 pub subject: ::std::option::Option<i32>,
22302 pub object: ::std::option::Option<i32>,
22304 pub verb: ::std::option::Option<::protobuf::EnumOrUnknown<ArtImageVerb>>,
22306 pub type_: ::std::option::Option<::protobuf::EnumOrUnknown<ArtImagePropertyType>>,
22308 pub special_fields: ::protobuf::SpecialFields,
22311}
22312
22313impl<'a> ::std::default::Default for &'a ArtImageProperty {
22314 fn default() -> &'a ArtImageProperty {
22315 <ArtImageProperty as ::protobuf::Message>::default_instance()
22316 }
22317}
22318
22319impl ArtImageProperty {
22320 pub fn new() -> ArtImageProperty {
22321 ::std::default::Default::default()
22322 }
22323
22324 pub fn subject(&self) -> i32 {
22327 self.subject.unwrap_or(0)
22328 }
22329
22330 pub fn clear_subject(&mut self) {
22331 self.subject = ::std::option::Option::None;
22332 }
22333
22334 pub fn has_subject(&self) -> bool {
22335 self.subject.is_some()
22336 }
22337
22338 pub fn set_subject(&mut self, v: i32) {
22340 self.subject = ::std::option::Option::Some(v);
22341 }
22342
22343 pub fn object(&self) -> i32 {
22346 self.object.unwrap_or(0)
22347 }
22348
22349 pub fn clear_object(&mut self) {
22350 self.object = ::std::option::Option::None;
22351 }
22352
22353 pub fn has_object(&self) -> bool {
22354 self.object.is_some()
22355 }
22356
22357 pub fn set_object(&mut self, v: i32) {
22359 self.object = ::std::option::Option::Some(v);
22360 }
22361
22362 pub fn verb(&self) -> ArtImageVerb {
22365 match self.verb {
22366 Some(e) => e.enum_value_or(ArtImageVerb::VERB_WITHERING),
22367 None => ArtImageVerb::VERB_WITHERING,
22368 }
22369 }
22370
22371 pub fn clear_verb(&mut self) {
22372 self.verb = ::std::option::Option::None;
22373 }
22374
22375 pub fn has_verb(&self) -> bool {
22376 self.verb.is_some()
22377 }
22378
22379 pub fn set_verb(&mut self, v: ArtImageVerb) {
22381 self.verb = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
22382 }
22383
22384 pub fn type_(&self) -> ArtImagePropertyType {
22387 match self.type_ {
22388 Some(e) => e.enum_value_or(ArtImagePropertyType::TRANSITIVE_VERB),
22389 None => ArtImagePropertyType::TRANSITIVE_VERB,
22390 }
22391 }
22392
22393 pub fn clear_type_(&mut self) {
22394 self.type_ = ::std::option::Option::None;
22395 }
22396
22397 pub fn has_type(&self) -> bool {
22398 self.type_.is_some()
22399 }
22400
22401 pub fn set_type(&mut self, v: ArtImagePropertyType) {
22403 self.type_ = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
22404 }
22405
22406 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
22407 let mut fields = ::std::vec::Vec::with_capacity(4);
22408 let mut oneofs = ::std::vec::Vec::with_capacity(0);
22409 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22410 "subject",
22411 |m: &ArtImageProperty| { &m.subject },
22412 |m: &mut ArtImageProperty| { &mut m.subject },
22413 ));
22414 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22415 "object",
22416 |m: &ArtImageProperty| { &m.object },
22417 |m: &mut ArtImageProperty| { &mut m.object },
22418 ));
22419 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22420 "verb",
22421 |m: &ArtImageProperty| { &m.verb },
22422 |m: &mut ArtImageProperty| { &mut m.verb },
22423 ));
22424 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
22425 "type",
22426 |m: &ArtImageProperty| { &m.type_ },
22427 |m: &mut ArtImageProperty| { &mut m.type_ },
22428 ));
22429 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ArtImageProperty>(
22430 "ArtImageProperty",
22431 fields,
22432 oneofs,
22433 )
22434 }
22435}
22436
22437impl ::protobuf::Message for ArtImageProperty {
22438 const NAME: &'static str = "ArtImageProperty";
22439
22440 fn is_initialized(&self) -> bool {
22441 true
22442 }
22443
22444 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
22445 while let Some(tag) = is.read_raw_tag_or_eof()? {
22446 match tag {
22447 8 => {
22448 self.subject = ::std::option::Option::Some(is.read_int32()?);
22449 },
22450 16 => {
22451 self.object = ::std::option::Option::Some(is.read_int32()?);
22452 },
22453 24 => {
22454 self.verb = ::std::option::Option::Some(is.read_enum_or_unknown()?);
22455 },
22456 32 => {
22457 self.type_ = ::std::option::Option::Some(is.read_enum_or_unknown()?);
22458 },
22459 tag => {
22460 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
22461 },
22462 };
22463 }
22464 ::std::result::Result::Ok(())
22465 }
22466
22467 #[allow(unused_variables)]
22469 fn compute_size(&self) -> u64 {
22470 let mut my_size = 0;
22471 if let Some(v) = self.subject {
22472 my_size += ::protobuf::rt::int32_size(1, v);
22473 }
22474 if let Some(v) = self.object {
22475 my_size += ::protobuf::rt::int32_size(2, v);
22476 }
22477 if let Some(v) = self.verb {
22478 my_size += ::protobuf::rt::int32_size(3, v.value());
22479 }
22480 if let Some(v) = self.type_ {
22481 my_size += ::protobuf::rt::int32_size(4, v.value());
22482 }
22483 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
22484 self.special_fields.cached_size().set(my_size as u32);
22485 my_size
22486 }
22487
22488 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
22489 if let Some(v) = self.subject {
22490 os.write_int32(1, v)?;
22491 }
22492 if let Some(v) = self.object {
22493 os.write_int32(2, v)?;
22494 }
22495 if let Some(v) = self.verb {
22496 os.write_enum(3, ::protobuf::EnumOrUnknown::value(&v))?;
22497 }
22498 if let Some(v) = self.type_ {
22499 os.write_enum(4, ::protobuf::EnumOrUnknown::value(&v))?;
22500 }
22501 os.write_unknown_fields(self.special_fields.unknown_fields())?;
22502 ::std::result::Result::Ok(())
22503 }
22504
22505 fn special_fields(&self) -> &::protobuf::SpecialFields {
22506 &self.special_fields
22507 }
22508
22509 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
22510 &mut self.special_fields
22511 }
22512
22513 fn new() -> ArtImageProperty {
22514 ArtImageProperty::new()
22515 }
22516
22517 fn clear(&mut self) {
22518 self.subject = ::std::option::Option::None;
22519 self.object = ::std::option::Option::None;
22520 self.verb = ::std::option::Option::None;
22521 self.type_ = ::std::option::Option::None;
22522 self.special_fields.clear();
22523 }
22524
22525 fn default_instance() -> &'static ArtImageProperty {
22526 static instance: ArtImageProperty = ArtImageProperty {
22527 subject: ::std::option::Option::None,
22528 object: ::std::option::Option::None,
22529 verb: ::std::option::Option::None,
22530 type_: ::std::option::Option::None,
22531 special_fields: ::protobuf::SpecialFields::new(),
22532 };
22533 &instance
22534 }
22535}
22536
22537impl ::protobuf::MessageFull for ArtImageProperty {
22538 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
22539 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
22540 descriptor.get(|| file_descriptor().message_by_package_relative_name("ArtImageProperty").unwrap()).clone()
22541 }
22542}
22543
22544impl ::std::fmt::Display for ArtImageProperty {
22545 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
22546 ::protobuf::text_format::fmt(self, f)
22547 }
22548}
22549
22550impl ::protobuf::reflect::ProtobufValue for ArtImageProperty {
22551 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
22552}
22553
22554#[derive(PartialEq,Clone,Default,Debug)]
22556pub struct ArtImage {
22557 pub elements: ::std::vec::Vec<ArtImageElement>,
22560 pub id: ::protobuf::MessageField<MatPair>,
22562 pub properties: ::std::vec::Vec<ArtImageProperty>,
22564 pub special_fields: ::protobuf::SpecialFields,
22567}
22568
22569impl<'a> ::std::default::Default for &'a ArtImage {
22570 fn default() -> &'a ArtImage {
22571 <ArtImage as ::protobuf::Message>::default_instance()
22572 }
22573}
22574
22575impl ArtImage {
22576 pub fn new() -> ArtImage {
22577 ::std::default::Default::default()
22578 }
22579
22580 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
22581 let mut fields = ::std::vec::Vec::with_capacity(3);
22582 let mut oneofs = ::std::vec::Vec::with_capacity(0);
22583 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
22584 "elements",
22585 |m: &ArtImage| { &m.elements },
22586 |m: &mut ArtImage| { &mut m.elements },
22587 ));
22588 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
22589 "id",
22590 |m: &ArtImage| { &m.id },
22591 |m: &mut ArtImage| { &mut m.id },
22592 ));
22593 fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
22594 "properties",
22595 |m: &ArtImage| { &m.properties },
22596 |m: &mut ArtImage| { &mut m.properties },
22597 ));
22598 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ArtImage>(
22599 "ArtImage",
22600 fields,
22601 oneofs,
22602 )
22603 }
22604}
22605
22606impl ::protobuf::Message for ArtImage {
22607 const NAME: &'static str = "ArtImage";
22608
22609 fn is_initialized(&self) -> bool {
22610 for v in &self.elements {
22611 if !v.is_initialized() {
22612 return false;
22613 }
22614 };
22615 for v in &self.id {
22616 if !v.is_initialized() {
22617 return false;
22618 }
22619 };
22620 for v in &self.properties {
22621 if !v.is_initialized() {
22622 return false;
22623 }
22624 };
22625 true
22626 }
22627
22628 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
22629 while let Some(tag) = is.read_raw_tag_or_eof()? {
22630 match tag {
22631 10 => {
22632 self.elements.push(is.read_message()?);
22633 },
22634 18 => {
22635 ::protobuf::rt::read_singular_message_into_field(is, &mut self.id)?;
22636 },
22637 26 => {
22638 self.properties.push(is.read_message()?);
22639 },
22640 tag => {
22641 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
22642 },
22643 };
22644 }
22645 ::std::result::Result::Ok(())
22646 }
22647
22648 #[allow(unused_variables)]
22650 fn compute_size(&self) -> u64 {
22651 let mut my_size = 0;
22652 for value in &self.elements {
22653 let len = value.compute_size();
22654 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
22655 };
22656 if let Some(v) = self.id.as_ref() {
22657 let len = v.compute_size();
22658 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
22659 }
22660 for value in &self.properties {
22661 let len = value.compute_size();
22662 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
22663 };
22664 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
22665 self.special_fields.cached_size().set(my_size as u32);
22666 my_size
22667 }
22668
22669 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
22670 for v in &self.elements {
22671 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
22672 };
22673 if let Some(v) = self.id.as_ref() {
22674 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
22675 }
22676 for v in &self.properties {
22677 ::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
22678 };
22679 os.write_unknown_fields(self.special_fields.unknown_fields())?;
22680 ::std::result::Result::Ok(())
22681 }
22682
22683 fn special_fields(&self) -> &::protobuf::SpecialFields {
22684 &self.special_fields
22685 }
22686
22687 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
22688 &mut self.special_fields
22689 }
22690
22691 fn new() -> ArtImage {
22692 ArtImage::new()
22693 }
22694
22695 fn clear(&mut self) {
22696 self.elements.clear();
22697 self.id.clear();
22698 self.properties.clear();
22699 self.special_fields.clear();
22700 }
22701
22702 fn default_instance() -> &'static ArtImage {
22703 static instance: ArtImage = ArtImage {
22704 elements: ::std::vec::Vec::new(),
22705 id: ::protobuf::MessageField::none(),
22706 properties: ::std::vec::Vec::new(),
22707 special_fields: ::protobuf::SpecialFields::new(),
22708 };
22709 &instance
22710 }
22711}
22712
22713impl ::protobuf::MessageFull for ArtImage {
22714 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
22715 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
22716 descriptor.get(|| file_descriptor().message_by_package_relative_name("ArtImage").unwrap()).clone()
22717 }
22718}
22719
22720impl ::std::fmt::Display for ArtImage {
22721 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
22722 ::protobuf::text_format::fmt(self, f)
22723 }
22724}
22725
22726impl ::protobuf::reflect::ProtobufValue for ArtImage {
22727 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
22728}
22729
22730#[derive(PartialEq,Clone,Default,Debug)]
22732pub struct Engraving {
22733 pub pos: ::protobuf::MessageField<Coord>,
22736 pub quality: ::std::option::Option<i32>,
22738 pub tile: ::std::option::Option<i32>,
22740 pub image: ::protobuf::MessageField<ArtImage>,
22742 pub floor: ::std::option::Option<bool>,
22744 pub west: ::std::option::Option<bool>,
22746 pub east: ::std::option::Option<bool>,
22748 pub north: ::std::option::Option<bool>,
22750 pub south: ::std::option::Option<bool>,
22752 pub hidden: ::std::option::Option<bool>,
22754 pub northwest: ::std::option::Option<bool>,
22756 pub northeast: ::std::option::Option<bool>,
22758 pub southwest: ::std::option::Option<bool>,
22760 pub southeast: ::std::option::Option<bool>,
22762 pub special_fields: ::protobuf::SpecialFields,
22765}
22766
22767impl<'a> ::std::default::Default for &'a Engraving {
22768 fn default() -> &'a Engraving {
22769 <Engraving as ::protobuf::Message>::default_instance()
22770 }
22771}
22772
22773impl Engraving {
22774 pub fn new() -> Engraving {
22775 ::std::default::Default::default()
22776 }
22777
22778 pub fn quality(&self) -> i32 {
22781 self.quality.unwrap_or(0)
22782 }
22783
22784 pub fn clear_quality(&mut self) {
22785 self.quality = ::std::option::Option::None;
22786 }
22787
22788 pub fn has_quality(&self) -> bool {
22789 self.quality.is_some()
22790 }
22791
22792 pub fn set_quality(&mut self, v: i32) {
22794 self.quality = ::std::option::Option::Some(v);
22795 }
22796
22797 pub fn tile(&self) -> i32 {
22800 self.tile.unwrap_or(0)
22801 }
22802
22803 pub fn clear_tile(&mut self) {
22804 self.tile = ::std::option::Option::None;
22805 }
22806
22807 pub fn has_tile(&self) -> bool {
22808 self.tile.is_some()
22809 }
22810
22811 pub fn set_tile(&mut self, v: i32) {
22813 self.tile = ::std::option::Option::Some(v);
22814 }
22815
22816 pub fn floor(&self) -> bool {
22819 self.floor.unwrap_or(false)
22820 }
22821
22822 pub fn clear_floor(&mut self) {
22823 self.floor = ::std::option::Option::None;
22824 }
22825
22826 pub fn has_floor(&self) -> bool {
22827 self.floor.is_some()
22828 }
22829
22830 pub fn set_floor(&mut self, v: bool) {
22832 self.floor = ::std::option::Option::Some(v);
22833 }
22834
22835 pub fn west(&self) -> bool {
22838 self.west.unwrap_or(false)
22839 }
22840
22841 pub fn clear_west(&mut self) {
22842 self.west = ::std::option::Option::None;
22843 }
22844
22845 pub fn has_west(&self) -> bool {
22846 self.west.is_some()
22847 }
22848
22849 pub fn set_west(&mut self, v: bool) {
22851 self.west = ::std::option::Option::Some(v);
22852 }
22853
22854 pub fn east(&self) -> bool {
22857 self.east.unwrap_or(false)
22858 }
22859
22860 pub fn clear_east(&mut self) {
22861 self.east = ::std::option::Option::None;
22862 }
22863
22864 pub fn has_east(&self) -> bool {
22865 self.east.is_some()
22866 }
22867
22868 pub fn set_east(&mut self, v: bool) {
22870 self.east = ::std::option::Option::Some(v);
22871 }
22872
22873 pub fn north(&self) -> bool {
22876 self.north.unwrap_or(false)
22877 }
22878
22879 pub fn clear_north(&mut self) {
22880 self.north = ::std::option::Option::None;
22881 }
22882
22883 pub fn has_north(&self) -> bool {
22884 self.north.is_some()
22885 }
22886
22887 pub fn set_north(&mut self, v: bool) {
22889 self.north = ::std::option::Option::Some(v);
22890 }
22891
22892 pub fn south(&self) -> bool {
22895 self.south.unwrap_or(false)
22896 }
22897
22898 pub fn clear_south(&mut self) {
22899 self.south = ::std::option::Option::None;
22900 }
22901
22902 pub fn has_south(&self) -> bool {
22903 self.south.is_some()
22904 }
22905
22906 pub fn set_south(&mut self, v: bool) {
22908 self.south = ::std::option::Option::Some(v);
22909 }
22910
22911 pub fn hidden(&self) -> bool {
22914 self.hidden.unwrap_or(false)
22915 }
22916
22917 pub fn clear_hidden(&mut self) {
22918 self.hidden = ::std::option::Option::None;
22919 }
22920
22921 pub fn has_hidden(&self) -> bool {
22922 self.hidden.is_some()
22923 }
22924
22925 pub fn set_hidden(&mut self, v: bool) {
22927 self.hidden = ::std::option::Option::Some(v);
22928 }
22929
22930 pub fn northwest(&self) -> bool {
22933 self.northwest.unwrap_or(false)
22934 }
22935
22936 pub fn clear_northwest(&mut self) {
22937 self.northwest = ::std::option::Option::None;
22938 }
22939
22940 pub fn has_northwest(&self) -> bool {
22941 self.northwest.is_some()
22942 }
22943
22944 pub fn set_northwest(&mut self, v: bool) {
22946 self.northwest = ::std::option::Option::Some(v);
22947 }
22948
22949 pub fn northeast(&self) -> bool {
22952 self.northeast.unwrap_or(false)
22953 }
22954
22955 pub fn clear_northeast(&mut self) {
22956 self.northeast = ::std::option::Option::None;
22957 }
22958
22959 pub fn has_northeast(&self) -> bool {
22960 self.northeast.is_some()
22961 }
22962
22963 pub fn set_northeast(&mut self, v: bool) {
22965 self.northeast = ::std::option::Option::Some(v);
22966 }
22967
22968 pub fn southwest(&self) -> bool {
22971 self.southwest.unwrap_or(false)
22972 }
22973
22974 pub fn clear_southwest(&mut self) {
22975 self.southwest = ::std::option::Option::None;
22976 }
22977
22978 pub fn has_southwest(&self) -> bool {
22979 self.southwest.is_some()
22980 }
22981
22982 pub fn set_southwest(&mut self, v: bool) {
22984 self.southwest = ::std::option::Option::Some(v);
22985 }
22986
22987 pub fn southeast(&self) -> bool {
22990 self.southeast.unwrap_or(false)
22991 }
22992
22993 pub fn clear_southeast(&mut self) {
22994 self.southeast = ::std::option::Option::None;
22995 }
22996
22997 pub fn has_southeast(&self) -> bool {
22998 self.southeast.is_some()
22999 }
23000
23001 pub fn set_southeast(&mut self, v: bool) {
23003 self.southeast = ::std::option::Option::Some(v);
23004 }
23005
23006 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
23007 let mut fields = ::std::vec::Vec::with_capacity(14);
23008 let mut oneofs = ::std::vec::Vec::with_capacity(0);
23009 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
23010 "pos",
23011 |m: &Engraving| { &m.pos },
23012 |m: &mut Engraving| { &mut m.pos },
23013 ));
23014 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23015 "quality",
23016 |m: &Engraving| { &m.quality },
23017 |m: &mut Engraving| { &mut m.quality },
23018 ));
23019 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23020 "tile",
23021 |m: &Engraving| { &m.tile },
23022 |m: &mut Engraving| { &mut m.tile },
23023 ));
23024 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ArtImage>(
23025 "image",
23026 |m: &Engraving| { &m.image },
23027 |m: &mut Engraving| { &mut m.image },
23028 ));
23029 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23030 "floor",
23031 |m: &Engraving| { &m.floor },
23032 |m: &mut Engraving| { &mut m.floor },
23033 ));
23034 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23035 "west",
23036 |m: &Engraving| { &m.west },
23037 |m: &mut Engraving| { &mut m.west },
23038 ));
23039 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23040 "east",
23041 |m: &Engraving| { &m.east },
23042 |m: &mut Engraving| { &mut m.east },
23043 ));
23044 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23045 "north",
23046 |m: &Engraving| { &m.north },
23047 |m: &mut Engraving| { &mut m.north },
23048 ));
23049 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23050 "south",
23051 |m: &Engraving| { &m.south },
23052 |m: &mut Engraving| { &mut m.south },
23053 ));
23054 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23055 "hidden",
23056 |m: &Engraving| { &m.hidden },
23057 |m: &mut Engraving| { &mut m.hidden },
23058 ));
23059 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23060 "northwest",
23061 |m: &Engraving| { &m.northwest },
23062 |m: &mut Engraving| { &mut m.northwest },
23063 ));
23064 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23065 "northeast",
23066 |m: &Engraving| { &m.northeast },
23067 |m: &mut Engraving| { &mut m.northeast },
23068 ));
23069 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23070 "southwest",
23071 |m: &Engraving| { &m.southwest },
23072 |m: &mut Engraving| { &mut m.southwest },
23073 ));
23074 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23075 "southeast",
23076 |m: &Engraving| { &m.southeast },
23077 |m: &mut Engraving| { &mut m.southeast },
23078 ));
23079 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Engraving>(
23080 "Engraving",
23081 fields,
23082 oneofs,
23083 )
23084 }
23085}
23086
23087impl ::protobuf::Message for Engraving {
23088 const NAME: &'static str = "Engraving";
23089
23090 fn is_initialized(&self) -> bool {
23091 for v in &self.pos {
23092 if !v.is_initialized() {
23093 return false;
23094 }
23095 };
23096 for v in &self.image {
23097 if !v.is_initialized() {
23098 return false;
23099 }
23100 };
23101 true
23102 }
23103
23104 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
23105 while let Some(tag) = is.read_raw_tag_or_eof()? {
23106 match tag {
23107 10 => {
23108 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
23109 },
23110 16 => {
23111 self.quality = ::std::option::Option::Some(is.read_int32()?);
23112 },
23113 24 => {
23114 self.tile = ::std::option::Option::Some(is.read_int32()?);
23115 },
23116 34 => {
23117 ::protobuf::rt::read_singular_message_into_field(is, &mut self.image)?;
23118 },
23119 40 => {
23120 self.floor = ::std::option::Option::Some(is.read_bool()?);
23121 },
23122 48 => {
23123 self.west = ::std::option::Option::Some(is.read_bool()?);
23124 },
23125 56 => {
23126 self.east = ::std::option::Option::Some(is.read_bool()?);
23127 },
23128 64 => {
23129 self.north = ::std::option::Option::Some(is.read_bool()?);
23130 },
23131 72 => {
23132 self.south = ::std::option::Option::Some(is.read_bool()?);
23133 },
23134 80 => {
23135 self.hidden = ::std::option::Option::Some(is.read_bool()?);
23136 },
23137 88 => {
23138 self.northwest = ::std::option::Option::Some(is.read_bool()?);
23139 },
23140 96 => {
23141 self.northeast = ::std::option::Option::Some(is.read_bool()?);
23142 },
23143 104 => {
23144 self.southwest = ::std::option::Option::Some(is.read_bool()?);
23145 },
23146 112 => {
23147 self.southeast = ::std::option::Option::Some(is.read_bool()?);
23148 },
23149 tag => {
23150 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
23151 },
23152 };
23153 }
23154 ::std::result::Result::Ok(())
23155 }
23156
23157 #[allow(unused_variables)]
23159 fn compute_size(&self) -> u64 {
23160 let mut my_size = 0;
23161 if let Some(v) = self.pos.as_ref() {
23162 let len = v.compute_size();
23163 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23164 }
23165 if let Some(v) = self.quality {
23166 my_size += ::protobuf::rt::int32_size(2, v);
23167 }
23168 if let Some(v) = self.tile {
23169 my_size += ::protobuf::rt::int32_size(3, v);
23170 }
23171 if let Some(v) = self.image.as_ref() {
23172 let len = v.compute_size();
23173 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23174 }
23175 if let Some(v) = self.floor {
23176 my_size += 1 + 1;
23177 }
23178 if let Some(v) = self.west {
23179 my_size += 1 + 1;
23180 }
23181 if let Some(v) = self.east {
23182 my_size += 1 + 1;
23183 }
23184 if let Some(v) = self.north {
23185 my_size += 1 + 1;
23186 }
23187 if let Some(v) = self.south {
23188 my_size += 1 + 1;
23189 }
23190 if let Some(v) = self.hidden {
23191 my_size += 1 + 1;
23192 }
23193 if let Some(v) = self.northwest {
23194 my_size += 1 + 1;
23195 }
23196 if let Some(v) = self.northeast {
23197 my_size += 1 + 1;
23198 }
23199 if let Some(v) = self.southwest {
23200 my_size += 1 + 1;
23201 }
23202 if let Some(v) = self.southeast {
23203 my_size += 1 + 1;
23204 }
23205 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
23206 self.special_fields.cached_size().set(my_size as u32);
23207 my_size
23208 }
23209
23210 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
23211 if let Some(v) = self.pos.as_ref() {
23212 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
23213 }
23214 if let Some(v) = self.quality {
23215 os.write_int32(2, v)?;
23216 }
23217 if let Some(v) = self.tile {
23218 os.write_int32(3, v)?;
23219 }
23220 if let Some(v) = self.image.as_ref() {
23221 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
23222 }
23223 if let Some(v) = self.floor {
23224 os.write_bool(5, v)?;
23225 }
23226 if let Some(v) = self.west {
23227 os.write_bool(6, v)?;
23228 }
23229 if let Some(v) = self.east {
23230 os.write_bool(7, v)?;
23231 }
23232 if let Some(v) = self.north {
23233 os.write_bool(8, v)?;
23234 }
23235 if let Some(v) = self.south {
23236 os.write_bool(9, v)?;
23237 }
23238 if let Some(v) = self.hidden {
23239 os.write_bool(10, v)?;
23240 }
23241 if let Some(v) = self.northwest {
23242 os.write_bool(11, v)?;
23243 }
23244 if let Some(v) = self.northeast {
23245 os.write_bool(12, v)?;
23246 }
23247 if let Some(v) = self.southwest {
23248 os.write_bool(13, v)?;
23249 }
23250 if let Some(v) = self.southeast {
23251 os.write_bool(14, v)?;
23252 }
23253 os.write_unknown_fields(self.special_fields.unknown_fields())?;
23254 ::std::result::Result::Ok(())
23255 }
23256
23257 fn special_fields(&self) -> &::protobuf::SpecialFields {
23258 &self.special_fields
23259 }
23260
23261 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
23262 &mut self.special_fields
23263 }
23264
23265 fn new() -> Engraving {
23266 Engraving::new()
23267 }
23268
23269 fn clear(&mut self) {
23270 self.pos.clear();
23271 self.quality = ::std::option::Option::None;
23272 self.tile = ::std::option::Option::None;
23273 self.image.clear();
23274 self.floor = ::std::option::Option::None;
23275 self.west = ::std::option::Option::None;
23276 self.east = ::std::option::Option::None;
23277 self.north = ::std::option::Option::None;
23278 self.south = ::std::option::Option::None;
23279 self.hidden = ::std::option::Option::None;
23280 self.northwest = ::std::option::Option::None;
23281 self.northeast = ::std::option::Option::None;
23282 self.southwest = ::std::option::Option::None;
23283 self.southeast = ::std::option::Option::None;
23284 self.special_fields.clear();
23285 }
23286
23287 fn default_instance() -> &'static Engraving {
23288 static instance: Engraving = Engraving {
23289 pos: ::protobuf::MessageField::none(),
23290 quality: ::std::option::Option::None,
23291 tile: ::std::option::Option::None,
23292 image: ::protobuf::MessageField::none(),
23293 floor: ::std::option::Option::None,
23294 west: ::std::option::Option::None,
23295 east: ::std::option::Option::None,
23296 north: ::std::option::Option::None,
23297 south: ::std::option::Option::None,
23298 hidden: ::std::option::Option::None,
23299 northwest: ::std::option::Option::None,
23300 northeast: ::std::option::Option::None,
23301 southwest: ::std::option::Option::None,
23302 southeast: ::std::option::Option::None,
23303 special_fields: ::protobuf::SpecialFields::new(),
23304 };
23305 &instance
23306 }
23307}
23308
23309impl ::protobuf::MessageFull for Engraving {
23310 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
23311 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
23312 descriptor.get(|| file_descriptor().message_by_package_relative_name("Engraving").unwrap()).clone()
23313 }
23314}
23315
23316impl ::std::fmt::Display for Engraving {
23317 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
23318 ::protobuf::text_format::fmt(self, f)
23319 }
23320}
23321
23322impl ::protobuf::reflect::ProtobufValue for Engraving {
23323 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
23324}
23325
23326#[derive(PartialEq,Clone,Default,Debug)]
23328pub struct FlowInfo {
23329 pub index: ::std::option::Option<i32>,
23332 pub type_: ::std::option::Option<::protobuf::EnumOrUnknown<FlowType>>,
23334 pub density: ::std::option::Option<i32>,
23336 pub pos: ::protobuf::MessageField<Coord>,
23338 pub dest: ::protobuf::MessageField<Coord>,
23340 pub expanding: ::std::option::Option<bool>,
23342 pub reuse: ::std::option::Option<bool>,
23344 pub guide_id: ::std::option::Option<i32>,
23346 pub material: ::protobuf::MessageField<MatPair>,
23348 pub item: ::protobuf::MessageField<MatPair>,
23350 pub dead: ::std::option::Option<bool>,
23352 pub fast: ::std::option::Option<bool>,
23354 pub creeping: ::std::option::Option<bool>,
23356 pub special_fields: ::protobuf::SpecialFields,
23359}
23360
23361impl<'a> ::std::default::Default for &'a FlowInfo {
23362 fn default() -> &'a FlowInfo {
23363 <FlowInfo as ::protobuf::Message>::default_instance()
23364 }
23365}
23366
23367impl FlowInfo {
23368 pub fn new() -> FlowInfo {
23369 ::std::default::Default::default()
23370 }
23371
23372 pub fn index(&self) -> i32 {
23375 self.index.unwrap_or(0)
23376 }
23377
23378 pub fn clear_index(&mut self) {
23379 self.index = ::std::option::Option::None;
23380 }
23381
23382 pub fn has_index(&self) -> bool {
23383 self.index.is_some()
23384 }
23385
23386 pub fn set_index(&mut self, v: i32) {
23388 self.index = ::std::option::Option::Some(v);
23389 }
23390
23391 pub fn type_(&self) -> FlowType {
23394 match self.type_ {
23395 Some(e) => e.enum_value_or(FlowType::Miasma),
23396 None => FlowType::Miasma,
23397 }
23398 }
23399
23400 pub fn clear_type_(&mut self) {
23401 self.type_ = ::std::option::Option::None;
23402 }
23403
23404 pub fn has_type(&self) -> bool {
23405 self.type_.is_some()
23406 }
23407
23408 pub fn set_type(&mut self, v: FlowType) {
23410 self.type_ = ::std::option::Option::Some(::protobuf::EnumOrUnknown::new(v));
23411 }
23412
23413 pub fn density(&self) -> i32 {
23416 self.density.unwrap_or(0)
23417 }
23418
23419 pub fn clear_density(&mut self) {
23420 self.density = ::std::option::Option::None;
23421 }
23422
23423 pub fn has_density(&self) -> bool {
23424 self.density.is_some()
23425 }
23426
23427 pub fn set_density(&mut self, v: i32) {
23429 self.density = ::std::option::Option::Some(v);
23430 }
23431
23432 pub fn expanding(&self) -> bool {
23435 self.expanding.unwrap_or(false)
23436 }
23437
23438 pub fn clear_expanding(&mut self) {
23439 self.expanding = ::std::option::Option::None;
23440 }
23441
23442 pub fn has_expanding(&self) -> bool {
23443 self.expanding.is_some()
23444 }
23445
23446 pub fn set_expanding(&mut self, v: bool) {
23448 self.expanding = ::std::option::Option::Some(v);
23449 }
23450
23451 pub fn reuse(&self) -> bool {
23454 self.reuse.unwrap_or(false)
23455 }
23456
23457 pub fn clear_reuse(&mut self) {
23458 self.reuse = ::std::option::Option::None;
23459 }
23460
23461 pub fn has_reuse(&self) -> bool {
23462 self.reuse.is_some()
23463 }
23464
23465 pub fn set_reuse(&mut self, v: bool) {
23467 self.reuse = ::std::option::Option::Some(v);
23468 }
23469
23470 pub fn guide_id(&self) -> i32 {
23473 self.guide_id.unwrap_or(0)
23474 }
23475
23476 pub fn clear_guide_id(&mut self) {
23477 self.guide_id = ::std::option::Option::None;
23478 }
23479
23480 pub fn has_guide_id(&self) -> bool {
23481 self.guide_id.is_some()
23482 }
23483
23484 pub fn set_guide_id(&mut self, v: i32) {
23486 self.guide_id = ::std::option::Option::Some(v);
23487 }
23488
23489 pub fn dead(&self) -> bool {
23492 self.dead.unwrap_or(false)
23493 }
23494
23495 pub fn clear_dead(&mut self) {
23496 self.dead = ::std::option::Option::None;
23497 }
23498
23499 pub fn has_dead(&self) -> bool {
23500 self.dead.is_some()
23501 }
23502
23503 pub fn set_dead(&mut self, v: bool) {
23505 self.dead = ::std::option::Option::Some(v);
23506 }
23507
23508 pub fn fast(&self) -> bool {
23511 self.fast.unwrap_or(false)
23512 }
23513
23514 pub fn clear_fast(&mut self) {
23515 self.fast = ::std::option::Option::None;
23516 }
23517
23518 pub fn has_fast(&self) -> bool {
23519 self.fast.is_some()
23520 }
23521
23522 pub fn set_fast(&mut self, v: bool) {
23524 self.fast = ::std::option::Option::Some(v);
23525 }
23526
23527 pub fn creeping(&self) -> bool {
23530 self.creeping.unwrap_or(false)
23531 }
23532
23533 pub fn clear_creeping(&mut self) {
23534 self.creeping = ::std::option::Option::None;
23535 }
23536
23537 pub fn has_creeping(&self) -> bool {
23538 self.creeping.is_some()
23539 }
23540
23541 pub fn set_creeping(&mut self, v: bool) {
23543 self.creeping = ::std::option::Option::Some(v);
23544 }
23545
23546 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
23547 let mut fields = ::std::vec::Vec::with_capacity(13);
23548 let mut oneofs = ::std::vec::Vec::with_capacity(0);
23549 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23550 "index",
23551 |m: &FlowInfo| { &m.index },
23552 |m: &mut FlowInfo| { &mut m.index },
23553 ));
23554 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23555 "type",
23556 |m: &FlowInfo| { &m.type_ },
23557 |m: &mut FlowInfo| { &mut m.type_ },
23558 ));
23559 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23560 "density",
23561 |m: &FlowInfo| { &m.density },
23562 |m: &mut FlowInfo| { &mut m.density },
23563 ));
23564 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
23565 "pos",
23566 |m: &FlowInfo| { &m.pos },
23567 |m: &mut FlowInfo| { &mut m.pos },
23568 ));
23569 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
23570 "dest",
23571 |m: &FlowInfo| { &m.dest },
23572 |m: &mut FlowInfo| { &mut m.dest },
23573 ));
23574 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23575 "expanding",
23576 |m: &FlowInfo| { &m.expanding },
23577 |m: &mut FlowInfo| { &mut m.expanding },
23578 ));
23579 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23580 "reuse",
23581 |m: &FlowInfo| { &m.reuse },
23582 |m: &mut FlowInfo| { &mut m.reuse },
23583 ));
23584 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23585 "guide_id",
23586 |m: &FlowInfo| { &m.guide_id },
23587 |m: &mut FlowInfo| { &mut m.guide_id },
23588 ));
23589 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
23590 "material",
23591 |m: &FlowInfo| { &m.material },
23592 |m: &mut FlowInfo| { &mut m.material },
23593 ));
23594 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, MatPair>(
23595 "item",
23596 |m: &FlowInfo| { &m.item },
23597 |m: &mut FlowInfo| { &mut m.item },
23598 ));
23599 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23600 "dead",
23601 |m: &FlowInfo| { &m.dead },
23602 |m: &mut FlowInfo| { &mut m.dead },
23603 ));
23604 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23605 "fast",
23606 |m: &FlowInfo| { &m.fast },
23607 |m: &mut FlowInfo| { &mut m.fast },
23608 ));
23609 fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
23610 "creeping",
23611 |m: &FlowInfo| { &m.creeping },
23612 |m: &mut FlowInfo| { &mut m.creeping },
23613 ));
23614 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<FlowInfo>(
23615 "FlowInfo",
23616 fields,
23617 oneofs,
23618 )
23619 }
23620}
23621
23622impl ::protobuf::Message for FlowInfo {
23623 const NAME: &'static str = "FlowInfo";
23624
23625 fn is_initialized(&self) -> bool {
23626 for v in &self.pos {
23627 if !v.is_initialized() {
23628 return false;
23629 }
23630 };
23631 for v in &self.dest {
23632 if !v.is_initialized() {
23633 return false;
23634 }
23635 };
23636 for v in &self.material {
23637 if !v.is_initialized() {
23638 return false;
23639 }
23640 };
23641 for v in &self.item {
23642 if !v.is_initialized() {
23643 return false;
23644 }
23645 };
23646 true
23647 }
23648
23649 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
23650 while let Some(tag) = is.read_raw_tag_or_eof()? {
23651 match tag {
23652 8 => {
23653 self.index = ::std::option::Option::Some(is.read_int32()?);
23654 },
23655 16 => {
23656 self.type_ = ::std::option::Option::Some(is.read_enum_or_unknown()?);
23657 },
23658 24 => {
23659 self.density = ::std::option::Option::Some(is.read_int32()?);
23660 },
23661 34 => {
23662 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
23663 },
23664 42 => {
23665 ::protobuf::rt::read_singular_message_into_field(is, &mut self.dest)?;
23666 },
23667 48 => {
23668 self.expanding = ::std::option::Option::Some(is.read_bool()?);
23669 },
23670 56 => {
23671 self.reuse = ::std::option::Option::Some(is.read_bool()?);
23672 },
23673 64 => {
23674 self.guide_id = ::std::option::Option::Some(is.read_int32()?);
23675 },
23676 74 => {
23677 ::protobuf::rt::read_singular_message_into_field(is, &mut self.material)?;
23678 },
23679 82 => {
23680 ::protobuf::rt::read_singular_message_into_field(is, &mut self.item)?;
23681 },
23682 88 => {
23683 self.dead = ::std::option::Option::Some(is.read_bool()?);
23684 },
23685 96 => {
23686 self.fast = ::std::option::Option::Some(is.read_bool()?);
23687 },
23688 104 => {
23689 self.creeping = ::std::option::Option::Some(is.read_bool()?);
23690 },
23691 tag => {
23692 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
23693 },
23694 };
23695 }
23696 ::std::result::Result::Ok(())
23697 }
23698
23699 #[allow(unused_variables)]
23701 fn compute_size(&self) -> u64 {
23702 let mut my_size = 0;
23703 if let Some(v) = self.index {
23704 my_size += ::protobuf::rt::int32_size(1, v);
23705 }
23706 if let Some(v) = self.type_ {
23707 my_size += ::protobuf::rt::int32_size(2, v.value());
23708 }
23709 if let Some(v) = self.density {
23710 my_size += ::protobuf::rt::int32_size(3, v);
23711 }
23712 if let Some(v) = self.pos.as_ref() {
23713 let len = v.compute_size();
23714 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23715 }
23716 if let Some(v) = self.dest.as_ref() {
23717 let len = v.compute_size();
23718 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23719 }
23720 if let Some(v) = self.expanding {
23721 my_size += 1 + 1;
23722 }
23723 if let Some(v) = self.reuse {
23724 my_size += 1 + 1;
23725 }
23726 if let Some(v) = self.guide_id {
23727 my_size += ::protobuf::rt::int32_size(8, v);
23728 }
23729 if let Some(v) = self.material.as_ref() {
23730 let len = v.compute_size();
23731 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23732 }
23733 if let Some(v) = self.item.as_ref() {
23734 let len = v.compute_size();
23735 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23736 }
23737 if let Some(v) = self.dead {
23738 my_size += 1 + 1;
23739 }
23740 if let Some(v) = self.fast {
23741 my_size += 1 + 1;
23742 }
23743 if let Some(v) = self.creeping {
23744 my_size += 1 + 1;
23745 }
23746 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
23747 self.special_fields.cached_size().set(my_size as u32);
23748 my_size
23749 }
23750
23751 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
23752 if let Some(v) = self.index {
23753 os.write_int32(1, v)?;
23754 }
23755 if let Some(v) = self.type_ {
23756 os.write_enum(2, ::protobuf::EnumOrUnknown::value(&v))?;
23757 }
23758 if let Some(v) = self.density {
23759 os.write_int32(3, v)?;
23760 }
23761 if let Some(v) = self.pos.as_ref() {
23762 ::protobuf::rt::write_message_field_with_cached_size(4, v, os)?;
23763 }
23764 if let Some(v) = self.dest.as_ref() {
23765 ::protobuf::rt::write_message_field_with_cached_size(5, v, os)?;
23766 }
23767 if let Some(v) = self.expanding {
23768 os.write_bool(6, v)?;
23769 }
23770 if let Some(v) = self.reuse {
23771 os.write_bool(7, v)?;
23772 }
23773 if let Some(v) = self.guide_id {
23774 os.write_int32(8, v)?;
23775 }
23776 if let Some(v) = self.material.as_ref() {
23777 ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
23778 }
23779 if let Some(v) = self.item.as_ref() {
23780 ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
23781 }
23782 if let Some(v) = self.dead {
23783 os.write_bool(11, v)?;
23784 }
23785 if let Some(v) = self.fast {
23786 os.write_bool(12, v)?;
23787 }
23788 if let Some(v) = self.creeping {
23789 os.write_bool(13, v)?;
23790 }
23791 os.write_unknown_fields(self.special_fields.unknown_fields())?;
23792 ::std::result::Result::Ok(())
23793 }
23794
23795 fn special_fields(&self) -> &::protobuf::SpecialFields {
23796 &self.special_fields
23797 }
23798
23799 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
23800 &mut self.special_fields
23801 }
23802
23803 fn new() -> FlowInfo {
23804 FlowInfo::new()
23805 }
23806
23807 fn clear(&mut self) {
23808 self.index = ::std::option::Option::None;
23809 self.type_ = ::std::option::Option::None;
23810 self.density = ::std::option::Option::None;
23811 self.pos.clear();
23812 self.dest.clear();
23813 self.expanding = ::std::option::Option::None;
23814 self.reuse = ::std::option::Option::None;
23815 self.guide_id = ::std::option::Option::None;
23816 self.material.clear();
23817 self.item.clear();
23818 self.dead = ::std::option::Option::None;
23819 self.fast = ::std::option::Option::None;
23820 self.creeping = ::std::option::Option::None;
23821 self.special_fields.clear();
23822 }
23823
23824 fn default_instance() -> &'static FlowInfo {
23825 static instance: FlowInfo = FlowInfo {
23826 index: ::std::option::Option::None,
23827 type_: ::std::option::Option::None,
23828 density: ::std::option::Option::None,
23829 pos: ::protobuf::MessageField::none(),
23830 dest: ::protobuf::MessageField::none(),
23831 expanding: ::std::option::Option::None,
23832 reuse: ::std::option::Option::None,
23833 guide_id: ::std::option::Option::None,
23834 material: ::protobuf::MessageField::none(),
23835 item: ::protobuf::MessageField::none(),
23836 dead: ::std::option::Option::None,
23837 fast: ::std::option::Option::None,
23838 creeping: ::std::option::Option::None,
23839 special_fields: ::protobuf::SpecialFields::new(),
23840 };
23841 &instance
23842 }
23843}
23844
23845impl ::protobuf::MessageFull for FlowInfo {
23846 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
23847 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
23848 descriptor.get(|| file_descriptor().message_by_package_relative_name("FlowInfo").unwrap()).clone()
23849 }
23850}
23851
23852impl ::std::fmt::Display for FlowInfo {
23853 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
23854 ::protobuf::text_format::fmt(self, f)
23855 }
23856}
23857
23858impl ::protobuf::reflect::ProtobufValue for FlowInfo {
23859 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
23860}
23861
23862#[derive(PartialEq,Clone,Default,Debug)]
23864pub struct Wave {
23865 pub dest: ::protobuf::MessageField<Coord>,
23868 pub pos: ::protobuf::MessageField<Coord>,
23870 pub special_fields: ::protobuf::SpecialFields,
23873}
23874
23875impl<'a> ::std::default::Default for &'a Wave {
23876 fn default() -> &'a Wave {
23877 <Wave as ::protobuf::Message>::default_instance()
23878 }
23879}
23880
23881impl Wave {
23882 pub fn new() -> Wave {
23883 ::std::default::Default::default()
23884 }
23885
23886 fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
23887 let mut fields = ::std::vec::Vec::with_capacity(2);
23888 let mut oneofs = ::std::vec::Vec::with_capacity(0);
23889 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
23890 "dest",
23891 |m: &Wave| { &m.dest },
23892 |m: &mut Wave| { &mut m.dest },
23893 ));
23894 fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, Coord>(
23895 "pos",
23896 |m: &Wave| { &m.pos },
23897 |m: &mut Wave| { &mut m.pos },
23898 ));
23899 ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<Wave>(
23900 "Wave",
23901 fields,
23902 oneofs,
23903 )
23904 }
23905}
23906
23907impl ::protobuf::Message for Wave {
23908 const NAME: &'static str = "Wave";
23909
23910 fn is_initialized(&self) -> bool {
23911 true
23912 }
23913
23914 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
23915 while let Some(tag) = is.read_raw_tag_or_eof()? {
23916 match tag {
23917 10 => {
23918 ::protobuf::rt::read_singular_message_into_field(is, &mut self.dest)?;
23919 },
23920 18 => {
23921 ::protobuf::rt::read_singular_message_into_field(is, &mut self.pos)?;
23922 },
23923 tag => {
23924 ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
23925 },
23926 };
23927 }
23928 ::std::result::Result::Ok(())
23929 }
23930
23931 #[allow(unused_variables)]
23933 fn compute_size(&self) -> u64 {
23934 let mut my_size = 0;
23935 if let Some(v) = self.dest.as_ref() {
23936 let len = v.compute_size();
23937 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23938 }
23939 if let Some(v) = self.pos.as_ref() {
23940 let len = v.compute_size();
23941 my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
23942 }
23943 my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
23944 self.special_fields.cached_size().set(my_size as u32);
23945 my_size
23946 }
23947
23948 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
23949 if let Some(v) = self.dest.as_ref() {
23950 ::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
23951 }
23952 if let Some(v) = self.pos.as_ref() {
23953 ::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
23954 }
23955 os.write_unknown_fields(self.special_fields.unknown_fields())?;
23956 ::std::result::Result::Ok(())
23957 }
23958
23959 fn special_fields(&self) -> &::protobuf::SpecialFields {
23960 &self.special_fields
23961 }
23962
23963 fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
23964 &mut self.special_fields
23965 }
23966
23967 fn new() -> Wave {
23968 Wave::new()
23969 }
23970
23971 fn clear(&mut self) {
23972 self.dest.clear();
23973 self.pos.clear();
23974 self.special_fields.clear();
23975 }
23976
23977 fn default_instance() -> &'static Wave {
23978 static instance: Wave = Wave {
23979 dest: ::protobuf::MessageField::none(),
23980 pos: ::protobuf::MessageField::none(),
23981 special_fields: ::protobuf::SpecialFields::new(),
23982 };
23983 &instance
23984 }
23985}
23986
23987impl ::protobuf::MessageFull for Wave {
23988 fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
23989 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
23990 descriptor.get(|| file_descriptor().message_by_package_relative_name("Wave").unwrap()).clone()
23991 }
23992}
23993
23994impl ::std::fmt::Display for Wave {
23995 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
23996 ::protobuf::text_format::fmt(self, f)
23997 }
23998}
23999
24000impl ::protobuf::reflect::ProtobufValue for Wave {
24001 type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
24002}
24003
24004#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24005pub enum TiletypeShape {
24007 NO_SHAPE = -1,
24009 EMPTY = 0,
24011 FLOOR = 1,
24013 BOULDER = 2,
24015 PEBBLES = 3,
24017 WALL = 4,
24019 FORTIFICATION = 5,
24021 STAIR_UP = 6,
24023 STAIR_DOWN = 7,
24025 STAIR_UPDOWN = 8,
24027 RAMP = 9,
24029 RAMP_TOP = 10,
24031 BROOK_BED = 11,
24033 BROOK_TOP = 12,
24035 TREE_SHAPE = 13,
24037 SAPLING = 14,
24039 SHRUB = 15,
24041 ENDLESS_PIT = 16,
24043 BRANCH = 17,
24045 TRUNK_BRANCH = 18,
24047 TWIG = 19,
24049}
24050
24051impl ::protobuf::Enum for TiletypeShape {
24052 const NAME: &'static str = "TiletypeShape";
24053
24054 fn value(&self) -> i32 {
24055 *self as i32
24056 }
24057
24058 fn from_i32(value: i32) -> ::std::option::Option<TiletypeShape> {
24059 match value {
24060 -1 => ::std::option::Option::Some(TiletypeShape::NO_SHAPE),
24061 0 => ::std::option::Option::Some(TiletypeShape::EMPTY),
24062 1 => ::std::option::Option::Some(TiletypeShape::FLOOR),
24063 2 => ::std::option::Option::Some(TiletypeShape::BOULDER),
24064 3 => ::std::option::Option::Some(TiletypeShape::PEBBLES),
24065 4 => ::std::option::Option::Some(TiletypeShape::WALL),
24066 5 => ::std::option::Option::Some(TiletypeShape::FORTIFICATION),
24067 6 => ::std::option::Option::Some(TiletypeShape::STAIR_UP),
24068 7 => ::std::option::Option::Some(TiletypeShape::STAIR_DOWN),
24069 8 => ::std::option::Option::Some(TiletypeShape::STAIR_UPDOWN),
24070 9 => ::std::option::Option::Some(TiletypeShape::RAMP),
24071 10 => ::std::option::Option::Some(TiletypeShape::RAMP_TOP),
24072 11 => ::std::option::Option::Some(TiletypeShape::BROOK_BED),
24073 12 => ::std::option::Option::Some(TiletypeShape::BROOK_TOP),
24074 13 => ::std::option::Option::Some(TiletypeShape::TREE_SHAPE),
24075 14 => ::std::option::Option::Some(TiletypeShape::SAPLING),
24076 15 => ::std::option::Option::Some(TiletypeShape::SHRUB),
24077 16 => ::std::option::Option::Some(TiletypeShape::ENDLESS_PIT),
24078 17 => ::std::option::Option::Some(TiletypeShape::BRANCH),
24079 18 => ::std::option::Option::Some(TiletypeShape::TRUNK_BRANCH),
24080 19 => ::std::option::Option::Some(TiletypeShape::TWIG),
24081 _ => ::std::option::Option::None
24082 }
24083 }
24084
24085 fn from_str(str: &str) -> ::std::option::Option<TiletypeShape> {
24086 match str {
24087 "NO_SHAPE" => ::std::option::Option::Some(TiletypeShape::NO_SHAPE),
24088 "EMPTY" => ::std::option::Option::Some(TiletypeShape::EMPTY),
24089 "FLOOR" => ::std::option::Option::Some(TiletypeShape::FLOOR),
24090 "BOULDER" => ::std::option::Option::Some(TiletypeShape::BOULDER),
24091 "PEBBLES" => ::std::option::Option::Some(TiletypeShape::PEBBLES),
24092 "WALL" => ::std::option::Option::Some(TiletypeShape::WALL),
24093 "FORTIFICATION" => ::std::option::Option::Some(TiletypeShape::FORTIFICATION),
24094 "STAIR_UP" => ::std::option::Option::Some(TiletypeShape::STAIR_UP),
24095 "STAIR_DOWN" => ::std::option::Option::Some(TiletypeShape::STAIR_DOWN),
24096 "STAIR_UPDOWN" => ::std::option::Option::Some(TiletypeShape::STAIR_UPDOWN),
24097 "RAMP" => ::std::option::Option::Some(TiletypeShape::RAMP),
24098 "RAMP_TOP" => ::std::option::Option::Some(TiletypeShape::RAMP_TOP),
24099 "BROOK_BED" => ::std::option::Option::Some(TiletypeShape::BROOK_BED),
24100 "BROOK_TOP" => ::std::option::Option::Some(TiletypeShape::BROOK_TOP),
24101 "TREE_SHAPE" => ::std::option::Option::Some(TiletypeShape::TREE_SHAPE),
24102 "SAPLING" => ::std::option::Option::Some(TiletypeShape::SAPLING),
24103 "SHRUB" => ::std::option::Option::Some(TiletypeShape::SHRUB),
24104 "ENDLESS_PIT" => ::std::option::Option::Some(TiletypeShape::ENDLESS_PIT),
24105 "BRANCH" => ::std::option::Option::Some(TiletypeShape::BRANCH),
24106 "TRUNK_BRANCH" => ::std::option::Option::Some(TiletypeShape::TRUNK_BRANCH),
24107 "TWIG" => ::std::option::Option::Some(TiletypeShape::TWIG),
24108 _ => ::std::option::Option::None
24109 }
24110 }
24111
24112 const VALUES: &'static [TiletypeShape] = &[
24113 TiletypeShape::NO_SHAPE,
24114 TiletypeShape::EMPTY,
24115 TiletypeShape::FLOOR,
24116 TiletypeShape::BOULDER,
24117 TiletypeShape::PEBBLES,
24118 TiletypeShape::WALL,
24119 TiletypeShape::FORTIFICATION,
24120 TiletypeShape::STAIR_UP,
24121 TiletypeShape::STAIR_DOWN,
24122 TiletypeShape::STAIR_UPDOWN,
24123 TiletypeShape::RAMP,
24124 TiletypeShape::RAMP_TOP,
24125 TiletypeShape::BROOK_BED,
24126 TiletypeShape::BROOK_TOP,
24127 TiletypeShape::TREE_SHAPE,
24128 TiletypeShape::SAPLING,
24129 TiletypeShape::SHRUB,
24130 TiletypeShape::ENDLESS_PIT,
24131 TiletypeShape::BRANCH,
24132 TiletypeShape::TRUNK_BRANCH,
24133 TiletypeShape::TWIG,
24134 ];
24135}
24136
24137impl ::protobuf::EnumFull for TiletypeShape {
24138 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24139 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24140 descriptor.get(|| file_descriptor().enum_by_package_relative_name("TiletypeShape").unwrap()).clone()
24141 }
24142
24143 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24144 let index = match self {
24145 TiletypeShape::NO_SHAPE => 0,
24146 TiletypeShape::EMPTY => 1,
24147 TiletypeShape::FLOOR => 2,
24148 TiletypeShape::BOULDER => 3,
24149 TiletypeShape::PEBBLES => 4,
24150 TiletypeShape::WALL => 5,
24151 TiletypeShape::FORTIFICATION => 6,
24152 TiletypeShape::STAIR_UP => 7,
24153 TiletypeShape::STAIR_DOWN => 8,
24154 TiletypeShape::STAIR_UPDOWN => 9,
24155 TiletypeShape::RAMP => 10,
24156 TiletypeShape::RAMP_TOP => 11,
24157 TiletypeShape::BROOK_BED => 12,
24158 TiletypeShape::BROOK_TOP => 13,
24159 TiletypeShape::TREE_SHAPE => 14,
24160 TiletypeShape::SAPLING => 15,
24161 TiletypeShape::SHRUB => 16,
24162 TiletypeShape::ENDLESS_PIT => 17,
24163 TiletypeShape::BRANCH => 18,
24164 TiletypeShape::TRUNK_BRANCH => 19,
24165 TiletypeShape::TWIG => 20,
24166 };
24167 Self::enum_descriptor().value_by_index(index)
24168 }
24169}
24170
24171impl ::std::default::Default for TiletypeShape {
24173 fn default() -> Self {
24174 TiletypeShape::NO_SHAPE
24175 }
24176}
24177
24178impl TiletypeShape {
24179 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24180 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<TiletypeShape>("TiletypeShape")
24181 }
24182}
24183
24184#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24185pub enum TiletypeSpecial {
24187 NO_SPECIAL = -1,
24189 NORMAL = 0,
24191 RIVER_SOURCE = 1,
24193 WATERFALL = 2,
24195 SMOOTH = 3,
24197 FURROWED = 4,
24199 WET = 5,
24201 DEAD = 6,
24203 WORN_1 = 7,
24205 WORN_2 = 8,
24207 WORN_3 = 9,
24209 TRACK = 10,
24211 SMOOTH_DEAD = 11,
24213}
24214
24215impl ::protobuf::Enum for TiletypeSpecial {
24216 const NAME: &'static str = "TiletypeSpecial";
24217
24218 fn value(&self) -> i32 {
24219 *self as i32
24220 }
24221
24222 fn from_i32(value: i32) -> ::std::option::Option<TiletypeSpecial> {
24223 match value {
24224 -1 => ::std::option::Option::Some(TiletypeSpecial::NO_SPECIAL),
24225 0 => ::std::option::Option::Some(TiletypeSpecial::NORMAL),
24226 1 => ::std::option::Option::Some(TiletypeSpecial::RIVER_SOURCE),
24227 2 => ::std::option::Option::Some(TiletypeSpecial::WATERFALL),
24228 3 => ::std::option::Option::Some(TiletypeSpecial::SMOOTH),
24229 4 => ::std::option::Option::Some(TiletypeSpecial::FURROWED),
24230 5 => ::std::option::Option::Some(TiletypeSpecial::WET),
24231 6 => ::std::option::Option::Some(TiletypeSpecial::DEAD),
24232 7 => ::std::option::Option::Some(TiletypeSpecial::WORN_1),
24233 8 => ::std::option::Option::Some(TiletypeSpecial::WORN_2),
24234 9 => ::std::option::Option::Some(TiletypeSpecial::WORN_3),
24235 10 => ::std::option::Option::Some(TiletypeSpecial::TRACK),
24236 11 => ::std::option::Option::Some(TiletypeSpecial::SMOOTH_DEAD),
24237 _ => ::std::option::Option::None
24238 }
24239 }
24240
24241 fn from_str(str: &str) -> ::std::option::Option<TiletypeSpecial> {
24242 match str {
24243 "NO_SPECIAL" => ::std::option::Option::Some(TiletypeSpecial::NO_SPECIAL),
24244 "NORMAL" => ::std::option::Option::Some(TiletypeSpecial::NORMAL),
24245 "RIVER_SOURCE" => ::std::option::Option::Some(TiletypeSpecial::RIVER_SOURCE),
24246 "WATERFALL" => ::std::option::Option::Some(TiletypeSpecial::WATERFALL),
24247 "SMOOTH" => ::std::option::Option::Some(TiletypeSpecial::SMOOTH),
24248 "FURROWED" => ::std::option::Option::Some(TiletypeSpecial::FURROWED),
24249 "WET" => ::std::option::Option::Some(TiletypeSpecial::WET),
24250 "DEAD" => ::std::option::Option::Some(TiletypeSpecial::DEAD),
24251 "WORN_1" => ::std::option::Option::Some(TiletypeSpecial::WORN_1),
24252 "WORN_2" => ::std::option::Option::Some(TiletypeSpecial::WORN_2),
24253 "WORN_3" => ::std::option::Option::Some(TiletypeSpecial::WORN_3),
24254 "TRACK" => ::std::option::Option::Some(TiletypeSpecial::TRACK),
24255 "SMOOTH_DEAD" => ::std::option::Option::Some(TiletypeSpecial::SMOOTH_DEAD),
24256 _ => ::std::option::Option::None
24257 }
24258 }
24259
24260 const VALUES: &'static [TiletypeSpecial] = &[
24261 TiletypeSpecial::NO_SPECIAL,
24262 TiletypeSpecial::NORMAL,
24263 TiletypeSpecial::RIVER_SOURCE,
24264 TiletypeSpecial::WATERFALL,
24265 TiletypeSpecial::SMOOTH,
24266 TiletypeSpecial::FURROWED,
24267 TiletypeSpecial::WET,
24268 TiletypeSpecial::DEAD,
24269 TiletypeSpecial::WORN_1,
24270 TiletypeSpecial::WORN_2,
24271 TiletypeSpecial::WORN_3,
24272 TiletypeSpecial::TRACK,
24273 TiletypeSpecial::SMOOTH_DEAD,
24274 ];
24275}
24276
24277impl ::protobuf::EnumFull for TiletypeSpecial {
24278 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24279 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24280 descriptor.get(|| file_descriptor().enum_by_package_relative_name("TiletypeSpecial").unwrap()).clone()
24281 }
24282
24283 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24284 let index = match self {
24285 TiletypeSpecial::NO_SPECIAL => 0,
24286 TiletypeSpecial::NORMAL => 1,
24287 TiletypeSpecial::RIVER_SOURCE => 2,
24288 TiletypeSpecial::WATERFALL => 3,
24289 TiletypeSpecial::SMOOTH => 4,
24290 TiletypeSpecial::FURROWED => 5,
24291 TiletypeSpecial::WET => 6,
24292 TiletypeSpecial::DEAD => 7,
24293 TiletypeSpecial::WORN_1 => 8,
24294 TiletypeSpecial::WORN_2 => 9,
24295 TiletypeSpecial::WORN_3 => 10,
24296 TiletypeSpecial::TRACK => 11,
24297 TiletypeSpecial::SMOOTH_DEAD => 12,
24298 };
24299 Self::enum_descriptor().value_by_index(index)
24300 }
24301}
24302
24303impl ::std::default::Default for TiletypeSpecial {
24305 fn default() -> Self {
24306 TiletypeSpecial::NO_SPECIAL
24307 }
24308}
24309
24310impl TiletypeSpecial {
24311 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24312 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<TiletypeSpecial>("TiletypeSpecial")
24313 }
24314}
24315
24316#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24317pub enum TiletypeMaterial {
24319 NO_MATERIAL = -1,
24321 AIR = 0,
24323 SOIL = 1,
24325 STONE = 2,
24327 FEATURE = 3,
24329 LAVA_STONE = 4,
24331 MINERAL = 5,
24333 FROZEN_LIQUID = 6,
24335 CONSTRUCTION = 7,
24337 GRASS_LIGHT = 8,
24339 GRASS_DARK = 9,
24341 GRASS_DRY = 10,
24343 GRASS_DEAD = 11,
24345 PLANT = 12,
24347 HFS = 13,
24349 CAMPFIRE = 14,
24351 FIRE = 15,
24353 ASHES = 16,
24355 MAGMA = 17,
24357 DRIFTWOOD = 18,
24359 POOL = 19,
24361 BROOK = 20,
24363 RIVER = 21,
24365 ROOT = 22,
24367 TREE_MATERIAL = 23,
24369 MUSHROOM = 24,
24371 UNDERWORLD_GATE = 25,
24373}
24374
24375impl ::protobuf::Enum for TiletypeMaterial {
24376 const NAME: &'static str = "TiletypeMaterial";
24377
24378 fn value(&self) -> i32 {
24379 *self as i32
24380 }
24381
24382 fn from_i32(value: i32) -> ::std::option::Option<TiletypeMaterial> {
24383 match value {
24384 -1 => ::std::option::Option::Some(TiletypeMaterial::NO_MATERIAL),
24385 0 => ::std::option::Option::Some(TiletypeMaterial::AIR),
24386 1 => ::std::option::Option::Some(TiletypeMaterial::SOIL),
24387 2 => ::std::option::Option::Some(TiletypeMaterial::STONE),
24388 3 => ::std::option::Option::Some(TiletypeMaterial::FEATURE),
24389 4 => ::std::option::Option::Some(TiletypeMaterial::LAVA_STONE),
24390 5 => ::std::option::Option::Some(TiletypeMaterial::MINERAL),
24391 6 => ::std::option::Option::Some(TiletypeMaterial::FROZEN_LIQUID),
24392 7 => ::std::option::Option::Some(TiletypeMaterial::CONSTRUCTION),
24393 8 => ::std::option::Option::Some(TiletypeMaterial::GRASS_LIGHT),
24394 9 => ::std::option::Option::Some(TiletypeMaterial::GRASS_DARK),
24395 10 => ::std::option::Option::Some(TiletypeMaterial::GRASS_DRY),
24396 11 => ::std::option::Option::Some(TiletypeMaterial::GRASS_DEAD),
24397 12 => ::std::option::Option::Some(TiletypeMaterial::PLANT),
24398 13 => ::std::option::Option::Some(TiletypeMaterial::HFS),
24399 14 => ::std::option::Option::Some(TiletypeMaterial::CAMPFIRE),
24400 15 => ::std::option::Option::Some(TiletypeMaterial::FIRE),
24401 16 => ::std::option::Option::Some(TiletypeMaterial::ASHES),
24402 17 => ::std::option::Option::Some(TiletypeMaterial::MAGMA),
24403 18 => ::std::option::Option::Some(TiletypeMaterial::DRIFTWOOD),
24404 19 => ::std::option::Option::Some(TiletypeMaterial::POOL),
24405 20 => ::std::option::Option::Some(TiletypeMaterial::BROOK),
24406 21 => ::std::option::Option::Some(TiletypeMaterial::RIVER),
24407 22 => ::std::option::Option::Some(TiletypeMaterial::ROOT),
24408 23 => ::std::option::Option::Some(TiletypeMaterial::TREE_MATERIAL),
24409 24 => ::std::option::Option::Some(TiletypeMaterial::MUSHROOM),
24410 25 => ::std::option::Option::Some(TiletypeMaterial::UNDERWORLD_GATE),
24411 _ => ::std::option::Option::None
24412 }
24413 }
24414
24415 fn from_str(str: &str) -> ::std::option::Option<TiletypeMaterial> {
24416 match str {
24417 "NO_MATERIAL" => ::std::option::Option::Some(TiletypeMaterial::NO_MATERIAL),
24418 "AIR" => ::std::option::Option::Some(TiletypeMaterial::AIR),
24419 "SOIL" => ::std::option::Option::Some(TiletypeMaterial::SOIL),
24420 "STONE" => ::std::option::Option::Some(TiletypeMaterial::STONE),
24421 "FEATURE" => ::std::option::Option::Some(TiletypeMaterial::FEATURE),
24422 "LAVA_STONE" => ::std::option::Option::Some(TiletypeMaterial::LAVA_STONE),
24423 "MINERAL" => ::std::option::Option::Some(TiletypeMaterial::MINERAL),
24424 "FROZEN_LIQUID" => ::std::option::Option::Some(TiletypeMaterial::FROZEN_LIQUID),
24425 "CONSTRUCTION" => ::std::option::Option::Some(TiletypeMaterial::CONSTRUCTION),
24426 "GRASS_LIGHT" => ::std::option::Option::Some(TiletypeMaterial::GRASS_LIGHT),
24427 "GRASS_DARK" => ::std::option::Option::Some(TiletypeMaterial::GRASS_DARK),
24428 "GRASS_DRY" => ::std::option::Option::Some(TiletypeMaterial::GRASS_DRY),
24429 "GRASS_DEAD" => ::std::option::Option::Some(TiletypeMaterial::GRASS_DEAD),
24430 "PLANT" => ::std::option::Option::Some(TiletypeMaterial::PLANT),
24431 "HFS" => ::std::option::Option::Some(TiletypeMaterial::HFS),
24432 "CAMPFIRE" => ::std::option::Option::Some(TiletypeMaterial::CAMPFIRE),
24433 "FIRE" => ::std::option::Option::Some(TiletypeMaterial::FIRE),
24434 "ASHES" => ::std::option::Option::Some(TiletypeMaterial::ASHES),
24435 "MAGMA" => ::std::option::Option::Some(TiletypeMaterial::MAGMA),
24436 "DRIFTWOOD" => ::std::option::Option::Some(TiletypeMaterial::DRIFTWOOD),
24437 "POOL" => ::std::option::Option::Some(TiletypeMaterial::POOL),
24438 "BROOK" => ::std::option::Option::Some(TiletypeMaterial::BROOK),
24439 "RIVER" => ::std::option::Option::Some(TiletypeMaterial::RIVER),
24440 "ROOT" => ::std::option::Option::Some(TiletypeMaterial::ROOT),
24441 "TREE_MATERIAL" => ::std::option::Option::Some(TiletypeMaterial::TREE_MATERIAL),
24442 "MUSHROOM" => ::std::option::Option::Some(TiletypeMaterial::MUSHROOM),
24443 "UNDERWORLD_GATE" => ::std::option::Option::Some(TiletypeMaterial::UNDERWORLD_GATE),
24444 _ => ::std::option::Option::None
24445 }
24446 }
24447
24448 const VALUES: &'static [TiletypeMaterial] = &[
24449 TiletypeMaterial::NO_MATERIAL,
24450 TiletypeMaterial::AIR,
24451 TiletypeMaterial::SOIL,
24452 TiletypeMaterial::STONE,
24453 TiletypeMaterial::FEATURE,
24454 TiletypeMaterial::LAVA_STONE,
24455 TiletypeMaterial::MINERAL,
24456 TiletypeMaterial::FROZEN_LIQUID,
24457 TiletypeMaterial::CONSTRUCTION,
24458 TiletypeMaterial::GRASS_LIGHT,
24459 TiletypeMaterial::GRASS_DARK,
24460 TiletypeMaterial::GRASS_DRY,
24461 TiletypeMaterial::GRASS_DEAD,
24462 TiletypeMaterial::PLANT,
24463 TiletypeMaterial::HFS,
24464 TiletypeMaterial::CAMPFIRE,
24465 TiletypeMaterial::FIRE,
24466 TiletypeMaterial::ASHES,
24467 TiletypeMaterial::MAGMA,
24468 TiletypeMaterial::DRIFTWOOD,
24469 TiletypeMaterial::POOL,
24470 TiletypeMaterial::BROOK,
24471 TiletypeMaterial::RIVER,
24472 TiletypeMaterial::ROOT,
24473 TiletypeMaterial::TREE_MATERIAL,
24474 TiletypeMaterial::MUSHROOM,
24475 TiletypeMaterial::UNDERWORLD_GATE,
24476 ];
24477}
24478
24479impl ::protobuf::EnumFull for TiletypeMaterial {
24480 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24481 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24482 descriptor.get(|| file_descriptor().enum_by_package_relative_name("TiletypeMaterial").unwrap()).clone()
24483 }
24484
24485 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24486 let index = match self {
24487 TiletypeMaterial::NO_MATERIAL => 0,
24488 TiletypeMaterial::AIR => 1,
24489 TiletypeMaterial::SOIL => 2,
24490 TiletypeMaterial::STONE => 3,
24491 TiletypeMaterial::FEATURE => 4,
24492 TiletypeMaterial::LAVA_STONE => 5,
24493 TiletypeMaterial::MINERAL => 6,
24494 TiletypeMaterial::FROZEN_LIQUID => 7,
24495 TiletypeMaterial::CONSTRUCTION => 8,
24496 TiletypeMaterial::GRASS_LIGHT => 9,
24497 TiletypeMaterial::GRASS_DARK => 10,
24498 TiletypeMaterial::GRASS_DRY => 11,
24499 TiletypeMaterial::GRASS_DEAD => 12,
24500 TiletypeMaterial::PLANT => 13,
24501 TiletypeMaterial::HFS => 14,
24502 TiletypeMaterial::CAMPFIRE => 15,
24503 TiletypeMaterial::FIRE => 16,
24504 TiletypeMaterial::ASHES => 17,
24505 TiletypeMaterial::MAGMA => 18,
24506 TiletypeMaterial::DRIFTWOOD => 19,
24507 TiletypeMaterial::POOL => 20,
24508 TiletypeMaterial::BROOK => 21,
24509 TiletypeMaterial::RIVER => 22,
24510 TiletypeMaterial::ROOT => 23,
24511 TiletypeMaterial::TREE_MATERIAL => 24,
24512 TiletypeMaterial::MUSHROOM => 25,
24513 TiletypeMaterial::UNDERWORLD_GATE => 26,
24514 };
24515 Self::enum_descriptor().value_by_index(index)
24516 }
24517}
24518
24519impl ::std::default::Default for TiletypeMaterial {
24521 fn default() -> Self {
24522 TiletypeMaterial::NO_MATERIAL
24523 }
24524}
24525
24526impl TiletypeMaterial {
24527 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24528 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<TiletypeMaterial>("TiletypeMaterial")
24529 }
24530}
24531
24532#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24533pub enum TiletypeVariant {
24535 NO_VARIANT = -1,
24537 VAR_1 = 0,
24539 VAR_2 = 1,
24541 VAR_3 = 2,
24543 VAR_4 = 3,
24545}
24546
24547impl ::protobuf::Enum for TiletypeVariant {
24548 const NAME: &'static str = "TiletypeVariant";
24549
24550 fn value(&self) -> i32 {
24551 *self as i32
24552 }
24553
24554 fn from_i32(value: i32) -> ::std::option::Option<TiletypeVariant> {
24555 match value {
24556 -1 => ::std::option::Option::Some(TiletypeVariant::NO_VARIANT),
24557 0 => ::std::option::Option::Some(TiletypeVariant::VAR_1),
24558 1 => ::std::option::Option::Some(TiletypeVariant::VAR_2),
24559 2 => ::std::option::Option::Some(TiletypeVariant::VAR_3),
24560 3 => ::std::option::Option::Some(TiletypeVariant::VAR_4),
24561 _ => ::std::option::Option::None
24562 }
24563 }
24564
24565 fn from_str(str: &str) -> ::std::option::Option<TiletypeVariant> {
24566 match str {
24567 "NO_VARIANT" => ::std::option::Option::Some(TiletypeVariant::NO_VARIANT),
24568 "VAR_1" => ::std::option::Option::Some(TiletypeVariant::VAR_1),
24569 "VAR_2" => ::std::option::Option::Some(TiletypeVariant::VAR_2),
24570 "VAR_3" => ::std::option::Option::Some(TiletypeVariant::VAR_3),
24571 "VAR_4" => ::std::option::Option::Some(TiletypeVariant::VAR_4),
24572 _ => ::std::option::Option::None
24573 }
24574 }
24575
24576 const VALUES: &'static [TiletypeVariant] = &[
24577 TiletypeVariant::NO_VARIANT,
24578 TiletypeVariant::VAR_1,
24579 TiletypeVariant::VAR_2,
24580 TiletypeVariant::VAR_3,
24581 TiletypeVariant::VAR_4,
24582 ];
24583}
24584
24585impl ::protobuf::EnumFull for TiletypeVariant {
24586 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24587 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24588 descriptor.get(|| file_descriptor().enum_by_package_relative_name("TiletypeVariant").unwrap()).clone()
24589 }
24590
24591 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24592 let index = match self {
24593 TiletypeVariant::NO_VARIANT => 0,
24594 TiletypeVariant::VAR_1 => 1,
24595 TiletypeVariant::VAR_2 => 2,
24596 TiletypeVariant::VAR_3 => 3,
24597 TiletypeVariant::VAR_4 => 4,
24598 };
24599 Self::enum_descriptor().value_by_index(index)
24600 }
24601}
24602
24603impl ::std::default::Default for TiletypeVariant {
24605 fn default() -> Self {
24606 TiletypeVariant::NO_VARIANT
24607 }
24608}
24609
24610impl TiletypeVariant {
24611 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24612 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<TiletypeVariant>("TiletypeVariant")
24613 }
24614}
24615
24616#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24617pub enum WorldPoles {
24619 NO_POLES = 0,
24621 NORTH_POLE = 1,
24623 SOUTH_POLE = 2,
24625 BOTH_POLES = 3,
24627}
24628
24629impl ::protobuf::Enum for WorldPoles {
24630 const NAME: &'static str = "WorldPoles";
24631
24632 fn value(&self) -> i32 {
24633 *self as i32
24634 }
24635
24636 fn from_i32(value: i32) -> ::std::option::Option<WorldPoles> {
24637 match value {
24638 0 => ::std::option::Option::Some(WorldPoles::NO_POLES),
24639 1 => ::std::option::Option::Some(WorldPoles::NORTH_POLE),
24640 2 => ::std::option::Option::Some(WorldPoles::SOUTH_POLE),
24641 3 => ::std::option::Option::Some(WorldPoles::BOTH_POLES),
24642 _ => ::std::option::Option::None
24643 }
24644 }
24645
24646 fn from_str(str: &str) -> ::std::option::Option<WorldPoles> {
24647 match str {
24648 "NO_POLES" => ::std::option::Option::Some(WorldPoles::NO_POLES),
24649 "NORTH_POLE" => ::std::option::Option::Some(WorldPoles::NORTH_POLE),
24650 "SOUTH_POLE" => ::std::option::Option::Some(WorldPoles::SOUTH_POLE),
24651 "BOTH_POLES" => ::std::option::Option::Some(WorldPoles::BOTH_POLES),
24652 _ => ::std::option::Option::None
24653 }
24654 }
24655
24656 const VALUES: &'static [WorldPoles] = &[
24657 WorldPoles::NO_POLES,
24658 WorldPoles::NORTH_POLE,
24659 WorldPoles::SOUTH_POLE,
24660 WorldPoles::BOTH_POLES,
24661 ];
24662}
24663
24664impl ::protobuf::EnumFull for WorldPoles {
24665 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24666 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24667 descriptor.get(|| file_descriptor().enum_by_package_relative_name("WorldPoles").unwrap()).clone()
24668 }
24669
24670 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24671 let index = *self as usize;
24672 Self::enum_descriptor().value_by_index(index)
24673 }
24674}
24675
24676impl ::std::default::Default for WorldPoles {
24677 fn default() -> Self {
24678 WorldPoles::NO_POLES
24679 }
24680}
24681
24682impl WorldPoles {
24683 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24684 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<WorldPoles>("WorldPoles")
24685 }
24686}
24687
24688#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24689pub enum BuildingDirection {
24691 NORTH = 0,
24693 EAST = 1,
24695 SOUTH = 2,
24697 WEST = 3,
24699 NORTHEAST = 4,
24701 SOUTHEAST = 5,
24703 SOUTHWEST = 6,
24705 NORTHWEST = 7,
24707 NONE = 8,
24709}
24710
24711impl ::protobuf::Enum for BuildingDirection {
24712 const NAME: &'static str = "BuildingDirection";
24713
24714 fn value(&self) -> i32 {
24715 *self as i32
24716 }
24717
24718 fn from_i32(value: i32) -> ::std::option::Option<BuildingDirection> {
24719 match value {
24720 0 => ::std::option::Option::Some(BuildingDirection::NORTH),
24721 1 => ::std::option::Option::Some(BuildingDirection::EAST),
24722 2 => ::std::option::Option::Some(BuildingDirection::SOUTH),
24723 3 => ::std::option::Option::Some(BuildingDirection::WEST),
24724 4 => ::std::option::Option::Some(BuildingDirection::NORTHEAST),
24725 5 => ::std::option::Option::Some(BuildingDirection::SOUTHEAST),
24726 6 => ::std::option::Option::Some(BuildingDirection::SOUTHWEST),
24727 7 => ::std::option::Option::Some(BuildingDirection::NORTHWEST),
24728 8 => ::std::option::Option::Some(BuildingDirection::NONE),
24729 _ => ::std::option::Option::None
24730 }
24731 }
24732
24733 fn from_str(str: &str) -> ::std::option::Option<BuildingDirection> {
24734 match str {
24735 "NORTH" => ::std::option::Option::Some(BuildingDirection::NORTH),
24736 "EAST" => ::std::option::Option::Some(BuildingDirection::EAST),
24737 "SOUTH" => ::std::option::Option::Some(BuildingDirection::SOUTH),
24738 "WEST" => ::std::option::Option::Some(BuildingDirection::WEST),
24739 "NORTHEAST" => ::std::option::Option::Some(BuildingDirection::NORTHEAST),
24740 "SOUTHEAST" => ::std::option::Option::Some(BuildingDirection::SOUTHEAST),
24741 "SOUTHWEST" => ::std::option::Option::Some(BuildingDirection::SOUTHWEST),
24742 "NORTHWEST" => ::std::option::Option::Some(BuildingDirection::NORTHWEST),
24743 "NONE" => ::std::option::Option::Some(BuildingDirection::NONE),
24744 _ => ::std::option::Option::None
24745 }
24746 }
24747
24748 const VALUES: &'static [BuildingDirection] = &[
24749 BuildingDirection::NORTH,
24750 BuildingDirection::EAST,
24751 BuildingDirection::SOUTH,
24752 BuildingDirection::WEST,
24753 BuildingDirection::NORTHEAST,
24754 BuildingDirection::SOUTHEAST,
24755 BuildingDirection::SOUTHWEST,
24756 BuildingDirection::NORTHWEST,
24757 BuildingDirection::NONE,
24758 ];
24759}
24760
24761impl ::protobuf::EnumFull for BuildingDirection {
24762 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24763 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24764 descriptor.get(|| file_descriptor().enum_by_package_relative_name("BuildingDirection").unwrap()).clone()
24765 }
24766
24767 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24768 let index = *self as usize;
24769 Self::enum_descriptor().value_by_index(index)
24770 }
24771}
24772
24773impl ::std::default::Default for BuildingDirection {
24774 fn default() -> Self {
24775 BuildingDirection::NORTH
24776 }
24777}
24778
24779impl BuildingDirection {
24780 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24781 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<BuildingDirection>("BuildingDirection")
24782 }
24783}
24784
24785#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24786pub enum TileDigDesignation {
24788 NO_DIG = 0,
24790 DEFAULT_DIG = 1,
24792 UP_DOWN_STAIR_DIG = 2,
24794 CHANNEL_DIG = 3,
24796 RAMP_DIG = 4,
24798 DOWN_STAIR_DIG = 5,
24800 UP_STAIR_DIG = 6,
24802}
24803
24804impl ::protobuf::Enum for TileDigDesignation {
24805 const NAME: &'static str = "TileDigDesignation";
24806
24807 fn value(&self) -> i32 {
24808 *self as i32
24809 }
24810
24811 fn from_i32(value: i32) -> ::std::option::Option<TileDigDesignation> {
24812 match value {
24813 0 => ::std::option::Option::Some(TileDigDesignation::NO_DIG),
24814 1 => ::std::option::Option::Some(TileDigDesignation::DEFAULT_DIG),
24815 2 => ::std::option::Option::Some(TileDigDesignation::UP_DOWN_STAIR_DIG),
24816 3 => ::std::option::Option::Some(TileDigDesignation::CHANNEL_DIG),
24817 4 => ::std::option::Option::Some(TileDigDesignation::RAMP_DIG),
24818 5 => ::std::option::Option::Some(TileDigDesignation::DOWN_STAIR_DIG),
24819 6 => ::std::option::Option::Some(TileDigDesignation::UP_STAIR_DIG),
24820 _ => ::std::option::Option::None
24821 }
24822 }
24823
24824 fn from_str(str: &str) -> ::std::option::Option<TileDigDesignation> {
24825 match str {
24826 "NO_DIG" => ::std::option::Option::Some(TileDigDesignation::NO_DIG),
24827 "DEFAULT_DIG" => ::std::option::Option::Some(TileDigDesignation::DEFAULT_DIG),
24828 "UP_DOWN_STAIR_DIG" => ::std::option::Option::Some(TileDigDesignation::UP_DOWN_STAIR_DIG),
24829 "CHANNEL_DIG" => ::std::option::Option::Some(TileDigDesignation::CHANNEL_DIG),
24830 "RAMP_DIG" => ::std::option::Option::Some(TileDigDesignation::RAMP_DIG),
24831 "DOWN_STAIR_DIG" => ::std::option::Option::Some(TileDigDesignation::DOWN_STAIR_DIG),
24832 "UP_STAIR_DIG" => ::std::option::Option::Some(TileDigDesignation::UP_STAIR_DIG),
24833 _ => ::std::option::Option::None
24834 }
24835 }
24836
24837 const VALUES: &'static [TileDigDesignation] = &[
24838 TileDigDesignation::NO_DIG,
24839 TileDigDesignation::DEFAULT_DIG,
24840 TileDigDesignation::UP_DOWN_STAIR_DIG,
24841 TileDigDesignation::CHANNEL_DIG,
24842 TileDigDesignation::RAMP_DIG,
24843 TileDigDesignation::DOWN_STAIR_DIG,
24844 TileDigDesignation::UP_STAIR_DIG,
24845 ];
24846}
24847
24848impl ::protobuf::EnumFull for TileDigDesignation {
24849 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24850 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24851 descriptor.get(|| file_descriptor().enum_by_package_relative_name("TileDigDesignation").unwrap()).clone()
24852 }
24853
24854 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24855 let index = *self as usize;
24856 Self::enum_descriptor().value_by_index(index)
24857 }
24858}
24859
24860impl ::std::default::Default for TileDigDesignation {
24861 fn default() -> Self {
24862 TileDigDesignation::NO_DIG
24863 }
24864}
24865
24866impl TileDigDesignation {
24867 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24868 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<TileDigDesignation>("TileDigDesignation")
24869 }
24870}
24871
24872#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24873pub enum HairStyle {
24875 UNKEMPT = -1,
24877 NEATLY_COMBED = 0,
24879 BRAIDED = 1,
24881 DOUBLE_BRAID = 2,
24883 PONY_TAILS = 3,
24885 CLEAN_SHAVEN = 4,
24887}
24888
24889impl ::protobuf::Enum for HairStyle {
24890 const NAME: &'static str = "HairStyle";
24891
24892 fn value(&self) -> i32 {
24893 *self as i32
24894 }
24895
24896 fn from_i32(value: i32) -> ::std::option::Option<HairStyle> {
24897 match value {
24898 -1 => ::std::option::Option::Some(HairStyle::UNKEMPT),
24899 0 => ::std::option::Option::Some(HairStyle::NEATLY_COMBED),
24900 1 => ::std::option::Option::Some(HairStyle::BRAIDED),
24901 2 => ::std::option::Option::Some(HairStyle::DOUBLE_BRAID),
24902 3 => ::std::option::Option::Some(HairStyle::PONY_TAILS),
24903 4 => ::std::option::Option::Some(HairStyle::CLEAN_SHAVEN),
24904 _ => ::std::option::Option::None
24905 }
24906 }
24907
24908 fn from_str(str: &str) -> ::std::option::Option<HairStyle> {
24909 match str {
24910 "UNKEMPT" => ::std::option::Option::Some(HairStyle::UNKEMPT),
24911 "NEATLY_COMBED" => ::std::option::Option::Some(HairStyle::NEATLY_COMBED),
24912 "BRAIDED" => ::std::option::Option::Some(HairStyle::BRAIDED),
24913 "DOUBLE_BRAID" => ::std::option::Option::Some(HairStyle::DOUBLE_BRAID),
24914 "PONY_TAILS" => ::std::option::Option::Some(HairStyle::PONY_TAILS),
24915 "CLEAN_SHAVEN" => ::std::option::Option::Some(HairStyle::CLEAN_SHAVEN),
24916 _ => ::std::option::Option::None
24917 }
24918 }
24919
24920 const VALUES: &'static [HairStyle] = &[
24921 HairStyle::UNKEMPT,
24922 HairStyle::NEATLY_COMBED,
24923 HairStyle::BRAIDED,
24924 HairStyle::DOUBLE_BRAID,
24925 HairStyle::PONY_TAILS,
24926 HairStyle::CLEAN_SHAVEN,
24927 ];
24928}
24929
24930impl ::protobuf::EnumFull for HairStyle {
24931 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
24932 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
24933 descriptor.get(|| file_descriptor().enum_by_package_relative_name("HairStyle").unwrap()).clone()
24934 }
24935
24936 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
24937 let index = match self {
24938 HairStyle::UNKEMPT => 0,
24939 HairStyle::NEATLY_COMBED => 1,
24940 HairStyle::BRAIDED => 2,
24941 HairStyle::DOUBLE_BRAID => 3,
24942 HairStyle::PONY_TAILS => 4,
24943 HairStyle::CLEAN_SHAVEN => 5,
24944 };
24945 Self::enum_descriptor().value_by_index(index)
24946 }
24947}
24948
24949impl ::std::default::Default for HairStyle {
24951 fn default() -> Self {
24952 HairStyle::UNKEMPT
24953 }
24954}
24955
24956impl HairStyle {
24957 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
24958 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<HairStyle>("HairStyle")
24959 }
24960}
24961
24962#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
24963pub enum InventoryMode {
24965 Hauled = 0,
24967 Weapon = 1,
24969 Worn = 2,
24971 Piercing = 3,
24973 Flask = 4,
24975 WrappedAround = 5,
24977 StuckIn = 6,
24979 InMouth = 7,
24981 Pet = 8,
24983 SewnInto = 9,
24985 Strapped = 10,
24987}
24988
24989impl ::protobuf::Enum for InventoryMode {
24990 const NAME: &'static str = "InventoryMode";
24991
24992 fn value(&self) -> i32 {
24993 *self as i32
24994 }
24995
24996 fn from_i32(value: i32) -> ::std::option::Option<InventoryMode> {
24997 match value {
24998 0 => ::std::option::Option::Some(InventoryMode::Hauled),
24999 1 => ::std::option::Option::Some(InventoryMode::Weapon),
25000 2 => ::std::option::Option::Some(InventoryMode::Worn),
25001 3 => ::std::option::Option::Some(InventoryMode::Piercing),
25002 4 => ::std::option::Option::Some(InventoryMode::Flask),
25003 5 => ::std::option::Option::Some(InventoryMode::WrappedAround),
25004 6 => ::std::option::Option::Some(InventoryMode::StuckIn),
25005 7 => ::std::option::Option::Some(InventoryMode::InMouth),
25006 8 => ::std::option::Option::Some(InventoryMode::Pet),
25007 9 => ::std::option::Option::Some(InventoryMode::SewnInto),
25008 10 => ::std::option::Option::Some(InventoryMode::Strapped),
25009 _ => ::std::option::Option::None
25010 }
25011 }
25012
25013 fn from_str(str: &str) -> ::std::option::Option<InventoryMode> {
25014 match str {
25015 "Hauled" => ::std::option::Option::Some(InventoryMode::Hauled),
25016 "Weapon" => ::std::option::Option::Some(InventoryMode::Weapon),
25017 "Worn" => ::std::option::Option::Some(InventoryMode::Worn),
25018 "Piercing" => ::std::option::Option::Some(InventoryMode::Piercing),
25019 "Flask" => ::std::option::Option::Some(InventoryMode::Flask),
25020 "WrappedAround" => ::std::option::Option::Some(InventoryMode::WrappedAround),
25021 "StuckIn" => ::std::option::Option::Some(InventoryMode::StuckIn),
25022 "InMouth" => ::std::option::Option::Some(InventoryMode::InMouth),
25023 "Pet" => ::std::option::Option::Some(InventoryMode::Pet),
25024 "SewnInto" => ::std::option::Option::Some(InventoryMode::SewnInto),
25025 "Strapped" => ::std::option::Option::Some(InventoryMode::Strapped),
25026 _ => ::std::option::Option::None
25027 }
25028 }
25029
25030 const VALUES: &'static [InventoryMode] = &[
25031 InventoryMode::Hauled,
25032 InventoryMode::Weapon,
25033 InventoryMode::Worn,
25034 InventoryMode::Piercing,
25035 InventoryMode::Flask,
25036 InventoryMode::WrappedAround,
25037 InventoryMode::StuckIn,
25038 InventoryMode::InMouth,
25039 InventoryMode::Pet,
25040 InventoryMode::SewnInto,
25041 InventoryMode::Strapped,
25042 ];
25043}
25044
25045impl ::protobuf::EnumFull for InventoryMode {
25046 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25047 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25048 descriptor.get(|| file_descriptor().enum_by_package_relative_name("InventoryMode").unwrap()).clone()
25049 }
25050
25051 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25052 let index = *self as usize;
25053 Self::enum_descriptor().value_by_index(index)
25054 }
25055}
25056
25057impl ::std::default::Default for InventoryMode {
25058 fn default() -> Self {
25059 InventoryMode::Hauled
25060 }
25061}
25062
25063impl InventoryMode {
25064 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25065 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<InventoryMode>("InventoryMode")
25066 }
25067}
25068
25069#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25070pub enum ArmorLayer {
25072 LAYER_UNDER = 0,
25074 LAYER_OVER = 1,
25076 LAYER_ARMOR = 2,
25078 LAYER_COVER = 3,
25080}
25081
25082impl ::protobuf::Enum for ArmorLayer {
25083 const NAME: &'static str = "ArmorLayer";
25084
25085 fn value(&self) -> i32 {
25086 *self as i32
25087 }
25088
25089 fn from_i32(value: i32) -> ::std::option::Option<ArmorLayer> {
25090 match value {
25091 0 => ::std::option::Option::Some(ArmorLayer::LAYER_UNDER),
25092 1 => ::std::option::Option::Some(ArmorLayer::LAYER_OVER),
25093 2 => ::std::option::Option::Some(ArmorLayer::LAYER_ARMOR),
25094 3 => ::std::option::Option::Some(ArmorLayer::LAYER_COVER),
25095 _ => ::std::option::Option::None
25096 }
25097 }
25098
25099 fn from_str(str: &str) -> ::std::option::Option<ArmorLayer> {
25100 match str {
25101 "LAYER_UNDER" => ::std::option::Option::Some(ArmorLayer::LAYER_UNDER),
25102 "LAYER_OVER" => ::std::option::Option::Some(ArmorLayer::LAYER_OVER),
25103 "LAYER_ARMOR" => ::std::option::Option::Some(ArmorLayer::LAYER_ARMOR),
25104 "LAYER_COVER" => ::std::option::Option::Some(ArmorLayer::LAYER_COVER),
25105 _ => ::std::option::Option::None
25106 }
25107 }
25108
25109 const VALUES: &'static [ArmorLayer] = &[
25110 ArmorLayer::LAYER_UNDER,
25111 ArmorLayer::LAYER_OVER,
25112 ArmorLayer::LAYER_ARMOR,
25113 ArmorLayer::LAYER_COVER,
25114 ];
25115}
25116
25117impl ::protobuf::EnumFull for ArmorLayer {
25118 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25119 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25120 descriptor.get(|| file_descriptor().enum_by_package_relative_name("ArmorLayer").unwrap()).clone()
25121 }
25122
25123 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25124 let index = *self as usize;
25125 Self::enum_descriptor().value_by_index(index)
25126 }
25127}
25128
25129impl ::std::default::Default for ArmorLayer {
25130 fn default() -> Self {
25131 ArmorLayer::LAYER_UNDER
25132 }
25133}
25134
25135impl ArmorLayer {
25136 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25137 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<ArmorLayer>("ArmorLayer")
25138 }
25139}
25140
25141#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25142pub enum MatterState {
25144 Solid = 0,
25146 Liquid = 1,
25148 Gas = 2,
25150 Powder = 3,
25152 Paste = 4,
25154 Pressed = 5,
25156}
25157
25158impl ::protobuf::Enum for MatterState {
25159 const NAME: &'static str = "MatterState";
25160
25161 fn value(&self) -> i32 {
25162 *self as i32
25163 }
25164
25165 fn from_i32(value: i32) -> ::std::option::Option<MatterState> {
25166 match value {
25167 0 => ::std::option::Option::Some(MatterState::Solid),
25168 1 => ::std::option::Option::Some(MatterState::Liquid),
25169 2 => ::std::option::Option::Some(MatterState::Gas),
25170 3 => ::std::option::Option::Some(MatterState::Powder),
25171 4 => ::std::option::Option::Some(MatterState::Paste),
25172 5 => ::std::option::Option::Some(MatterState::Pressed),
25173 _ => ::std::option::Option::None
25174 }
25175 }
25176
25177 fn from_str(str: &str) -> ::std::option::Option<MatterState> {
25178 match str {
25179 "Solid" => ::std::option::Option::Some(MatterState::Solid),
25180 "Liquid" => ::std::option::Option::Some(MatterState::Liquid),
25181 "Gas" => ::std::option::Option::Some(MatterState::Gas),
25182 "Powder" => ::std::option::Option::Some(MatterState::Powder),
25183 "Paste" => ::std::option::Option::Some(MatterState::Paste),
25184 "Pressed" => ::std::option::Option::Some(MatterState::Pressed),
25185 _ => ::std::option::Option::None
25186 }
25187 }
25188
25189 const VALUES: &'static [MatterState] = &[
25190 MatterState::Solid,
25191 MatterState::Liquid,
25192 MatterState::Gas,
25193 MatterState::Powder,
25194 MatterState::Paste,
25195 MatterState::Pressed,
25196 ];
25197}
25198
25199impl ::protobuf::EnumFull for MatterState {
25200 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25201 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25202 descriptor.get(|| file_descriptor().enum_by_package_relative_name("MatterState").unwrap()).clone()
25203 }
25204
25205 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25206 let index = *self as usize;
25207 Self::enum_descriptor().value_by_index(index)
25208 }
25209}
25210
25211impl ::std::default::Default for MatterState {
25212 fn default() -> Self {
25213 MatterState::Solid
25214 }
25215}
25216
25217impl MatterState {
25218 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25219 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<MatterState>("MatterState")
25220 }
25221}
25222
25223#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25224pub enum FrontType {
25226 FRONT_NONE = 0,
25228 FRONT_WARM = 1,
25230 FRONT_COLD = 2,
25232 FRONT_OCCLUDED = 3,
25234}
25235
25236impl ::protobuf::Enum for FrontType {
25237 const NAME: &'static str = "FrontType";
25238
25239 fn value(&self) -> i32 {
25240 *self as i32
25241 }
25242
25243 fn from_i32(value: i32) -> ::std::option::Option<FrontType> {
25244 match value {
25245 0 => ::std::option::Option::Some(FrontType::FRONT_NONE),
25246 1 => ::std::option::Option::Some(FrontType::FRONT_WARM),
25247 2 => ::std::option::Option::Some(FrontType::FRONT_COLD),
25248 3 => ::std::option::Option::Some(FrontType::FRONT_OCCLUDED),
25249 _ => ::std::option::Option::None
25250 }
25251 }
25252
25253 fn from_str(str: &str) -> ::std::option::Option<FrontType> {
25254 match str {
25255 "FRONT_NONE" => ::std::option::Option::Some(FrontType::FRONT_NONE),
25256 "FRONT_WARM" => ::std::option::Option::Some(FrontType::FRONT_WARM),
25257 "FRONT_COLD" => ::std::option::Option::Some(FrontType::FRONT_COLD),
25258 "FRONT_OCCLUDED" => ::std::option::Option::Some(FrontType::FRONT_OCCLUDED),
25259 _ => ::std::option::Option::None
25260 }
25261 }
25262
25263 const VALUES: &'static [FrontType] = &[
25264 FrontType::FRONT_NONE,
25265 FrontType::FRONT_WARM,
25266 FrontType::FRONT_COLD,
25267 FrontType::FRONT_OCCLUDED,
25268 ];
25269}
25270
25271impl ::protobuf::EnumFull for FrontType {
25272 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25273 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25274 descriptor.get(|| file_descriptor().enum_by_package_relative_name("FrontType").unwrap()).clone()
25275 }
25276
25277 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25278 let index = *self as usize;
25279 Self::enum_descriptor().value_by_index(index)
25280 }
25281}
25282
25283impl ::std::default::Default for FrontType {
25284 fn default() -> Self {
25285 FrontType::FRONT_NONE
25286 }
25287}
25288
25289impl FrontType {
25290 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25291 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<FrontType>("FrontType")
25292 }
25293}
25294
25295#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25296pub enum CumulusType {
25298 CUMULUS_NONE = 0,
25300 CUMULUS_MEDIUM = 1,
25302 CUMULUS_MULTI = 2,
25304 CUMULUS_NIMBUS = 3,
25306}
25307
25308impl ::protobuf::Enum for CumulusType {
25309 const NAME: &'static str = "CumulusType";
25310
25311 fn value(&self) -> i32 {
25312 *self as i32
25313 }
25314
25315 fn from_i32(value: i32) -> ::std::option::Option<CumulusType> {
25316 match value {
25317 0 => ::std::option::Option::Some(CumulusType::CUMULUS_NONE),
25318 1 => ::std::option::Option::Some(CumulusType::CUMULUS_MEDIUM),
25319 2 => ::std::option::Option::Some(CumulusType::CUMULUS_MULTI),
25320 3 => ::std::option::Option::Some(CumulusType::CUMULUS_NIMBUS),
25321 _ => ::std::option::Option::None
25322 }
25323 }
25324
25325 fn from_str(str: &str) -> ::std::option::Option<CumulusType> {
25326 match str {
25327 "CUMULUS_NONE" => ::std::option::Option::Some(CumulusType::CUMULUS_NONE),
25328 "CUMULUS_MEDIUM" => ::std::option::Option::Some(CumulusType::CUMULUS_MEDIUM),
25329 "CUMULUS_MULTI" => ::std::option::Option::Some(CumulusType::CUMULUS_MULTI),
25330 "CUMULUS_NIMBUS" => ::std::option::Option::Some(CumulusType::CUMULUS_NIMBUS),
25331 _ => ::std::option::Option::None
25332 }
25333 }
25334
25335 const VALUES: &'static [CumulusType] = &[
25336 CumulusType::CUMULUS_NONE,
25337 CumulusType::CUMULUS_MEDIUM,
25338 CumulusType::CUMULUS_MULTI,
25339 CumulusType::CUMULUS_NIMBUS,
25340 ];
25341}
25342
25343impl ::protobuf::EnumFull for CumulusType {
25344 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25345 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25346 descriptor.get(|| file_descriptor().enum_by_package_relative_name("CumulusType").unwrap()).clone()
25347 }
25348
25349 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25350 let index = *self as usize;
25351 Self::enum_descriptor().value_by_index(index)
25352 }
25353}
25354
25355impl ::std::default::Default for CumulusType {
25356 fn default() -> Self {
25357 CumulusType::CUMULUS_NONE
25358 }
25359}
25360
25361impl CumulusType {
25362 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25363 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<CumulusType>("CumulusType")
25364 }
25365}
25366
25367#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25368pub enum StratusType {
25370 STRATUS_NONE = 0,
25372 STRATUS_ALTO = 1,
25374 STRATUS_PROPER = 2,
25376 STRATUS_NIMBUS = 3,
25378}
25379
25380impl ::protobuf::Enum for StratusType {
25381 const NAME: &'static str = "StratusType";
25382
25383 fn value(&self) -> i32 {
25384 *self as i32
25385 }
25386
25387 fn from_i32(value: i32) -> ::std::option::Option<StratusType> {
25388 match value {
25389 0 => ::std::option::Option::Some(StratusType::STRATUS_NONE),
25390 1 => ::std::option::Option::Some(StratusType::STRATUS_ALTO),
25391 2 => ::std::option::Option::Some(StratusType::STRATUS_PROPER),
25392 3 => ::std::option::Option::Some(StratusType::STRATUS_NIMBUS),
25393 _ => ::std::option::Option::None
25394 }
25395 }
25396
25397 fn from_str(str: &str) -> ::std::option::Option<StratusType> {
25398 match str {
25399 "STRATUS_NONE" => ::std::option::Option::Some(StratusType::STRATUS_NONE),
25400 "STRATUS_ALTO" => ::std::option::Option::Some(StratusType::STRATUS_ALTO),
25401 "STRATUS_PROPER" => ::std::option::Option::Some(StratusType::STRATUS_PROPER),
25402 "STRATUS_NIMBUS" => ::std::option::Option::Some(StratusType::STRATUS_NIMBUS),
25403 _ => ::std::option::Option::None
25404 }
25405 }
25406
25407 const VALUES: &'static [StratusType] = &[
25408 StratusType::STRATUS_NONE,
25409 StratusType::STRATUS_ALTO,
25410 StratusType::STRATUS_PROPER,
25411 StratusType::STRATUS_NIMBUS,
25412 ];
25413}
25414
25415impl ::protobuf::EnumFull for StratusType {
25416 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25417 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25418 descriptor.get(|| file_descriptor().enum_by_package_relative_name("StratusType").unwrap()).clone()
25419 }
25420
25421 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25422 let index = *self as usize;
25423 Self::enum_descriptor().value_by_index(index)
25424 }
25425}
25426
25427impl ::std::default::Default for StratusType {
25428 fn default() -> Self {
25429 StratusType::STRATUS_NONE
25430 }
25431}
25432
25433impl StratusType {
25434 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25435 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<StratusType>("StratusType")
25436 }
25437}
25438
25439#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25440pub enum FogType {
25442 FOG_NONE = 0,
25444 FOG_MIST = 1,
25446 FOG_NORMAL = 2,
25448 F0G_THICK = 3,
25450}
25451
25452impl ::protobuf::Enum for FogType {
25453 const NAME: &'static str = "FogType";
25454
25455 fn value(&self) -> i32 {
25456 *self as i32
25457 }
25458
25459 fn from_i32(value: i32) -> ::std::option::Option<FogType> {
25460 match value {
25461 0 => ::std::option::Option::Some(FogType::FOG_NONE),
25462 1 => ::std::option::Option::Some(FogType::FOG_MIST),
25463 2 => ::std::option::Option::Some(FogType::FOG_NORMAL),
25464 3 => ::std::option::Option::Some(FogType::F0G_THICK),
25465 _ => ::std::option::Option::None
25466 }
25467 }
25468
25469 fn from_str(str: &str) -> ::std::option::Option<FogType> {
25470 match str {
25471 "FOG_NONE" => ::std::option::Option::Some(FogType::FOG_NONE),
25472 "FOG_MIST" => ::std::option::Option::Some(FogType::FOG_MIST),
25473 "FOG_NORMAL" => ::std::option::Option::Some(FogType::FOG_NORMAL),
25474 "F0G_THICK" => ::std::option::Option::Some(FogType::F0G_THICK),
25475 _ => ::std::option::Option::None
25476 }
25477 }
25478
25479 const VALUES: &'static [FogType] = &[
25480 FogType::FOG_NONE,
25481 FogType::FOG_MIST,
25482 FogType::FOG_NORMAL,
25483 FogType::F0G_THICK,
25484 ];
25485}
25486
25487impl ::protobuf::EnumFull for FogType {
25488 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25489 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25490 descriptor.get(|| file_descriptor().enum_by_package_relative_name("FogType").unwrap()).clone()
25491 }
25492
25493 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25494 let index = *self as usize;
25495 Self::enum_descriptor().value_by_index(index)
25496 }
25497}
25498
25499impl ::std::default::Default for FogType {
25500 fn default() -> Self {
25501 FogType::FOG_NONE
25502 }
25503}
25504
25505impl FogType {
25506 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25507 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<FogType>("FogType")
25508 }
25509}
25510
25511#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25512pub enum PatternType {
25514 MONOTONE = 0,
25516 STRIPES = 1,
25518 IRIS_EYE = 2,
25520 SPOTS = 3,
25522 PUPIL_EYE = 4,
25524 MOTTLED = 5,
25526}
25527
25528impl ::protobuf::Enum for PatternType {
25529 const NAME: &'static str = "PatternType";
25530
25531 fn value(&self) -> i32 {
25532 *self as i32
25533 }
25534
25535 fn from_i32(value: i32) -> ::std::option::Option<PatternType> {
25536 match value {
25537 0 => ::std::option::Option::Some(PatternType::MONOTONE),
25538 1 => ::std::option::Option::Some(PatternType::STRIPES),
25539 2 => ::std::option::Option::Some(PatternType::IRIS_EYE),
25540 3 => ::std::option::Option::Some(PatternType::SPOTS),
25541 4 => ::std::option::Option::Some(PatternType::PUPIL_EYE),
25542 5 => ::std::option::Option::Some(PatternType::MOTTLED),
25543 _ => ::std::option::Option::None
25544 }
25545 }
25546
25547 fn from_str(str: &str) -> ::std::option::Option<PatternType> {
25548 match str {
25549 "MONOTONE" => ::std::option::Option::Some(PatternType::MONOTONE),
25550 "STRIPES" => ::std::option::Option::Some(PatternType::STRIPES),
25551 "IRIS_EYE" => ::std::option::Option::Some(PatternType::IRIS_EYE),
25552 "SPOTS" => ::std::option::Option::Some(PatternType::SPOTS),
25553 "PUPIL_EYE" => ::std::option::Option::Some(PatternType::PUPIL_EYE),
25554 "MOTTLED" => ::std::option::Option::Some(PatternType::MOTTLED),
25555 _ => ::std::option::Option::None
25556 }
25557 }
25558
25559 const VALUES: &'static [PatternType] = &[
25560 PatternType::MONOTONE,
25561 PatternType::STRIPES,
25562 PatternType::IRIS_EYE,
25563 PatternType::SPOTS,
25564 PatternType::PUPIL_EYE,
25565 PatternType::MOTTLED,
25566 ];
25567}
25568
25569impl ::protobuf::EnumFull for PatternType {
25570 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25571 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25572 descriptor.get(|| file_descriptor().enum_by_package_relative_name("PatternType").unwrap()).clone()
25573 }
25574
25575 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25576 let index = *self as usize;
25577 Self::enum_descriptor().value_by_index(index)
25578 }
25579}
25580
25581impl ::std::default::Default for PatternType {
25582 fn default() -> Self {
25583 PatternType::MONOTONE
25584 }
25585}
25586
25587impl PatternType {
25588 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25589 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<PatternType>("PatternType")
25590 }
25591}
25592
25593#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25594pub enum ArtImageElementType {
25596 IMAGE_CREATURE = 0,
25598 IMAGE_PLANT = 1,
25600 IMAGE_TREE = 2,
25602 IMAGE_SHAPE = 3,
25604 IMAGE_ITEM = 4,
25606}
25607
25608impl ::protobuf::Enum for ArtImageElementType {
25609 const NAME: &'static str = "ArtImageElementType";
25610
25611 fn value(&self) -> i32 {
25612 *self as i32
25613 }
25614
25615 fn from_i32(value: i32) -> ::std::option::Option<ArtImageElementType> {
25616 match value {
25617 0 => ::std::option::Option::Some(ArtImageElementType::IMAGE_CREATURE),
25618 1 => ::std::option::Option::Some(ArtImageElementType::IMAGE_PLANT),
25619 2 => ::std::option::Option::Some(ArtImageElementType::IMAGE_TREE),
25620 3 => ::std::option::Option::Some(ArtImageElementType::IMAGE_SHAPE),
25621 4 => ::std::option::Option::Some(ArtImageElementType::IMAGE_ITEM),
25622 _ => ::std::option::Option::None
25623 }
25624 }
25625
25626 fn from_str(str: &str) -> ::std::option::Option<ArtImageElementType> {
25627 match str {
25628 "IMAGE_CREATURE" => ::std::option::Option::Some(ArtImageElementType::IMAGE_CREATURE),
25629 "IMAGE_PLANT" => ::std::option::Option::Some(ArtImageElementType::IMAGE_PLANT),
25630 "IMAGE_TREE" => ::std::option::Option::Some(ArtImageElementType::IMAGE_TREE),
25631 "IMAGE_SHAPE" => ::std::option::Option::Some(ArtImageElementType::IMAGE_SHAPE),
25632 "IMAGE_ITEM" => ::std::option::Option::Some(ArtImageElementType::IMAGE_ITEM),
25633 _ => ::std::option::Option::None
25634 }
25635 }
25636
25637 const VALUES: &'static [ArtImageElementType] = &[
25638 ArtImageElementType::IMAGE_CREATURE,
25639 ArtImageElementType::IMAGE_PLANT,
25640 ArtImageElementType::IMAGE_TREE,
25641 ArtImageElementType::IMAGE_SHAPE,
25642 ArtImageElementType::IMAGE_ITEM,
25643 ];
25644}
25645
25646impl ::protobuf::EnumFull for ArtImageElementType {
25647 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25648 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25649 descriptor.get(|| file_descriptor().enum_by_package_relative_name("ArtImageElementType").unwrap()).clone()
25650 }
25651
25652 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25653 let index = *self as usize;
25654 Self::enum_descriptor().value_by_index(index)
25655 }
25656}
25657
25658impl ::std::default::Default for ArtImageElementType {
25659 fn default() -> Self {
25660 ArtImageElementType::IMAGE_CREATURE
25661 }
25662}
25663
25664impl ArtImageElementType {
25665 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25666 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<ArtImageElementType>("ArtImageElementType")
25667 }
25668}
25669
25670#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25671pub enum ArtImagePropertyType {
25673 TRANSITIVE_VERB = 0,
25675 INTRANSITIVE_VERB = 1,
25677}
25678
25679impl ::protobuf::Enum for ArtImagePropertyType {
25680 const NAME: &'static str = "ArtImagePropertyType";
25681
25682 fn value(&self) -> i32 {
25683 *self as i32
25684 }
25685
25686 fn from_i32(value: i32) -> ::std::option::Option<ArtImagePropertyType> {
25687 match value {
25688 0 => ::std::option::Option::Some(ArtImagePropertyType::TRANSITIVE_VERB),
25689 1 => ::std::option::Option::Some(ArtImagePropertyType::INTRANSITIVE_VERB),
25690 _ => ::std::option::Option::None
25691 }
25692 }
25693
25694 fn from_str(str: &str) -> ::std::option::Option<ArtImagePropertyType> {
25695 match str {
25696 "TRANSITIVE_VERB" => ::std::option::Option::Some(ArtImagePropertyType::TRANSITIVE_VERB),
25697 "INTRANSITIVE_VERB" => ::std::option::Option::Some(ArtImagePropertyType::INTRANSITIVE_VERB),
25698 _ => ::std::option::Option::None
25699 }
25700 }
25701
25702 const VALUES: &'static [ArtImagePropertyType] = &[
25703 ArtImagePropertyType::TRANSITIVE_VERB,
25704 ArtImagePropertyType::INTRANSITIVE_VERB,
25705 ];
25706}
25707
25708impl ::protobuf::EnumFull for ArtImagePropertyType {
25709 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
25710 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
25711 descriptor.get(|| file_descriptor().enum_by_package_relative_name("ArtImagePropertyType").unwrap()).clone()
25712 }
25713
25714 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
25715 let index = *self as usize;
25716 Self::enum_descriptor().value_by_index(index)
25717 }
25718}
25719
25720impl ::std::default::Default for ArtImagePropertyType {
25721 fn default() -> Self {
25722 ArtImagePropertyType::TRANSITIVE_VERB
25723 }
25724}
25725
25726impl ArtImagePropertyType {
25727 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
25728 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<ArtImagePropertyType>("ArtImagePropertyType")
25729 }
25730}
25731
25732#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
25733pub enum ArtImageVerb {
25735 VERB_WITHERING = 0,
25737 VERB_SURROUNDEDBY = 1,
25739 VERB_MASSACRING = 2,
25741 VERB_FIGHTING = 3,
25743 VERB_LABORING = 4,
25745 VERB_GREETING = 5,
25747 VERB_REFUSING = 6,
25749 VERB_SPEAKING = 7,
25751 VERB_EMBRACING = 8,
25753 VERB_STRIKINGDOWN = 9,
25755 VERB_MENACINGPOSE = 10,
25757 VERB_TRAVELING = 11,
25759 VERB_RAISING = 12,
25761 VERB_HIDING = 13,
25763 VERB_LOOKINGCONFUSED = 14,
25765 VERB_LOOKINGTERRIFIED = 15,
25767 VERB_DEVOURING = 16,
25769 VERB_ADMIRING = 17,
25771 VERB_BURNING = 18,
25773 VERB_WEEPING = 19,
25775 VERB_LOOKINGDEJECTED = 20,
25777 VERB_CRINGING = 21,
25779 VERB_SCREAMING = 22,
25781 VERB_SUBMISSIVEGESTURE = 23,
25783 VERB_FETALPOSITION = 24,
25785 VERB_SMEAREDINTOSPIRAL = 25,
25787 VERB_FALLING = 26,
25789 VERB_DEAD = 27,
25791 VERB_LAUGHING = 28,
25793 VERB_LOOKINGOFFENDED = 29,
25795 VERB_BEINGSHOT = 30,
25797 VERB_PLAINTIVEGESTURE = 31,
25799 VERB_MELTING = 32,
25801 VERB_SHOOTING = 33,
25803 VERB_TORTURING = 34,
25805 VERB_COMMITTINGDEPRAVEDACT = 35,
25807 VERB_PRAYING = 36,
25809 VERB_CONTEMPLATING = 37,
25811 VERB_COOKING = 38,
25813 VERB_ENGRAVING = 39,
25815 VERB_PROSTRATING = 40,
25817 VERB_SUFFERING = 41,
25819 VERB_BEINGIMPALED = 42,
25821 VERB_BEINGCONTORTED = 43,
25823 VERB_BEINGFLAYED = 44,
25825 VERB_HANGINGFROM = 45,
25827 VERB_BEINGMUTILATED = 46,
25829 VERB_TRIUMPHANTPOSE = 47,
25831}
25832
25833impl ::protobuf::Enum for ArtImageVerb {
25834 const NAME: &'static str = "ArtImageVerb";
25835
25836 fn value(&self) -> i32 {
25837 *self as i32
25838 }
25839
25840 fn from_i32(value: i32) -> ::std::option::Option<ArtImageVerb> {
25841 match value {
25842 0 => ::std::option::Option::Some(ArtImageVerb::VERB_WITHERING),
25843 1 => ::std::option::Option::Some(ArtImageVerb::VERB_SURROUNDEDBY),
25844 2 => ::std::option::Option::Some(ArtImageVerb::VERB_MASSACRING),
25845 3 => ::std::option::Option::Some(ArtImageVerb::VERB_FIGHTING),
25846 4 => ::std::option::Option::Some(ArtImageVerb::VERB_LABORING),
25847 5 => ::std::option::Option::Some(ArtImageVerb::VERB_GREETING),
25848 6 => ::std::option::Option::Some(ArtImageVerb::VERB_REFUSING),
25849 7 => ::std::option::Option::Some(ArtImageVerb::VERB_SPEAKING),
25850 8 => ::std::option::Option::Some(ArtImageVerb::VERB_EMBRACING),
25851 9 => ::std::option::Option::Some(ArtImageVerb::VERB_STRIKINGDOWN),
25852 10 => ::std::option::Option::Some(ArtImageVerb::VERB_MENACINGPOSE),
25853 11 => ::std::option::Option::Some(ArtImageVerb::VERB_TRAVELING),
25854 12 => ::std::option::Option::Some(ArtImageVerb::VERB_RAISING),
25855 13 => ::std::option::Option::Some(ArtImageVerb::VERB_HIDING),
25856 14 => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGCONFUSED),
25857 15 => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGTERRIFIED),
25858 16 => ::std::option::Option::Some(ArtImageVerb::VERB_DEVOURING),
25859 17 => ::std::option::Option::Some(ArtImageVerb::VERB_ADMIRING),
25860 18 => ::std::option::Option::Some(ArtImageVerb::VERB_BURNING),
25861 19 => ::std::option::Option::Some(ArtImageVerb::VERB_WEEPING),
25862 20 => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGDEJECTED),
25863 21 => ::std::option::Option::Some(ArtImageVerb::VERB_CRINGING),
25864 22 => ::std::option::Option::Some(ArtImageVerb::VERB_SCREAMING),
25865 23 => ::std::option::Option::Some(ArtImageVerb::VERB_SUBMISSIVEGESTURE),
25866 24 => ::std::option::Option::Some(ArtImageVerb::VERB_FETALPOSITION),
25867 25 => ::std::option::Option::Some(ArtImageVerb::VERB_SMEAREDINTOSPIRAL),
25868 26 => ::std::option::Option::Some(ArtImageVerb::VERB_FALLING),
25869 27 => ::std::option::Option::Some(ArtImageVerb::VERB_DEAD),
25870 28 => ::std::option::Option::Some(ArtImageVerb::VERB_LAUGHING),
25871 29 => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGOFFENDED),
25872 30 => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGSHOT),
25873 31 => ::std::option::Option::Some(ArtImageVerb::VERB_PLAINTIVEGESTURE),
25874 32 => ::std::option::Option::Some(ArtImageVerb::VERB_MELTING),
25875 33 => ::std::option::Option::Some(ArtImageVerb::VERB_SHOOTING),
25876 34 => ::std::option::Option::Some(ArtImageVerb::VERB_TORTURING),
25877 35 => ::std::option::Option::Some(ArtImageVerb::VERB_COMMITTINGDEPRAVEDACT),
25878 36 => ::std::option::Option::Some(ArtImageVerb::VERB_PRAYING),
25879 37 => ::std::option::Option::Some(ArtImageVerb::VERB_CONTEMPLATING),
25880 38 => ::std::option::Option::Some(ArtImageVerb::VERB_COOKING),
25881 39 => ::std::option::Option::Some(ArtImageVerb::VERB_ENGRAVING),
25882 40 => ::std::option::Option::Some(ArtImageVerb::VERB_PROSTRATING),
25883 41 => ::std::option::Option::Some(ArtImageVerb::VERB_SUFFERING),
25884 42 => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGIMPALED),
25885 43 => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGCONTORTED),
25886 44 => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGFLAYED),
25887 45 => ::std::option::Option::Some(ArtImageVerb::VERB_HANGINGFROM),
25888 46 => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGMUTILATED),
25889 47 => ::std::option::Option::Some(ArtImageVerb::VERB_TRIUMPHANTPOSE),
25890 _ => ::std::option::Option::None
25891 }
25892 }
25893
25894 fn from_str(str: &str) -> ::std::option::Option<ArtImageVerb> {
25895 match str {
25896 "VERB_WITHERING" => ::std::option::Option::Some(ArtImageVerb::VERB_WITHERING),
25897 "VERB_SURROUNDEDBY" => ::std::option::Option::Some(ArtImageVerb::VERB_SURROUNDEDBY),
25898 "VERB_MASSACRING" => ::std::option::Option::Some(ArtImageVerb::VERB_MASSACRING),
25899 "VERB_FIGHTING" => ::std::option::Option::Some(ArtImageVerb::VERB_FIGHTING),
25900 "VERB_LABORING" => ::std::option::Option::Some(ArtImageVerb::VERB_LABORING),
25901 "VERB_GREETING" => ::std::option::Option::Some(ArtImageVerb::VERB_GREETING),
25902 "VERB_REFUSING" => ::std::option::Option::Some(ArtImageVerb::VERB_REFUSING),
25903 "VERB_SPEAKING" => ::std::option::Option::Some(ArtImageVerb::VERB_SPEAKING),
25904 "VERB_EMBRACING" => ::std::option::Option::Some(ArtImageVerb::VERB_EMBRACING),
25905 "VERB_STRIKINGDOWN" => ::std::option::Option::Some(ArtImageVerb::VERB_STRIKINGDOWN),
25906 "VERB_MENACINGPOSE" => ::std::option::Option::Some(ArtImageVerb::VERB_MENACINGPOSE),
25907 "VERB_TRAVELING" => ::std::option::Option::Some(ArtImageVerb::VERB_TRAVELING),
25908 "VERB_RAISING" => ::std::option::Option::Some(ArtImageVerb::VERB_RAISING),
25909 "VERB_HIDING" => ::std::option::Option::Some(ArtImageVerb::VERB_HIDING),
25910 "VERB_LOOKINGCONFUSED" => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGCONFUSED),
25911 "VERB_LOOKINGTERRIFIED" => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGTERRIFIED),
25912 "VERB_DEVOURING" => ::std::option::Option::Some(ArtImageVerb::VERB_DEVOURING),
25913 "VERB_ADMIRING" => ::std::option::Option::Some(ArtImageVerb::VERB_ADMIRING),
25914 "VERB_BURNING" => ::std::option::Option::Some(ArtImageVerb::VERB_BURNING),
25915 "VERB_WEEPING" => ::std::option::Option::Some(ArtImageVerb::VERB_WEEPING),
25916 "VERB_LOOKINGDEJECTED" => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGDEJECTED),
25917 "VERB_CRINGING" => ::std::option::Option::Some(ArtImageVerb::VERB_CRINGING),
25918 "VERB_SCREAMING" => ::std::option::Option::Some(ArtImageVerb::VERB_SCREAMING),
25919 "VERB_SUBMISSIVEGESTURE" => ::std::option::Option::Some(ArtImageVerb::VERB_SUBMISSIVEGESTURE),
25920 "VERB_FETALPOSITION" => ::std::option::Option::Some(ArtImageVerb::VERB_FETALPOSITION),
25921 "VERB_SMEAREDINTOSPIRAL" => ::std::option::Option::Some(ArtImageVerb::VERB_SMEAREDINTOSPIRAL),
25922 "VERB_FALLING" => ::std::option::Option::Some(ArtImageVerb::VERB_FALLING),
25923 "VERB_DEAD" => ::std::option::Option::Some(ArtImageVerb::VERB_DEAD),
25924 "VERB_LAUGHING" => ::std::option::Option::Some(ArtImageVerb::VERB_LAUGHING),
25925 "VERB_LOOKINGOFFENDED" => ::std::option::Option::Some(ArtImageVerb::VERB_LOOKINGOFFENDED),
25926 "VERB_BEINGSHOT" => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGSHOT),
25927 "VERB_PLAINTIVEGESTURE" => ::std::option::Option::Some(ArtImageVerb::VERB_PLAINTIVEGESTURE),
25928 "VERB_MELTING" => ::std::option::Option::Some(ArtImageVerb::VERB_MELTING),
25929 "VERB_SHOOTING" => ::std::option::Option::Some(ArtImageVerb::VERB_SHOOTING),
25930 "VERB_TORTURING" => ::std::option::Option::Some(ArtImageVerb::VERB_TORTURING),
25931 "VERB_COMMITTINGDEPRAVEDACT" => ::std::option::Option::Some(ArtImageVerb::VERB_COMMITTINGDEPRAVEDACT),
25932 "VERB_PRAYING" => ::std::option::Option::Some(ArtImageVerb::VERB_PRAYING),
25933 "VERB_CONTEMPLATING" => ::std::option::Option::Some(ArtImageVerb::VERB_CONTEMPLATING),
25934 "VERB_COOKING" => ::std::option::Option::Some(ArtImageVerb::VERB_COOKING),
25935 "VERB_ENGRAVING" => ::std::option::Option::Some(ArtImageVerb::VERB_ENGRAVING),
25936 "VERB_PROSTRATING" => ::std::option::Option::Some(ArtImageVerb::VERB_PROSTRATING),
25937 "VERB_SUFFERING" => ::std::option::Option::Some(ArtImageVerb::VERB_SUFFERING),
25938 "VERB_BEINGIMPALED" => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGIMPALED),
25939 "VERB_BEINGCONTORTED" => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGCONTORTED),
25940 "VERB_BEINGFLAYED" => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGFLAYED),
25941 "VERB_HANGINGFROM" => ::std::option::Option::Some(ArtImageVerb::VERB_HANGINGFROM),
25942 "VERB_BEINGMUTILATED" => ::std::option::Option::Some(ArtImageVerb::VERB_BEINGMUTILATED),
25943 "VERB_TRIUMPHANTPOSE" => ::std::option::Option::Some(ArtImageVerb::VERB_TRIUMPHANTPOSE),
25944 _ => ::std::option::Option::None
25945 }
25946 }
25947
25948 const VALUES: &'static [ArtImageVerb] = &[
25949 ArtImageVerb::VERB_WITHERING,
25950 ArtImageVerb::VERB_SURROUNDEDBY,
25951 ArtImageVerb::VERB_MASSACRING,
25952 ArtImageVerb::VERB_FIGHTING,
25953 ArtImageVerb::VERB_LABORING,
25954 ArtImageVerb::VERB_GREETING,
25955 ArtImageVerb::VERB_REFUSING,
25956 ArtImageVerb::VERB_SPEAKING,
25957 ArtImageVerb::VERB_EMBRACING,
25958 ArtImageVerb::VERB_STRIKINGDOWN,
25959 ArtImageVerb::VERB_MENACINGPOSE,
25960 ArtImageVerb::VERB_TRAVELING,
25961 ArtImageVerb::VERB_RAISING,
25962 ArtImageVerb::VERB_HIDING,
25963 ArtImageVerb::VERB_LOOKINGCONFUSED,
25964 ArtImageVerb::VERB_LOOKINGTERRIFIED,
25965 ArtImageVerb::VERB_DEVOURING,
25966 ArtImageVerb::VERB_ADMIRING,
25967 ArtImageVerb::VERB_BURNING,
25968 ArtImageVerb::VERB_WEEPING,
25969 ArtImageVerb::VERB_LOOKINGDEJECTED,
25970 ArtImageVerb::VERB_CRINGING,
25971 ArtImageVerb::VERB_SCREAMING,
25972 ArtImageVerb::VERB_SUBMISSIVEGESTURE,
25973 ArtImageVerb::VERB_FETALPOSITION,
25974 ArtImageVerb::VERB_SMEAREDINTOSPIRAL,
25975 ArtImageVerb::VERB_FALLING,
25976 ArtImageVerb::VERB_DEAD,
25977 ArtImageVerb::VERB_LAUGHING,
25978 ArtImageVerb::VERB_LOOKINGOFFENDED,
25979 ArtImageVerb::VERB_BEINGSHOT,
25980 ArtImageVerb::VERB_PLAINTIVEGESTURE,
25981 ArtImageVerb::VERB_MELTING,
25982 ArtImageVerb::VERB_SHOOTING,
25983 ArtImageVerb::VERB_TORTURING,
25984 ArtImageVerb::VERB_COMMITTINGDEPRAVEDACT,
25985 ArtImageVerb::VERB_PRAYING,
25986 ArtImageVerb::VERB_CONTEMPLATING,
25987 ArtImageVerb::VERB_COOKING,
25988 ArtImageVerb::VERB_ENGRAVING,
25989 ArtImageVerb::VERB_PROSTRATING,
25990 ArtImageVerb::VERB_SUFFERING,
25991 ArtImageVerb::VERB_BEINGIMPALED,
25992 ArtImageVerb::VERB_BEINGCONTORTED,
25993 ArtImageVerb::VERB_BEINGFLAYED,
25994 ArtImageVerb::VERB_HANGINGFROM,
25995 ArtImageVerb::VERB_BEINGMUTILATED,
25996 ArtImageVerb::VERB_TRIUMPHANTPOSE,
25997 ];
25998}
25999
26000impl ::protobuf::EnumFull for ArtImageVerb {
26001 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
26002 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
26003 descriptor.get(|| file_descriptor().enum_by_package_relative_name("ArtImageVerb").unwrap()).clone()
26004 }
26005
26006 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
26007 let index = *self as usize;
26008 Self::enum_descriptor().value_by_index(index)
26009 }
26010}
26011
26012impl ::std::default::Default for ArtImageVerb {
26013 fn default() -> Self {
26014 ArtImageVerb::VERB_WITHERING
26015 }
26016}
26017
26018impl ArtImageVerb {
26019 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
26020 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<ArtImageVerb>("ArtImageVerb")
26021 }
26022}
26023
26024#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
26025pub enum FlowType {
26027 Miasma = 0,
26029 Steam = 1,
26031 Mist = 2,
26033 MaterialDust = 3,
26035 MagmaMist = 4,
26037 Smoke = 5,
26039 Dragonfire = 6,
26041 Fire = 7,
26043 Web = 8,
26045 MaterialGas = 9,
26047 MaterialVapor = 10,
26049 OceanWave = 11,
26051 SeaFoam = 12,
26053 ItemCloud = 13,
26055 CampFire = -1,
26057}
26058
26059impl ::protobuf::Enum for FlowType {
26060 const NAME: &'static str = "FlowType";
26061
26062 fn value(&self) -> i32 {
26063 *self as i32
26064 }
26065
26066 fn from_i32(value: i32) -> ::std::option::Option<FlowType> {
26067 match value {
26068 0 => ::std::option::Option::Some(FlowType::Miasma),
26069 1 => ::std::option::Option::Some(FlowType::Steam),
26070 2 => ::std::option::Option::Some(FlowType::Mist),
26071 3 => ::std::option::Option::Some(FlowType::MaterialDust),
26072 4 => ::std::option::Option::Some(FlowType::MagmaMist),
26073 5 => ::std::option::Option::Some(FlowType::Smoke),
26074 6 => ::std::option::Option::Some(FlowType::Dragonfire),
26075 7 => ::std::option::Option::Some(FlowType::Fire),
26076 8 => ::std::option::Option::Some(FlowType::Web),
26077 9 => ::std::option::Option::Some(FlowType::MaterialGas),
26078 10 => ::std::option::Option::Some(FlowType::MaterialVapor),
26079 11 => ::std::option::Option::Some(FlowType::OceanWave),
26080 12 => ::std::option::Option::Some(FlowType::SeaFoam),
26081 13 => ::std::option::Option::Some(FlowType::ItemCloud),
26082 -1 => ::std::option::Option::Some(FlowType::CampFire),
26083 _ => ::std::option::Option::None
26084 }
26085 }
26086
26087 fn from_str(str: &str) -> ::std::option::Option<FlowType> {
26088 match str {
26089 "Miasma" => ::std::option::Option::Some(FlowType::Miasma),
26090 "Steam" => ::std::option::Option::Some(FlowType::Steam),
26091 "Mist" => ::std::option::Option::Some(FlowType::Mist),
26092 "MaterialDust" => ::std::option::Option::Some(FlowType::MaterialDust),
26093 "MagmaMist" => ::std::option::Option::Some(FlowType::MagmaMist),
26094 "Smoke" => ::std::option::Option::Some(FlowType::Smoke),
26095 "Dragonfire" => ::std::option::Option::Some(FlowType::Dragonfire),
26096 "Fire" => ::std::option::Option::Some(FlowType::Fire),
26097 "Web" => ::std::option::Option::Some(FlowType::Web),
26098 "MaterialGas" => ::std::option::Option::Some(FlowType::MaterialGas),
26099 "MaterialVapor" => ::std::option::Option::Some(FlowType::MaterialVapor),
26100 "OceanWave" => ::std::option::Option::Some(FlowType::OceanWave),
26101 "SeaFoam" => ::std::option::Option::Some(FlowType::SeaFoam),
26102 "ItemCloud" => ::std::option::Option::Some(FlowType::ItemCloud),
26103 "CampFire" => ::std::option::Option::Some(FlowType::CampFire),
26104 _ => ::std::option::Option::None
26105 }
26106 }
26107
26108 const VALUES: &'static [FlowType] = &[
26109 FlowType::Miasma,
26110 FlowType::Steam,
26111 FlowType::Mist,
26112 FlowType::MaterialDust,
26113 FlowType::MagmaMist,
26114 FlowType::Smoke,
26115 FlowType::Dragonfire,
26116 FlowType::Fire,
26117 FlowType::Web,
26118 FlowType::MaterialGas,
26119 FlowType::MaterialVapor,
26120 FlowType::OceanWave,
26121 FlowType::SeaFoam,
26122 FlowType::ItemCloud,
26123 FlowType::CampFire,
26124 ];
26125}
26126
26127impl ::protobuf::EnumFull for FlowType {
26128 fn enum_descriptor() -> ::protobuf::reflect::EnumDescriptor {
26129 static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::Lazy::new();
26130 descriptor.get(|| file_descriptor().enum_by_package_relative_name("FlowType").unwrap()).clone()
26131 }
26132
26133 fn descriptor(&self) -> ::protobuf::reflect::EnumValueDescriptor {
26134 let index = match self {
26135 FlowType::Miasma => 0,
26136 FlowType::Steam => 1,
26137 FlowType::Mist => 2,
26138 FlowType::MaterialDust => 3,
26139 FlowType::MagmaMist => 4,
26140 FlowType::Smoke => 5,
26141 FlowType::Dragonfire => 6,
26142 FlowType::Fire => 7,
26143 FlowType::Web => 8,
26144 FlowType::MaterialGas => 9,
26145 FlowType::MaterialVapor => 10,
26146 FlowType::OceanWave => 11,
26147 FlowType::SeaFoam => 12,
26148 FlowType::ItemCloud => 13,
26149 FlowType::CampFire => 14,
26150 };
26151 Self::enum_descriptor().value_by_index(index)
26152 }
26153}
26154
26155impl ::std::default::Default for FlowType {
26156 fn default() -> Self {
26157 FlowType::Miasma
26158 }
26159}
26160
26161impl FlowType {
26162 fn generated_enum_descriptor_data() -> ::protobuf::reflect::GeneratedEnumDescriptorData {
26163 ::protobuf::reflect::GeneratedEnumDescriptorData::new::<FlowType>("FlowType")
26164 }
26165}
26166
26167static file_descriptor_proto_data: &'static [u8] = b"\
26168 \n\x1aRemoteFortressReader.proto\x12\x14RemoteFortressReader\x1a\x17Item\
26169 defInstrument.proto\"1\n\x05Coord\x12\x0c\n\x01x\x18\x01\x20\x01(\x05R\
26170 \x01x\x12\x0c\n\x01y\x18\x02\x20\x01(\x05R\x01y\x12\x0c\n\x01z\x18\x03\
26171 \x20\x01(\x05R\x01z\"\xe7\x02\n\x08Tiletype\x12\x0e\n\x02id\x18\x01\x20\
26172 \x02(\x05R\x02id\x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04name\x12\x18\n\
26173 \x07caption\x18\x03\x20\x01(\tR\x07caption\x129\n\x05shape\x18\x04\x20\
26174 \x01(\x0e2#.RemoteFortressReader.TiletypeShapeR\x05shape\x12?\n\x07speci\
26175 al\x18\x05\x20\x01(\x0e2%.RemoteFortressReader.TiletypeSpecialR\x07speci\
26176 al\x12B\n\x08material\x18\x06\x20\x01(\x0e2&.RemoteFortressReader.Tilety\
26177 peMaterialR\x08material\x12?\n\x07variant\x18\x07\x20\x01(\x0e2%.RemoteF\
26178 ortressReader.TiletypeVariantR\x07variant\x12\x1c\n\tdirection\x18\x08\
26179 \x20\x01(\tR\tdirection\"S\n\x0cTiletypeList\x12C\n\rtiletype_list\x18\
26180 \x01\x20\x03(\x0b2\x1e.RemoteFortressReader.TiletypeR\x0ctiletypeList\"\
26181 \x83\x01\n\x0fBuildingExtents\x12\x13\n\x05pos_x\x18\x01\x20\x02(\x05R\
26182 \x04posX\x12\x13\n\x05pos_y\x18\x02\x20\x02(\x05R\x04posY\x12\x14\n\x05w\
26183 idth\x18\x03\x20\x02(\x05R\x05width\x12\x16\n\x06height\x18\x04\x20\x02(\
26184 \x05R\x06height\x12\x18\n\x07extents\x18\x05\x20\x03(\x05R\x07extents\"R\
26185 \n\x0cBuildingItem\x12.\n\x04item\x18\x01\x20\x01(\x0b2\x1a.RemoteFortre\
26186 ssReader.ItemR\x04item\x12\x12\n\x04mode\x18\x02\x20\x01(\x05R\x04mode\"\
26187 \xe8\x04\n\x10BuildingInstance\x12\x14\n\x05index\x18\x01\x20\x02(\x05R\
26188 \x05index\x12\x1a\n\tpos_x_min\x18\x02\x20\x01(\x05R\x07posXMin\x12\x1a\
26189 \n\tpos_y_min\x18\x03\x20\x01(\x05R\x07posYMin\x12\x1a\n\tpos_z_min\x18\
26190 \x04\x20\x01(\x05R\x07posZMin\x12\x1a\n\tpos_x_max\x18\x05\x20\x01(\x05R\
26191 \x07posXMax\x12\x1a\n\tpos_y_max\x18\x06\x20\x01(\x05R\x07posYMax\x12\
26192 \x1a\n\tpos_z_max\x18\x07\x20\x01(\x05R\x07posZMax\x12G\n\rbuilding_type\
26193 \x18\x08\x20\x01(\x0b2\".RemoteFortressReader.BuildingTypeR\x0cbuildingT\
26194 ype\x129\n\x08material\x18\t\x20\x01(\x0b2\x1d.RemoteFortressReader.MatP\
26195 airR\x08material\x12%\n\x0ebuilding_flags\x18\n\x20\x01(\rR\rbuildingFla\
26196 gs\x12\x17\n\x07is_room\x18\x0b\x20\x01(\x08R\x06isRoom\x129\n\x04room\
26197 \x18\x0c\x20\x01(\x0b2%.RemoteFortressReader.BuildingExtentsR\x04room\
26198 \x12E\n\tdirection\x18\r\x20\x01(\x0e2'.RemoteFortressReader.BuildingDir\
26199 ectionR\tdirection\x128\n\x05items\x18\x0e\x20\x03(\x0b2\".RemoteFortres\
26200 sReader.BuildingItemR\x05items\x12\x16\n\x06active\x18\x0f\x20\x01(\x05R\
26201 \x06active\"s\n\tRiverEdge\x12\x17\n\x07min_pos\x18\x01\x20\x01(\x05R\
26202 \x06minPos\x12\x17\n\x07max_pos\x18\x02\x20\x01(\x05R\x06maxPos\x12\x16\
26203 \n\x06active\x18\x03\x20\x01(\x05R\x06active\x12\x1c\n\televation\x18\
26204 \x04\x20\x01(\x05R\televation\"\xe3\x01\n\tRiverTile\x125\n\x05north\x18\
26205 \x01\x20\x01(\x0b2\x1f.RemoteFortressReader.RiverEdgeR\x05north\x125\n\
26206 \x05south\x18\x02\x20\x01(\x0b2\x1f.RemoteFortressReader.RiverEdgeR\x05s\
26207 outh\x123\n\x04east\x18\x03\x20\x01(\x0b2\x1f.RemoteFortressReader.River\
26208 EdgeR\x04east\x123\n\x04west\x18\x04\x20\x01(\x0b2\x1f.RemoteFortressRea\
26209 der.RiverEdgeR\x04west\"\xc8\x01\n\x07Spatter\x129\n\x08material\x18\x01\
26210 \x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08material\x12\x16\n\
26211 \x06amount\x18\x02\x20\x01(\x05R\x06amount\x127\n\x05state\x18\x03\x20\
26212 \x01(\x0e2!.RemoteFortressReader.MatterStateR\x05state\x121\n\x04item\
26213 \x18\x04\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x04item\"H\n\
26214 \x0bSpatterPile\x129\n\x08spatters\x18\x01\x20\x03(\x0b2\x1d.RemoteFortr\
26215 essReader.SpatterR\x08spatters\"\xa2\x05\n\x04Item\x12\x0e\n\x02id\x18\
26216 \x01\x20\x01(\x05R\x02id\x12-\n\x03pos\x18\x02\x20\x01(\x0b2\x1b.RemoteF\
26217 ortressReader.CoordR\x03pos\x12\x16\n\x06flags1\x18\x03\x20\x01(\rR\x06f\
26218 lags1\x12\x16\n\x06flags2\x18\x04\x20\x01(\rR\x06flags2\x121\n\x04type\
26219 \x18\x05\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x04type\x129\n\
26220 \x08material\x18\x06\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08\
26221 material\x127\n\x03dye\x18\x07\x20\x01(\x0b2%.RemoteFortressReader.Color\
26222 DefinitionR\x03dye\x12\x1d\n\nstack_size\x18\x08\x20\x01(\x05R\tstackSiz\
26223 e\x12\x19\n\x08subpos_x\x18\t\x20\x01(\x02R\x07subposX\x12\x19\n\x08subp\
26224 os_y\x18\n\x20\x01(\x02R\x07subposY\x12\x19\n\x08subpos_z\x18\x0b\x20\
26225 \x01(\x02R\x07subposZ\x12\x1e\n\nprojectile\x18\x0c\x20\x01(\x08R\nproje\
26226 ctile\x12\x1d\n\nvelocity_x\x18\r\x20\x01(\x02R\tvelocityX\x12\x1d\n\nve\
26227 locity_y\x18\x0e\x20\x01(\x02R\tvelocityY\x12\x1d\n\nvelocity_z\x18\x0f\
26228 \x20\x01(\x02R\tvelocityZ\x12\x16\n\x06volume\x18\x10\x20\x01(\x05R\x06v\
26229 olume\x12I\n\x0cimprovements\x18\x11\x20\x03(\x0b2%.RemoteFortressReader\
26230 .ItemImprovementR\x0cimprovements\x124\n\x05image\x18\x12\x20\x01(\x0b2\
26231 \x1e.RemoteFortressReader.ArtImageR\x05image\"\xbf\x02\n\tPlantTile\x12\
26232 \x14\n\x05trunk\x18\x01\x20\x01(\x08R\x05trunk\x12'\n\x0fconnection_east\
26233 \x18\x02\x20\x01(\x08R\x0econnectionEast\x12)\n\x10connection_south\x18\
26234 \x03\x20\x01(\x08R\x0fconnectionSouth\x12'\n\x0fconnection_west\x18\x04\
26235 \x20\x01(\x08R\x0econnectionWest\x12)\n\x10connection_north\x18\x05\x20\
26236 \x01(\x08R\x0fconnectionNorth\x12\x1a\n\x08branches\x18\x06\x20\x01(\x08\
26237 R\x08branches\x12\x14\n\x05twigs\x18\x07\x20\x01(\x08R\x05twigs\x12B\n\t\
26238 tile_type\x18\x08\x20\x01(\x0e2%.RemoteFortressReader.TiletypeSpecialR\
26239 \x08tileType\"r\n\x08TreeInfo\x12/\n\x04size\x18\x01\x20\x01(\x0b2\x1b.R\
26240 emoteFortressReader.CoordR\x04size\x125\n\x05tiles\x18\x02\x20\x03(\x0b2\
26241 \x1f.RemoteFortressReader.PlantTileR\x05tiles\"\x9a\x01\n\rPlantInstance\
26242 \x12\x1d\n\nplant_type\x18\x01\x20\x01(\x05R\tplantType\x12-\n\x03pos\
26243 \x18\x02\x20\x01(\x0b2\x1b.RemoteFortressReader.CoordR\x03pos\x12;\n\ttr\
26244 ee_info\x18\x03\x20\x01(\x0b2\x1e.RemoteFortressReader.TreeInfoR\x08tree\
26245 Info\"\x8c\n\n\x08MapBlock\x12\x13\n\x05map_x\x18\x01\x20\x02(\x05R\x04m\
26246 apX\x12\x13\n\x05map_y\x18\x02\x20\x02(\x05R\x04mapY\x12\x13\n\x05map_z\
26247 \x18\x03\x20\x02(\x05R\x04mapZ\x12\x14\n\x05tiles\x18\x04\x20\x03(\x05R\
26248 \x05tiles\x12;\n\tmaterials\x18\x05\x20\x03(\x0b2\x1d.RemoteFortressRead\
26249 er.MatPairR\tmaterials\x12F\n\x0flayer_materials\x18\x06\x20\x03(\x0b2\
26250 \x1d.RemoteFortressReader.MatPairR\x0elayerMaterials\x12D\n\x0evein_mate\
26251 rials\x18\x07\x20\x03(\x0b2\x1d.RemoteFortressReader.MatPairR\rveinMater\
26252 ials\x12D\n\x0ebase_materials\x18\x08\x20\x03(\x0b2\x1d.RemoteFortressRe\
26253 ader.MatPairR\rbaseMaterials\x12\x14\n\x05magma\x18\t\x20\x03(\x05R\x05m\
26254 agma\x12\x14\n\x05water\x18\n\x20\x03(\x05R\x05water\x12\x16\n\x06hidden\
26255 \x18\x0b\x20\x03(\x08R\x06hidden\x12\x14\n\x05light\x18\x0c\x20\x03(\x08\
26256 R\x05light\x12\"\n\x0csubterranean\x18\r\x20\x03(\x08R\x0csubterranean\
26257 \x12\x18\n\x07outside\x18\x0e\x20\x03(\x08R\x07outside\x12\x18\n\x07aqui\
26258 fer\x18\x0f\x20\x03(\x08R\x07aquifer\x12%\n\x0ewater_stagnant\x18\x10\
26259 \x20\x03(\x08R\rwaterStagnant\x12\x1d\n\nwater_salt\x18\x11\x20\x03(\x08\
26260 R\twaterSalt\x12L\n\x12construction_items\x18\x12\x20\x03(\x0b2\x1d.Remo\
26261 teFortressReader.MatPairR\x11constructionItems\x12D\n\tbuildings\x18\x13\
26262 \x20\x03(\x0b2&.RemoteFortressReader.BuildingInstanceR\tbuildings\x12!\n\
26263 \x0ctree_percent\x18\x14\x20\x03(\x05R\x0btreePercent\x12\x15\n\x06tree_\
26264 x\x18\x15\x20\x03(\x05R\x05treeX\x12\x15\n\x06tree_y\x18\x16\x20\x03(\
26265 \x05R\x05treeY\x12\x15\n\x06tree_z\x18\x17\x20\x03(\x05R\x05treeZ\x12Z\n\
26266 \x14tile_dig_designation\x18\x18\x20\x03(\x0e2(.RemoteFortressReader.Til\
26267 eDigDesignationR\x12tileDigDesignation\x12C\n\x0bspatterPile\x18\x19\x20\
26268 \x03(\x0b2!.RemoteFortressReader.SpatterPileR\x0bspatterPile\x120\n\x05i\
26269 tems\x18\x1a\x20\x03(\x0b2\x1a.RemoteFortressReader.ItemR\x05items\x12=\
26270 \n\x1btile_dig_designation_marker\x18\x1b\x20\x03(\x08R\x18tileDigDesign\
26271 ationMarker\x129\n\x19tile_dig_designation_auto\x18\x1c\x20\x03(\x08R\
26272 \x16tileDigDesignationAuto\x12#\n\rgrass_percent\x18\x1d\x20\x03(\x05R\
26273 \x0cgrassPercent\x124\n\x05flows\x18\x1e\x20\x03(\x0b2\x1e.RemoteFortres\
26274 sReader.FlowInfoR\x05flows\"A\n\x07MatPair\x12\x19\n\x08mat_type\x18\x01\
26275 \x20\x02(\x05R\x07matType\x12\x1b\n\tmat_index\x18\x02\x20\x02(\x05R\x08\
26276 matIndex\"M\n\x0fColorDefinition\x12\x10\n\x03red\x18\x01\x20\x02(\x05R\
26277 \x03red\x12\x14\n\x05green\x18\x02\x20\x02(\x05R\x05green\x12\x12\n\x04b\
26278 lue\x18\x03\x20\x02(\x05R\x04blue\"\xea\x02\n\x12MaterialDefinition\x128\
26279 \n\x08mat_pair\x18\x01\x20\x02(\x0b2\x1d.RemoteFortressReader.MatPairR\
26280 \x07matPair\x12\x0e\n\x02id\x18\x02\x20\x01(\tR\x02id\x12\x12\n\x04name\
26281 \x18\x03\x20\x01(\x0cR\x04name\x12F\n\x0bstate_color\x18\x04\x20\x01(\
26282 \x0b2%.RemoteFortressReader.ColorDefinitionR\nstateColor\x12@\n\ninstrum\
26283 ent\x18\x05\x20\x01(\x0b2\x20.ItemdefInstrument.InstrumentDefR\ninstrume\
26284 nt\x12\x17\n\x07up_step\x18\x06\x20\x01(\x05R\x06upStep\x12\x1b\n\tdown_\
26285 step\x18\x07\x20\x01(\x05R\x08downStep\x126\n\x05layer\x18\x08\x20\x01(\
26286 \x0e2\x20.RemoteFortressReader.ArmorLayerR\x05layer\"\x87\x01\n\x0cBuild\
26287 ingType\x12#\n\rbuilding_type\x18\x01\x20\x02(\x05R\x0cbuildingType\x12)\
26288 \n\x10building_subtype\x18\x02\x20\x02(\x05R\x0fbuildingSubtype\x12'\n\
26289 \x0fbuilding_custom\x18\x03\x20\x02(\x05R\x0ebuildingCustom\"\x81\x01\n\
26290 \x12BuildingDefinition\x12G\n\rbuilding_type\x18\x01\x20\x02(\x0b2\".Rem\
26291 oteFortressReader.BuildingTypeR\x0cbuildingType\x12\x0e\n\x02id\x18\x02\
26292 \x20\x01(\tR\x02id\x12\x12\n\x04name\x18\x03\x20\x01(\tR\x04name\"]\n\
26293 \x0cBuildingList\x12M\n\rbuilding_list\x18\x01\x20\x03(\x0b2(.RemoteFort\
26294 ressReader.BuildingDefinitionR\x0cbuildingList\"]\n\x0cMaterialList\x12M\
26295 \n\rmaterial_list\x18\x01\x20\x03(\x0b2(.RemoteFortressReader.MaterialDe\
26296 finitionR\x0cmaterialList\"U\n\x04Hair\x12\x16\n\x06length\x18\x01\x20\
26297 \x01(\x05R\x06length\x125\n\x05style\x18\x02\x20\x01(\x0e2\x1f.RemoteFor\
26298 tressReader.HairStyleR\x05style\"\xbe\x01\n\x0cBodySizeInfo\x12\x19\n\
26299 \x08size_cur\x18\x01\x20\x01(\x05R\x07sizeCur\x12\x1b\n\tsize_base\x18\
26300 \x02\x20\x01(\x05R\x08sizeBase\x12\x19\n\x08area_cur\x18\x03\x20\x01(\
26301 \x05R\x07areaCur\x12\x1b\n\tarea_base\x18\x04\x20\x01(\x05R\x08areaBase\
26302 \x12\x1d\n\nlength_cur\x18\x05\x20\x01(\x05R\tlengthCur\x12\x1f\n\x0blen\
26303 gth_base\x18\x06\x20\x01(\x05R\nlengthBase\"\xa0\x03\n\x0eUnitAppearance\
26304 \x12%\n\x0ebody_modifiers\x18\x01\x20\x03(\x05R\rbodyModifiers\x12!\n\
26305 \x0cbp_modifiers\x18\x02\x20\x03(\x05R\x0bbpModifiers\x12#\n\rsize_modif\
26306 ier\x18\x03\x20\x01(\x05R\x0csizeModifier\x12\x16\n\x06colors\x18\x04\
26307 \x20\x03(\x05R\x06colors\x12.\n\x04hair\x18\x05\x20\x01(\x0b2\x1a.Remote\
26308 FortressReader.HairR\x04hair\x120\n\x05beard\x18\x06\x20\x01(\x0b2\x1a.R\
26309 emoteFortressReader.HairR\x05beard\x128\n\tmoustache\x18\x07\x20\x01(\
26310 \x0b2\x1a.RemoteFortressReader.HairR\tmoustache\x128\n\tsideburns\x18\
26311 \x08\x20\x01(\x0b2\x1a.RemoteFortressReader.HairR\tsideburns\x121\n\x14p\
26312 hysical_description\x18\t\x20\x01(\tR\x13physicalDescription\"\x9a\x01\n\
26313 \rInventoryItem\x127\n\x04mode\x18\x01\x20\x01(\x0e2#.RemoteFortressRead\
26314 er.InventoryModeR\x04mode\x12.\n\x04item\x18\x02\x20\x01(\x0b2\x1a.Remot\
26315 eFortressReader.ItemR\x04item\x12\x20\n\x0cbody_part_id\x18\x03\x20\x01(\
26316 \x05R\nbodyPartId\"t\n\tWoundPart\x12(\n\x10global_layer_idx\x18\x01\x20\
26317 \x01(\x05R\x0eglobalLayerIdx\x12\x20\n\x0cbody_part_id\x18\x02\x20\x01(\
26318 \x05R\nbodyPartId\x12\x1b\n\tlayer_idx\x18\x03\x20\x01(\x05R\x08layerIdx\
26319 \"e\n\tUnitWound\x125\n\x05parts\x18\x01\x20\x03(\x0b2\x1f.RemoteFortres\
26320 sReader.WoundPartR\x05parts\x12!\n\x0csevered_part\x18\x02\x20\x01(\x08R\
26321 \x0bseveredPart\"\xbb\x07\n\x0eUnitDefinition\x12\x0e\n\x02id\x18\x01\
26322 \x20\x02(\x05R\x02id\x12\x18\n\x07isValid\x18\x02\x20\x01(\x08R\x07isVal\
26323 id\x12\x13\n\x05pos_x\x18\x03\x20\x01(\x05R\x04posX\x12\x13\n\x05pos_y\
26324 \x18\x04\x20\x01(\x05R\x04posY\x12\x13\n\x05pos_z\x18\x05\x20\x01(\x05R\
26325 \x04posZ\x121\n\x04race\x18\x06\x20\x01(\x0b2\x1d.RemoteFortressReader.M\
26326 atPairR\x04race\x12P\n\x10profession_color\x18\x07\x20\x01(\x0b2%.Remote\
26327 FortressReader.ColorDefinitionR\x0fprofessionColor\x12\x16\n\x06flags1\
26328 \x18\x08\x20\x01(\rR\x06flags1\x12\x16\n\x06flags2\x18\t\x20\x01(\rR\x06\
26329 flags2\x12\x16\n\x06flags3\x18\n\x20\x01(\rR\x06flags3\x12\x1d\n\nis_sol\
26330 dier\x18\x0b\x20\x01(\x08R\tisSoldier\x12?\n\tsize_info\x18\x0c\x20\x01(\
26331 \x0b2\".RemoteFortressReader.BodySizeInfoR\x08sizeInfo\x12\x12\n\x04name\
26332 \x18\r\x20\x01(\tR\x04name\x12\x1b\n\tblood_max\x18\x0e\x20\x01(\x05R\
26333 \x08bloodMax\x12\x1f\n\x0bblood_count\x18\x0f\x20\x01(\x05R\nbloodCount\
26334 \x12D\n\nappearance\x18\x10\x20\x01(\x0b2$.RemoteFortressReader.UnitAppe\
26335 aranceR\nappearance\x12#\n\rprofession_id\x18\x11\x20\x01(\x05R\x0cprofe\
26336 ssionId\x12'\n\x0fnoble_positions\x18\x12\x20\x03(\tR\x0enoblePositions\
26337 \x12\x19\n\x08rider_id\x18\x13\x20\x01(\x05R\x07riderId\x12A\n\tinventor\
26338 y\x18\x14\x20\x03(\x0b2#.RemoteFortressReader.InventoryItemR\tinventory\
26339 \x12\x19\n\x08subpos_x\x18\x15\x20\x01(\x02R\x07subposX\x12\x19\n\x08sub\
26340 pos_y\x18\x16\x20\x01(\x02R\x07subposY\x12\x19\n\x08subpos_z\x18\x17\x20\
26341 \x01(\x02R\x07subposZ\x123\n\x06facing\x18\x18\x20\x01(\x0b2\x1b.RemoteF\
26342 ortressReader.CoordR\x06facing\x12\x10\n\x03age\x18\x19\x20\x01(\x05R\
26343 \x03age\x127\n\x06wounds\x18\x1a\x20\x03(\x0b2\x1f.RemoteFortressReader.\
26344 UnitWoundR\x06wounds\"U\n\x08UnitList\x12I\n\rcreature_list\x18\x01\x20\
26345 \x03(\x0b2$.RemoteFortressReader.UnitDefinitionR\x0ccreatureList\"\xd4\
26346 \x01\n\x0cBlockRequest\x12#\n\rblocks_needed\x18\x01\x20\x01(\x05R\x0cbl\
26347 ocksNeeded\x12\x13\n\x05min_x\x18\x02\x20\x01(\x05R\x04minX\x12\x13\n\
26348 \x05max_x\x18\x03\x20\x01(\x05R\x04maxX\x12\x13\n\x05min_y\x18\x04\x20\
26349 \x01(\x05R\x04minY\x12\x13\n\x05max_y\x18\x05\x20\x01(\x05R\x04maxY\x12\
26350 \x13\n\x05min_z\x18\x06\x20\x01(\x05R\x04minZ\x12\x13\n\x05max_z\x18\x07\
26351 \x20\x01(\x05R\x04maxZ\x12!\n\x0cforce_reload\x18\x08\x20\x01(\x08R\x0bf\
26352 orceReload\"\xf2\x01\n\tBlockList\x12=\n\nmap_blocks\x18\x01\x20\x03(\
26353 \x0b2\x1e.RemoteFortressReader.MapBlockR\tmapBlocks\x12\x13\n\x05map_x\
26354 \x18\x02\x20\x01(\x05R\x04mapX\x12\x13\n\x05map_y\x18\x03\x20\x01(\x05R\
26355 \x04mapY\x12?\n\nengravings\x18\x04\x20\x03(\x0b2\x1f.RemoteFortressRead\
26356 er.EngravingR\nengravings\x12;\n\x0bocean_waves\x18\x05\x20\x03(\x0b2\
26357 \x1a.RemoteFortressReader.WaveR\noceanWaves\"_\n\x08PlantDef\x12\x13\n\
26358 \x05pos_x\x18\x01\x20\x02(\x05R\x04posX\x12\x13\n\x05pos_y\x18\x02\x20\
26359 \x02(\x05R\x04posY\x12\x13\n\x05pos_z\x18\x03\x20\x02(\x05R\x04posZ\x12\
26360 \x14\n\x05index\x18\x04\x20\x02(\x05R\x05index\"J\n\tPlantList\x12=\n\np\
26361 lant_list\x18\x01\x20\x03(\x0b2\x1e.RemoteFortressReader.PlantDefR\tplan\
26362 tList\"\xe2\x02\n\x08ViewInfo\x12\x1c\n\nview_pos_x\x18\x01\x20\x01(\x05\
26363 R\x08viewPosX\x12\x1c\n\nview_pos_y\x18\x02\x20\x01(\x05R\x08viewPosY\
26364 \x12\x1c\n\nview_pos_z\x18\x03\x20\x01(\x05R\x08viewPosZ\x12\x1e\n\x0bvi\
26365 ew_size_x\x18\x04\x20\x01(\x05R\tviewSizeX\x12\x1e\n\x0bview_size_y\x18\
26366 \x05\x20\x01(\x05R\tviewSizeY\x12\x20\n\x0ccursor_pos_x\x18\x06\x20\x01(\
26367 \x05R\ncursorPosX\x12\x20\n\x0ccursor_pos_y\x18\x07\x20\x01(\x05R\ncurso\
26368 rPosY\x12\x20\n\x0ccursor_pos_z\x18\x08\x20\x01(\x05R\ncursorPosZ\x12*\n\
26369 \x0efollow_unit_id\x18\t\x20\x01(\x05:\x02-1R\x0cfollowUnitIdB\0\x12*\n\
26370 \x0efollow_item_id\x18\n\x20\x01(\x05:\x02-1R\x0cfollowItemIdB\0\"\xb9\
26371 \x02\n\x07MapInfo\x12\x20\n\x0cblock_size_x\x18\x01\x20\x01(\x05R\nblock\
26372 SizeX\x12\x20\n\x0cblock_size_y\x18\x02\x20\x01(\x05R\nblockSizeY\x12\
26373 \x20\n\x0cblock_size_z\x18\x03\x20\x01(\x05R\nblockSizeZ\x12\x1e\n\x0bbl\
26374 ock_pos_x\x18\x04\x20\x01(\x05R\tblockPosX\x12\x1e\n\x0bblock_pos_y\x18\
26375 \x05\x20\x01(\x05R\tblockPosY\x12\x1e\n\x0bblock_pos_z\x18\x06\x20\x01(\
26376 \x05R\tblockPosZ\x12\x1d\n\nworld_name\x18\x07\x20\x01(\tR\tworldName\
26377 \x12,\n\x12world_name_english\x18\x08\x20\x01(\tR\x10worldNameEnglish\
26378 \x12\x1b\n\tsave_name\x18\t\x20\x01(\tR\x08saveName\"\x81\x02\n\x05Cloud\
26379 \x125\n\x05front\x18\x01\x20\x01(\x0e2\x1f.RemoteFortressReader.FrontTyp\
26380 eR\x05front\x12;\n\x07cumulus\x18\x02\x20\x01(\x0e2!.RemoteFortressReade\
26381 r.CumulusTypeR\x07cumulus\x12\x16\n\x06cirrus\x18\x03\x20\x01(\x08R\x06c\
26382 irrus\x12;\n\x07stratus\x18\x04\x20\x01(\x0e2!.RemoteFortressReader.Stra\
26383 tusTypeR\x07stratus\x12/\n\x03fog\x18\x05\x20\x01(\x0e2\x1d.RemoteFortre\
26384 ssReader.FogTypeR\x03fog\"\xf1\x06\n\x08WorldMap\x12\x1f\n\x0bworld_widt\
26385 h\x18\x01\x20\x02(\x05R\nworldWidth\x12!\n\x0cworld_height\x18\x02\x20\
26386 \x02(\x05R\x0bworldHeight\x12\x12\n\x04name\x18\x03\x20\x01(\x0cR\x04nam\
26387 e\x12!\n\x0cname_english\x18\x04\x20\x01(\tR\x0bnameEnglish\x12\x1c\n\te\
26388 levation\x18\x05\x20\x03(\x05R\televation\x12\x1a\n\x08rainfall\x18\x06\
26389 \x20\x03(\x05R\x08rainfall\x12\x1e\n\nvegetation\x18\x07\x20\x03(\x05R\n\
26390 vegetation\x12\x20\n\x0btemperature\x18\x08\x20\x03(\x05R\x0btemperature\
26391 \x12\x1a\n\x08evilness\x18\t\x20\x03(\x05R\x08evilness\x12\x1a\n\x08drai\
26392 nage\x18\n\x20\x03(\x05R\x08drainage\x12\x1c\n\tvolcanism\x18\x0b\x20\
26393 \x03(\x05R\tvolcanism\x12\x1a\n\x08savagery\x18\x0c\x20\x03(\x05R\x08sav\
26394 agery\x123\n\x06clouds\x18\r\x20\x03(\x0b2\x1b.RemoteFortressReader.Clou\
26395 dR\x06clouds\x12\x1a\n\x08salinity\x18\x0e\x20\x03(\x05R\x08salinity\x12\
26396 \x13\n\x05map_x\x18\x0f\x20\x01(\x05R\x04mapX\x12\x13\n\x05map_y\x18\x10\
26397 \x20\x01(\x05R\x04mapY\x12\x19\n\x08center_x\x18\x11\x20\x01(\x05R\x07ce\
26398 nterX\x12\x19\n\x08center_y\x18\x12\x20\x01(\x05R\x07centerY\x12\x19\n\
26399 \x08center_z\x18\x13\x20\x01(\x05R\x07centerZ\x12\x19\n\x08cur_year\x18\
26400 \x14\x20\x01(\x05R\x07curYear\x12\"\n\rcur_year_tick\x18\x15\x20\x01(\
26401 \x05R\x0bcurYearTick\x12A\n\x0bworld_poles\x18\x16\x20\x01(\x0e2\x20.Rem\
26402 oteFortressReader.WorldPolesR\nworldPoles\x12@\n\x0briver_tiles\x18\x17\
26403 \x20\x03(\x0b2\x1f.RemoteFortressReader.RiverTileR\nriverTiles\x12'\n\
26404 \x0fwater_elevation\x18\x18\x20\x03(\x05R\x0ewaterElevation\x12C\n\x0cre\
26405 gion_tiles\x18\x19\x20\x03(\x0b2\x20.RemoteFortressReader.RegionTileR\
26406 \x0bregionTiles\"\xa7\x01\n\x1bSiteRealizationBuildingWall\x12\x17\n\x07\
26407 start_x\x18\x01\x20\x01(\x05R\x06startX\x12\x17\n\x07start_y\x18\x02\x20\
26408 \x01(\x05R\x06startY\x12\x17\n\x07start_z\x18\x03\x20\x01(\x05R\x06start\
26409 Z\x12\x13\n\x05end_x\x18\x04\x20\x01(\x05R\x04endX\x12\x13\n\x05end_y\
26410 \x18\x05\x20\x01(\x05R\x04endY\x12\x13\n\x05end_z\x18\x06\x20\x01(\x05R\
26411 \x04endZ\"c\n\x1cSiteRealizationBuildingTower\x12\x15\n\x06roof_z\x18\
26412 \x01\x20\x01(\x05R\x05roofZ\x12\x14\n\x05round\x18\x02\x20\x01(\x08R\x05\
26413 round\x12\x16\n\x06goblin\x18\x03\x20\x01(\x08R\x06goblin\"\x8d\x01\n\
26414 \x0bTrenchSpoke\x12\x1f\n\x0bmound_start\x18\x01\x20\x01(\x05R\nmoundSta\
26415 rt\x12!\n\x0ctrench_start\x18\x02\x20\x01(\x05R\x0btrenchStart\x12\x1d\n\
26416 \ntrench_end\x18\x03\x20\x01(\x05R\ttrenchEnd\x12\x1b\n\tmound_end\x18\
26417 \x04\x20\x01(\x05R\x08moundEnd\"\\\n\x1fSiteRealizationBuildingTrenches\
26418 \x129\n\x06spokes\x18\x01\x20\x03(\x0b2!.RemoteFortressReader.TrenchSpok\
26419 eR\x06spokes\"\xc7\x03\n\x17SiteRealizationBuilding\x12\x0e\n\x02id\x18\
26420 \x01\x20\x01(\x05R\x02id\x12\x13\n\x05min_x\x18\x03\x20\x01(\x05R\x04min\
26421 X\x12\x13\n\x05min_y\x18\x04\x20\x01(\x05R\x04minY\x12\x13\n\x05max_x\
26422 \x18\x05\x20\x01(\x05R\x04maxX\x12\x13\n\x05max_y\x18\x06\x20\x01(\x05R\
26423 \x04maxY\x129\n\x08material\x18\x07\x20\x01(\x0b2\x1d.RemoteFortressRead\
26424 er.MatPairR\x08material\x12N\n\twall_info\x18\x08\x20\x01(\x0b21.RemoteF\
26425 ortressReader.SiteRealizationBuildingWallR\x08wallInfo\x12Q\n\ntower_inf\
26426 o\x18\t\x20\x01(\x0b22.RemoteFortressReader.SiteRealizationBuildingTower\
26427 R\ttowerInfo\x12V\n\x0btrench_info\x18\n\x20\x01(\x0b25.RemoteFortressRe\
26428 ader.SiteRealizationBuildingTrenchesR\ntrenchInfo\x12\x12\n\x04type\x18\
26429 \x0b\x20\x01(\x05R\x04type\"\x82\x06\n\nRegionTile\x12\x1c\n\televation\
26430 \x18\x01\x20\x01(\x05R\televation\x12\x1a\n\x08rainfall\x18\x02\x20\x01(\
26431 \x05R\x08rainfall\x12\x1e\n\nvegetation\x18\x03\x20\x01(\x05R\nvegetatio\
26432 n\x12\x20\n\x0btemperature\x18\x04\x20\x01(\x05R\x0btemperature\x12\x1a\
26433 \n\x08evilness\x18\x05\x20\x01(\x05R\x08evilness\x12\x1a\n\x08drainage\
26434 \x18\x06\x20\x01(\x05R\x08drainage\x12\x1c\n\tvolcanism\x18\x07\x20\x01(\
26435 \x05R\tvolcanism\x12\x1a\n\x08savagery\x18\x08\x20\x01(\x05R\x08savagery\
26436 \x12\x1a\n\x08salinity\x18\t\x20\x01(\x05R\x08salinity\x12@\n\x0briver_t\
26437 iles\x18\n\x20\x01(\x0b2\x1f.RemoteFortressReader.RiverTileR\nriverTiles\
26438 \x12'\n\x0fwater_elevation\x18\x0b\x20\x01(\x05R\x0ewaterElevation\x12H\
26439 \n\x10surface_material\x18\x0c\x20\x01(\x0b2\x1d.RemoteFortressReader.Ma\
26440 tPairR\x0fsurfaceMaterial\x12F\n\x0fplant_materials\x18\r\x20\x03(\x0b2\
26441 \x1d.RemoteFortressReader.MatPairR\x0eplantMaterials\x12K\n\tbuildings\
26442 \x18\x0e\x20\x03(\x0b2-.RemoteFortressReader.SiteRealizationBuildingR\tb\
26443 uildings\x12F\n\x0fstone_materials\x18\x0f\x20\x03(\x0b2\x1d.RemoteFortr\
26444 essReader.MatPairR\x0estoneMaterials\x12D\n\x0etree_materials\x18\x10\
26445 \x20\x03(\x0b2\x1d.RemoteFortressReader.MatPairR\rtreeMaterials\x12\x12\
26446 \n\x04snow\x18\x11\x20\x01(\x05R\x04snow\"\xa4\x01\n\tRegionMap\x12\x13\
26447 \n\x05map_x\x18\x01\x20\x01(\x05R\x04mapX\x12\x13\n\x05map_y\x18\x02\x20\
26448 \x01(\x05R\x04mapY\x12\x12\n\x04name\x18\x03\x20\x01(\tR\x04name\x12!\n\
26449 \x0cname_english\x18\x04\x20\x01(\tR\x0bnameEnglish\x126\n\x05tiles\x18\
26450 \x05\x20\x03(\x0b2\x20.RemoteFortressReader.RegionTileR\x05tiles\"\x8d\
26451 \x01\n\nRegionMaps\x12=\n\nworld_maps\x18\x01\x20\x03(\x0b2\x1e.RemoteFo\
26452 rtressReader.WorldMapR\tworldMaps\x12@\n\x0bregion_maps\x18\x02\x20\x03(\
26453 \x0b2\x1f.RemoteFortressReader.RegionMapR\nregionMaps\"\x9f\x01\n\x11Pat\
26454 ternDescriptor\x12\x0e\n\x02id\x18\x01\x20\x01(\tR\x02id\x12=\n\x06color\
26455 s\x18\x02\x20\x03(\x0b2%.RemoteFortressReader.ColorDefinitionR\x06colors\
26456 \x12;\n\x07pattern\x18\x03\x20\x01(\x0e2!.RemoteFortressReader.PatternTy\
26457 peR\x07pattern\"\xef\x01\n\x10ColorModifierRaw\x12C\n\x08patterns\x18\
26458 \x01\x20\x03(\x0b2'.RemoteFortressReader.PatternDescriptorR\x08patterns\
26459 \x12\x20\n\x0cbody_part_id\x18\x02\x20\x03(\x05R\nbodyPartId\x12&\n\x0ft\
26460 issue_layer_id\x18\x03\x20\x03(\x05R\rtissueLayerId\x12\x1d\n\nstart_dat\
26461 e\x18\x04\x20\x01(\x05R\tstartDate\x12\x19\n\x08end_date\x18\x05\x20\x01\
26462 (\x05R\x07endDate\x12\x12\n\x04part\x18\x06\x20\x01(\tR\x04part\"\x92\
26463 \x01\n\x10BodyPartLayerRaw\x12\x1d\n\nlayer_name\x18\x01\x20\x01(\tR\tla\
26464 yerName\x12\x1b\n\ttissue_id\x18\x02\x20\x01(\x05R\x08tissueId\x12\x1f\n\
26465 \x0blayer_depth\x18\x03\x20\x01(\x05R\nlayerDepth\x12!\n\x0cbp_modifiers\
26466 \x18\x04\x20\x03(\x05R\x0bbpModifiers\"\xc7\x01\n\x0bBodyPartRaw\x12\x14\
26467 \n\x05token\x18\x01\x20\x01(\tR\x05token\x12\x1a\n\x08category\x18\x02\
26468 \x20\x01(\tR\x08category\x12\x16\n\x06parent\x18\x03\x20\x01(\x05R\x06pa\
26469 rent\x12\x14\n\x05flags\x18\x04\x20\x03(\x08R\x05flags\x12>\n\x06layers\
26470 \x18\x05\x20\x03(\x0b2&.RemoteFortressReader.BodyPartLayerRawR\x06layers\
26471 \x12\x18\n\x07relsize\x18\x06\x20\x01(\x05R\x07relsize\"\\\n\x14BpAppear\
26472 anceModifier\x12\x12\n\x04type\x18\x01\x20\x01(\tR\x04type\x12\x17\n\x07\
26473 mod_min\x18\x02\x20\x01(\x05R\x06modMin\x12\x17\n\x07mod_max\x18\x03\x20\
26474 \x01(\x05R\x06modMax\"\x9e\x01\n\tTissueRaw\x12\x0e\n\x02id\x18\x01\x20\
26475 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02\x20\x01(\tR\x04name\x129\n\x08m\
26476 aterial\x18\x03\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08mater\
26477 ial\x122\n\x15subordinate_to_tissue\x18\x04\x20\x01(\tR\x13subordinateTo\
26478 Tissue\"\xb4\x05\n\x08CasteRaw\x12\x14\n\x05index\x18\x01\x20\x01(\x05R\
26479 \x05index\x12\x19\n\x08caste_id\x18\x02\x20\x01(\tR\x07casteId\x12\x1d\n\
26480 \ncaste_name\x18\x03\x20\x03(\tR\tcasteName\x12\x1b\n\tbaby_name\x18\x04\
26481 \x20\x03(\tR\x08babyName\x12\x1d\n\nchild_name\x18\x05\x20\x03(\tR\tchil\
26482 dName\x12\x16\n\x06gender\x18\x06\x20\x01(\x05R\x06gender\x12@\n\nbody_p\
26483 arts\x18\x07\x20\x03(\x0b2!.RemoteFortressReader.BodyPartRawR\tbodyParts\
26484 \x12#\n\rtotal_relsize\x18\x08\x20\x01(\x05R\x0ctotalRelsize\x12H\n\tmod\
26485 ifiers\x18\t\x20\x03(\x0b2*.RemoteFortressReader.BpAppearanceModifierR\t\
26486 modifiers\x12!\n\x0cmodifier_idx\x18\n\x20\x03(\x05R\x0bmodifierIdx\x12\
26487 \x19\n\x08part_idx\x18\x0b\x20\x03(\x05R\x07partIdx\x12\x1b\n\tlayer_idx\
26488 \x18\x0c\x20\x03(\x05R\x08layerIdx\x12f\n\x19body_appearance_modifiers\
26489 \x18\r\x20\x03(\x0b2*.RemoteFortressReader.BpAppearanceModifierR\x17body\
26490 AppearanceModifiers\x12O\n\x0fcolor_modifiers\x18\x0e\x20\x03(\x0b2&.Rem\
26491 oteFortressReader.ColorModifierRawR\x0ecolorModifiers\x12\x20\n\x0bdescr\
26492 iption\x18\x0f\x20\x01(\tR\x0bdescription\x12\x1d\n\nadult_size\x18\x10\
26493 \x20\x01(\x05R\tadultSize\"\xed\x03\n\x0bCreatureRaw\x12\x14\n\x05index\
26494 \x18\x01\x20\x01(\x05R\x05index\x12\x1f\n\x0bcreature_id\x18\x02\x20\x01\
26495 (\tR\ncreatureId\x12\x12\n\x04name\x18\x03\x20\x03(\tR\x04name\x12*\n\
26496 \x11general_baby_name\x18\x04\x20\x03(\tR\x0fgeneralBabyName\x12,\n\x12g\
26497 eneral_child_name\x18\x05\x20\x03(\tR\x10generalChildName\x12#\n\rcreatu\
26498 re_tile\x18\x06\x20\x01(\x05R\x0ccreatureTile\x122\n\x15creature_soldier\
26499 _tile\x18\x07\x20\x01(\x05R\x13creatureSoldierTile\x12;\n\x05color\x18\
26500 \x08\x20\x01(\x0b2%.RemoteFortressReader.ColorDefinitionR\x05color\x12\
26501 \x1c\n\tadultsize\x18\t\x20\x01(\x05R\tadultsize\x124\n\x05caste\x18\n\
26502 \x20\x03(\x0b2\x1e.RemoteFortressReader.CasteRawR\x05caste\x129\n\x07tis\
26503 sues\x18\x0b\x20\x03(\x0b2\x1f.RemoteFortressReader.TissueRawR\x07tissue\
26504 s\x12\x14\n\x05flags\x18\x0c\x20\x03(\x08R\x05flags\"Y\n\x0fCreatureRawL\
26505 ist\x12F\n\rcreature_raws\x18\x01\x20\x03(\x0b2!.RemoteFortressReader.Cr\
26506 eatureRawR\x0ccreatureRaws\"\xe9\x01\n\x04Army\x12\x0e\n\x02id\x18\x01\
26507 \x20\x01(\x05R\x02id\x12\x13\n\x05pos_x\x18\x02\x20\x01(\x05R\x04posX\
26508 \x12\x13\n\x05pos_y\x18\x03\x20\x01(\x05R\x04posY\x12\x13\n\x05pos_z\x18\
26509 \x04\x20\x01(\x05R\x04posZ\x12<\n\x06leader\x18\x05\x20\x01(\x0b2$.Remot\
26510 eFortressReader.UnitDefinitionR\x06leader\x12>\n\x07members\x18\x06\x20\
26511 \x03(\x0b2$.RemoteFortressReader.UnitDefinitionR\x07members\x12\x14\n\
26512 \x05flags\x18\x07\x20\x01(\rR\x05flags\">\n\x08ArmyList\x122\n\x06armies\
26513 \x18\x01\x20\x03(\x0b2\x1a.RemoteFortressReader.ArmyR\x06armies\"\x95\
26514 \x01\n\x0bGrowthPrint\x12\x1a\n\x08priority\x18\x01\x20\x01(\x05R\x08pri\
26515 ority\x12\x14\n\x05color\x18\x02\x20\x01(\x05R\x05color\x12!\n\x0ctiming\
26516 _start\x18\x03\x20\x01(\x05R\x0btimingStart\x12\x1d\n\ntiming_end\x18\
26517 \x04\x20\x01(\x05R\ttimingEnd\x12\x12\n\x04tile\x18\x05\x20\x01(\x05R\
26518 \x04tile\"\x88\x04\n\nTreeGrowth\x12\x14\n\x05index\x18\x01\x20\x01(\x05\
26519 R\x05index\x12\x0e\n\x02id\x18\x02\x20\x01(\tR\x02id\x12\x12\n\x04name\
26520 \x18\x03\x20\x01(\tR\x04name\x12/\n\x03mat\x18\x04\x20\x01(\x0b2\x1d.Rem\
26521 oteFortressReader.MatPairR\x03mat\x129\n\x06prints\x18\x05\x20\x03(\x0b2\
26522 !.RemoteFortressReader.GrowthPrintR\x06prints\x12!\n\x0ctiming_start\x18\
26523 \x06\x20\x01(\x05R\x0btimingStart\x12\x1d\n\ntiming_end\x18\x07\x20\x01(\
26524 \x05R\ttimingEnd\x12\x14\n\x05twigs\x18\x08\x20\x01(\x08R\x05twigs\x12%\
26525 \n\x0elight_branches\x18\t\x20\x01(\x08R\rlightBranches\x12%\n\x0eheavy_\
26526 branches\x18\n\x20\x01(\x08R\rheavyBranches\x12\x14\n\x05trunk\x18\x0b\
26527 \x20\x01(\x08R\x05trunk\x12\x14\n\x05roots\x18\x0c\x20\x01(\x08R\x05root\
26528 s\x12\x10\n\x03cap\x18\r\x20\x01(\x08R\x03cap\x12\x18\n\x07sapling\x18\
26529 \x0e\x20\x01(\x08R\x07sapling\x12,\n\x12trunk_height_start\x18\x0f\x20\
26530 \x01(\x05R\x10trunkHeightStart\x12(\n\x10trunk_height_end\x18\x10\x20\
26531 \x01(\x05R\x0etrunkHeightEnd\"\x94\x01\n\x08PlantRaw\x12\x14\n\x05index\
26532 \x18\x01\x20\x01(\x05R\x05index\x12\x0e\n\x02id\x18\x02\x20\x01(\tR\x02i\
26533 d\x12\x12\n\x04name\x18\x03\x20\x01(\tR\x04name\x12:\n\x07growths\x18\
26534 \x04\x20\x03(\x0b2\x20.RemoteFortressReader.TreeGrowthR\x07growths\x12\
26535 \x12\n\x04tile\x18\x05\x20\x01(\x05R\x04tile\"M\n\x0cPlantRawList\x12=\n\
26536 \nplant_raws\x18\x01\x20\x03(\x0b2\x1e.RemoteFortressReader.PlantRawR\tp\
26537 lantRaws\"j\n\nScreenTile\x12\x1c\n\tcharacter\x18\x01\x20\x01(\rR\tchar\
26538 acter\x12\x1e\n\nforeground\x18\x02\x20\x01(\rR\nforeground\x12\x1e\n\nb\
26539 ackground\x18\x03\x20\x01(\rR\nbackground\"u\n\rScreenCapture\x12\x14\n\
26540 \x05width\x18\x01\x20\x01(\rR\x05width\x12\x16\n\x06height\x18\x02\x20\
26541 \x01(\rR\x06height\x126\n\x05tiles\x18\x03\x20\x03(\x0b2\x20.RemoteFortr\
26542 essReader.ScreenTileR\x05tiles\"\xa9\x01\n\rKeyboardEvent\x12\x12\n\x04t\
26543 ype\x18\x01\x20\x01(\rR\x04type\x12\x14\n\x05which\x18\x02\x20\x01(\rR\
26544 \x05which\x12\x14\n\x05state\x18\x03\x20\x01(\rR\x05state\x12\x1a\n\x08s\
26545 cancode\x18\x04\x20\x01(\rR\x08scancode\x12\x10\n\x03sym\x18\x05\x20\x01\
26546 (\rR\x03sym\x12\x10\n\x03mod\x18\x06\x20\x01(\rR\x03mod\x12\x18\n\x07uni\
26547 code\x18\x07\x20\x01(\rR\x07unicode\"\x93\x01\n\nDigCommand\x12J\n\x0bde\
26548 signation\x18\x01\x20\x01(\x0e2(.RemoteFortressReader.TileDigDesignation\
26549 R\x0bdesignation\x129\n\tlocations\x18\x02\x20\x03(\x0b2\x1b.RemoteFortr\
26550 essReader.CoordR\tlocations\"\"\n\nSingleBool\x12\x14\n\x05Value\x18\x01\
26551 \x20\x01(\x08R\x05Value\"\xaf\x01\n\x0bVersionInfo\x124\n\x16dwarf_fortr\
26552 ess_version\x18\x01\x20\x01(\tR\x14dwarfFortressVersion\x12%\n\x0edfhack\
26553 _version\x18\x02\x20\x01(\tR\rdfhackVersion\x12C\n\x1eremote_fortress_re\
26554 ader_version\x18\x03\x20\x01(\tR\x1bremoteFortressReaderVersion\"G\n\x0b\
26555 ListRequest\x12\x1d\n\nlist_start\x18\x01\x20\x01(\x05R\tlistStart\x12\
26556 \x19\n\x08list_end\x18\x02\x20\x01(\x05R\x07listEnd\"\xfd\x02\n\x06Repor\
26557 t\x12\x12\n\x04type\x18\x01\x20\x01(\x05R\x04type\x12\x12\n\x04text\x18\
26558 \x02\x20\x01(\tR\x04text\x12;\n\x05color\x18\x03\x20\x01(\x0b2%.RemoteFo\
26559 rtressReader.ColorDefinitionR\x05color\x12\x1a\n\x08duration\x18\x04\x20\
26560 \x01(\x05R\x08duration\x12\"\n\x0ccontinuation\x18\x05\x20\x01(\x08R\x0c\
26561 continuation\x12\x20\n\x0bunconscious\x18\x06\x20\x01(\x08R\x0bunconscio\
26562 us\x12\"\n\x0cannouncement\x18\x07\x20\x01(\x08R\x0cannouncement\x12!\n\
26563 \x0crepeat_count\x18\x08\x20\x01(\x05R\x0brepeatCount\x12-\n\x03pos\x18\
26564 \t\x20\x01(\x0b2\x1b.RemoteFortressReader.CoordR\x03pos\x12\x0e\n\x02id\
26565 \x18\n\x20\x01(\x05R\x02id\x12\x12\n\x04year\x18\x0b\x20\x01(\x05R\x04ye\
26566 ar\x12\x12\n\x04time\x18\x0c\x20\x01(\x05R\x04time\"@\n\x06Status\x126\n\
26567 \x07reports\x18\x01\x20\x03(\x0b2\x1c.RemoteFortressReader.ReportR\x07re\
26568 ports\"6\n\x10ShapeDescriptior\x12\x0e\n\x02id\x18\x01\x20\x01(\tR\x02id\
26569 \x12\x12\n\x04tile\x18\x02\x20\x01(\x05R\x04tile\"J\n\x08Language\x12>\n\
26570 \x06shapes\x18\x01\x20\x03(\x0b2&.RemoteFortressReader.ShapeDescriptiorR\
26571 \x06shapes\"\xd1\x01\n\x0fItemImprovement\x129\n\x08material\x18\x01\x20\
26572 \x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08material\x12\x14\n\x05sh\
26573 ape\x18\x03\x20\x01(\x05R\x05shape\x12#\n\rspecific_type\x18\x04\x20\x01\
26574 (\x05R\x0cspecificType\x124\n\x05image\x18\x05\x20\x01(\x0b2\x1e.RemoteF\
26575 ortressReader.ArtImageR\x05image\x12\x12\n\x04type\x18\x06\x20\x01(\x05R\
26576 \x04type\"\xf5\x01\n\x0fArtImageElement\x12\x14\n\x05count\x18\x01\x20\
26577 \x01(\x05R\x05count\x12=\n\x04type\x18\x02\x20\x01(\x0e2).RemoteFortress\
26578 Reader.ArtImageElementTypeR\x04type\x12B\n\rcreature_item\x18\x03\x20\
26579 \x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x0ccreatureItem\x129\n\x08m\
26580 aterial\x18\x05\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08mater\
26581 ial\x12\x0e\n\x02id\x18\x06\x20\x01(\x05R\x02id\"\xbc\x01\n\x10ArtImageP\
26582 roperty\x12\x18\n\x07subject\x18\x01\x20\x01(\x05R\x07subject\x12\x16\n\
26583 \x06object\x18\x02\x20\x01(\x05R\x06object\x126\n\x04verb\x18\x03\x20\
26584 \x01(\x0e2\".RemoteFortressReader.ArtImageVerbR\x04verb\x12>\n\x04type\
26585 \x18\x04\x20\x01(\x0e2*.RemoteFortressReader.ArtImagePropertyTypeR\x04ty\
26586 pe\"\xc4\x01\n\x08ArtImage\x12A\n\x08elements\x18\x01\x20\x03(\x0b2%.Rem\
26587 oteFortressReader.ArtImageElementR\x08elements\x12-\n\x02id\x18\x02\x20\
26588 \x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x02id\x12F\n\nproperties\
26589 \x18\x03\x20\x03(\x0b2&.RemoteFortressReader.ArtImagePropertyR\nproperti\
26590 es\"\x98\x03\n\tEngraving\x12-\n\x03pos\x18\x01\x20\x01(\x0b2\x1b.Remote\
26591 FortressReader.CoordR\x03pos\x12\x18\n\x07quality\x18\x02\x20\x01(\x05R\
26592 \x07quality\x12\x12\n\x04tile\x18\x03\x20\x01(\x05R\x04tile\x124\n\x05im\
26593 age\x18\x04\x20\x01(\x0b2\x1e.RemoteFortressReader.ArtImageR\x05image\
26594 \x12\x14\n\x05floor\x18\x05\x20\x01(\x08R\x05floor\x12\x12\n\x04west\x18\
26595 \x06\x20\x01(\x08R\x04west\x12\x12\n\x04east\x18\x07\x20\x01(\x08R\x04ea\
26596 st\x12\x14\n\x05north\x18\x08\x20\x01(\x08R\x05north\x12\x14\n\x05south\
26597 \x18\t\x20\x01(\x08R\x05south\x12\x16\n\x06hidden\x18\n\x20\x01(\x08R\
26598 \x06hidden\x12\x1c\n\tnorthwest\x18\x0b\x20\x01(\x08R\tnorthwest\x12\x1c\
26599 \n\tnortheast\x18\x0c\x20\x01(\x08R\tnortheast\x12\x1c\n\tsouthwest\x18\
26600 \r\x20\x01(\x08R\tsouthwest\x12\x1c\n\tsoutheast\x18\x0e\x20\x01(\x08R\t\
26601 southeast\"\xd3\x03\n\x08FlowInfo\x12\x14\n\x05index\x18\x01\x20\x01(\
26602 \x05R\x05index\x122\n\x04type\x18\x02\x20\x01(\x0e2\x1e.RemoteFortressRe\
26603 ader.FlowTypeR\x04type\x12\x18\n\x07density\x18\x03\x20\x01(\x05R\x07den\
26604 sity\x12-\n\x03pos\x18\x04\x20\x01(\x0b2\x1b.RemoteFortressReader.CoordR\
26605 \x03pos\x12/\n\x04dest\x18\x05\x20\x01(\x0b2\x1b.RemoteFortressReader.Co\
26606 ordR\x04dest\x12\x1c\n\texpanding\x18\x06\x20\x01(\x08R\texpanding\x12\
26607 \x18\n\x05reuse\x18\x07\x20\x01(\x08R\x05reuseB\x02\x18\x01\x12\x19\n\
26608 \x08guide_id\x18\x08\x20\x01(\x05R\x07guideId\x129\n\x08material\x18\t\
26609 \x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x08material\x121\n\x04i\
26610 tem\x18\n\x20\x01(\x0b2\x1d.RemoteFortressReader.MatPairR\x04item\x12\
26611 \x12\n\x04dead\x18\x0b\x20\x01(\x08R\x04dead\x12\x12\n\x04fast\x18\x0c\
26612 \x20\x01(\x08R\x04fast\x12\x1a\n\x08creeping\x18\r\x20\x01(\x08R\x08cree\
26613 ping\"f\n\x04Wave\x12/\n\x04dest\x18\x01\x20\x01(\x0b2\x1b.RemoteFortres\
26614 sReader.CoordR\x04dest\x12-\n\x03pos\x18\x02\x20\x01(\x0b2\x1b.RemoteFor\
26615 tressReader.CoordR\x03pos*\xba\x02\n\rTiletypeShape\x12\x15\n\x08NO_SHAP\
26616 E\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\t\n\x05EMPTY\x10\0\x12\
26617 \t\n\x05FLOOR\x10\x01\x12\x0b\n\x07BOULDER\x10\x02\x12\x0b\n\x07PEBBLES\
26618 \x10\x03\x12\x08\n\x04WALL\x10\x04\x12\x11\n\rFORTIFICATION\x10\x05\x12\
26619 \x0c\n\x08STAIR_UP\x10\x06\x12\x0e\n\nSTAIR_DOWN\x10\x07\x12\x10\n\x0cST\
26620 AIR_UPDOWN\x10\x08\x12\x08\n\x04RAMP\x10\t\x12\x0c\n\x08RAMP_TOP\x10\n\
26621 \x12\r\n\tBROOK_BED\x10\x0b\x12\r\n\tBROOK_TOP\x10\x0c\x12\x0e\n\nTREE_S\
26622 HAPE\x10\r\x12\x0b\n\x07SAPLING\x10\x0e\x12\t\n\x05SHRUB\x10\x0f\x12\x0f\
26623 \n\x0bENDLESS_PIT\x10\x10\x12\n\n\x06BRANCH\x10\x11\x12\x10\n\x0cTRUNK_B\
26624 RANCH\x10\x12\x12\x08\n\x04TWIG\x10\x13*\xc4\x01\n\x0fTiletypeSpecial\
26625 \x12\x17\n\nNO_SPECIAL\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\n\
26626 \n\x06NORMAL\x10\0\x12\x10\n\x0cRIVER_SOURCE\x10\x01\x12\r\n\tWATERFALL\
26627 \x10\x02\x12\n\n\x06SMOOTH\x10\x03\x12\x0c\n\x08FURROWED\x10\x04\x12\x07\
26628 \n\x03WET\x10\x05\x12\x08\n\x04DEAD\x10\x06\x12\n\n\x06WORN_1\x10\x07\
26629 \x12\n\n\x06WORN_2\x10\x08\x12\n\n\x06WORN_3\x10\t\x12\t\n\x05TRACK\x10\
26630 \n\x12\x0f\n\x0bSMOOTH_DEAD\x10\x0b*\x8a\x03\n\x10TiletypeMaterial\x12\
26631 \x18\n\x0bNO_MATERIAL\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\
26632 \x07\n\x03AIR\x10\0\x12\x08\n\x04SOIL\x10\x01\x12\t\n\x05STONE\x10\x02\
26633 \x12\x0b\n\x07FEATURE\x10\x03\x12\x0e\n\nLAVA_STONE\x10\x04\x12\x0b\n\
26634 \x07MINERAL\x10\x05\x12\x11\n\rFROZEN_LIQUID\x10\x06\x12\x10\n\x0cCONSTR\
26635 UCTION\x10\x07\x12\x0f\n\x0bGRASS_LIGHT\x10\x08\x12\x0e\n\nGRASS_DARK\
26636 \x10\t\x12\r\n\tGRASS_DRY\x10\n\x12\x0e\n\nGRASS_DEAD\x10\x0b\x12\t\n\
26637 \x05PLANT\x10\x0c\x12\x07\n\x03HFS\x10\r\x12\x0c\n\x08CAMPFIRE\x10\x0e\
26638 \x12\x08\n\x04FIRE\x10\x0f\x12\t\n\x05ASHES\x10\x10\x12\t\n\x05MAGMA\x10\
26639 \x11\x12\r\n\tDRIFTWOOD\x10\x12\x12\x08\n\x04POOL\x10\x13\x12\t\n\x05BRO\
26640 OK\x10\x14\x12\t\n\x05RIVER\x10\x15\x12\x08\n\x04ROOT\x10\x16\x12\x11\n\
26641 \rTREE_MATERIAL\x10\x17\x12\x0c\n\x08MUSHROOM\x10\x18\x12\x13\n\x0fUNDER\
26642 WORLD_GATE\x10\x19*V\n\x0fTiletypeVariant\x12\x17\n\nNO_VARIANT\x10\xff\
26643 \xff\xff\xff\xff\xff\xff\xff\xff\x01\x12\t\n\x05VAR_1\x10\0\x12\t\n\x05V\
26644 AR_2\x10\x01\x12\t\n\x05VAR_3\x10\x02\x12\t\n\x05VAR_4\x10\x03*J\n\nWorl\
26645 dPoles\x12\x0c\n\x08NO_POLES\x10\0\x12\x0e\n\nNORTH_POLE\x10\x01\x12\x0e\
26646 \n\nSOUTH_POLE\x10\x02\x12\x0e\n\nBOTH_POLES\x10\x03*\x83\x01\n\x11Build\
26647 ingDirection\x12\t\n\x05NORTH\x10\0\x12\x08\n\x04EAST\x10\x01\x12\t\n\
26648 \x05SOUTH\x10\x02\x12\x08\n\x04WEST\x10\x03\x12\r\n\tNORTHEAST\x10\x04\
26649 \x12\r\n\tSOUTHEAST\x10\x05\x12\r\n\tSOUTHWEST\x10\x06\x12\r\n\tNORTHWES\
26650 T\x10\x07\x12\x08\n\x04NONE\x10\x08*\x8d\x01\n\x12TileDigDesignation\x12\
26651 \n\n\x06NO_DIG\x10\0\x12\x0f\n\x0bDEFAULT_DIG\x10\x01\x12\x15\n\x11UP_DO\
26652 WN_STAIR_DIG\x10\x02\x12\x0f\n\x0bCHANNEL_DIG\x10\x03\x12\x0c\n\x08RAMP_\
26653 DIG\x10\x04\x12\x12\n\x0eDOWN_STAIR_DIG\x10\x05\x12\x10\n\x0cUP_STAIR_DI\
26654 G\x10\x06*u\n\tHairStyle\x12\x14\n\x07UNKEMPT\x10\xff\xff\xff\xff\xff\
26655 \xff\xff\xff\xff\x01\x12\x11\n\rNEATLY_COMBED\x10\0\x12\x0b\n\x07BRAIDED\
26656 \x10\x01\x12\x10\n\x0cDOUBLE_BRAID\x10\x02\x12\x0e\n\nPONY_TAILS\x10\x03\
26657 \x12\x10\n\x0cCLEAN_SHAVEN\x10\x04*\x9c\x01\n\rInventoryMode\x12\n\n\x06\
26658 Hauled\x10\0\x12\n\n\x06Weapon\x10\x01\x12\x08\n\x04Worn\x10\x02\x12\x0c\
26659 \n\x08Piercing\x10\x03\x12\t\n\x05Flask\x10\x04\x12\x11\n\rWrappedAround\
26660 \x10\x05\x12\x0b\n\x07StuckIn\x10\x06\x12\x0b\n\x07InMouth\x10\x07\x12\
26661 \x07\n\x03Pet\x10\x08\x12\x0c\n\x08SewnInto\x10\t\x12\x0c\n\x08Strapped\
26662 \x10\n*O\n\nArmorLayer\x12\x0f\n\x0bLAYER_UNDER\x10\0\x12\x0e\n\nLAYER_O\
26663 VER\x10\x01\x12\x0f\n\x0bLAYER_ARMOR\x10\x02\x12\x0f\n\x0bLAYER_COVER\
26664 \x10\x03*Q\n\x0bMatterState\x12\t\n\x05Solid\x10\0\x12\n\n\x06Liquid\x10\
26665 \x01\x12\x07\n\x03Gas\x10\x02\x12\n\n\x06Powder\x10\x03\x12\t\n\x05Paste\
26666 \x10\x04\x12\x0b\n\x07Pressed\x10\x05*O\n\tFrontType\x12\x0e\n\nFRONT_NO\
26667 NE\x10\0\x12\x0e\n\nFRONT_WARM\x10\x01\x12\x0e\n\nFRONT_COLD\x10\x02\x12\
26668 \x12\n\x0eFRONT_OCCLUDED\x10\x03*Z\n\x0bCumulusType\x12\x10\n\x0cCUMULUS\
26669 _NONE\x10\0\x12\x12\n\x0eCUMULUS_MEDIUM\x10\x01\x12\x11\n\rCUMULUS_MULTI\
26670 \x10\x02\x12\x12\n\x0eCUMULUS_NIMBUS\x10\x03*Y\n\x0bStratusType\x12\x10\
26671 \n\x0cSTRATUS_NONE\x10\0\x12\x10\n\x0cSTRATUS_ALTO\x10\x01\x12\x12\n\x0e\
26672 STRATUS_PROPER\x10\x02\x12\x12\n\x0eSTRATUS_NIMBUS\x10\x03*D\n\x07FogTyp\
26673 e\x12\x0c\n\x08FOG_NONE\x10\0\x12\x0c\n\x08FOG_MIST\x10\x01\x12\x0e\n\nF\
26674 OG_NORMAL\x10\x02\x12\r\n\tF0G_THICK\x10\x03*]\n\x0bPatternType\x12\x0c\
26675 \n\x08MONOTONE\x10\0\x12\x0b\n\x07STRIPES\x10\x01\x12\x0c\n\x08IRIS_EYE\
26676 \x10\x02\x12\t\n\x05SPOTS\x10\x03\x12\r\n\tPUPIL_EYE\x10\x04\x12\x0b\n\
26677 \x07MOTTLED\x10\x05*k\n\x13ArtImageElementType\x12\x12\n\x0eIMAGE_CREATU\
26678 RE\x10\0\x12\x0f\n\x0bIMAGE_PLANT\x10\x01\x12\x0e\n\nIMAGE_TREE\x10\x02\
26679 \x12\x0f\n\x0bIMAGE_SHAPE\x10\x03\x12\x0e\n\nIMAGE_ITEM\x10\x04*B\n\x14A\
26680 rtImagePropertyType\x12\x13\n\x0fTRANSITIVE_VERB\x10\0\x12\x15\n\x11INTR\
26681 ANSITIVE_VERB\x10\x01*\x95\x08\n\x0cArtImageVerb\x12\x12\n\x0eVERB_WITHE\
26682 RING\x10\0\x12\x15\n\x11VERB_SURROUNDEDBY\x10\x01\x12\x13\n\x0fVERB_MASS\
26683 ACRING\x10\x02\x12\x11\n\rVERB_FIGHTING\x10\x03\x12\x11\n\rVERB_LABORING\
26684 \x10\x04\x12\x11\n\rVERB_GREETING\x10\x05\x12\x11\n\rVERB_REFUSING\x10\
26685 \x06\x12\x11\n\rVERB_SPEAKING\x10\x07\x12\x12\n\x0eVERB_EMBRACING\x10\
26686 \x08\x12\x15\n\x11VERB_STRIKINGDOWN\x10\t\x12\x15\n\x11VERB_MENACINGPOSE\
26687 \x10\n\x12\x12\n\x0eVERB_TRAVELING\x10\x0b\x12\x10\n\x0cVERB_RAISING\x10\
26688 \x0c\x12\x0f\n\x0bVERB_HIDING\x10\r\x12\x18\n\x14VERB_LOOKINGCONFUSED\
26689 \x10\x0e\x12\x19\n\x15VERB_LOOKINGTERRIFIED\x10\x0f\x12\x12\n\x0eVERB_DE\
26690 VOURING\x10\x10\x12\x11\n\rVERB_ADMIRING\x10\x11\x12\x10\n\x0cVERB_BURNI\
26691 NG\x10\x12\x12\x10\n\x0cVERB_WEEPING\x10\x13\x12\x18\n\x14VERB_LOOKINGDE\
26692 JECTED\x10\x14\x12\x11\n\rVERB_CRINGING\x10\x15\x12\x12\n\x0eVERB_SCREAM\
26693 ING\x10\x16\x12\x1a\n\x16VERB_SUBMISSIVEGESTURE\x10\x17\x12\x16\n\x12VER\
26694 B_FETALPOSITION\x10\x18\x12\x1a\n\x16VERB_SMEAREDINTOSPIRAL\x10\x19\x12\
26695 \x10\n\x0cVERB_FALLING\x10\x1a\x12\r\n\tVERB_DEAD\x10\x1b\x12\x11\n\rVER\
26696 B_LAUGHING\x10\x1c\x12\x18\n\x14VERB_LOOKINGOFFENDED\x10\x1d\x12\x12\n\
26697 \x0eVERB_BEINGSHOT\x10\x1e\x12\x19\n\x15VERB_PLAINTIVEGESTURE\x10\x1f\
26698 \x12\x10\n\x0cVERB_MELTING\x10\x20\x12\x11\n\rVERB_SHOOTING\x10!\x12\x12\
26699 \n\x0eVERB_TORTURING\x10\"\x12\x1e\n\x1aVERB_COMMITTINGDEPRAVEDACT\x10#\
26700 \x12\x10\n\x0cVERB_PRAYING\x10$\x12\x16\n\x12VERB_CONTEMPLATING\x10%\x12\
26701 \x10\n\x0cVERB_COOKING\x10&\x12\x12\n\x0eVERB_ENGRAVING\x10'\x12\x14\n\
26702 \x10VERB_PROSTRATING\x10(\x12\x12\n\x0eVERB_SUFFERING\x10)\x12\x15\n\x11\
26703 VERB_BEINGIMPALED\x10*\x12\x17\n\x13VERB_BEINGCONTORTED\x10+\x12\x14\n\
26704 \x10VERB_BEINGFLAYED\x10,\x12\x14\n\x10VERB_HANGINGFROM\x10-\x12\x17\n\
26705 \x13VERB_BEINGMUTILATED\x10.\x12\x17\n\x13VERB_TRIUMPHANTPOSE\x10/*\xe0\
26706 \x01\n\x08FlowType\x12\n\n\x06Miasma\x10\0\x12\t\n\x05Steam\x10\x01\x12\
26707 \x08\n\x04Mist\x10\x02\x12\x10\n\x0cMaterialDust\x10\x03\x12\r\n\tMagmaM\
26708 ist\x10\x04\x12\t\n\x05Smoke\x10\x05\x12\x0e\n\nDragonfire\x10\x06\x12\
26709 \x08\n\x04Fire\x10\x07\x12\x07\n\x03Web\x10\x08\x12\x0f\n\x0bMaterialGas\
26710 \x10\t\x12\x11\n\rMaterialVapor\x10\n\x12\r\n\tOceanWave\x10\x0b\x12\x0b\
26711 \n\x07SeaFoam\x10\x0c\x12\r\n\tItemCloud\x10\r\x12\x15\n\x08CampFire\x10\
26712 \xff\xff\xff\xff\xff\xff\xff\xff\xff\x01B\x02H\x03b\x06proto2\
26713";
26714
26715fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
26717 static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
26718 file_descriptor_proto_lazy.get(|| {
26719 ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
26720 })
26721}
26722
26723pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
26725 static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
26726 static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
26727 file_descriptor.get(|| {
26728 let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
26729 let mut deps = ::std::vec::Vec::with_capacity(1);
26730 deps.push(super::ItemdefInstrument::file_descriptor().clone());
26731 let mut messages = ::std::vec::Vec::with_capacity(79);
26732 messages.push(Coord::generated_message_descriptor_data());
26733 messages.push(Tiletype::generated_message_descriptor_data());
26734 messages.push(TiletypeList::generated_message_descriptor_data());
26735 messages.push(BuildingExtents::generated_message_descriptor_data());
26736 messages.push(BuildingItem::generated_message_descriptor_data());
26737 messages.push(BuildingInstance::generated_message_descriptor_data());
26738 messages.push(RiverEdge::generated_message_descriptor_data());
26739 messages.push(RiverTile::generated_message_descriptor_data());
26740 messages.push(Spatter::generated_message_descriptor_data());
26741 messages.push(SpatterPile::generated_message_descriptor_data());
26742 messages.push(Item::generated_message_descriptor_data());
26743 messages.push(PlantTile::generated_message_descriptor_data());
26744 messages.push(TreeInfo::generated_message_descriptor_data());
26745 messages.push(PlantInstance::generated_message_descriptor_data());
26746 messages.push(MapBlock::generated_message_descriptor_data());
26747 messages.push(MatPair::generated_message_descriptor_data());
26748 messages.push(ColorDefinition::generated_message_descriptor_data());
26749 messages.push(MaterialDefinition::generated_message_descriptor_data());
26750 messages.push(BuildingType::generated_message_descriptor_data());
26751 messages.push(BuildingDefinition::generated_message_descriptor_data());
26752 messages.push(BuildingList::generated_message_descriptor_data());
26753 messages.push(MaterialList::generated_message_descriptor_data());
26754 messages.push(Hair::generated_message_descriptor_data());
26755 messages.push(BodySizeInfo::generated_message_descriptor_data());
26756 messages.push(UnitAppearance::generated_message_descriptor_data());
26757 messages.push(InventoryItem::generated_message_descriptor_data());
26758 messages.push(WoundPart::generated_message_descriptor_data());
26759 messages.push(UnitWound::generated_message_descriptor_data());
26760 messages.push(UnitDefinition::generated_message_descriptor_data());
26761 messages.push(UnitList::generated_message_descriptor_data());
26762 messages.push(BlockRequest::generated_message_descriptor_data());
26763 messages.push(BlockList::generated_message_descriptor_data());
26764 messages.push(PlantDef::generated_message_descriptor_data());
26765 messages.push(PlantList::generated_message_descriptor_data());
26766 messages.push(ViewInfo::generated_message_descriptor_data());
26767 messages.push(MapInfo::generated_message_descriptor_data());
26768 messages.push(Cloud::generated_message_descriptor_data());
26769 messages.push(WorldMap::generated_message_descriptor_data());
26770 messages.push(SiteRealizationBuildingWall::generated_message_descriptor_data());
26771 messages.push(SiteRealizationBuildingTower::generated_message_descriptor_data());
26772 messages.push(TrenchSpoke::generated_message_descriptor_data());
26773 messages.push(SiteRealizationBuildingTrenches::generated_message_descriptor_data());
26774 messages.push(SiteRealizationBuilding::generated_message_descriptor_data());
26775 messages.push(RegionTile::generated_message_descriptor_data());
26776 messages.push(RegionMap::generated_message_descriptor_data());
26777 messages.push(RegionMaps::generated_message_descriptor_data());
26778 messages.push(PatternDescriptor::generated_message_descriptor_data());
26779 messages.push(ColorModifierRaw::generated_message_descriptor_data());
26780 messages.push(BodyPartLayerRaw::generated_message_descriptor_data());
26781 messages.push(BodyPartRaw::generated_message_descriptor_data());
26782 messages.push(BpAppearanceModifier::generated_message_descriptor_data());
26783 messages.push(TissueRaw::generated_message_descriptor_data());
26784 messages.push(CasteRaw::generated_message_descriptor_data());
26785 messages.push(CreatureRaw::generated_message_descriptor_data());
26786 messages.push(CreatureRawList::generated_message_descriptor_data());
26787 messages.push(Army::generated_message_descriptor_data());
26788 messages.push(ArmyList::generated_message_descriptor_data());
26789 messages.push(GrowthPrint::generated_message_descriptor_data());
26790 messages.push(TreeGrowth::generated_message_descriptor_data());
26791 messages.push(PlantRaw::generated_message_descriptor_data());
26792 messages.push(PlantRawList::generated_message_descriptor_data());
26793 messages.push(ScreenTile::generated_message_descriptor_data());
26794 messages.push(ScreenCapture::generated_message_descriptor_data());
26795 messages.push(KeyboardEvent::generated_message_descriptor_data());
26796 messages.push(DigCommand::generated_message_descriptor_data());
26797 messages.push(SingleBool::generated_message_descriptor_data());
26798 messages.push(VersionInfo::generated_message_descriptor_data());
26799 messages.push(ListRequest::generated_message_descriptor_data());
26800 messages.push(Report::generated_message_descriptor_data());
26801 messages.push(Status::generated_message_descriptor_data());
26802 messages.push(ShapeDescriptior::generated_message_descriptor_data());
26803 messages.push(Language::generated_message_descriptor_data());
26804 messages.push(ItemImprovement::generated_message_descriptor_data());
26805 messages.push(ArtImageElement::generated_message_descriptor_data());
26806 messages.push(ArtImageProperty::generated_message_descriptor_data());
26807 messages.push(ArtImage::generated_message_descriptor_data());
26808 messages.push(Engraving::generated_message_descriptor_data());
26809 messages.push(FlowInfo::generated_message_descriptor_data());
26810 messages.push(Wave::generated_message_descriptor_data());
26811 let mut enums = ::std::vec::Vec::with_capacity(20);
26812 enums.push(TiletypeShape::generated_enum_descriptor_data());
26813 enums.push(TiletypeSpecial::generated_enum_descriptor_data());
26814 enums.push(TiletypeMaterial::generated_enum_descriptor_data());
26815 enums.push(TiletypeVariant::generated_enum_descriptor_data());
26816 enums.push(WorldPoles::generated_enum_descriptor_data());
26817 enums.push(BuildingDirection::generated_enum_descriptor_data());
26818 enums.push(TileDigDesignation::generated_enum_descriptor_data());
26819 enums.push(HairStyle::generated_enum_descriptor_data());
26820 enums.push(InventoryMode::generated_enum_descriptor_data());
26821 enums.push(ArmorLayer::generated_enum_descriptor_data());
26822 enums.push(MatterState::generated_enum_descriptor_data());
26823 enums.push(FrontType::generated_enum_descriptor_data());
26824 enums.push(CumulusType::generated_enum_descriptor_data());
26825 enums.push(StratusType::generated_enum_descriptor_data());
26826 enums.push(FogType::generated_enum_descriptor_data());
26827 enums.push(PatternType::generated_enum_descriptor_data());
26828 enums.push(ArtImageElementType::generated_enum_descriptor_data());
26829 enums.push(ArtImagePropertyType::generated_enum_descriptor_data());
26830 enums.push(ArtImageVerb::generated_enum_descriptor_data());
26831 enums.push(FlowType::generated_enum_descriptor_data());
26832 ::protobuf::reflect::GeneratedFileDescriptor::new_generated(
26833 file_descriptor_proto(),
26834 deps,
26835 messages,
26836 enums,
26837 )
26838 });
26839 ::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
26840 })
26841}