//! Session probe: print AnimationData.dbc rows (id, name, weapon flags, fallback) — //! `cargo run -p benilla-formats --example dump_anim_names [id ...]`. Without ids, //! prints all 208 rows. Built for the bowstring round (which sequences do bow M2s carry). fn main() { let mut args = std::env::args().skip(1); let data = args .next() .expect("usage: dump_anim_names [id ...]"); let ids: Vec = args.map(|a| a.parse().expect("id u16")).collect(); let mut chain = benilla_formats::Chain::open(std::path::Path::new(&data)).expect("chain"); let cat = benilla_formats::load_anim_data_catalog(&mut chain).expect("catalog"); for id in 0..u16::try_from(cat.len() + 64).unwrap() { if !ids.is_empty() && !ids.contains(&id) { continue; } if let Some(name) = cat.name(id) { println!( "{id:3} {name:24} wflags {:#04x} fallback {:?}", cat.weapon_flags(id), cat.fallback(id) ); } } }