diff --git a/src/main.rs b/src/main.rs index 9a3af44..5a129a5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -33,48 +33,24 @@ fn dump_chunk(opt: &Options, cid: Ident, cnk: &[u8], eid: u16) -> ResultS<()> return Ok(()); } - match &cid { - b"PICT" => { - if opt.wad_chunks.contains(&cid) { + if opt.wad_chunks.contains(&cid) { + match &cid { + b"PICT" => { let im = pict::load_pict(cnk)?; make_tga(&format!("{}/pict_{}.tga", opt.out_dir, eid), &im)?; } + b"Minf" => make_yaml(&map::Minf::chunk(cnk)?)?, + b"EPNT" => make_yaml(&map::Endpoint::chunk(cnk)?)?, + b"PNTS" => make_yaml(&map::Point::chunk(cnk)?)?, + b"LINS" => make_yaml(&map::Line::chunk(cnk)?)?, + b"SIDS" => make_yaml(&map::Side::chunk(cnk)?)?, + b"term" => make_yaml(&term::Terminal::chunk(cnk)?)?, + _ => (), } - b"Minf" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&map::Minf::chunk(cnk)?)?; - } - } - b"EPNT" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&map::Endpoint::chunk(cnk)?)?; - } - } - b"PNTS" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&map::Point::chunk(cnk)?)?; - } - } - b"LINS" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&map::Line::chunk(cnk)?)?; - } - } - b"SIDS" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&map::Side::chunk(cnk)?)?; - } - } - b"term" => { - if opt.wad_chunks.contains(&cid) { - make_yaml(&term::Terminal::chunk(cnk)?)?; - } - } - &cid => { - if opt.wad_unknown { - make_chunk(opt, cid, cnk, eid)?; - } - } + } + + if opt.wad_unknown { + make_chunk(opt, cid, cnk, eid)?; } Ok(())