aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
blob: 69ff519a9c30e08c8454c49132b59588c548ee8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use std::{
    env::args,
    fs::File,
    io::{BufReader, copy},
};

use assetdebundle::unityfs::UnityFS;

fn main() -> anyhow::Result<()> {
    env_logger::init_from_env("LOG");
    let file = BufReader::new(File::open(args().nth(1).unwrap())?);
    let mut fs = UnityFS::open(file)?;

    for node in fs.nodes().to_vec() {
        let mut reader = fs.read(&node)?;
        let mut writer = File::create(format!("/tmp/{}", node.name))?;
        copy(&mut reader, &mut writer)?;
    }

    Ok(())
}