un-unify setting event to name fields

This commit is contained in:
2026-02-13 10:02:54 -08:00
parent 3cf39032cc
commit 224a873d89

View File

@@ -440,27 +440,64 @@ pub enum CameraEvent{
// setting
#[binrw]
#[brw(little)]
#[derive(Debug,Clone,Copy,Hash,Eq,PartialEq)]
pub enum SettingType{
#[brw(magic=0u32)]
FieldOfView,
#[brw(magic=1u32)]
Sensitivity,
#[brw(magic=2u32)]
VerticalSensitivityMultiplier,
#[brw(magic=3u32)]
AbsoluteSensitivity,
#[brw(magic=4u32)]
TurnSpeed,
#[derive(Debug,Clone)]
pub struct SettingEventFieldOfView{
#[br(map=read_trey_double)]
#[bw(map=write_trey_double)]
pub fov:f64,
}
#[binrw]
#[brw(little)]
#[derive(Debug,Clone)]
pub struct SettingEvent{
pub setting_type:SettingType,
pub struct SettingEventSensitivity{
#[br(map=read_trey_double)]
#[bw(map=write_trey_double)]
pub value:f64,
pub sensitivity:f64,
}
#[binrw]
#[brw(little)]
#[derive(Debug,Clone)]
pub struct SettingEventVerticalSensitivityMultiplier{
#[br(map=read_trey_double)]
#[bw(map=write_trey_double)]
pub multiplier:f64,
}
#[binrw]
#[brw(little)]
#[derive(Debug,Clone)]
pub struct SettingEventAbsoluteSensitivity{
#[br(map=|v:u64|read_trey_double(v)==1.0)]
#[bw(map=|&enabled:&bool|
if enabled{
write_trey_double(&1.0)
}else{
write_trey_double(&0.0)
}
)]
pub enabled:bool,
}
#[binrw]
#[brw(little)]
#[derive(Debug,Clone)]
pub struct SettingEventTurnSpeed{
#[br(map=read_trey_double)]
#[bw(map=write_trey_double)]
pub turn_speed:f64,
}
#[binrw]
#[brw(little)]
#[derive(Debug,Clone)]
pub enum SettingEvent{
#[brw(magic=0u32)]
FieldOfView(SettingEventFieldOfView),
#[brw(magic=1u32)]
Sensitivity(SettingEventSensitivity),
#[brw(magic=2u32)]
VerticalSensitivityMultiplier(SettingEventVerticalSensitivityMultiplier),
#[brw(magic=3u32)]
AbsoluteSensitivity(SettingEventAbsoluteSensitivity),
#[brw(magic=4u32)]
TurnSpeed(SettingEventTurnSpeed),
}
/// A segment of event timelines.