1
Fork 0
mirror of https://github.com/redstrate/Kawari.git synced 2025-07-23 21:17:45 +00:00

Add support for the StatusEffect3 IPC opcode

This commit is contained in:
Joshua Goins 2025-07-21 21:47:00 -04:00
parent 36686d1a84
commit f2cbc5a14c
3 changed files with 18 additions and 8 deletions

View file

@ -319,6 +319,11 @@
"name": "ContentFinderCommencing",
"opcode": 485,
"size": 24
},
{
"name": "StatusEffectList3",
"opcode": 894,
"size": 360
}
],
"ClientZoneIpcType": [

View file

@ -563,6 +563,8 @@ pub enum ServerZoneIpcData {
/// Sent to give you the green checkmark before entering a CF zone.
#[br(pre_assert(*magic == ServerZoneIpcType::ContentFinderCommencing))]
ContentFinderCommencing { unk1: [u8; 24] },
#[br(pre_assert(*magic == ServerZoneIpcType::StatusEffectList3))]
StatusEffectList3 { status_effects: [StatusEffect; 30] },
Unknown {
#[br(count = size - 32)]
unk: Vec<u8>,
@ -1126,6 +1128,12 @@ mod tests {
ServerZoneIpcType::EffectResult,
ServerZoneIpcData::EffectResult(EffectResult::default()),
),
(
ServerZoneIpcType::StatusEffectList3,
ServerZoneIpcData::StatusEffectList3 {
status_effects: [StatusEffect::default(); 30],
},
),
];
for (opcode, data) in &ipc_types {

View file

@ -92,7 +92,7 @@ pub enum Task {
event_arg: u32,
},
SetInnWakeup {
watched: bool
watched: bool,
},
}
@ -638,13 +638,10 @@ impl UserData for LuaPlayer {
Ok(())
},
);
methods.add_method_mut(
"set_inn_wakeup",
|_, this, watched: bool| {
this.set_inn_wakeup(watched);
Ok(())
},
);
methods.add_method_mut("set_inn_wakeup", |_, this, watched: bool| {
this.set_inn_wakeup(watched);
Ok(())
});
}
fn add_fields<F: UserDataFields<Self>>(fields: &mut F) {