Commit graph

150 commits

Author SHA1 Message Date
toaster
215e4039e4 Don't show (+ 0) for players that didn't get any points this round. 2018-07-19 16:28:36 +01:00
toaster
58346ef123 Minor across-board bugfixes re the past 24 hours of commits.
* d_main.c - fix the wipedef for skipping to the titlescreen to be the checkered one again.
* k_kart.c - Tweak drawtime's setting slightly.
* y_inter.c - Make endtic ALWAYS set when not netgame/splitscreen, to prevent an undesirable, possible hang whenever we add more stuff later.
2018-07-19 14:59:38 +01:00
toaster
9d4fa29b7d Some more intermission stuff.
* Combine three basically-identical functions into a generic framework function that takes a function pointer for the purposes of comparison!
	* Y_CalculateMatchData handles the (re)calculation of data.match whenever necessary.
	* Y_CompareRace handles time comparisons for Race.
	* Y_CompareBattle handles score comparisons for Battle.
	* Y_CompareRank handles rank comparisons for both gametypes.
* Move the recalculation for the rankingsmode to a different, non-drawing function.
* Re-organise Y_Ticker for sanity purposes.
* Tweak the countdown timer on both intermission and vote screens.
2018-07-19 14:29:11 +01:00
toaster
38bef90eb0 * Correct a bug with data.match.increase's ordering changing between CalculateTournamentPoints/CalculateMatchWinners and MakeRankingsTable.
* Per Sal's request, remove all commented out code that was just inhereted from vanilla (or is unlikely to ever be re-enabled again if it was written for Kart) in y_inter.c.
2018-07-19 13:23:15 +01:00
TehRealSalt
f1d21b008d Enhance toaster's awesome intermission work a bit further
- Further divide the 2 screens' functionality; the first screen is purely for match results, the second screen is purely for rank results. (only time/score is on the first page, only rank and rank increase is on the second page, instead of time/score and rank increase being on the first page, then rank increase carries over to the rank page...)
- The page switch now happens at exactly the halfway point of the intermission timer
- It now uses a cool picture of the view buffer, like SRB2 SP, except faded, instead of the previous intermission tile.
- Fixed an issue with the previous commit.
2018-07-19 00:07:13 -04:00
toaster
c14bdac3c4 Fix the egregrious bugs from our last testing netgame.
* Made Got_Teamchange's level-based stuff only happen in GS_LEVEL.
* If, by chance, DoTimeOver gets called on a player without an object, it won't crash either.
* Make ending music play when you get time overed.
* Make changing-to-spectators get removed from the intermission drawer.
2018-07-19 01:27:36 +01:00
toaster
d27ba2cd75 *A biggie: two-tier intermission screen!
* Have the entire thing slide the fuck away a short while into the intermission.
	* The tab screen is modified to work off similar behaviour and presentation.
* To go with it, a revamp of how Battle's scoring is handled.
	* It's now considered "hits", and is stored in a reuse in one of the vanilla NiGHTS variables, allowing it to use exactly the same ranking mechanisms as race.
	* No more resetting of score between battle rounds.
* Minor, unrelated general code cleanup in places.
* Disable the YEEEAH in splitscreen, otherwise you'll hear it *all the time*.
2018-07-18 20:23:46 +01:00
toaster
604fcc7ca3 * A bunch of intermission related stuff!
* Time overs now supported, see below.
	* Ties now supported!
	* Code cleaned up.
	* Play more sonicy tally sounds when counting your points.
* A bunch of time over related stuff!
	* Exitlevel time overs everyone, which means no points for you.
	* F-Zero-sorta-maybe style death if you're the last person on the course (and not the ONLY one) when someone crosses the finish line! (Or switches to spectator.)
* A bunch of music related stuff!
	* Functionally reverted many of my changes to splitscreen and ending music, although the major changes to simplify music code are still kept.
	* P_EndingMusic is genericised across gametypes, and only switches a single letter (and looping-ness) now!
	* Fix exitlevel in race causing whatever you're listening to to keep playing.
	* Make powerups call P_RestoreMusic.
	* Put a call to P_EndingMusic into P_RestoreMusic.
* Unrelated crap.
	* Make all palette swaps happen at the black point of fades, so they don't stick around awkwardly.
	* Huh, I thought I did more than that. Oh well!
2018-07-18 01:21:36 +01:00
toaster
8c1f17575f Mammoth commit!
* Deaths in record attack no longer put you into a glitchy singleplayer game-over state that we somehow both kept around and also broke since we branched Kart off of Vanilla..
* Fix non-standard mapscales making the Death Egg respawn octagons dissasemble themselves.
* Allow for MULTIPLE TIME EMBLEMS PER MAP, at least in the emblem UI on the timer. It shows all completed emblems plus the uncompleted emblem up to a total of three.
* Major tweaks to the First Person HUD.
	* I know this was your baby, Sal, and some of the changes may prove controversial - so I've put the ones that are likely to cause the most fuss inside an ifndef block, so that you can toggle it as you please with minimal code changes.
	* Dontdraw-ness, transparency, and colorization match the player's object!
	* Moves around on the screen with respect to the direction of the player object's motion, to make drifting look nicer!
	* Flashes the colour of your drift sparks.
* Did a WHOLE bunch of things with respect to music. I'm not sure how to describe this, so I'll go through step-by-step.
	* Countdowns now play the drowning music again.
	* Removed/disabled extraenous P_RestoreMusics.
	* Made map-ending music called by its own function, P_EndingMusic(player_t *player).
	* Made the ending music play on the LAST player crossing the finishing line in splitscreen, rather than first.
* Make dead players spinout and clip through the floor, at least until we add the new death anims.
* Fix prior pogo spring usage making dead players fall faster.
* Make the time over countdown use the kart font when not splitscreen with 3 or 4 players.
* Removed a weird bonus HWR_DrawCroppedPatch function signature in the hardware header.
2018-07-16 20:19:30 +01:00
TehRealSalt
997c1bebe1 Merge branch 'master' into sonicitems 2018-07-08 17:51:44 -04:00
Sryder
faf76d5e49 22 needs to be added to these char arrays to account for zone title being a settable string 2018-07-07 22:10:26 +01:00
toaster
5f2aed2fd3 * 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
2b51fe1866 Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into sonicitems 2018-07-02 23:23:23 +01:00
toaster
7329fa6aa7 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
TehRealSalt
80dc8927dd Battle finish music, fixed double-wanted bug 2018-07-02 17:57:22 -04:00
toaster
84aa14768f 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
0c03442a69 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
TehRealSalt
d4c5a92c7b WANTED 2018-07-01 04:36:09 -04:00
TehRealSalt
ec1ef3e4a4 Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-06-30 21:19:54 -04:00
TehRealSalt
c4c1aa78c8 Little things 2018-06-30 21:18:38 -04:00
toaster
baa1024ffb 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
ef8a5b2a7f * Properly handle gametype changes when a different-gametype level pops up on the voting screen.
* Defer the change until you're actually modifying the map, in service of the following.
	* Reset score.
	* Call that gametype change function.
* Collary of the above: Don't reset score if you're `map mapxx`ing in the console, unless it's `force`'d.
* Fix the basic, obvious issues that'd prevent us shipping with the new level title system.
	* Correct the non-green resolution support, which was ALMOST there but which I accidentially fucked up one of the signs on.
	* Adjust the subttl position if it'd get overwritten.
	* Draw the gametype with the subttl.
* Adjust the gametype constants for easier gametype_cons_t array access.
2018-06-29 15:14:43 +01:00
toaster
990f9be612 * Modified, maybe-improved title. May need to be selectively reverted, but...
* To go with this, have the HUD fade in as the title goes away.
* After complaints, only do dogear gametype indicators on the voting screen for levels which don't match the prevailing gametype, and use thin font to intrude on the level pic less.
* Make the voting screen background a different graphic in battle.
* Improve behaviour of DrawDiag in GL.
2018-06-28 19:07:04 +01:00
toaster
2efe86e387 * AN OPPORTUNITY FOR GAMETYPE CHANGES ON THE VOTE SCREEN!
* Super important to allow dedicated servers to continue forever without needing to add Terminal.
    * To facilitate understanding, add gametype dog-ears to the vote screen!
    * To do the above, add V_DrawDiag! Works in GL, too!!
* Unrelated shit!
    * Fix a buffer overrun in the randmapbuffer!
    * Disable spectating in splitscreen... Not 100% sure, but in 2p battle, if you spectate, you just lose one balloon and respawn...
    * Improve all the string drawing functions' behaviour - both with being SLIGHTLY clipped by the edge of the screen, and when confronted with drawing off the base 320*200 internal area
2018-06-28 15:47:56 +01:00
TehRealSalt
d205353494 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
103ad41994 Readd voting cheating, just in an entirely different way
Will need tested for desyncs, since it adds some RNG into the vote ticker. Which may or may not matter.
2018-06-13 21:58:21 -04:00
TehRealSalt
e0ad46d416 Different, nicer way of doing fakeouts
Means it can no longer cheat, but I never saw it cheat in action anyway.
2018-06-13 21:47:27 -04:00
TehRealSalt
c9b0f15e60 Voting fakeouts
The voting cursor can land early, or go up a position, on vote end. Not only is this hilarious and makes it more unpredicatable, it also makes it easier for the game to pick a vote and move on to the next level .

(I bet people will mistake this for a bug on release :V)
2018-06-12 22:10:26 -04:00
TehRealSalt
726fe61238 Minor vote screen fixes 2018-06-12 19:05:11 -04:00
TehRealSalt
3d9f1a90e1 Merge branch 'master' into sonicitems 2018-06-07 19:39:45 -04:00
TehRealSalt
4fd88293ff Use strlen for all of the valid zone title/act num checks 2018-06-05 17:28:46 -04:00
TehRealSalt
99b55ea3a1 Multiplayer cursors in voting 2018-06-05 02:11:47 -04:00
TehRealSalt
a1fad489c6 actnum is now a 2 character long string
For Cloud Cradle Zone, Act K
2018-06-05 01:34:05 -04:00
TehRealSalt
71572b94d1 Splitscreen-friendly voting screen 2018-05-31 18:49:19 -04:00
TehRealSalt
9ba13c8ea4 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
d438e3bc41 Doing one more step to totally ensure that matchesplayed is unlocking stuff 2018-03-30 12:16:15 -04:00
TehRealSalt
79ba08ac7d 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
5aa4856d27 Maybe fixed dedicated? 2018-03-05 19:55:39 -05:00
TehRealSalt
81e2cb4aa5 Attempted to fix how voting handles no votes
I don't know exactly what it did previously since I never actually
observed what happens, but now in dedicated servers it will wait for
time to run out, then if there's no votes by that time it will just go
onto nextlevel
2018-03-01 17:05:36 -05:00
TehRealSalt
e591c8ebff Some offset adjustin' 2018-02-27 21:17:34 -05:00
TehRealSalt
6988888d75 Another minor voting thing 2018-02-27 20:52:12 -05:00
TehRealSalt
f0990a1db9 Fixed an odd bug 2018-02-27 20:46:01 -05:00
Sryder
6abc6aa4d2 It's SINT8 not INT8 2018-02-23 01:04:52 +00:00
TehRealSalt
d07160bcba Quick fix 2018-02-20 18:18:10 -05:00
TehRealSalt
af10a43fc7 Minor but important fixes 2018-02-17 01:53:44 -05:00
TehRealSalt
9c5a09d770 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
62b45ff4b0 Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/k_kart.c

(Also I added some extra music for voting, because I forgot I didn't
commit the merge :V)
2018-02-11 12:18:25 -05:00
TehRealSalt
df600ba780 Remove comment 2018-02-10 19:56:05 -05:00
TehRealSalt
ed55d21682 Random picking animation 2018-02-10 19:02:15 -05:00
TehRealSalt
2a563d6f25 Faster 2018-02-09 21:14:14 -05:00