Commit graph

224 commits

Author SHA1 Message Date
toaster
fd7bc1c1ac Do a bunch of major modifications to the voting system's rule change system!
* Add `kartvoterulechanges`, or "Voting Rule Changes" on the menu, to allow some user control over event frequency.
	* "Never" - does what it says on the tin.
	* "Sometimes" - 1/8 chance of Encore if host has unlocked it, only gametype change when buffer is full
	* "Frequent" - 1/2 chance of Encore if host has unlocked it, gametype change every 5 maps
	* "Always" - If host has unlocked Encore, alternates between Encore and Gametype. Otherwise, always a gametype change
	* There's probably room for a setting between "Sometimes" and "Frequent", but I didn't want to overload the host with options and these were the ones that made sense.
* Better handling of buffer refreshes, to prevent two of the same map appearing next to each other in the voting unless there literally aren't that many maps.
* Mostly unrelated: Minor bugfix for Y_SetupVoteFinish, preventing music changes/random sounds playing on the You Will Join Next Race screen. (Branch-appropriate, at least.)
2018-09-11 15:42:53 +01:00
toaster
67d57d82bc I was getting annoyed by these arrows and their inconsistency, so I made them use the graphics. 2018-09-10 12:41:53 +01:00
toaster
5b27e597d7 More manual pages, plus renaming the option to Tricks & Secrets (F1) - PLUS, the magic of a little animated how-to for leafing through the pages. Requires new patch.kart, as I wanted the leading zeroes and Jeck wanted to add more pages without more commits later... 2018-09-10 12:39:59 +01:00
toaster
0e6bcee463 Merge branch 'sal-misc' of https://git.magicalgirl.moe/KartKrew/Kart.git into misc_plus_menustuffs 2018-09-10 11:43:45 +01:00
TehRealSalt
f4c45877b2 Merge branch 'sonicitems' into sal-misc 2018-09-10 03:22:11 -04:00
wolfy852
e5b947de0a Change ESC menu override string to "Open/Close Menu (ESC)", adjust menu accordingly 2018-09-09 21:24:19 -05:00
wolfy852
9a82176f6f Merge commit '72d80a9aa890d93dfd86e95af75c0752e1ff7e56' into sonicitems 2018-09-09 17:57:23 -05:00
toaster
c8639ed0e0 Disable the options you MEANT to disable. 2018-09-09 15:44:37 +01:00
toaster
1010950148 This isn't vanilla, don't be a shit about secrets and addfile (plus it helps that this fixes a crash) 2018-09-09 15:17:41 +01:00
toaster
6c6bafd1d6 * User manual!
* Some visual ordering fixes for the item menu, plus a #define-toggleable option for the bottom right slot to be traversable for ease-of-use purposes (even if it doesn't do anything).
2018-09-08 17:02:03 +01:00
TehRealSalt
83eb9c1b43 Redone stat graph 2018-09-03 00:06:17 -04:00
toaster
e01f2ff096 Update arrow rendering to use simple character function rather than overkill string function. 2018-08-31 22:38:56 +01:00
TehRealSalt
203b43a138 Toggle All option 2018-08-31 14:41:37 -04:00
TehRealSalt
68a94b5657 Small fix 2018-08-31 13:23:05 -04:00
TehRealSalt
e6303d1889 Toggles for kitchen sink, ten banana, & quad orbinaut, and a screen that they can fit on 2018-08-31 13:18:19 -04:00
toaster
7c7a7bf849 disable encore ruby/flip on record attack menu with kartencore on 2018-08-29 22:02:42 +01:00
toaster
22be81ef02 * Prettier record attack screen!
* Uses the in-game timer element to draw its times.
	* This includes showing them time emblems-to-get!
	* good night sweet prince
* Make the emblem time use the same ' and " as the normal time.
2018-08-29 21:37:47 +01:00
toaster
7a758708c6 * Add support for .kart files.
* Wrap behind-the-scenes `addfile/exec` contents in quotation marks to allow for files with spaces in them.
2018-08-29 14:19:08 +01:00
toaster
b6dbecd2f8 Addons menu.
Bitch.
2018-08-28 21:08:47 +01:00
toaster
77ba3e3c2d Additional oversight corrected. 2018-08-15 16:59:28 +01:00
toaster
be1e43fc0b Merge branch 'sonicitems' into encore 2018-08-15 16:12:42 +01:00
toaster
485cb3f308 Added "Random" to the level selection list, for those days when you know you *want* to race but don't have any idea what to do. 2018-08-15 16:12:36 +01:00
toaster
c895f45d96 Make some minor tweaks to the two server setup menus (splitscreen and not-splitscreen).
I wouldn't have done this, but I was already in the code to fix the bugs, so I hit something that was bugging me[/sonic adventure voice] as well
2018-08-15 15:22:50 +01:00
toaster
19b2c20bda * Disable inverting on encore level select pictures at unanimous request of last night's netgame.
* Also, correct their alignment in y_inter.c.
2018-08-14 15:32:17 +01:00
toaster
a6d1e799f9 * Encore on the voting screen! Appears randomly once unlocked in the same slot as that which sometimes represents a gametype change (odds inflated for testing purposes).
* A better representation of an Encore level, now with inverted graphics (a special remapping we can now use elsewhere whenever if we want!) and a floating Ruby!
* Decouple encore's setting from cv_kartencore on mapload. Instead, bake it into D_MapChange and related, which will only some of the time be fed by cv_kartencore's value.
* Encore mode now has a special mapheader palette setting, "encorepal", rather than using the same one as non-encore.
2018-08-11 22:23:40 +01:00
toaster
202e98957d * For testing purposes, show Encoremaps on the level select icons.
* HOWEVER, we should seriously address this again later, because the antialiasing DOES result in some unfortunate bullshit...
* Encoremap maces per Oni's request and Sal's suggestion
2018-08-10 21:11:45 +01:00
toaster
c190db903c Merge branch 'sonicitems' into encore
# Conflicts:
#	src/st_stuff.c
2018-08-10 15:35:00 +01:00
toaster
a6ca459164 Fix all actionable comments in my review of sonicitems. 2018-08-09 22:59:52 +01:00
toaster
6f2840fe19 * Make Encore Mode an unlockable, rather than freely available.
* Make unlockables have a "showing" conditionset, for when you're able to see them on the Extras screen.
* A shorter Encore ruby-pulse fade, for when encore mode is already active!
2018-08-08 20:48:29 +01:00
toaster
6f4308905f Merge branch 'sonicitems' into encore 2018-08-08 12:04:17 +01:00
toaster
c52a4de933 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into sonicitems
# Conflicts:
#	src/f_finale.c
#	src/hardware/hw_md2.c
2018-08-07 21:20:27 +01:00
toaster
cfaaac78be Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore 2018-08-07 17:09:25 +01:00
toaster
c1749b01b1 * Tint, not Teint.
* Update/rearrange menus a tad, to be more appealing and correct some categorisation in general.
2018-08-05 16:34:51 +01:00
Latapostrophe
ee5ebd978a Chat wordwrap fix + Minichat bg highlight 2018-08-05 13:08:27 +02:00
TehRealSalt
bf4f85fcca Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-08-04 15:48:50 -04:00
TehRealSalt
97ec385234 Thunder shield overlay 2018-08-04 15:48:31 -04:00
toaster
ad119af07b * Get chat to compile with errormode on.
* Add chat options to the HUD and Sound Option menus.
2018-08-02 23:52:07 +01:00
toaster
731b05e263 More UI crap!
* Fix minor additional error in tab rankings.
* Remove FREE PLAY from intermission drawer, per Sal's request.
* Remove "second%s" from the end of the "Start in %d"/"Vote ends in %d" string.
* Rename cv_advancemap's "Off" value to "Same", to make the behaviour clearer.
* Make the "Start in %d" string now begin with cv_advancemap's string (ie, "Vote in %d", "Same in %d", "Random in %d, Next in %d"...
2018-07-30 23:17:14 +01:00
toaster
f125573048 Some minor things to help draw sonicitems to a close.
* "kartvoices" cvar. Possible values "Never", "Tasteful" (default), and "Meme".
* Added a way to move quickly through the credits, rather than skip them entirely (hold spacebar or down arrow).
* Fix a few mistakes in M_ChangeCvar, some of which I introduced and some of which were weird in the first place.
* Tweak the offset of the arrows that let you know you can modify a cvar by pressing left or right (some via a patch.kart change, but others via tweaking the drawing location).
2018-07-29 18:35:56 +01:00
TehRealSalt
7073c9ede2 Use joysticks 1-4 by default, restore KEY_BACKSPACE functionality
These are both huge boons for gamepad functionality. If we can add a way to add a menu key, then all of the controller requirements for v1 will be covered.
2018-07-27 22:16:56 -04:00
toaster
bd78c34b99 Encore mode - a fresh take on mirror mode!
* Palette remaps.
* Branding.

TODO:
* Doesn't work in GL. (Mostly.) I have SOME ideas on how to tackle this, but...
* Transmaps are broken in Encore for some reason.
* I tried to make in-level colormaps shimmy over, but it didn't quite work, so I commented it out and only semi-fixed it.
2018-07-23 23:50:41 +01:00
toaster
b818c8a2cf * Make cancelling a join work on the pause menu and console. (You need to write "changeteam spectator" to cancel a PF_WANTSTOJOIN.)
* Stop respawning spectators when their PF_WANTSTOJOIN request hasn't been processed yet.
* Handle PF_WANTSTOJOIN requests in GS_WAITINGPLAYERS.
* Refactor K_CheckSpectateStatus, and make it so PF_WANTSTOJOIN requests are processed if there's only one player in the server, even if they're on lap 2 or up.
* Make the player entry mechanism in P_SpawnPlayer use the PF_WANTSTOJOIN mechanism so that it can also take advantage of the level refresh mechanism with no extra code.
	* NOTE: This does a bad hack in order to not send multiple mapchanges while the joining timer is low! If you can think of a better way to do this, please let me know/commit it.
* Change the timer until you can hit ITEM again when a spectator who has to wait to join shorter.
* (controversial, but I think necessary) - flash the ITEM text when the above-mentioned timer is nonzero.
2018-07-21 16:45:08 +01:00
toaster
e3a1bf2f83 * Lots of Record Attack love!
* Record Attack Input display!
	* Show Record Attack emblem and emblem time on the HUD! Changes colours with the player, just like vanilla internal's.
	* Remove the ugly dark blue box on the singleplayer (including pause screen) whose only purpose in Kart was to contain the Record Attack emblem info!
* Unrelated shit!
	* Improve loading Kart HUD graphics.
	* Fix mirrored HUD graphics being one screen pixel (not basevid pixel) offset.
2018-07-15 23:13:36 +01:00
toaster
7f96774dbd Layout tweaks to record attack menu and statistics screen. 2018-07-12 15:45:00 +01:00
TehRealSalt
6bfe7bd134 Merge branch 'master' into sonicitems 2018-07-09 00:52:38 -04:00
TehRealSalt
0377956276 This is wrong and is causing issues and I'm entirely surprised this hasn't tripped vanilla yet 2018-07-08 19:07:54 -04:00
toaster
97348beb66 Fix all compilation errors (tested using DEBUGMODE=1 and ERRORMODE=1) that remain outstanding. Notably:
* Remove FUNCMATH from all void-returning functions, given GCC80 specifically complains about this case.
	* Extend the length of all extant buffers to the safety threshold recommended by the compiler.
	* Add void casts to WS_getaddrinfo's setting to prevent complaints about incompatible typecasts.
	* Extend the charsel, face, and superface buffer sizes and writes to include the null terminator. (I didn't really want to do this because it's not even particularily NEEDED, but there was literally zero way to get around the request that I could find with multiple online searches. I tried.)
2018-07-07 16:52:01 +01:00
TehRealSalt
ba43ed5d48 Squash a few more errors
Updated my compile setup to GCC 6.3, makes it as far as m_misc.c now with ERRORMODE and DEBUGMODE, stops at some gettext related stuff I don't know how to fix now
2018-07-06 21:53:37 -04:00
toaster
292b529c51 Free unwittingly malloc'd memory. 2018-07-06 23:59:05 +01:00
toaster
39e6169b42 Improve the defaulting thing to not play the sound if the cvar isn't to be touched. 2018-07-06 20:55:22 +01:00
toaster
1a2dfaed79 * Add a way to revert all non-awkward cvars back to their default settings, with special casing for prefcolor as a default for playercolor on the record attack menu.
* Make MT_GHOST's dispoffset -1, so that at the starting line in record attack your player is always visible even when you have multiple ghosts in play.
2018-07-06 20:40:42 +01:00
toaster
5f28e11fd2 Fix a bunch of issues with record attack!
* Fixed the issue where your runs would be saved as belonging to the wrong character.
	* Make the Ghost menu always visible. This isn't PERFECT, but it's better than hiding the option to toggle ghosts just because you're doing your first run as a new character.
	* Fix the number of laps carrying over from MP(!!!!!!!!! plugged a huge security hole for the authenticity of replays...)
Other stuff!
	* Hide map hell maps in the statistics.
	* Clean up some nonet stuff in the menu.
	* Put player setup last again, and tweaked its wording.
	* Disable the special Kart waiting for players behaviour when not playing a netgame - seeing a double gamestate transition in record attack is weird.
2018-07-06 18:08:35 +01:00
toaster
f49b12a705 * Fix the fades mess, and have the title screen always have a smooth, non-checkered fade from blapck!
* Fix all the bugs with skin not being set properly or kept synchronised with the multiplayer setup in record attack.
* Reduce the amount of flashing on the voting screen.
2018-07-04 22:57:50 +01:00
toaster
fa2aa98e04 * ACTUALLY fix waiting for players chat.
* Correct minor bug with blink cursor on IP in multiplayer menu.
2018-07-04 00:58:32 +01:00
TehRealSalt
d0fe935583 Fix joystick menu drawing
(also it was impossible to pick the 8th joystick, what's up with that?!)
2018-07-03 16:18:17 -04:00
TehRealSalt
9a716a7cfe Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-07-03 15:35:39 -04:00
TehRealSalt
ec6f6cfa70 Fix splitscreen joystick 2018-07-03 15:32:26 -04:00
SeventhSentinel
80c2b56927 Changed all instances of "balloon" to "bumper"
Also changed "It's you!" to "Select character & color..."
2018-07-03 15:14:47 -04:00
toaster
b0d9110e5f Intermissions...
* Do the gametype change stuff on the voting screen.
* Make all the picking sound and setting stuff one function, rather than in two seperate places that need to be kept identical.
* Have the timer at the bottom be the highlight colour.
* Map hell! LF2_HIDEINMENU is craftily reused...
* Less allocation and deallocation for the adjacent G_RandMaps.

Other stuff...
* Fix command_map_f not resetting players' score in battle.
* Shiny titlescreen!
* Fix a random bonus newline in one of the quit messages.
2018-07-02 23:23:04 +01:00
toaster
0b9b7c3371 Tweak player setup menu. 2018-07-02 14:43:52 +01:00
toaster
e76c328129 Sorry, Sal! In my defense, you don't need to recompile from scratch for any of this, despite what it may look like, as the skincolour name lists are walled off from the rest of the dehacked lists...
More menu/highlight things:
* Rename "Default" to "Game type", to make clearer what it's doing.
* Tweak race colouring slightly.
* Put a highlight around the level select icon, and make it consistent with voting.
* Allow setting the highlight colour to affect the intermissions.
* Fix bug with gametype colour getting for record attack.

A handful of skincolour things:
* Rename Turqouise to Aqua, because it resembles one of my fav 2.2 colours with that name.
* Fix incomplete Steel Blue -> Steel rename.
* Merge the very similar Blueberry and Sapphire...
* ... so Sapphire can be backported!
* And Ruby too.
2018-07-02 13:20:04 +01:00
toaster
89cce5c461 More menu stuff!
* Center level selection.
	* Re-work Record Attack screen.
	* Re-order MP Main menu, hide in NONET.
	* Combined yeeeah on vote screen.
	* Colour gametype on tab and tally.
	* (unrelated) Don't show "CHECK" if exiting.
2018-07-02 01:55:01 +01:00
toaster
d4556cfe25 Fix another whoopsie! 2018-07-01 20:03:01 +01:00
toaster
e4ec7e1567 Correct outdated text. 2018-07-01 20:01:48 +01:00
toaster
776c66514d Menu stuff!
* Bar of levels.
* Colourisation!
* New V_SKYMAP, which hasn't been put in dehacked lists but is otherwise valid!
* New single page statistics screen!
* V_DrawFixedPatch now works at the edge of the screen!

Ghost fixes!
* On minimaps!
* Free memory after use!
* Don't spawn in midair on slopes!
2018-07-01 19:29:13 +01:00
toaster
cf6f85a72a Don't look at this commit too closely until after netgame, I want to surprise yalls!!
* Lots of menu changes!
	* Little arrows next to changeable cvars!
	* Show default value for sliders!
	* Pretty pretty pretty.
	* I don't know how to describe some of these changes.
* Effectively nuke MIDI music support!
* Skiddown at the start of a race is more interesting!
* Spinning in waterslides!
* Tiny bugfix in voting, plus a little celebration...
2018-06-30 23:18:13 +01:00
toaster
ba779c6657 * Completely revamp a bunch of menu stuff!
* Improve control menus significantly - a more layout-neutral, gameplay importance based order, with spacing, and less depth to get to the important stuff.
	* Port over the improved MP main menu from internal, including flattening the IP connect onto its level.
	* Allow for selecting the number of splitscreen players using a menu option, rather than three seperate menu choices.
	* Improve the layout of all of the level/gametype select menus slightly.
* (unrelated) Make fourth player area in 3p splitscreen use the tiling background instead of a pure black area.
* (unrelated) Tweak minimap ordering slightly.
2018-06-30 16:01:03 +01:00
toaster
9a9e1ad81e * Rework min/max cvars to allow for "named" values! They probably won't work if they're inside the range, but...
* Combine the numlaps and usemapnumlaps functionality on the menu into basenumlaps, which numlaps is set to every race start, except when it's map default value (0) in which case it loads the map's lap count.
2018-06-29 17:49:02 +01:00
SeventhSentinel
495e9034ae Fun quit messages
Press the 'N' key to unlock the Golden Kart!
2018-06-28 19:35:52 -04:00
Monster Iestyn
415c095274 fix the multiplayer menu not allowing the full max length for player names unlike the "name" console command 2018-06-26 17:46:04 +01:00
SeventhSentinel
c0aa630c63 Fade-in intro
Also made flashing not-local, again.
2018-06-26 10:14:59 -04:00
SeventhSentinel
7fdc9c8035 Intro camera can noclip, fix several compile errors 2018-06-25 09:18:30 -04:00
TehRealSalt
10d09d3dd8 Tiny menu header tweaks
Screenshot Options has its own header, intermission "Result" header is automatically centered
2018-06-14 20:46:07 -04:00
TehRealSalt
0543d8e0fa Better menus 2018-06-14 20:18:29 -04:00
TehRealSalt
118721ebc1 Random items poof instead of sparkle
Also added a poof when they respawn in Battle
2018-06-13 23:37:37 -04:00
TehRealSalt
a417b57bc7 Fixed Battle arrows 2018-06-11 00:59:20 -04:00
TehRealSalt
9b3751b30c Merge branch 'master' into sonicitems 2018-06-07 19:39:45 -04:00
TehRealSalt
e39de53fa2 Use strlen for all of the valid zone title/act num checks 2018-06-05 17:28:46 -04:00
TehRealSalt
0fc113e6dd actnum is now a 2 character long string
For Cloud Cradle Zone, Act K
2018-06-05 01:34:05 -04:00
TehRealSalt
4c0f64ff4f Merge branch 'master' into sonicitems 2018-05-31 19:47:50 -04:00
TehRealSalt
240f037b27 A couple of RA-related things
An unlockables/time emblems update, the stats screen shows all maps without needing to visit each one, and respawning is enabled in Record Attack now
2018-05-30 22:53:06 -04:00
TehRealSalt
762a8f6087 Merge remote-tracking branch 'srb2public/next' 2018-05-30 17:11:02 -04:00
TehRealSalt
609258baa6 Restore gc_camrotate
Sorry if this breaks everyone's configs again :V
2018-05-30 16:54:59 -04:00
TehRealSalt
00e913bbcc Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/k_kart.c
#	src/k_kart.h
#	src/lua_baselib.c
#	src/p_inter.c
#	src/p_spec.c
2018-03-31 00:44:03 -04:00
TehRealSalt
e9c2b09c24 Forgot to remove some debug stuff 2018-03-29 12:01:04 -04:00
TehRealSalt
cde733f850 Finished checklist 2018-03-29 11:43:56 -04:00
TehRealSalt
d4fba3be49 :( 2018-03-29 01:14:47 -04:00
TehRealSalt
84a5fac5e9 Start of a better unlockable checklist
Still WIP, doesn't display properly
2018-03-29 01:14:29 -04:00
jameds
a431197921 Fixed "invalid pointer" error when passing "" to Command_connect(). 2018-03-22 21:21:26 -07:00
TehRealSalt
e5798f7490 Rename fake item to eggman monitor 2018-03-13 21:07:08 -04:00
TehRealSalt
375f9a9291 Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/d_netcmd.c
#	src/g_game.c
#	src/k_kart.c
#	src/p_enemy.c
#	src/p_inter.c
#	src/p_map.c
#	src/p_user.c
#	src/sounds.c
#	src/sounds.h
#	src/y_inter.c
2018-03-12 00:58:13 -04:00
TehRealSalt
517fcd4366 Better gamepad axis support 2018-03-11 18:07:28 -04:00
TehRealSalt
10f04aea52 Disable "Play Credits" if you're in a game
I have no clue if it'd break or not if you used this in a netgame (my
gut feeling is "it would break"), but even if it worked it'd be stupid
:V
2018-03-09 20:57:13 -05:00
TehRealSalt
53ef60584b Adjusted Sonic's stats
(also made new characters default to 5-5 instead of using Sonic's stats)
2018-03-05 20:14:50 -05:00
TehRealSalt
23d19e39da whoop, minor thing 2018-03-04 18:57:34 -05:00
TehRealSalt
4d62fbf509 Unlock all cheat no longer sets game modified if it can't find anything to unlock
Sound test is also in the Options menu now.
2018-03-04 18:42:06 -05:00
TehRealSalt
94b1ce7ce3 And a few more fixes that went under my nose
For later: fix sound test in the options menu, make the cheat notif
sound only play if it can unlock something
2018-03-01 19:07:07 -05:00
TehRealSalt
1a6730fb72 Some unlockable stuff
- Secrets renamed to Extras
- Extras leads to the checklist instead of another menu
- Credits & Sound Test are on the Options menu now
- New title screen cheat for unlocking everything ("banana", or "← ↑ → →
↑ ← ↓ → Enter")
2018-03-01 19:00:16 -05:00
TehRealSalt
581e231a3e sonicitems porting, Part 2
BUT with more tweaks on top of that:
- matchesplayed can go up & unlock stuff regardless of modifiedgame
- votetime added to menu
- flame jets are fullbright (been meaning to do this for a while)
- screenshots are prefixed with kart instead of srb2 (ditto)
2018-02-13 18:13:27 -05:00
TehRealSalt
3e7fbad490 Porting over some things from sonicitems 2018-02-13 16:48:09 -05:00