use serde::Deserialize;

use super::{AvatarBaseID, WeaponID};

template_id!(RobotConfig robot_id);

#[derive(Deserialize, Debug)]
#[serde(rename_all = "PascalCase")]
pub struct RobotConfigTemplate {
    #[serde(rename = "RobotID")]
    pub robot_id: RobotConfigID,
    #[serde(rename = "CharacterID")]
    pub character_id: AvatarBaseID,
    pub char_level: u32,
    pub char_upgrade_level: u32,
    pub char_star: u32,
    pub skill_levels: Vec<u32>,
    pub talent_level: u32,
    #[serde(rename = "WeaponID")]
    pub weapon_id: WeaponID,
    pub weapon_level: u32,
    pub weapon_upgrade_level: u32,
    pub weapon_refine_level: u32,
}
