RBEnhanced / RB3Enhanced

Open-source plugin for Rock Band 3 providing many enhancements, fixes, and extra features.
https://rb3e.rbenhanced.rocks
GNU General Public License v2.0
57 stars 11 forks source link

Invisible pause menu when playing on an instrument that doesn't match controller type #2

Closed ihatecompvir closed 1 year ago

ihatecompvir commented 1 year ago

The in-game pause menu is invisible when you're playing on an instrument that is invalid for your controller type (such as when playing drums on gamepad). There must be a check somewhere that only draws this menu if controllerType == allowedTrackType as this behavior is seemingly not driven by scripting.

Figure out how to patch this check out so the pause menu can be drawn at all times.

jnackmclain commented 1 year ago

I actually was able to fix this in dx via script by just setting the frame used in the anim to 2 rather than 1, and it ends up being on screen always. Turns out it's not actually invisible, just off screen as far as I can tell. Commit is here if it's helpful.

https://github.com/hmxmilohax/rock-band-3-deluxe/commit/2b178001c720ed4a29f6c019e05ae0ad3cbcba49

ihatecompvir commented 1 year ago

Thanks @jnackmclain, that information was what I needed to replicate this in code with a RndPropAnim::SetFrame hook that looks for when the frame is being set on slot_positions.anim and then automatically adjusts it to the second frame instead of the first.

Will be committing this up soon once I test it and make sure my code works as expected.

jnackmclain commented 1 year ago

Very cool, happy to help!

ihatecompvir commented 1 year ago

Fixed in 6a7d3fa86151283ca2234045877d36861d5f1c08