Add Softpal scr script support

This commit is contained in:
2025-08-16 17:22:22 +08:00
parent e9c777ef5a
commit 3f155fbe51
20 changed files with 181 additions and 49 deletions

View File

@@ -233,6 +233,7 @@ impl Script for CstScript {
&'a self,
messages: Vec<Message>,
mut file: Box<dyn WriteSeek + 'a>,
_filename: &str,
encoding: Encoding,
replacement: Option<&'a ReplacementTable>,
) -> Result<()> {
@@ -264,7 +265,7 @@ impl Script for CstScript {
let pos = writer.write_patched_string(s, &data)?;
if pos != s.address {
writer.write_u32_at(
strings_address_offset + i * 4,
strings_address_offset as u64 + i as u64 * 4,
(pos - strings_offset) as u32,
)?;
}
@@ -290,7 +291,7 @@ impl Script for CstScript {
let pos = writer.write_patched_string(s, &data)?;
if pos != s.address {
writer.write_u32_at(
strings_address_offset + i * 4,
strings_address_offset as u64 + i as u64 * 4,
(pos - strings_offset) as u32,
)?;
}
@@ -316,7 +317,7 @@ impl Script for CstScript {
let pos = writer.write_patched_string(s, &data)?;
if pos != s.address {
writer.write_u32_at(
strings_address_offset + i * 4,
strings_address_offset as u64 + i as u64 * 4,
(pos - strings_offset) as u32,
)?;
}

View File

@@ -294,6 +294,7 @@ impl Script for CstlScript {
&'a self,
messages: Vec<Message>,
mut file: Box<dyn WriteSeek + 'a>,
_filename: &str,
encoding: Encoding,
replacement: Option<&'a ReplacementTable>,
) -> Result<()> {