- Less M_StartMessage spam
- Say "NEW" instead of "EMPTY" for new profile creation
- Use Eggman instead of Sonic for the Guest profile
- Instead of needing to hold X for 3 seconds to exit the test controls menu, you simply press nothing for 5 seconds.
- Add separate back option to controls menu.
- Started on the ability to use prefcolor as your profile color
- Allow guest online because there is literally already mechanics for having a player with no power level :V
* Fully reimplement the MenuColor system from 2.2's codebase, so super and emerald colours are now inaccessible again.
* Add FOLLOWERCOLOR_ constants and internal loop support to M_GetColorBefore and M_GetColorAfter.
* Fix improper initialisation of certain menu colour data.
* Repair previously created (or manually-edited) profiles with invalid colours.
* Add an actual function to turn followercolor constants to effective values.
* Previous control checking flow:
* Current controller/keyboard (userbound controls).
* If on a menu:
* Current controller/keyboard (default controls).
* All controllers not in use by a player (default controls).
* New control checking flow:
* Current controller/keyboard (userbound controls).
* If player 0 and just checked a controller, check keyboard (userbound controls).
* If on a menu:
* Check all controllers not in use by a player (userbound controls).
* If keys are inaccessible/unbound and keybind is necessary to navigate menus, repeat eveyrhting with default controls.
* Instead of duplicated code, control the flow in a finer fashion.
* Now able to detect if gamepad inputs are possible to recieve (via checking deviceID), instead of assuming they are.
* If a keybind is set but inaccessible by the above metric, make it flash on the Profile Controls screen.
* Fix out-of-order key mappings for a given bind being invisible on the Profile Controls menu.
* Replace the shitty vidwait option with Sal's shiny new fpscap option.
* Update the item toggles menu for all the new items (and re-enable shitsfree for the new empty spots).