use serde::{Serialize, Deserialize};
use crate::common::FileRef;
#[derive(Debug, Serialize, Deserialize)]
pub struct Coordinate {
pub x: u8,
pub y: u8
}
#[derive(Debug, Serialize, Deserialize)]
pub struct PossessionMarkerTile {
pub x: u8,
pub y: u8
}
#[derive(Debug, Serialize, Deserialize)]
#[allow(non_snake_case)]
pub struct Skill {
pub Mastery: String,
pub SkillID: String,
}
#[derive(Debug, Serialize, Deserialize)]
#[allow(non_snake_case)]
pub struct Editable {
pub NameFileRef: Option<FileRef>,
pub BiographyFileRef: Option<FileRef>,
pub Offence: u16,
pub Defence: u16,
pub Spellpower: u16,
pub Knowledge: u16,
pub Ballista: bool,
pub FirstAidTent: bool,
pub AmmoCart: bool,
}
#[derive(Debug, Serialize, Deserialize)]
#[allow(non_snake_case)]
pub struct AdvMapHeroShared {
pub Model: Option<FileRef>,
pub AnimSet: Option<FileRef>,
pub WaterBased: bool,
pub ApplyHeroTrace: bool,
pub FlyPassable: bool,
pub Icon128: Option<String>,
pub InternalName: String,
pub Class: String,
pub Specialization: String,
pub PrimarySkill: Skill,
pub SpecializationNameFileRef: Option<FileRef>,
pub SpecializationDescFileRef: Option<FileRef>,
pub SpecializationIcon: Option<FileRef>,
pub FaceTexture: Option<FileRef>,
pub TownType: String,
pub Editable: Editable,
pub ScenarioHero: bool,
}