mirror of
https://github.com/G2-Games/lbee-utils.git
synced 2025-04-19 23:32:55 -05:00
Added more opcodes
This commit is contained in:
parent
ab2b381181
commit
7e276f101d
1 changed files with 35 additions and 8 deletions
|
@ -6,7 +6,7 @@ use num_traits::{FromPrimitive, ToPrimitive};
|
||||||
use safe_transmute::{transmute_many, SingleManyGuard};
|
use safe_transmute::{transmute_many, SingleManyGuard};
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let mut script = BufReader::new(File::open("LOOPERS_scenario_01").unwrap());
|
let mut script = BufReader::new(File::open("_varset_システムフラグ").unwrap());
|
||||||
|
|
||||||
let mut unknown_count = 0;
|
let mut unknown_count = 0;
|
||||||
while let Ok(byte) = script.read_u8() {
|
while let Ok(byte) = script.read_u8() {
|
||||||
|
@ -62,15 +62,15 @@ fn parse_opcode<R: Read + BufRead>(opcode: Opcode, mut input: R) -> Result<(), i
|
||||||
},
|
},
|
||||||
Opcode::IMAGELOAD => {
|
Opcode::IMAGELOAD => {
|
||||||
let mode = input.read_u8()?;
|
let mode = input.read_u8()?;
|
||||||
println!("Mode: {mode}");
|
|
||||||
if mode == 0 {
|
if mode == 0 {
|
||||||
println!("Unknown: {}", input.read_u16::<LE>()?);
|
input.read_u16::<LE>()?;
|
||||||
} else {
|
} else {
|
||||||
println!("Unknown: {}", input.read_u16::<LE>()?);
|
input.read_u16::<LE>()?;
|
||||||
println!("Unknown: {}", input.read_u16::<LE>()?);
|
input.read_u16::<LE>()?;
|
||||||
}
|
}
|
||||||
|
|
||||||
let image_id = input.read_u32::<LE>()?;
|
let image_id = input.read_u32::<LE>()?;
|
||||||
|
println!("Mode: {mode}");
|
||||||
println!("Image ID: {image_id}");
|
println!("Image ID: {image_id}");
|
||||||
println!("-----");
|
println!("-----");
|
||||||
},
|
},
|
||||||
|
@ -93,20 +93,40 @@ fn parse_opcode<R: Read + BufRead>(opcode: Opcode, mut input: R) -> Result<(), i
|
||||||
}
|
}
|
||||||
Opcode::VARSTR_SET => {
|
Opcode::VARSTR_SET => {
|
||||||
let varstr = VarStrSet {
|
let varstr = VarStrSet {
|
||||||
opcode,
|
|
||||||
variant: input.read_u8()?,
|
variant: input.read_u8()?,
|
||||||
unknown1: input.read_u16::<LE>()?,
|
unknown1: input.read_u16::<LE>()?,
|
||||||
unknown2: input.read_u16::<LE>()?,
|
unknown2: input.read_u16::<LE>()?,
|
||||||
string: ScriptString::read(&mut input)?,
|
string: ScriptString::read(&mut input)?,
|
||||||
unknown3: input.read_u16::<LE>()?,
|
unknown3: input.read_u16::<LE>()?,
|
||||||
};
|
};
|
||||||
//println!("{}", varstr.string.to_string());
|
println!("{}", varstr.string.to_string());
|
||||||
println!("{:02X?}", varstr.variant);
|
println!("{:02X?}", varstr.variant);
|
||||||
println!("{:02X?}", varstr.unknown1);
|
println!("{:02X?}", varstr.unknown1);
|
||||||
println!("ID: {}", varstr.unknown2);
|
println!("ID: {}", varstr.unknown2);
|
||||||
println!("{:02X?}", varstr.unknown3);
|
println!("{:02X?}", varstr.unknown3);
|
||||||
println!("-----");
|
println!("-----");
|
||||||
}
|
}
|
||||||
|
Opcode::VARSTR_ADD => {
|
||||||
|
let varstr = VarStrAdd {
|
||||||
|
variant: input.read_u8()?,
|
||||||
|
id: input.read_u16::<LE>()?,
|
||||||
|
unknown1: input.read_u16::<LE>()?,
|
||||||
|
string: ScriptString::read(&mut input)?,
|
||||||
|
};
|
||||||
|
println!("{}", varstr.string.to_string());
|
||||||
|
println!("{:02X?}", varstr.variant);
|
||||||
|
println!("ID: {}", varstr.id);
|
||||||
|
println!("{:02X?}", varstr.unknown1);
|
||||||
|
println!("-----");
|
||||||
|
}
|
||||||
|
Opcode::SETCGFLAG => {
|
||||||
|
let variant = input.read_u8()?;
|
||||||
|
let id = input.read_u16::<LE>()?;
|
||||||
|
let unk1 = input.read_u16::<LE>()?;
|
||||||
|
let unk2 = input.read_u16::<LE>()?;
|
||||||
|
println!("ID: {}", id);
|
||||||
|
println!("-----");
|
||||||
|
}
|
||||||
_ => (),
|
_ => (),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -270,7 +290,6 @@ struct Message {
|
||||||
|
|
||||||
#[derive(Debug, PartialEq, Eq)]
|
#[derive(Debug, PartialEq, Eq)]
|
||||||
struct VarStrSet {
|
struct VarStrSet {
|
||||||
opcode: Opcode,
|
|
||||||
variant: u8,
|
variant: u8,
|
||||||
unknown1: u16,
|
unknown1: u16,
|
||||||
unknown2: u16,
|
unknown2: u16,
|
||||||
|
@ -278,6 +297,14 @@ struct VarStrSet {
|
||||||
unknown3: u16,
|
unknown3: u16,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, PartialEq, Eq)]
|
||||||
|
struct VarStrAdd {
|
||||||
|
variant: u8,
|
||||||
|
id: u16,
|
||||||
|
unknown1: u16,
|
||||||
|
string: ScriptString,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, PartialEq, Eq)]
|
#[derive(Debug, PartialEq, Eq)]
|
||||||
struct ScriptString {
|
struct ScriptString {
|
||||||
length: i16,
|
length: i16,
|
||||||
|
|
Loading…
Reference in a new issue