From 1f2bc3b38756dff83a10126f7d5fe4f3f8cf7cd2 Mon Sep 17 00:00:00 2001 From: lifegpc Date: Sun, 20 Jul 2025 10:42:08 +0800 Subject: [PATCH] . --- src/scripts/bgi/archive/v2.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/scripts/bgi/archive/v2.rs b/src/scripts/bgi/archive/v2.rs index a255cf6..0bf3fbc 100644 --- a/src/scripts/bgi/archive/v2.rs +++ b/src/scripts/bgi/archive/v2.rs @@ -585,9 +585,11 @@ impl Archive for BgiArchiveWriter { fn write_header(&mut self) -> Result<()> { self.writer.seek(SeekFrom::Start(0x10))?; - let mut files = self.headers.iter().map(|(_, d)| d).collect::>(); + let base_offset = self.headers.len() as u32 * 0x80 + 16; + let mut files = self.headers.iter_mut().map(|(_, d)| d).collect::>(); files.sort_by_key(|f| f.offset); for file in files { + file.offset -= base_offset; file.pack(&mut self.writer, false, self.encoding)?; } Ok(())