|
|
|
@ -46,6 +46,22 @@ pub enum AudioEvent {
|
|
|
|
Idle,
|
|
|
|
Idle,
|
|
|
|
StopIdle,
|
|
|
|
StopIdle,
|
|
|
|
Invalid,
|
|
|
|
Invalid,
|
|
|
|
|
|
|
|
Captured,
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
impl AudioEvent {
|
|
|
|
|
|
|
|
fn as_str(&self) -> &str {
|
|
|
|
|
|
|
|
match self {
|
|
|
|
|
|
|
|
AudioEvent::MainMusic | AudioEvent::_StopMainMusic => "audio_music_main",
|
|
|
|
|
|
|
|
AudioEvent::MenuHover => "audio_menu_hover",
|
|
|
|
|
|
|
|
AudioEvent::MenuSelect => "audio_menu_select",
|
|
|
|
|
|
|
|
AudioEvent::PickUp => "audio_display3d_pick_up",
|
|
|
|
|
|
|
|
AudioEvent::PutDown => "audio_display3d_put_down",
|
|
|
|
|
|
|
|
AudioEvent::Idle | AudioEvent::StopIdle => "audio_display3d_idle",
|
|
|
|
|
|
|
|
AudioEvent::Captured => "audio_display3d_captured",
|
|
|
|
|
|
|
|
AudioEvent::Invalid => "audio_display3d_invalid",
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#[derive(Resource, Debug)]
|
|
|
|
#[derive(Resource, Debug)]
|
|
|
|
@ -80,19 +96,8 @@ fn audio_trigger(
|
|
|
|
.expect("Load tweaks");
|
|
|
|
.expect("Load tweaks");
|
|
|
|
let state = display_state.get();
|
|
|
|
let state = display_state.get();
|
|
|
|
events.read().for_each(|event| {
|
|
|
|
events.read().for_each(|event| {
|
|
|
|
let aud = match event {
|
|
|
|
let aud = tweak.get::<String>(event.as_str()).unwrap_or("".into());
|
|
|
|
AudioEvent::MainMusic | AudioEvent::_StopMainMusic => {
|
|
|
|
|
|
|
|
tweak.get::<String>("audio_music_main").unwrap()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
AudioEvent::MenuHover => tweak.get::<String>("audio_menu_hover").unwrap(),
|
|
|
|
|
|
|
|
AudioEvent::MenuSelect => tweak.get::<String>("audio_menu_select").unwrap(),
|
|
|
|
|
|
|
|
AudioEvent::PickUp => tweak.get::<String>("audio_display3d_pick_up").unwrap(),
|
|
|
|
|
|
|
|
AudioEvent::PutDown => tweak.get::<String>("audio_display3d_put_down").unwrap(),
|
|
|
|
|
|
|
|
AudioEvent::Idle | AudioEvent::StopIdle => {
|
|
|
|
|
|
|
|
tweak.get::<String>("audio_display3d_idle").unwrap()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
AudioEvent::Invalid => tweak.get::<String>("audio_display3d_invalid").unwrap(),
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
// There is an event, play an audio
|
|
|
|
// There is an event, play an audio
|
|
|
|
if !aud.is_empty() {
|
|
|
|
if !aud.is_empty() {
|
|
|
|
let event_str = format!("event:{}", aud);
|
|
|
|
let event_str = format!("event:{}", aud);
|
|
|
|
|