crate::ix!();
#[derive(Debug, Clone, Getters, Builder)]
#[builder(pattern = "owned", setter(into, strip_option), default)]
#[getset(get = "pub")]
pub struct WarriorCapabilityProfile {
bravery: HashSet<WarriorBraveryCapability>,
leadership: HashSet<WarriorLeadershipCapability>,
strategy: HashSet<WarriorStrategicCapability>,
protection: HashSet<WarriorProtectiveCapability>,
physical: HashSet<WarriorPhysicalCapability>,
resilience: HashSet<WarriorResilienceCapability>,
responsiveness: HashSet<WarriorResponsivenessCapability>,
exploration: HashSet<WarriorExplorationCapability>,
threat_adaptation: HashSet<WarriorThreatAdaptationCapability>,
conflict_mitigation: HashSet<WarriorConflictMitigationCapability>,
approach: HashSet<WarriorApproachCapability>,
embodiment: HashSet<WarriorEmbodimentCapability>,
meta: HashSet<WarriorMetaCapability>,
offensive_magic: HashSet<WarriorOffensiveMagicCapability>,
defensive_magic: HashSet<WarriorDefensiveMagicCapability>,
illusionary_magic: HashSet<WarriorIllusionaryMagicCapability>,
cyber_defense: HashSet<WarriorCyberDefenseCapability>,
tech_adaptation: HashSet<WarriorTechAdaptationCapability>,
}
impl Default for WarriorCapabilityProfile {
fn default() -> Self {
Self {
bravery: HashSet::new(),
leadership: HashSet::new(),
strategy: HashSet::new(),
protection: HashSet::new(),
physical: HashSet::new(),
resilience: HashSet::new(),
responsiveness: HashSet::new(),
exploration: HashSet::new(),
threat_adaptation: HashSet::new(),
conflict_mitigation: HashSet::new(),
approach: HashSet::new(),
embodiment: HashSet::new(),
meta: HashSet::new(),
offensive_magic: HashSet::new(),
defensive_magic: HashSet::new(),
illusionary_magic: HashSet::new(),
cyber_defense: HashSet::new(),
tech_adaptation: HashSet::new(),
}
}
}