Commit graph

186 commits

Author SHA1 Message Date
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
962393f7b9 Restart Map/Try Again pause menu entry
Closer to parity with pre-newmenus behaviour.
- Clinical term for server admins, colloquial for SP contexts (GP/modeattacking)
- Won't show up in GP if you're out of lives
- Also fixes lives going negative in K_PlayerLoseLife
2022-11-17 16:45:07 +00:00
toaster
8aeaf9738d Major changes to follower selection
- Followers now have categories, definable in SOC
- New character select step: Follower category
    - "None" is a category, just skips straight to Follower None
    - Select a category to go to the previous regular follower selection step
- Press the C/Extra button to reset a character select step to its "default"
    - Character: Center the character in the engine class (goes from [0,1] to [1,1], etc)
    - Character alts: Centers the "primary" alt (prefers Eggman over Eggrobo)
    - Skincolor: Centers the character's prefcolour
    - Follower category: Centers on the "None" option
    - Follower: [CURRENTLY NO BEHAVIOUR]
    - Followercolor: Cycles between follower's defaultcolour, "Match", and "Opposite"
2022-11-06 22:53:12 +00:00
toaster
21be387d0f Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into connection-doinglus
# Conflicts:
#	src/d_clisrv.c
#	src/d_main.c
#	src/k_menudraw.c
#	src/m_misc.c
2022-11-03 22:36:34 +00:00
toaster
ff629a4c78 Merge branch 'kill-nonet' into 'master'
Kill last of NONET, DJGPP (DOS), WATTCP (also DOS?), _WINDOWS (DirectDraw)

See merge request KartKrew/Kart!704
2022-09-26 17:02:55 +00:00
toaster
3b9959a707 Replay hut code smell fix
- Properly account for non-loaded maps (missed in big-large-map-markers)
- Don't have a million copypasted extrasmenu.demolist indexarooies
- Make one bad replay handler in `G_LoadDemoInfo(` instead of fifty copypastes (Hmn I am smelling a THEME)
2022-09-25 22:47:22 +01:00
James R
f6a5ed9c6c Remove NONET 2022-09-24 19:22:04 -07:00
toaster
fe49543456 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into big-large-map-markers 2022-09-24 19:53:36 +01:00
toaster
75c8749939 Menu jammin
- Menu uses one of three songs (already in music.pk3)
- Cycles between them every time you return to the title screen after starting a map
- Console-accessible. Do what you want
2022-09-23 22:58:51 +01:00
toaster
60355d9efd Move two of the three remaining NUMMAPS arrays part of the mapheader_t struct
- mapvisited and recorddata_t (previously mainrecords)
- Changed how gamedata is saved and loaded
- Change the versioncheck (funny hex provided by chengi) AND call it `developringdata.dat` in develop builds
- Fix a bunch of off-by-ones in condition and emblem data
ALSO, for Time Attack:
- Fix menu not showing off your times
- Now save times even when gamedata modified, since the menu didn't care (come back to it?)
- Don't save times or do intermission screen if the Capsule Attack ended because you lost all your bumpers
- Fix a crash adding ghosts in Capsule Attack
2022-09-21 22:12:36 +01:00
toaster
b08ae2a716 Fix confirm connect
Still shows the message when you open the pause menu. Needs more attention I can't give it right now
2022-09-13 22:59:02 +01:00
toaster
d5e6d349a5 Egga Channel background for connecting 2022-09-13 13:21:03 +01:00
toaster
bca3ec7e5a Change the default highligh to Aqua, for consistency. 2022-09-05 14:00:26 +01:00
toaster
0c4dca611d Hide Encore on the Gameplay Options menu if not unlocked 2022-09-04 22:14:41 +01:00
toaster
acd777a77a Significant work into the play-starting experience
- Take the weird extra mini settings menu out of the Online Host Game sequence
- Make sure to actively use the server variables in Match Race creation
    - Hides the Auto options for Encore and Kartspeed on the Match Race menu specifically...
    - BUT if you leave it at the default it'll secretly set them to Auto!!!
2022-09-04 20:14:30 +01:00
toaster
26461d568c Addons menu refactor part 3
Search finally works again!
- Now uses a cvar which is copied into static memory to uppercase it, instead of a weird static string uppercased into zone memory.
- You have to scroll to the top of the menu to use it, one entry above the previous first file/folder/"UP...".
- Don't play menu sound if you've reached the end of an un-looping menu.
2022-09-03 21:15:23 +01:00
toaster
8312f12d6c Addons menu refactor part 1
- Move M_AddonsRefresh out of M_DrawAddons - death to a HORRIBLE hack
- Use it as the tickroutine for the addons menu instead
- Behaves as before, possibly more consistent
2022-09-03 16:23:16 +01:00
toaster
bcd9c7efba Fix circumstances the game restricts access to certain pause menu options.
Changed conditions -
- Switch Map and Addons on in-game pause menu
    - now restricted by !K_CanChangeRules(), which covers all singleplayer conditions
- Gameplay and Server Options
    - now restricted if in-game, and either singleplayer conditions or not admin
- Erase data
    - now restricted if in-game at all (fixes new-menus regression)
2022-09-02 21:55:29 +01:00
Sally Coolatta
8b93c05175 Fix party HUD after selecting profile char 2022-08-30 05:30:13 -04:00
Sally Coolatta
6eb5b2dee9 Make back button properly confirm settings 2022-08-30 05:23:54 -04:00
Sally Coolatta
6e5c955501 Only allow Time Attack for 1P
Battle gametype submenu no longer exists.
2022-08-28 06:08:30 -04:00
SinnamonLat
a8d847227d WIP: time attack, kinda works but crashes when you finish lol 2022-07-27 12:04:52 +02:00
SinnamonLat
2a4c4f86fc WIP: server browser (only shows fake servers you can't connect to rn) 2022-07-26 23:50:23 +02:00
SinnamonLat
fdf57e59db futureproof and use int16 for skins in menu instead of sint8 2022-07-22 14:13:31 +02:00
SinnamonLat
fc4b0d8776 Add page system on csel when alone to make alts easier to see 2022-07-22 13:57:48 +02:00
SinnamonLat
3e904e23aa Make menus much faster 2022-07-22 12:08:24 +02:00
SinnamonLat
d5e9283c2e Allow selecting profile with no changes to speed up charsel process 2022-07-20 19:35:51 +02:00
SinnamonLat
9364d0b479 better defaults in menus to make navigation easier when you just want to go fast 2022-05-24 01:50:00 +02: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
95e4bc21ff Allow P1 to retain controller usage when playing alone even if they started charsel with keyboard 2022-05-20 20:07:25 +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
SinnamonLat
51d21ec388 Select profile after title screen 2022-05-18 02:24:29 +02:00
SinnamonLat
62b6b7ea8f Update controls in real time in control setup, allow testing controller mappings 2022-04-13 03:03:58 +02:00
SinnamonLat
4f919f883d Bandaid fix for trigger mapping, not super consistent but it helps most of the time... 2022-04-12 16:38:40 +02:00
SinnamonLat
7132a1be10 Profiles: Followers support 2022-04-12 00:58:57 +02:00
toaster
4cc587b5b2 * Make the scrolling text on the menu interpolate.
* 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).
2022-03-29 21:08:36 +01:00
toaster
73dabaeab6 Merge branch 'master' into new-menus
# Conflicts:
#	src/d_clisrv.c
#	src/deh_soc.c
#	src/lua_baselib.c
#	src/m_cheat.c
#	src/m_menu.h
#	src/y_inter.c
2022-03-29 17:14:38 +01:00
SinnamonLat
2696effe7a Make message boxes separate overlays 2022-02-27 00:15:31 +01:00
SinnamonLat
f5bd0dc3e4 Make typing submenu into a struct 2022-02-26 17:15:45 +01:00
SinnamonLat
ed5005cb05 Add kickstartaccel on profile controls 2022-02-26 15:09:39 +01:00
James R
3504f7ebd3 Map buffered inputs to menucmd
This lets buffered tapping not count as one held input.
2022-02-19 16:30:23 -08:00
SinnamonLat
8920ec8e6a Disable profile setup outside of GS_MENU 2022-02-19 21:45:42 +01:00
SinnamonLat
2b74b7188f profiles: they work(?) now 2022-02-19 18:57:17 +01:00
SinnamonLat
ebc2156b7e Profiles: control setup (wip but does what it needs to for now) 2022-02-19 13:26:02 +01:00
SinnamonLat
5601fa4c22 profiles: character/colour select 2022-02-18 13:46:32 +01:00
SinnamonLat
0ac0efda70 Add typing menu overlay for controller parity 2022-02-17 15:05:22 +01:00
SinnamonLat
8efba24df7 profiles: start on edit menu (it does nothing) 2022-02-16 23:57:06 +01:00
SinnamonLat
c44300d39f Use mockup design for cards, allow moving around and getting out of the profile menu. Still can't make/edit profiles 2022-02-16 10:29:01 +01:00
SinnamonLat
aea066b70f Update menus to use the new input system all over... 2022-02-15 23:30:51 +01:00