use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[cfg_attr(feature = "specta", derive(specta::Type))]
pub struct FakeCharacterSchema {
#[serde(rename = "level")]
pub level: u32,
#[serde(rename = "weapon_slot", skip_serializing_if = "Option::is_none")]
pub weapon_slot: Option<String>,
#[serde(rename = "rune_slot", skip_serializing_if = "Option::is_none")]
pub rune_slot: Option<String>,
#[serde(rename = "shield_slot", skip_serializing_if = "Option::is_none")]
pub shield_slot: Option<String>,
#[serde(rename = "helmet_slot", skip_serializing_if = "Option::is_none")]
pub helmet_slot: Option<String>,
#[serde(rename = "body_armor_slot", skip_serializing_if = "Option::is_none")]
pub body_armor_slot: Option<String>,
#[serde(rename = "leg_armor_slot", skip_serializing_if = "Option::is_none")]
pub leg_armor_slot: Option<String>,
#[serde(rename = "boots_slot", skip_serializing_if = "Option::is_none")]
pub boots_slot: Option<String>,
#[serde(rename = "ring1_slot", skip_serializing_if = "Option::is_none")]
pub ring1_slot: Option<String>,
#[serde(rename = "ring2_slot", skip_serializing_if = "Option::is_none")]
pub ring2_slot: Option<String>,
#[serde(rename = "amulet_slot", skip_serializing_if = "Option::is_none")]
pub amulet_slot: Option<String>,
#[serde(rename = "artifact1_slot", skip_serializing_if = "Option::is_none")]
pub artifact1_slot: Option<String>,
#[serde(rename = "artifact2_slot", skip_serializing_if = "Option::is_none")]
pub artifact2_slot: Option<String>,
#[serde(rename = "artifact3_slot", skip_serializing_if = "Option::is_none")]
pub artifact3_slot: Option<String>,
#[serde(rename = "utility1_slot", skip_serializing_if = "Option::is_none")]
pub utility1_slot: Option<String>,
#[serde(
rename = "utility1_slot_quantity",
skip_serializing_if = "Option::is_none"
)]
pub utility1_slot_quantity: Option<u32>,
#[serde(rename = "utility2_slot", skip_serializing_if = "Option::is_none")]
pub utility2_slot: Option<String>,
#[serde(
rename = "utility2_slot_quantity",
skip_serializing_if = "Option::is_none"
)]
pub utility2_slot_quantity: Option<u32>,
}
impl FakeCharacterSchema {
pub fn new(level: u32) -> FakeCharacterSchema {
FakeCharacterSchema {
level,
weapon_slot: None,
rune_slot: None,
shield_slot: None,
helmet_slot: None,
body_armor_slot: None,
leg_armor_slot: None,
boots_slot: None,
ring1_slot: None,
ring2_slot: None,
amulet_slot: None,
artifact1_slot: None,
artifact2_slot: None,
artifact3_slot: None,
utility1_slot: None,
utility1_slot_quantity: None,
utility2_slot: None,
utility2_slot_quantity: None,
}
}
}