homm5_types/common/
mod.rs1use serde::{Serialize, Deserialize};
2
3#[derive(Serialize, Deserialize, Debug, Clone)]
7pub struct Pos {
8 pub x: i32,
9 pub y: i32,
10 pub z: i32,
11}
12
13#[derive(Debug, Deserialize, Serialize, Clone)]
15pub struct FileRef {
16 #[serde(rename = "@href")]
17 pub href: Option<String>
18}
19
20#[derive(Debug, Serialize, Deserialize, Clone)]
21pub struct Action {
22 #[serde(rename = "FunctionName")]
23 pub function_name: String
24}
25
26#[derive(Debug, Serialize, Deserialize, Clone)]
27pub struct Trigger {
28 #[serde(rename = "Action")]
29 pub action: Action
30}
31
32#[derive(Debug, Deserialize, Serialize, Clone)]
33pub struct ArmySlot {
34 #[serde(rename = "Creature")]
35 pub creature: String,
36 #[serde(rename = "Count")]
37 pub count: u16
38}
39
40#[derive(Debug, Deserialize, Serialize, Clone)]
41pub struct SkillMastery {
42 #[serde(rename = "Mastery")]
43 pub mastery: String,
44 #[serde(rename = "SkillID")]
45 pub skill_id: String
46}