Commit graph

23 commits

Author SHA1 Message Date
Eidolon
be021baa02 Add extern "C" in C++ to all headers 2022-12-30 19:26:16 -06:00
James R
b5310a1f68 Add typedef.h
All typedefs for structs that were present in other header
files have been moved to here. (Except node_t because the
renderer and netcode both define node_t LOL.)
2022-11-27 17:21:40 -08:00
toaster
db95e3144d Re-add mid-game rankings
- gc_rankings, bound to TAB by default
- Now a toggle, rather than a hold behaviour
- Rearrange HU_Drawer to have chat (and cecho/music credits) render over everything else (like, say, tab rankings)
- Update PROFILEVER to 2 so we can add the new control to old profiles
2022-11-25 17:59:18 +00:00
toaster
8946bf9e01 Refactor PR_ApplyProfile and its ilk
- Reduces copypasted code.
- Preperation for the next commit.
2022-09-03 00:16:41 +01:00
toaster
5c4ff2ead0 Rewrite Profile saving and loading
- Previous implementation used fopen, fwrite, fread, etc.
- Instead, use the byteptr.h macros to/from a buffer, performing IO all at once before/after.
- This way, if we do something unrecoverable mid-write, we won't corrupt the user's profile.
- Also cross-endian compatible AND now capable of supporting changes in the struct.
- Sadly not back-compatible. This should be the last time we destroy the team's existing profiles...

Also, modify a typo in a gamedata error this system used as reference.
2022-09-02 19:38:54 +01:00
Sally Coolatta
abac095d06 Properly use 0 power for the guest player 2022-08-30 04:07:42 -04:00
Sally Coolatta
8228377a0e Save ringprofiles as a "prf" file
It shouldn't be cfg since it's raw data, not a text format.
2022-08-30 03:52:41 -04:00
Sally Coolatta
d5a4954dd3 Profiles handle power level properly now
Overwriting the global power level all the time and not updating any code to use the profile was extremely yikes. This also allows for splitscreen players with power levels.
2022-08-30 03:51:35 -04:00
Sally Coolatta
b388890647 Profile fixes
- 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
2022-08-29 04:08:12 -04:00
toaster
d963dea4f9 Merge branch 'master' into new-menus
# Conflicts:
#	src/Sourcefile
#	src/deh_soc.c
#	src/m_menu.c
#	src/p_user.c
#	src/r_data.h
#	src/r_skins.h
2022-05-25 15:12:51 +01:00
toaster
5b13d4f75d Repair character colors and followercolors via the menu, both visually and mechanically.
* 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.
2022-05-22 16:57:26 +01:00
SinnamonLat
399272946c Tie POWERLEVEL to Profiles 2022-05-21 17:47:15 +02:00
SinnamonLat
60449b8a26 Fix crash when editing profile character with existing follower 2022-05-20 16:47:03 +02:00
SinnamonLat
d0db7e4381 rethink input mapping menu (again (again)) 2022-05-20 01:15:29 +02:00
SinnamonLat
d5d34f9b99 profiles may now be deleted from data options 2022-05-18 14:20:19 +02:00
toaster
c85cc0f182 Update all data files that have the "kart" prefix to "ring", so that you can use this in the same folder as an existing non-newmenus install.
ringconfig.cfg
ringprofiles.cfg
ringsavedips.txt
ringexec.cfg
ringserv.cfg
ringdata.dat
replay folder "ringracers"

Screenshots/gifs do not currently have adjusted name to prevent name leakage, we can change this later.
2022-03-29 17:15:18 +01:00
SinnamonLat
5801d67706 Add profile # and player name on the card 2022-02-20 15:23:08 +01:00
James R
c83803dd42 Refactor profiles code to use pointers 2022-02-19 14:25:34 -08:00
SinnamonLat
2b74b7188f profiles: they work(?) now 2022-02-19 18:57:17 +01:00
SinnamonLat
3aadf1bff0 Allow creating new profiles 2022-02-19 16:08:50 +01:00
SinnamonLat
aea066b70f Update menus to use the new input system all over... 2022-02-15 23:30:51 +01:00
SinnamonLat
8c53108d17 Start on profiles menu (does nothing and softlocks) 2022-02-15 01:28:57 +01:00
SinnamonLat
1789dd1255 Rudimentary start on profiles 2022-02-14 23:14:25 +01:00