rpgmvx_types/
system.rs

1use crate::Bgm;
2use crate::Me;
3use crate::Se;
4use crate::SystemTerms;
5use crate::SystemTestBattler;
6use crate::SystemVehicle;
7use crate::Table;
8
9#[derive(
10    Debug,
11    serde::Serialize,
12    serde::Deserialize,
13    ruby_marshal_derive::FromValue,
14    ruby_marshal_derive::IntoValue,
15)]
16#[ruby_marshal(object = b"RPG::System")]
17pub struct System {
18    #[ruby_marshal(
19        from_value = "crate::util::ruby_string2string",
20        into_value = "crate::util::string2ruby_string"
21    )]
22    pub game_title: String,
23    pub version_id: i32,
24    pub party_members: Vec<i32>,
25    #[ruby_marshal(
26        from_value = "crate::util::optional_ruby_string_array2optional_string_array",
27        into_value = "crate::util::optional_string_array2optional_ruby_string_array"
28    )]
29    pub elements: Vec<Option<String>>,
30    #[ruby_marshal(
31        from_value = "crate::util::optional_ruby_string_array2optional_string_array",
32        into_value = "crate::util::optional_string_array2optional_ruby_string_array"
33    )]
34    pub switches: Vec<Option<String>>,
35    #[ruby_marshal(
36        from_value = "crate::util::optional_ruby_string_array2optional_string_array",
37        into_value = "crate::util::optional_string_array2optional_ruby_string_array"
38    )]
39    pub variables: Vec<Option<String>>,
40    pub passages: Table,
41    pub boat: SystemVehicle,
42    pub ship: SystemVehicle,
43    pub airship: SystemVehicle,
44    pub title_bgm: Bgm,
45    pub battle_bgm: Bgm,
46    pub battle_end_me: Me,
47    pub gameover_me: Me,
48    pub sounds: Vec<Se>,
49    pub test_battlers: Vec<SystemTestBattler>,
50    pub test_troop_id: i32,
51    pub start_map_id: i32,
52    pub start_x: i32,
53    pub start_y: i32,
54    pub terms: SystemTerms,
55    #[ruby_marshal(
56        from_value = "crate::util::ruby_string2string",
57        into_value = "crate::util::string2ruby_string"
58    )]
59    pub battler_name: String,
60    pub battler_hue: i32,
61    pub edit_map_id: i32,
62    #[ruby_marshal(name = b"@_")]
63    pub underscore: i32,
64    pub magic_number: i32,
65}