Commit graph

205 commits

Author SHA1 Message Date
NepDisk
9a8c89b1d8 Various HUD additions
Wide lap sticker, hud element offsets, GetHudColor Helper, Circle Input display option
2025-03-30 20:05:09 -04:00
GenericHeroGuy
2c49adda4d something something consistency 2025-03-27 22:48:56 +01:00
James R
4cb545a0e1 Cleanup order and indentation of item definitions 2025-03-27 21:25:00 +01:00
James R.
36ad821c79 K_drawKartMinimap: fix splitscreen player icons 2025-03-24 12:33:24 -04:00
Oni
2c36b047dd Merge branch 'fix-splitscreen-hud-tracking-bleed' into 'master'
K_drawKartNameTags: crop HUD tracking to splitscreen viewports

See merge request KartKrew/Kart!1542
2025-03-24 12:31:43 -04:00
James R
af09ba91ec Completely rewrite party management code
Replaces g_splitscreen.c with g_party.cpp. Simplifies
party management functions.

Moves externs out of already bloated doomstat.h and
g_game.h into g_party.h.

Cuts down on globals spam.
2025-03-24 09:43:34 -04:00
NepDisk
f845a3aca5 Adjust bar colors for spee ringbar and fix 11 offset to look better 2025-03-23 21:12:22 -04:00
NepDisk
7b54760030 Changes for Spee ring meter 2025-03-23 20:01:55 -04:00
NepDisk
7fe7bd6ec0 Fix client dedicrash due to my stupidity 2025-03-22 10:47:18 -04:00
NepDisk
42ddaa5b1f Move itemblink and itemblinkmode to player_t to restore hyudoro behaviour 2025-03-21 13:36:10 -04:00
NepDisk
de415e3331 Make the flameshield more understandable by giving it a second meter 2025-03-16 10:48:26 -04:00
NepDisk
56d1ebb490 HUD drawing code clean up and add rings and lives hud toggles for lua 2025-03-14 22:22:25 -04:00
NepDisk
0a41771926 Fix many cases of ? with replacements 2025-03-14 20:26:51 -04:00
NepDisk
24d52d593e Refactor bubbleshield collide, use splitflags for analog input display, don't run waypoint update code on legacy checkpoints 2025-03-14 17:31:51 -04:00
NepDisk
52601bdfc2 New input display option for stick display 2025-03-13 22:14:31 -04:00
NepDisk
6c9b038438 Add input display toggle 2025-03-13 00:08:07 -04:00
NepDisk
077b34b37f Make legacy waypoint helper and expose K_RingsActive and K_UsingLegacyCheckpoints to lua 2025-03-10 19:14:35 -04:00
NepDisk
bda7d26a0f Port basic lap anticheat for new waypoints from RR 2025-03-09 20:03:10 -04:00
NepDisk
bdbfeaf1ac More uses K_GetKartButtons 2025-03-07 12:12:52 -05:00
NepDisk
0a0c468ac3 Fix Distribution debugger 2025-03-04 16:01:39 -05:00
NepDisk
b0bbf07bdb Custom gametype and gametyperules additions
Many new options have been added.

You can now specify "menucolor" when creating a gametype. This accepts a V_ colorchar flag (IE V_PURPLEMAP) and will be used to color hud elements in menus and on the HUD.

Encore is now controlled by GTR_ENCORE. This allows for custom modes that don't accept encore.

Itemodds are now controlled by GTR_RACEODDS and GTR_BATTLEODDS respectively. If neither is specified on gametype creation, completely random items will be rolled.

General GTR_FREEROAM adjustments
2025-03-02 11:41:30 -05:00
NepDisk
ef11c55b41 Merge and Update Flameshield overhaul concept 2025-02-28 00:54:24 -05:00
NepDisk
94dc69ab93 Flash Bubbleshield if throw is happening soon 2025-02-26 21:38:35 -05:00
NepDisk
475524e7ad Add shield sounds and rework bubbleshield
BS now only has two defend / attack uses, trap gives less height and you can dropdash from the trap
2025-02-25 11:40:25 -05:00
NepDisk
8d704be49c Merge remote-tracking branch 'origin/cherries' into blankart-dev 2025-02-24 19:32:26 -05:00
James R
45c388b1f1 Fix HUD drawing crash if 1 or more KITEM_NONE
blame 375fb72de
2025-02-24 23:47:02 +01:00
NepDisk
b70282811e Drawfill nametag stem 2025-02-24 17:11:39 -05:00
James R
ef6addf5d8 Add K_GetRollingRouletteItem, refactor item drawers
Roulette now cycles through all single items (that have
odds). Added missing shields and drop target.
2025-02-24 22:45:23 +01:00
NepDisk
bfb4042d20 Fix Splitscreen lapcount 2025-02-23 23:40:41 -05:00
NepDisk
76e40adaf8 Item graphic tweaks 2025-02-23 19:12:44 -05:00
NepDisk
d527740767 Modify and update code for new assets 2025-02-23 17:01:59 -05:00
NepDisk
bf77bd7f3a Adjust wad load order for new assets 2025-02-23 17:01:59 -05:00
NepDisk
894af06eea Fix HUD for itembreaker with rings enabled 2025-02-22 21:59:18 -05:00
NepDisk
e562d838b5 bumpspark, bumpspring and small code refactoring and cleanup 2025-02-22 21:53:09 -05:00
Sally Coolatta
0c8e8be2a7 Comment out test case 2025-02-22 01:27:26 +01:00
Sally Coolatta
11608cd1b7 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.
2025-02-22 01:22:54 +01:00
NepDisk
dac6374b0a Don't apply tighter minimap angle reticle if minimap names are on 2025-02-20 20:41:59 -05:00
NepDisk
0fcf7c7dbd Port small minimap icons and minimap nametags from saturn/snowy, add minimap angle reticle toggle 2025-02-20 20:32:18 -05:00
NepDisk
71225707bf Port freeplay, grow music and invin music toggles from saturn 2025-02-20 18:12:03 -05:00
NepDisk
fba4f40968 renanble minimapdot drawing code 2025-02-18 19:26:16 -05:00
GenericHeroGuy
247165d29e Fix compile errors 2025-02-18 23:48:18 +01:00
toaster
8ed510ca88 Precalculate as much shared minimap/automap data on level load as possible
- `P_InitMinimapInfo`
    - Writes to `p_local.h` extern struct
    - Handles everything previously distributed across multiple K_drawKartMinimapIcon calls (and most of AM_findMinMaxBoundaries)
- Reduces complexity of drawKartMinimapIcon significantly
- Last prerequisite before implementing user-placable minimap boundaries...
2025-02-18 23:48:18 +01:00
toaster
017e62f4b2 New console command "minigen"
- Generates "MINIMAP.png" in your srb2home
- Uses inherited automap code to render to a temporary buffer
    - Because am_map.c is a mess of filescope static variables right now, this only works when the automap is disabled.
- Currently an equal alternate method to SLADE's map image export, but because we're in control, additional features can be added later...
    - TODO: Off vertically by one pixel on GHZ. Otherwise effectively identical in shape
    - TODO: the colours are rancid, I wonder if they were even updated for the 2.2 palette

Related:
- Use identical linear-time mechanisms for detecting borders of map geometry between automap and minimap
    - Automap was previously using iteration over all vertices
    - Minimap was previously pointlessly writing min/max values twice
2025-02-18 23:48:18 +01:00
toaster
07c1fbf426 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
2025-02-11 03:47:36 +01:00
NepDisk
56745d621b Toggable Lap Emblem Animation 2025-02-09 18:45:53 -05:00
NepDisk
f5de319fae Implement stplyrnum and refactor K_drawBattleFullscreen to use it
Thanks Saturn and GHG as per usual
2025-02-09 18:45:53 -05:00
NepDisk
78751d9659 Uncap input display 2025-02-09 18:45:53 -05:00
SteelT
14e5796cf2 Support reading PICTURE/MINIMAP/ENCORE/TWEAKMAP lumps from a map resource
This supersedes the header-based method of fetching those lumps.

(G: a LOT of creative liberties... but i'd rather this thing compiles)
2025-02-07 02:41:06 +01:00
NepDisk
1a668e0ab5 Merge pull request 'Rework Rings hud to use original assets.' (#20) from ringrework into ACS2
Reviewed-on: https://codeberg.org/NepDisk/blankart/pulls/20
2025-02-01 15:29:51 +00:00
NepDisk
de1fc65df3 Ring rework 3 2025-02-01 10:25:38 -05:00