KeyPuncher / WiinUPro

Microsoft Public License
408 stars 51 forks source link

Weird shift state behavior #111

Open trei49 opened 1 year ago

trei49 commented 1 year ago

This is admittedly just a very, very minor inconvenience bug, but I'm just curious as to why it happens:

I have set my profile to include the following shifts: None: (CCpro) home=hold green, (wiimote) minus=toggle none, plus=toggle red Red: (CCpro) home=hold green, (wiimote) minus=toggle none, plus=toggle red Blue: (CCpro) home=unset, L=toggle none, (wiimote) minus=toggle none, plus=toggle red
Green: (CCpro) home=hold green, L=toggle blue, (wiimote) minus=toggle none, plus=toggle red

This allows me to have 3 different configurations, normal controller on none, hybrid controller/mouse on red, full mouse functions on blue, and green is just to make shift ZL/ZRs into L3/R3 buttons when on none.

It works on point consistently, EXCEPT for the very first time I try to toggle to blue upon turning the controller on. On None state, when I hold green and toggle blue, I can see the LED jump from 4 to 3 for a split second then it goes right back to 1, and I remain in state None instead of Blue. If I do the same thing again, it then works correctly with LED going to 3 and state changes to Blue.

And it will then continue to work correctly no matter what state I toggle to and back, until I turn off the controller. All toggle assignments are set with only one color each.

The wiimote side toggles don't seem to have such a behavior, they toggle to red correctly first time every time.

Did I set something wrong somewhere?

EDIT: just confirmed that when I swapped all the above blue assignments to red and vice versa, this issue does not occur nope red also had the problem after all.

Along the way, I also discovered that changing a button assignment while in any of the colored state tab in the UI, will also change the original None assignment for the button, but not vice versa.

Not sure if this is intentional, but it does seem to make things troublesome in that everytime I make changes to a blue/red/green state button, I must go back to none and revert that change to keep its original assignment.