wicked-waifus-rs/wicked-waifus-data/src/ai_base.rs
xavo95 ab868a158a 2.2.2 (#3)
Ongoing changes for 2.2.2

Reviewed-on: WutheringSlaves/wicked-waifus-rs#3
2025-03-09 09:10:08 +00:00

41 lines
No EOL
1.4 KiB
Rust

use serde::Deserialize;
#[derive(Debug, Deserialize)]
#[cfg_attr(feature = "strict_json_fields", serde(deny_unknown_fields))]
#[serde(rename_all = "PascalCase")]
pub struct SubBehaviorConfigs {
#[cfg(feature = "strict_json_fields")]
pub ai_alert: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_base_skill: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_battle_wander: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_flee: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_hate: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_patrol: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_sense: Option<String>,
#[cfg(feature = "strict_json_fields")]
pub ai_wander: Option<String>,
}
#[derive(Debug, Deserialize)]
#[cfg_attr(feature = "strict_json_fields", serde(deny_unknown_fields))]
#[serde(rename_all = "PascalCase")]
pub struct AiBaseData {
pub id: i32,
pub state_machine: String,
#[cfg(feature = "strict_json_fields")]
pub ai_controller: String,
#[cfg(feature = "strict_json_fields")]
pub behavior_tree: String,
#[cfg(feature = "strict_json_fields")]
pub sub_behavior_configs: SubBehaviorConfigs,
#[cfg(feature = "strict_json_fields")]
pub team: bool,
#[cfg(feature = "strict_json_fields")]
pub monster_type: i32,
}