use sylpheed_formats::{game_data, PakArchive}; fn main() { let disc = std::env::var("SYLPHEED_DISC").unwrap(); let pak = PakArchive::open(format!("{disc}/dat/GP_MAIN_GAME_E.pak")).unwrap(); let sq = game_data::load_squadrons(&pak); println!("{} squadron definitions", sq.len()); for s in sq .iter() .filter(|s| s.side.as_deref() == Some("TCAF")) .take(6) { let mem: Vec = s .members .iter() .map(|m| { format!( "{}/{}", m.unit .trim_start_matches("UN_") .chars() .take(18) .collect::(), m.pilot.clone().unwrap_or("ยท".into()) ) }) .collect(); println!( " {:8} {:22} {:24} x{} {:?}", s.id.clone(), s.formation_id.clone().unwrap_or_default(), s.ai_id.clone().unwrap_or_default(), s.count.unwrap_or(0), mem ); } }