Commit graph

222 commits

Author SHA1 Message Date
Sal
9c10a85596 Merge branch 'itemdrop' into 'master'
Itemdrop

See merge request KartKrew/Kart!11
2018-09-23 17:51:28 -04:00
toaster
d7f8d4507a Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop
# Conflicts:
#	src/sounds.c
#	src/sounds.h
2018-09-22 23:11:14 +01:00
toaster
6cc7f97d8a Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into addons_menu
# Conflicts:
#	src/m_menu.c
2018-09-22 23:00:46 +01:00
toaster
80bc266f3f Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop
# Conflicts:
#	src/info.c
#	src/k_kart.c
2018-09-21 21:05:47 +01:00
toaster
084b99a5c9 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore
# Conflicts:
#	src/info.c
#	src/m_menu.c
#	src/y_inter.c
2018-09-21 20:54:38 +01:00
toaster
25ae5a5e7f Partially address Sal's review last night by switching to a more sensible default. I'm still unconvinced on the need to make encore mode a seperate knob on the grounds of overcomplexity and "you can't turn map hell off", but hopefully this'll be a shippable state we can come back to later.
Also, thank you for reminding me, Sryder - disable my very, very limited progress on encore mode in openGL so that stages aren't an unintended hodgepodge of different colourschemes for the objects versus the level environment.
2018-09-21 12:12:17 +01:00
TehRealSalt
e441b2bce4 Address review
(for anything code I did, anyway)
2018-09-20 17:11:11 -04:00
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
1e8ae8aa0c Merge branch 'sal-misc' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop 2018-09-09 23:25:19 +01:00
TehRealSalt
03e1ed179e Comment ou remaining traces of cv_karthud
We've poured so much effort into our own HUD that it doesn't make much sense to have the option to replace it with another game's at this point
2018-09-09 18:10:11 -04:00
toaster
4de68f7fe2 Dropping items!
* Shield Drop...
	* Whatever you've got orbiting or trailing you, DROP THEM WHERE THEY STAND. (Except for the ghost sink. That one's OK.)
	* Pops your Thunder Shield.
	* Happens upon ANY hit, except for deathpits.
* HUD Drop...
	* Also does the above, except for the Thunder Shield thing.
	* If there's any item left in your item box, pop it out as a little hovering, rotating Minecraft item!
	* You can pick up the Minecraft item by driving over it if your item box is sufficiently empty, or the item which is contained within it is of the same type.
	* Happens upon Size Down and battle elimination.
	* Can also be forced on with `cv_kartdebughuddrop on`!
* Some other random stuff.
	* Fix a bunch of `a->scale = b`'s into `P_SetScale(a, b)` form, for maximum validity.
	* Make K_CleanHnextList and K_UpdateHnextList one function, since they only differed by one continue clause (and the type of their input parameter).
	* Allow shrunken players to pick up item boxes again.
	* Fix MF_NOCLIPTHING. (Gonna pass this fix to vanilla when I get the chance, too.)
	* Break NiGHTS a little through my machinations.
2018-09-06 22:17:29 +01:00
TehRealSalt
1548e59b2b Change a few cvar defaults 2018-09-04 21:18:20 -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
TehRealSalt
d6c54b3f47 Item distribution debugger, and oversight pointed out by this
Item distribution debugger is a netvar that enables cheats, so no exploiting!
2018-08-29 14:28:28 -04:00
toaster
b6dbecd2f8 Addons menu.
Bitch.
2018-08-28 21:08:47 +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
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
7577d289c3 Encore mode is shippable, if still a tad incomplete!
* Turns out the Linedef Type 606 support WAS working and I just had a bad MAP01E lump.
* Ruby fade and ambience start track.
* Fix bad phrasing.
2018-08-08 15:03:02 +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
Monster Iestyn
02d2b61866 Merge branch 'master' into next 2018-08-06 15:15:35 +01:00
Monster Iestyn
8d622ff6f8 Quick fix for LJ's password fix: don't check if password is set until we've confirmed that the receiving player is the server! 2018-08-05 20:17:30 +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
Latapostrophe
3af7b7bf91 merge sonicitems into chat-changes so that it's not lagging 10 years behind 2018-07-31 19:45:49 +02: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
a80c6ccf39 Fix basenumlaps prints 2018-07-27 22:21:13 -04: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
bd12658355 Added the ability to toggle the f-zero style elimination of last place specifically.
Type `karteliminatelast off` to turn it off, and `karteliminatelast on` to... you know the rest.
2018-07-25 21:33:03 +01:00
TehRealSalt
b42d083b99 Finishing touches on Ballhog
- Ballhog has explosion + sound on death
- Ballhog shrinks to nothing if it didn't hit anything
- Replaced a Mario sound on Orbinaut
- Fixed Jawz's sound effect
- Fixed Mines not being removed on death pits
2018-07-24 22:47:09 -04:00
toaster
5a9e10c663 Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into sonicitems
"It is only the *results* that remain in this world! All the *actions* you take in a world where time is erased are meaningless!" - Diavolo, Chapter 520
2018-07-24 22:13:20 +01:00
toaster
4f1ddaaa7d Fix buffer overrun and iteration clobbering in D_SetupVote by:
* Decreasing number of writes - now the unchanging gametype is only written once, and both gametypes are written as UINT8s instead of UINT16s.
* Increasing size of buffer to match new threshold.
2018-07-24 22:04:27 +01:00
wolfy852
f98bc6f851 Fix a minor conditional error in d_netcmd.c 2018-07-23 19:50:28 -05:00
toaster
4f23b84f92 ...fix it properly instead of rushing into it at 1am 2018-07-24 01:12:40 +01:00
toaster
823497ea06 Fix accidentially tripped PARANOIA error for teamchanges. 2018-07-24 01:03:59 +01: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
TehRealSalt
2f5baa6199 Item dist scales with low player count instead of just odds, you can change some cvars during start countdown 2018-07-22 18:15:11 -04:00
toaster
992b1dc795 MAP HELL IS REAL
* Force map hell if there are two or more non-spectators (ie, same condition as to not be in FREE PLAY) and everyone has selected the RANDOM level slot.
* Unique gasp-and-Shulk-based sounds for both forced and non-forced map hell occourances.
2018-07-22 21:02:31 +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
TehRealSalt
6eaed1ac7b Spectator overhaul
- New player flag, PF_WANTSTOJOIN, added for setting up a spectator queue. You are allowed to join as long as no one has started lap 2.
- Map resets when two people have entered the game, so matches can start naturally without the need of an admin.
2018-07-20 19:11:36 -04:00
toaster
7e0d5a479c 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
2b7298e959 *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
TehRealSalt
6574e1f0fc Shrink debug command, trailing items spawn directly on players, rainbow win 1 is more faithful, make springs more powerful for shrunk players, correct Grow/Shrink fullbright frame 2018-07-12 01:31:33 -04:00
TehRealSalt
9da279006f Merge branch 'master' into sonicitems 2018-07-10 17:02:55 -04:00