From b3ae58d1ab1f3b35b4a86234e424b3675af323e5 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Tue, 11 Feb 2025 13:38:34 +0100 Subject: pub things and rename compression scheme to lowercase --- src/main.rs | 4 +--- src/serialized_file.rs | 26 +++++++++++++------------- src/unityfs.rs | 22 +++++++++++----------- 3 files changed, 25 insertions(+), 27 deletions(-) (limited to 'src') diff --git a/src/main.rs b/src/main.rs index 4d91578..beab8a1 100644 --- a/src/main.rs +++ b/src/main.rs @@ -7,7 +7,7 @@ fn main() -> anyhow::Result<()> { let mut fs = UnityFS::open(file)?; for node in fs.nodes().to_vec() { - if node.name.ends_with(".resource") || node.name.ends_with("resS") { + if node.name.ends_with(".resource") || node.name.ends_with(".resS") { continue; } let cab = fs.read(&node)?; @@ -16,8 +16,6 @@ fn main() -> anyhow::Result<()> { // continue; let file = read_serialized_file(cab)?; - eprintln!("{file:#?}"); - } Ok(()) diff --git a/src/serialized_file.rs b/src/serialized_file.rs index becf1d7..f32b3a3 100644 --- a/src/serialized_file.rs +++ b/src/serialized_file.rs @@ -3,7 +3,7 @@ use crate::{ helper::{AlignExt, Endianness, ReadExt}, }; use anyhow::Result; -use log::{debug, trace}; +use log::{debug, info, trace}; use std::io::{Cursor, Read, Seek}; #[derive(Debug)] @@ -32,24 +32,24 @@ pub struct SeralizedType { #[derive(Debug)] pub struct ObjectInfo { - path_id: i64, - data_offset: u64, - data_size: u32, - type_id: i32, + pub path_id: i64, + pub data_offset: u64, + pub data_size: u32, + pub type_id: i32, } #[derive(Debug)] pub struct Script { - file_index: u32, - identifier: i64, + pub file_index: u32, + pub identifier: i64, } #[derive(Debug)] pub struct External { - something: String, - guid: u128, - r#type: i32, - path_name: String, + pub something: String, + pub guid: u128, + pub r#type: i32, + pub path_name: String, } #[derive(Debug)] @@ -67,7 +67,7 @@ pub fn read_serialized_file(mut file: impl Read + Seek) -> Result= 9); let e = match file.read_u32_be()? { @@ -88,7 +88,7 @@ pub fn read_serialized_file(mut file: impl Read + Seek) -> Result Seek for NodeReader<'_, T> { #[derive(Debug, Clone, Copy, PartialEq)] enum CompressionScheme { None, - LZMA, - LZ4, - LZ4HC, - LZHAM, + Lzma, + Lz4, + Lz4hc, + Lzham, } impl CompressionScheme { pub fn from_flag_num(n: u8) -> Option { Some(match n & 0x3f { 0 => CompressionScheme::None, - 1 => CompressionScheme::LZMA, - 2 => CompressionScheme::LZ4, - 3 => CompressionScheme::LZ4HC, - 4 => CompressionScheme::LZHAM, + 1 => CompressionScheme::Lzma, + 2 => CompressionScheme::Lz4, + 3 => CompressionScheme::Lz4hc, + 4 => CompressionScheme::Lzham, _ => return None, }) } pub fn decompress(&self, block: Vec, decomp_size: usize) -> Result> { match self { CompressionScheme::None => Ok(block), - CompressionScheme::LZMA => { + CompressionScheme::Lzma => { let mut r = lzma::Reader::from(Cursor::new(block))?; let mut buf = Vec::new(); r.read_to_end(&mut buf)?; Ok(buf) } - CompressionScheme::LZ4HC | CompressionScheme::LZ4 => { + CompressionScheme::Lz4hc | CompressionScheme::Lz4 => { Ok(lz4_flex::block::decompress(&block, decomp_size)?) } // CompressionScheme::LZ4HC | CompressionScheme::LZ4 => { @@ -281,7 +281,7 @@ impl CompressionScheme { // Ok(lz4::block::decompress(&block, Some(decomp_size as i32))?) // Ok(lz4::block::decompress(&block, None)?) // } - CompressionScheme::LZHAM => todo!(), + CompressionScheme::Lzham => todo!(), } } } -- cgit v1.2.3-70-g09d2