Commit graph

22493 commits

Author SHA1 Message Date
James R
71626dbc76 K_GetBestWaypointForMobj: add a hint argument
The hint argument is a known nearby waypoint that can be
used to optimize the waypoint search.
2023-03-31 01:41:31 -07:00
James R
345e4475a3 Convert k_waypoint.c to k_waypoint.cpp 2023-03-31 01:15:09 -07:00
James R
18287e2ed4 cmake: always build libgme, even if SRB2_CONFIG_SYSTEM_LIBRARIES 2023-03-30 23:44:53 -07:00
James R
fccdefb840 Audio: fix GME not reporting song length most of the time
Now add the intro time and looping time together to get
the length of the song, if the length field itself is not
specified (it's usually not).
2023-03-30 23:18:17 -07:00
James R
7867ffa335 Increase MINZ from 4 fracunits to 16
Prevents sprites from rendering too close to the camera.
Such as when precipitation is too close and the sprite
corrupts visually. Perspective also breaks down when too
close.
2023-03-30 23:08:28 -07:00
AJ Martinez
535fc17875 Fix RRID/crypto primitive size defines 2023-03-30 20:36:10 -07:00
AJ Martinez
495b51f6c2 Merge branch 'licenses' into 'master'
Add LICENSE-3RD-PARTY.txt

See merge request KartKrew/Kart!1110
2023-03-31 03:00:58 +00:00
Oni
dec66ee9b1 Merge branch 'jam-project' into 'master'
Stereo Mode

See merge request KartKrew/Kart!1097
2023-03-31 01:07:38 +00:00
James R
da004414a3 Play a goofy sound when I_Erroring
Reorders shutdown in I_Error a little bit so the message
box displays before I_ShutdownSound and SDL_Quit (so the
sound can continue playing while the message box is open).
This should not have any other effects and
I_ShutdownGraphics is still done beforehand, which closes
the main game window.
2023-03-30 17:13:55 -07:00
James R
c6f891f545 Add sfx_etexpl 2023-03-30 17:13:55 -07:00
James R
6082d222fd Merge branch 'fix-encore-capsules' into 'master'
Don't render item capsule numbers mirrored in Encore mode

Closes #493

See merge request KartKrew/Kart!1119
2023-03-31 00:12:06 +00:00
James R
1592369071 Merge branch 'musicdef-volume-debug' into 'master'
Add musicdef console command

See merge request KartKrew/Kart!1114
2023-03-31 00:11:50 +00:00
toaster
5a5a607c9a M_DrawSoundTest: STER_DOT
Draws a dot matrix over the background level icon
2023-03-31 00:28:15 +01:00
toaster
027fd2be04 Time elapsed functionality
- Shown on the menu
- soundtest.autosequence
    - Plays all songs in sequence, skipping over the soundtest entry.
        - Plays each looping song twice (and fades out if it's the last one in the musicdef's tracks)
        - Plays non-looping songs once with no fade ever
   - Disabled when S_SoundTestStop called
- Songs that end outside of autosequence will now stop the visible Playing.
2023-03-31 00:27:20 +01:00
toaster
6f99a75c24 Duplicate current track title per VC discussion 2023-03-30 23:31:37 +01:00
toaster
fe8db18066 Store non-looping information in musicdef
Preface with a `\` (ie `Lump VOTEEA,\VOTEEB`) to indicate the preference is not to loop.
This is for special jingles that have definitive conclusions.
2023-03-30 23:28:51 +01:00
toaster
2c0645cba2 Improve Stereo text header drawing
- Use LSTitleHighString at the top of the menu for the music's title/Sound Test
- Only show Track for relevant entries
- Show cv_soundtest.value in hex for that Classic Sonic soundtest flavour
2023-03-30 18:36:09 +01:00
toaster
99f4641700 Improve level select icon handling
- Make it full base resolution...
- ...but use ClipRect to make it fit inside the window of the Stereo
2023-03-30 18:31:18 +01:00
AJ Martinez
9f8ed9c4ec Update more third-party licenses 2023-03-29 23:59:31 -07:00
James R
1c9ccab159 Use foflayer when spawning mapthings
- foflayer offsets the thing from an FOF in its sector.
  - foflayer 0 uses the base sector heights.
  - foflayer 1 uses the lowest FOF top height, or highest
    FOF bottom height when the thing is flipped.
  - foflayer 2 uses the second lowest / second highest and
    so on.
2023-03-29 22:23:56 -07:00
James R
881f8d8407 UDMF: add foflayer field to things TEXTMAP 2023-03-29 22:23:02 -07:00
James R
75d5c5b68f Move P_GetMobjSpawnHeight to p_mapthing.cpp 2023-03-29 20:21:57 -07:00
James R
ed0d3adccc Don't render item capsule numbers mirrored in Encore mode 2023-03-29 19:09:45 -07:00
James R
0f5370efbb Merge branch 'palette-reload-fix' into 'master'
Reload palette even if rewinding a replay or reloading the gamestate (Resolves #443)

Closes #443

See merge request KartKrew/Kart!1118
2023-03-30 01:28:34 +00:00
James R
6e79ae9a3e Command_MusicDef_f: fix typo 2023-03-29 18:24:49 -07:00
James R
4e149d04cf Merge branch 'fix-skybox-change-after-finish' into 'master'
Do not change skybox for players after they finish the race

See merge request KartKrew/Kart!1115
2023-03-30 01:23:57 +00:00
James R
9aacbf6472 Merge branch 'improve-devmode-visibility' into 'master'
Improve devmode visibility and usability

See merge request KartKrew/Kart!1113
2023-03-30 01:23:40 +00:00
James R
43949031ac Merge branch 'fix-tripwire-lighting' into 'master'
Force Trip Wires to render at maximum brightness

Closes #318

See merge request KartKrew/Kart!1112
2023-03-30 01:23:04 +00:00
toaster
5a802219ce M_SoundTestNextPrev: Set cv_soundtest to 0 when returning to the soundtest entry 2023-03-30 01:11:22 +01:00
toaster
e5c3b566bf Stereo Volume
Access to soundvolume and musicvolume through the Stereo Mode menu
- Draws a knob and volume bar (with loudness warning)
- Changes which cvar is associated with it depending on selected song/lack of
    - If on any regular song, use digital music volume
    - If on soundtest, use sound volume
        - unless on entry 0 aka N/A, where no volume is visible at all
2023-03-30 01:01:16 +01:00
toaster
f9975d6a71 stereospecial_e
No more magic numbers for M_DrawSoundTest
2023-03-29 23:28:45 +01:00
Sal
1e06209659 Merge branch 'no-lua' into 'master'
Add -nolua command line parameter

See merge request KartKrew/Kart!1117
2023-03-29 21:42:42 +00:00
SteelT
4e8bc36521 Reload palette even if rewinding a replay or reloading the gamestate 2023-03-29 14:29:00 -04:00
James R
542e5b1cdf Add -nolua command line parameter
Disables loading Lua scripts entirely.
2023-03-29 09:03:37 -07:00
toaster
2446e53ff9 Start on Stereo Mode visuals
- Buttons have been implemented.
    - They push down when you press an input.
        - FUTURE WORK: Back doesn't get the opportunity to do so. Delay the exit of this menu?
    - Certain ones have special properties.
        - PLAY locks down when playing and not paused
        - PAUSE locks down when playing and paused
        - TRACK is a wheel/slidery thing
        - BACK should get pressed when you're exiting (see previous FUTURE WORK)
        - FUTURE WORK: The detection of these currently uses magic numbers.
- The Stereo itself is now drawn.
    - FUTURE WORK: The screen's contents are still the testing visuals.
2023-03-29 16:14:38 +01:00
toaster
d19a7d9a57 Add M_MenuConfirmHeld and M_MenuBackHeld, to go with M_MenuExtraHeld. 2023-03-29 16:04:48 +01:00
toaster
53fc4aec0a Adjustments to user handling of Stereo
Per VC discussion:
- Pressing STOP does not NULL your selected song
    - ...unless you press it a second time while already stopped
- Pressing PLAY should de-activate pause if active, not restart the track
- Pressing PAUSE while paused should not de-activate pause
- Removed the Extra functionality from TRACK.
2023-03-29 16:04:13 +01:00
toaster
bc07cfa94b S_SoundTestTogglePause
Instead of a fake S_StopMusic-based Pause, make it use the S_PauseAudio/S_ResumeAudio system.
2023-03-29 13:39:40 +01:00
toaster
b1b6756e6a S_AttemptToRestoreMusic
Per review, combine all spots where s_sound.c attempts to restore music into one gamestate-specific switch case system.
2023-03-29 12:56:28 +01:00
James R
eda16cacb5 line 448: do not change skybox after player finishes the race 2023-03-29 03:54:11 -07:00
James R
77e5bb4d19 line 448: fix skybox mobj reference leak
Calling P_SetTarget on the temporary skybox_t is
pointless. P_SwitchSkybox calls P_SetTarget when copying
to the player struct.
2023-03-29 03:54:11 -07:00
James R
e437656633 Remove restrictions on numlaps, merge with gptest
- numlaps 0 now sets the race to 0 laps.
  - Players will finish upon crossing the finishing line
    immediately after POSITION.

- gptest merged with numlaps.
  - numlaps works in GP.

- Warping to sprint maps with numlaps already set now lets
  numlaps exceed the map default. It was previous capped
  at map default ONLY when loading into the level (so you
  could still exceed it by setting numlaps during
  POSITION). Now it's consistent.

- numlaps can now be set at any time during the race.
2023-03-29 03:53:21 -07:00
James R
8bd6c9cffb Add musicdef->debug_volume, add musicdef console command
musicdef -volume <volume> changes the volume of the
currently playing song. The change persists through song
changes and is visible with devmode music.

musicdef -show prints all changed musicdef volumes.

The intention of this command is to allow editing music
volumes quickly in game, without having to quit, edit
music.pk3, and reopen the game.
2023-03-29 01:22:40 -07:00
James R
b65eaf1a51 devmode music: reorder volume to the top and add empty space for readability 2023-03-29 00:37:45 -07:00
James R
411b960e1c devmode music: use half size font 2023-03-29 00:33:28 -07:00
James R
31ee3577fd devmode: draw over literally everything else
Draws over ping and FPS counters.
2023-03-29 00:11:01 -07:00
James R
78df6ec488 devmode: add devmode_screen cvar, select which splitscreen to display info for
Old behavior was just use the last splitscreen.

This does not the position devmode draws on the screen.
2023-03-29 00:09:50 -07:00
James R
c53ae816c1 Renderer: force Trip Wires to maximum brightness, ignore colormaps
Fixes sector light level and colormaps darkening Trip
Wires, especially in OpenGL.
2023-03-28 21:08:11 -07:00
Sal
4588a20a95 Merge branch 'ufo-script' into 'master'
Add "UFO" script type

See merge request KartKrew/Kart!1111
2023-03-29 00:39:34 +00:00
Sal
fe34e04abe Merge branch 'encore-fixies' into 'master'
Fix random Encore vote, error if ENCORE/TWEAKMAP lump is invalid, add debugencorevote command

Closes #333

See merge request KartKrew/Kart!1101
2023-03-29 00:32:00 +00:00