HarbourMasters / 2ship2harkinian

Creative Commons Zero v1.0 Universal
765 stars 64 forks source link

[Enhancement] EasyMaskEquip #755

Open mckinlee opened 1 month ago

mckinlee commented 1 month ago

EasyMaskEquip is a feature that allows players to quickly equip masks without needing to assign them to C-buttons or D-pad slots. It simplifies the process by letting players equip masks directly from the pause menu. The enhancement also provides visual feedback by highlighting the currently equipped mask and graying out masks that can't be equipped in certain situations (e.g., underwater or mid-transformation).

This PR introduces the EasyMaskEquip enhancement, allowing players to equip masks directly from the pause menu by pressing the A button.

A new OnKaleidoClose hook was added to handle mask equipping when the pause menu is closed. This allows players to change their mask selection if they accidentally select the wrong one, ensuring the mask is only equipped once the pause menu is closed.

This enhancement also utilizes Proxy's BeforeKaleidoDrawPage hook from PR #537 to allocate and update vertex data for the mask equip border.

Build Artifacts

mckinlee commented 1 month ago

I think this is already in a pretty good working state so I'm just gonna go ahead and change this to ready for review. I don't foresee this having to many issues, but please do report any bugs you may find.

mckinlee commented 2 weeks ago

I realize ShouldEquipMask may not account for all scenarios, but its a good start. I would need help identifying what else we may need to add.