Commit graph

45 commits

Author SHA1 Message Date
James R
a759626335 Battle: flash emeralds on screen when someone wins by collecting all 7
- Modifies netsave
2024-01-05 15:56:23 -08:00
Sal
cecd81b4aa Podium rank screen polished 2023-10-29 06:04:22 +00:00
toaster
acad8754c8 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into break-through-them-all 2023-10-17 23:32:08 +01:00
James R
1f3a9a4758 Splitscreen Director HUD; replace freecam HUD 2023-10-09 18:53:55 -07:00
toaster
1a91f41dbb Update Challenge Menu UI
- Percentage for Challenges completion
- Smaller footprint in either top corner
    - Uses mini rank numbers
    - Rounds to new Key meter is now vertical
2023-09-27 21:19:39 +01:00
James R.
c454843837 Spraycan HUD tracking 2023-09-08 02:55:48 -07:00
James R.
11f428b67a Add 4P variants for TARGET HUD tracking 2023-09-07 00:08:42 -07:00
AJ Martinez
3900189199 Auto Spin -> Auto Roulette 2023-08-20 16:26:34 -07:00
AJ Martinez
fbfc75df71 Item box autospin 2023-08-20 05:08:53 -07:00
toaster
9a35a39f5d Challenges Chao Key usage: Eggman numbers to REALLY drive home that you have to hold the button, and that you can release it early 2023-08-10 00:28:18 +01:00
VelocitOni
3b1edb903c Super Flicky trackables
Super Flickies have HUD tracking, have map tracking, and are 3x big when chasing instead of 2x
2023-07-30 00:48:59 -04:00
James R
34b65a7c59 Add K_TranslateTimer, get the correct timer value for time limit; use this function for splitscreen timer 2023-06-29 21:44:31 -07:00
James R
81dab762ff Add power-up HUD
- Power-up icons are sorted by time remaining, most to
  least, left to right
2023-06-29 19:37:22 -07:00
James R
299a8b707c Add 2P and 3P/4P timer HUD variations 2023-06-29 19:27:36 -07:00
SteelT
c419d037e8 Port the menu drawer function
- k_hud.c: Add K_DrawSticker function (was previously named M_DrawSticker)
- Seperated the confirm handling into the menu ticker (fixes the confirm delay being framerate dependent)
- Updated to use the button graphics
2023-05-14 20:21:03 -04:00
toaster
36d8bce14d Replace K_DrawTabRankings with Y_PlayerStandingsDrawer
TODO: Ping, LAGLESS
2023-05-11 18:11:40 +01:00
James R
0e87a77e54 K_DrawMapThumbnail, K_DrawLikeMapThumbnail: correct argument types to fixed_t 2023-04-26 14:14:44 -07:00
Sally Coolatta
996ca9adad Z Voting 2023-04-20 15:55:38 -04:00
SteelT
31e2c1567e Update replay save prompts to use the new button graphics
- A K_drawButtonAnim function is also provided for convince, since I figured it would have more future uses
- This also makes all of the button patches global, in addition
2023-03-03 23:19:46 -05:00
toaster
2875400397 Challenges Grid: New tile borders + selection reticule
M_DrawChallenges: Adjust all offsets to new 22x22 bordered system (from 16x16)
M_DrawChallengeTile: Border, colorization, and reticule
2023-02-23 21:39:55 +00:00
James R
75c9ee253e k_hud_track.cpp: only draw TARGET text in 1P or 2P splitscreen 2023-02-21 21:09:32 -08:00
James R
e79ff76758 k_hud_track.cpp: refactor to use C++ STL
- Use std::vector instead of fixed size array.
- Use std::sort instead of custom sorting algorithm.
2023-02-21 20:11:58 -08:00
James R
83051728f0 Move capsule target code out of k_hud.c, to k_hud_track.cpp 2023-02-21 20:09:06 -08:00
toaster
a8ae2f035e K_drawKartTimestamp: Draw in splitscreen if gametype has timelimit.
- 2p: In 1p position (slides from right)
- 3p/4p: In top-middle of screen (slides from top)
- Uses time from the display with the highest time, which covers exiting, no contest, etc
- Exposes V_ flags in the function signature
2023-02-16 18:23:10 +00:00
toaster
4522ba3b4d stickermedalinfo, UpdateTimeStickerMedals: A centralised struct for Medal info attached to the time sticker.
- K_drawKartTimestamp: Significantly less messy, no longer dependent on static variables, and no longer iterates over M_GetLevelEmblems every rendered frame(!!)
    - TODO: Still handles playing sound in the drawer
- K_PrepareTimeAttack: Initial generation of a struct of emblems/text is handled on the menu
- G_UpdateRecords: Updated in-game if you unlock the next medal there
This commit was amended to centralise the new material in g_game.c and reduce the number of header additions required.
2023-02-05 17:42:28 +00:00
Eidolon
be021baa02 Add extern "C" in C++ to all headers 2022-12-30 19:26:16 -06:00
toaster
33167078c8 Merge branch 'capsules-improvement' into 'master'
Break the Capsules additions

See merge request KartKrew/Kart!793
2022-12-20 21:26:46 +00:00
VelocitOni
8cd36dbf03 Merge branch 'master' into unlockables-undefeatable 2022-12-18 01:59:04 -05:00
VelocitOni
7181e05cce Update k_hud.h
" trackingResult_t;" on line 31 turned into just ";" because structs use a new format now.
2022-12-16 23:12:01 -05:00
VelocitOni
c5372f4ce3 Merge branch 'master' into capsules-improvement 2022-12-14 23:19:34 -05:00
toaster
f87db3cfab Further K_DrawMapThumbnail changes.
- Precache M_NOLVL.
- Make all width calculations relative to a lump 320 pixels wide, to make outdated map thumbnails much, MUCH more visible.
- Add K_DrawLikeMapThumbnail to draw a 320x200 patch like a map thumbnail (currently used only for RANDOMLVL).
2022-12-14 13:08:06 +00:00
toaster
bd5d51ac7b K_DrawMapThumbnail
- Handles map thumbnail drawing in a way agnostic to patch size
- Specify a desired final width in pixels `<< FRACBITS`, not a scale - more specific for our incoming varied purposes.
- Encore and voting screen Random have to be handled externally
- Put in k_hud.c because I'm not sure where would be most appropriate snd it works well enough, can be moved later
2022-12-12 21:51:11 +00:00
Sally Coolatta
b95a18676f Clipping rectangle
Instead of the absolute insanity that is V_DrawCroppedPatch, which makes you specify the number of pixels to crop off the top/left and then the number of pixels to show after the crop ... you just use V_SetClipRect to create a rectangle for any future draws to be cropped down to, and V_ClearClipRect afterwards to clear it.

Currently only supported by V_DrawStretchyFixedPatch. Ideally other drawing functions should also receive clipping rectangle support too.
2022-12-11 13:53:51 -05:00
toaster
803490d7aa Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into unlockables-undefeatable
# Conflicts:
#	src/d_clisrv.h
#	src/doomstat.h
#	src/g_demo.h
#	src/m_cond.h
2022-12-10 21:54:58 +00:00
toaster
ac15d4caa3 Icon selection + Extras menu access
* Icon selection
    * You can use up, down, left, right, etc to select icons on the Challenges menu
    * The text at the top changes based on the highlighted icon
        * This text is now ??? if not yet unlocked
    * Uses the border for character rank icons
* Challenges are now accessible on the Extras menu alongside Addons and Replay Hut.
    * Previously there was a "Extras Checklist" dummy which did nothing when selected
    * Now I won't have to clear my gamedata every time I want to check this menu!
* M_ChallengeGridExtraData's array is modified to now contain specific info on whether a given tile is connected to above or left (or both).
2022-12-02 20:13:52 +00:00
Sally Coolatta
a0bcd52bf1 Break the Capsules HUD tracking 2022-11-28 01:47:00 -05: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
Sally Coolatta
5f20d5a3ac Smooth scale-up 2022-11-17 22:46:26 -05:00
toaster
9c0e793088 Incorporate some of the advances from tilttrack.
* Set view context in the player HUD loop inside `ST_overlayDrawer()`.
* The HUD code now gets all interpolated camera data from the view context instead of half-heartedly recreating it.
* Move Lua HUDlib data to the view context system instead of an else ladder.
* View roll support in HUD tracking, because the other changes made this trivial.
* Remove old_viewrollangle as it is now redundant.
2022-05-21 16:51:03 +01:00
toaster
6f8033ab76 Some preparation for engineering a solution to the rendermode flag/V_*TRANS flag conflict.
* None of the following things (grouped by the fact they fade/slide in) use hardcoded static numbers; they'e now attached to the titlecard ticker.
    * Minimap.
    * All V_HUDTRANS items. (Not add/sub) - this was previously broken entirely
    * FREE PLAY
    * Record Attack Input (no longer slides in at all - needs to be visible from start of play.)
* Fixed a rare case where V_SLIDEIN HUD elements would occasionally jump a step too far.
2021-03-30 22:55:09 +01:00
Sally Coolatta
9ba3e07417 Don't allocate result 2021-02-12 19:34:43 -05:00
Sally Coolatta
6e75b29431 Replace the tracking function with Nev3r's version
Was a long time coming :V

Nev3r's supported different FOV. I also expanded it to let it support splitscreen's different screen sizes in a better fashion than the old method of just dividing the final coordinates.

The results are also stored in a struct, instead of modifying passed in variables, so it's also less dunderheaded than what I was doing before overall.
2021-02-11 15:40:03 -05:00
Sally Coolatta
9efdc98de6 Makes it through all kart files
All that's left is SDL, OGL, maybe also Lua
2020-08-15 04:42:56 -04:00
Sally Coolatta
1500d682d2 hu_stuff & y_inter 2020-08-14 01:06:55 -04:00
Sally Coolatta
3d53adaa2b Sliding HUD
- Split HUD stuff into k_hud.c/h
- V_SPLITSCREEN replaces the old function that sets V_SPLITSCREEN/V_HORZSCREEN flags system, and instead automatically moves it based on player number
- V_SLIDEIN makes HUD items slide in after the intro animation.
2020-07-26 05:47:53 -04:00