diff --git a/README.md b/README.md index d949286..cc459f7 100644 --- a/README.md +++ b/README.md @@ -494,7 +494,7 @@ These are the features that can be found [in the latest beta release](https://gi * **Auto-Updater**: Allow the modpack to automatically update itself when updates are available. Users can choose which update track they'd like from the Stable or Beta track in the menu - @asimon-1 * **Mash Overrides**: Specify which mash options to perform in specific scenarios - @GradualSyrup, @asimon-1 * **Customizable Button Configs**: Configure button combinations for save states and input recording in the menu itself. Please note that we now use raw inputs rather than Smash inputs, and save state save/load binds have moved to `L+DPad Down`, `L+DPad Up` respectively - @jugeeya -* **Press Start to Open Menu**: You can now open the menu with start press; holding start for >= 10 frames gives the original menu. This behavior can be toggled, and the old default `B+DPad Up` will always work. This change allows for much more seamless opening and closing of the modpack's menu - @jugeeya +* **Press Start/Select to Open Menu**: You can now open the menu with start press; holding start for >= 10 frames gives the original menu. On controllers with the minus button, minus can also be used to open the menu. This behavior can be toggled, and the old default `B+DPad Up` will always work. This change allows for much more seamless opening and closing of the modpack's menu - @jugeeya ## Bugfixes * Keep Luma, Mii Fighter hats, Mythra's sword, and Pikmin when loading save states - @GradualSyrup diff --git a/src/common/button_config.rs b/src/common/button_config.rs index a9079a8..8eab3ff 100644 --- a/src/common/button_config.rs +++ b/src/common/button_config.rs @@ -168,6 +168,10 @@ pub fn handle_final_input_mapping(player_idx: i32, controller_struct: &mut SomeC } *start_hold_frames = 0; } + + if p1_controller.current_buttons.minus() { + start_menu_request = true; + } } let button_combo_requests = &mut *BUTTON_COMBO_REQUESTS.lock(); diff --git a/src/common/menu.rs b/src/common/menu.rs index 951bf0a..60c25f4 100644 --- a/src/common/menu.rs +++ b/src/common/menu.rs @@ -206,7 +206,9 @@ pub fn handle_final_input_mapping( EVENT_QUEUE.push(Event::menu_open(menu_json)); } }); - button_mapping(ButtonConfig::PLUS, style, button_presses).then(|| { + (button_mapping(ButtonConfig::PLUS, style, button_presses) + || button_mapping(ButtonConfig::MINUS, style, button_presses)) + .then(|| { received_input = true; // Leave menu. frame_counter::start_counting(FRAME_COUNTER_INDEX); diff --git a/training_mod_consts/src/lib.rs b/training_mod_consts/src/lib.rs index 63dc01b..20f4c11 100644 --- a/training_mod_consts/src/lib.rs +++ b/training_mod_consts/src/lib.rs @@ -823,7 +823,7 @@ pub unsafe fn ui_menu(menu: TrainingModpackMenu) -> UiMenu { misc_tab.add_submenu_with_toggles::( "Auto-Update".to_string(), "update_policy".to_string(), - "Auto-Update: What type of Training Modpack updates to automatically apply. (CONSOLE ONLY)" + "Auto-Update: What type of Training Modpack updates to automatically apply. (Console Only!)" .to_string(), true, &(menu.update_policy as u32), @@ -850,12 +850,19 @@ pub unsafe fn ui_menu(menu: TrainingModpackMenu) -> UiMenu { &(menu.record_trigger.bits() as u32), ); input_tab.add_submenu_with_toggles::( - "Recording Frames".to_string(), + "Recording Duration".to_string(), "recording_frames".to_string(), - "Recording Frames: Number of frames to record for in the current slot".to_string(), + "Recording Duration: Number of frames to record for in the current slot".to_string(), true, &(menu.recording_frames as u32), ); + input_tab.add_submenu_with_toggles::( + "Recording Crop".to_string(), + "recording_crop".to_string(), + "Recording Crop: Remove neutral input frames at the end of your recording".to_string(), + true, + &(menu.recording_crop as u32), + ); input_tab.add_submenu_with_toggles::( "Playback Button Combination".to_string(), "playback_button_combination".to_string(), @@ -884,13 +891,6 @@ pub unsafe fn ui_menu(menu: TrainingModpackMenu) -> UiMenu { true, &(menu.playback_loop as u32), ); - input_tab.add_submenu_with_toggles::( - "Recording Crop".to_string(), - "recording_crop".to_string(), - "Recording Crop: Remove neutral input frames at the end of your recording".to_string(), - true, - &(menu.recording_crop as u32), - ); overall_menu.tabs.push(input_tab); overall_menu