Commit graph

22584 commits

Author SHA1 Message Date
toaster
1bdbfdf22b S_TickSoundTest: Clean up significantly.
- Introduce comments to make flow understandable.
- Abstract the number of seconds in the fade out (previously handled across multiple places) into SOUNDTEST_FADEOUTSECONDS.
- Make all next/conclude song cases for autosequence and non-looping track handled in one place.
    - Fixes the case where a non-looping track could stop the Sound Test even in autosequence mode.
2023-04-08 12:32:46 +01:00
toaster
c5bb660372 M_DrawSoundTest: Animated volume knob
- Animates every 2 tics when up/down is held.
- One frame when pressing confirm.
2023-04-08 12:32:46 +01:00
toaster
f24e09f813 M_DrawSoundTest: Fix being held in the up direction when holding Confirm, when only one input is sent 2023-04-08 12:32:46 +01:00
toaster
94f5048fd1 Stereo Mode: Move all left-aligned text one pixel inwards 2023-04-08 12:32:45 +01:00
AJ Martinez
d6ccf341c5 Keep sliptides at speed even without boost, but don't charge wavedashing 2023-04-08 04:22:49 -07:00
toaster
9072437751 Merge branch 'sink-is-back' into 'master'
Sink is back

See merge request KartKrew/Kart!1149
2023-04-08 11:22:29 +00:00
toaster
94e3803eb0 Merge branch 'blockmap-precip' into 'master'
Render precip through blockmap instead of during BSP

See merge request KartKrew/Kart!1147
2023-04-08 11:21:23 +00:00
AJ Martinez
ea0336bf1b Seriously, never sliptide while underwater 2023-04-08 03:07:34 -07:00
AJ Martinez
207dd964f4 Kill wavedash charge when hit 2023-04-08 03:01:34 -07:00
James R
05b0ecb5b6 Add angle command, set your angle precisely 2023-04-08 01:19:44 -07:00
James R
5b2d791cf6 Add goto command, teleport to a waypoint 2023-04-08 01:01:17 -07:00
James R
dc18fa745a Overhaul teleport command, let it work in netgames
Old syntax with -x, -y, -z, -ang, -aim parameters is
simply replaced with 3 argument syntax like rteleport.

Before - teleport -x 100 -y 50 -z 25
After  - teleport 100 50 25

The lost angle, aiming and star post features can be added
back in separate commands.
2023-04-08 00:47:34 -07:00
James R
39ea73a4ad devmode render: display skybox portal, visplane and drawseg counts on HUD
- Skybox portal count moved from console print to HUD
- Displays visplane count and drawseg count
2023-04-08 00:40:37 -07:00
AJ Martinez
553940e192 You are never sliptiding underwater 2023-04-08 00:39:26 -07:00
James R
21a31c7a51 devmode: offset with showfps and showping 2023-04-08 00:37:12 -07:00
AJ Martinez
972ed1c1a7 Bump latency-based angle correction 2023-04-07 23:52:34 -07:00
AJ Martinez
6871639483 Don't disable easing on driftend, it wasn't actually doing anything 2023-04-07 23:47:30 -07:00
AJ Martinez
2001b5efd9 More responsive drift end 2023-04-07 23:02:03 -07:00
Oni
7ed6332e2d Merge branch 'optimize-clip-sprites' into 'master'
Optimize sprite sorting by excluding sprites that are completely obscured by geometry

See merge request KartKrew/Kart!1146
2023-04-08 03:24:05 +00:00
AJ Martinez
ac41a0a563 Use old multiply effect for fast missile shots 2023-04-07 16:16:45 -07:00
toaster
4b7aa368b5 P_GetNextEmerald: Accomodate map reuse in GP
- In GP, use struct's cup pointer to get Emerald so the active cup ID is in control
- Outside of GP, get cup pointer from map so Emerald is always the "canon" one
2023-04-08 00:05:18 +01:00
toaster
6ae455dbfc Add MF_DONTENCOREMAP to Monitor assets (+ Magician Box) 2023-04-07 23:53:00 +01:00
toaster
307d78130f UFO Catcher: Adjust sprite z offset of prize inside glass orb 2023-04-07 23:36:46 +01:00
toaster
2969aabae4 UFO Catcher: Adjust for changed glass graphic 2023-04-07 23:36:30 +01:00
toaster
c7c78bc72b K_drawTargetHUD: Track at sprite x/y/z offset in 3d space 2023-04-07 23:18:08 +01:00
toaster
6108aa3dd6 Spawn shards on UFO Catcher glass damage
Involves some code adapted from monitor.c ... I couldn't just expose it via k_object.h because the clean entrypoint was JUST too specific to Monitors
2023-04-07 22:36:32 +01:00
toaster
03049db837 UFO Catchet glass ball
Preliminary offset, no effects, but closer to complete visually.
2023-04-07 21:01:51 +01:00
toaster
8a3d225790 UFO Catcher can now carry Emeralds other than the Green Chaos Emerald
- Uses P_GetNextEmerald to determine the associated emerald. Earlier work paying dividends!
- Color selected matching Cup Select screen
- New states which can be used in other contexts
    - S_SUPEREMERALD1 and S_SUPEREMERALD2
    - S_SUPEREMERALD_UNDER
2023-04-07 19:32:46 +01:00
toaster
1f018f8d27 k_hud.c: Consistently use TC_DEFAULT instead of 0 for R_GetTranslationColormap 2023-04-07 18:03:29 +01:00
toaster
7abb2ce162 K_drawKartMinimap: Add progression meter variation
- Uses a lot of existing apparatus, just leveraged to draw horizontally instead of a full map.
- Currently only functional in Sealed Star contexts, due to K_GetCircuitLength having no clean alternative for sprint tracks.
    - Tracks Catcher/Emerald.
- K_drawKartProgressionMinimapIcon and K_getKartProgressionMinimapDistance
    - Abstracts the progress of converting distance to finish into a position on the bar.
    - Sibling function of K_drawKartMinimapIcon
        - The author of this commit wanted to make it an alternate outcome of this function, which it shares a lot of similarity with, but doing waypoint traversal in HUD for objects that don't independently track their distance would absolutely tank performance.
        - Tidying up in the main function permitted less minimap state to be used in these.
2023-04-07 18:01:50 +01:00
James R
ee55215929 Merge branch 'dedup-render-view-functions' into 'master'
Cut down on duplicated code in R_RenderPlayerView, HWR_RenderPlayerView, HWR_RenderSkyboxView

See merge request KartKrew/Kart!1148
2023-04-07 07:56:50 +00:00
toaster
e82082fd06 K_UpdateDistanceFromFinishLine: Do not destroy distancetofinish value if the player NO CONTESTed 2023-04-07 00:55:04 +01:00
toaster
0ac2541eb9 k_drawKartTImestamp: Clean up SPB Attack distance bar
- Use a minimap-like graphic for the background area
    - The goofy name comes from a delightfully awful development conversation
- Make the entire thing snap to the screen's bottom and slide in
- Fix a potential sqrt of a negative/zero value
2023-04-07 00:49:06 +01:00
toaster
ba3e6765ef K_DrawKartMinimap: Bugfixes to NO CONTEST X
- Fix Race NO CONTEST X not being colormapped
- Fix non-local players not being NO CONTEST X-ified
2023-04-07 00:39:30 +01:00
toaster
4b90a8d8bf Hyudoro: Fix an exploit where a player in first can touch their hyudotro while in first on a weirdly shaped map. 2023-04-06 21:17:01 +01:00
toaster
a6ecb25ed5 hyudoro_set_held_item_from_player
- Handles putting an object into the hyuu's inventory.
- Permits Sink conversion for items which are a little too powerful to give to someone who was JUST in first place.
    - For now, the item to convert is an SPB.
2023-04-06 21:04:38 +01:00
toaster
046ff49134 Update PROFILEVER handling to account for Rumble support 2023-04-06 20:09:42 +01:00
toaster
5349b45a09 Revert "Ignore OS key repeats for game controls"
This reverts commit 2131973ecce45690bb82ddc80a2dee2107f8362f.
2023-04-06 20:02:13 +01:00
toaster
04f371bbb4 Also permit tertiary and ... quadridly(?) gamecontrol binds for chat open, which had been silently broken for years. 2023-04-06 20:02:13 +01:00
toaster
2d175c6094 Permit tertiary and ... quadridly(?) gamecontrol binds for console open/close, which had been silently broken for years. 2023-04-06 20:02:12 +01:00
toaster
ed3ed6f189 M_UpdateMenuCMD: Enable access to screenshots/etc based on player inputs
Returns early if any of these have been added this tic
2023-04-06 20:02:12 +01:00
toaster
44bd11f95d Update new PROFILEVER to 4 to account for public/private key-related changes 2023-04-06 20:02:12 +01:00
James R
e0f999fcd7 Ignore OS key repeats for game controls 2023-04-06 20:02:12 +01:00
James R
9ca196cb89 Reset input upon exiting bind menu
While rebininding your controls:

- Do not take a screenshot if you press whichever button
  it was bound to before
- Try not to let a held button press buffer back into the
  controls menu
2023-04-06 20:02:12 +01:00
James R
80421da5b3 Replace hardcoded keys for screenshot etc with bindable controls
Renames M_ScreenshotResponder to M_ScreenshotTicker. No
longer eats events. As a side effect, these controls
cannot be used with the console open.
2023-04-06 20:02:11 +01:00
James R
d9faef58cb Add game control for lossless video recording, set default keys for gc_screenshot, etc
Renames gc_startgif to gc_startmovie.

Default controls:

- gc_screenshot - F8
- gc_startmovie - F9
- gc_startlossless - F10

Bumps PROFILEVER to 3, safely migrates existing profiles.
2023-04-06 20:02:11 +01:00
toaster
6b2558c43e Merge branch 'hardcode-assist' into 'master'
Lua info string assist

See merge request KartKrew/Kart!1127
2023-04-06 19:01:00 +00:00
Sally Coolatta
010fc344df Add equivalent of "Each Time" triggers for ACS 2023-04-06 18:05:05 +01:00
toaster
bbf2fc0b5f Merge branch 'tutorial-access' into 'master'
Tutorial access

See merge request KartKrew/Kart!1102
2023-04-06 17:02:59 +00:00
toaster
217e116bcd Merge branch 'raised-sector-culling' into 'master'
Automatic level culling for raised floors / lowered ceilings

See merge request KartKrew/Kart!1145
2023-04-06 14:42:56 +00:00