James R
39f46a0f20
Replace music handling
...
(This commit does not compile. Sound test and tunes
command code needs to be ported after this.)
This is a big one. Here's the rundown:
The old music system was very direct, much of the time
just a proxy to the real sound API in i_sound.h.
You could change the music on command, but there wasn't
a consistent way to prevent some music from playing over
others. P_RestoreMusic is one example of needing to
address this problem. The jingles system was intended as
another solution. Furthermore, sound test (Stereo) has its
own needs.
I am removing all of that. Music handling in general is
now a very deliberate system, kind of similar to jingles.
In the new system, "tunes" are registered. The tune stores
info such as whether it should loop or fade out. Most of
the configuration is intended to be initialized only ONCE.
Tunes can be mapped to an actual music lump. They can be
remapped at any time too.
Tunes are also configured with a priority number. This
determines which tune is heard, if multiple are supposed
to be playing at a time. You can even tell a tune how long
it should play, so it's unnecessary to track this with
bespoke timers.
2023-08-06 17:31:45 -07:00
James R
646701c55c
Remove Lua Music API
...
In preparation for replacing music handling entirely.
Eventually, we can make a new Lua API.
2023-08-05 16:26:53 -07:00
James R
8bebf33a77
Fix glibc 2.38 compile
...
glibc 2.38 added strlcpy and strlcat.
2023-08-03 16:39:18 -07:00
Oni
713cb57486
Merge branch 'vape-mode' into 'master'
...
Slow down level music in Encore - "vape mode"
See merge request KartKrew/Kart!1359
2023-08-03 14:11:40 +00:00
Oni
ec6408b87b
Merge branch 'fix-gme-seek' into 'master'
...
Fix GME only ever seeking halfway
See merge request KartKrew/Kart!1367
2023-08-03 13:49:18 +00:00
Oni
e1e858669d
Merge branch 'no-item-capsule-remap' into 'master'
...
Don't encore remap the inside of item capsules
See merge request KartKrew/Kart!1368
2023-08-03 13:49:03 +00:00
SteelT
92851cbd41
Don't encore remap the inside of item capsules
2023-08-02 14:23:00 -04:00
toaster
4d71172002
objects/sneaker-panel.c - include k_objects.h
2023-08-02 16:53:35 +01:00
Sal
540d755985
Merge branch 'n64-pad' into 'master'
...
Add our custom controller mappings earlier
See merge request KartKrew/Kart!1358
2023-08-02 07:15:59 +00:00
Sal
42c36126b5
Merge branch 'directional-lighting-flag' into 'master'
...
Directional lighting flag
See merge request KartKrew/Kart!1356
2023-08-02 07:14:29 +00:00
James R
68293dfeb3
srb2::audio::Gme::seek: use gme_seek instead of gme_seek_samples
...
Fixes seeking only halfway. gme_seek_samples counts
samples for BOTH channels.
2023-08-02 00:08:40 -07:00
AJ Martinez
5a703240bd
Slow down level music in Encore - "vape mode"
2023-08-01 19:04:30 -07:00
James R
b681fe226a
Add Resampler to music filter chain, let I_SetSongSpeed do something
2023-08-01 19:04:30 -07:00
James R
2064dda3aa
srb2::audio::Resampler: add ratio method to change resample rate on the fly
2023-08-01 19:04:30 -07:00
Oni
f93e925a4a
Merge branch 'cap-ring-speed-lines' into 'master'
...
Don't ringboost-scale speedlines past 2x (3x with tripwire leniency)
See merge request KartKrew/Kart!1366
2023-08-01 01:06:30 +00:00
AJ Martinez
4cfa163cf5
Save a math operation sometimes
2023-07-31 03:15:27 -07:00
AJ Martinez
0d3b6c57b0
Don't ringboost-scale speedlines past 2x (3x with tripwire leniency)
2023-07-31 03:04:13 -07:00
Oni
087cb961b5
Merge branch 'ring-box-sound' into 'master'
...
Ring Box dopamine
See merge request KartKrew/Kart!1365
2023-07-31 08:58:39 +00:00
Oni
a047373bf6
Merge branch 'map-angrier-git-sucks' into 'master'
...
Required anger rounds 5 -> 3
See merge request KartKrew/Kart!1362
2023-07-31 08:14:41 +00:00
AJ Martinez
0c45500901
Ring Box dopamine
2023-07-30 22:15:50 -07:00
Eidolon
cd6925538e
Merge branch 'fix-xmp-resume' into 'master'
...
Only throw XmpException on negative seek pos
Closes #449
See merge request KartKrew/Kart!1364
2023-07-30 18:09:31 +00:00
Eidolon
743c9fe8ef
Only throw XmpException on negative seek pos
2023-07-30 10:21:05 -05:00
AJ Martinez
658177243b
Required anger rounds 5 -> 3
2023-07-30 01:55:09 -07:00
Oni
1325bf7afa
Merge branch 'slow-degrease' into 'master'
...
Slower players lose springgrease faster (resolves #242 )
Closes #242
See merge request KartKrew/Kart!1360
2023-07-29 18:45:37 +00:00
Oni
e9cea99ae7
Merge branch 'dashrings' into 'master'
...
Hardcode MT_DASHRING & MT_RAINBOWDASHRING
See merge request KartKrew/Kart!1345
2023-07-29 18:29:08 +00:00
Oni
a18982dc55
Merge branch 'splatbooster' into 'dashrings'
...
Hardcode MT_SNEAKERPANEL & MT_SNEAKERPANELSPAWNER
See merge request KartKrew/Kart!1349
2023-07-29 18:28:48 +00:00
Oni
1c2ec244dd
Merge branch 'frame-shield' into 'master'
...
Simpler 120-tic flame shield behavior (resolves #586 )
Closes #586
See merge request KartKrew/Kart!1361
2023-07-29 18:25:08 +00:00
AJ Martinez
1a6b8d49ea
Allow flameshield gauge to quickly grow on acquisition
2023-07-29 05:18:36 -07:00
AJ Martinez
6607722b64
Simpler 120-tic flame shield behavior
2023-07-29 05:10:14 -07:00
AJ Martinez
dc39566acf
Clarify degrease magic number
2023-07-29 03:53:04 -07:00
AJ Martinez
424cda41d4
Slower players lose springgrease faster
2023-07-29 03:51:46 -07:00
Lach
6b86cbb500
Fix compile warnings
2023-07-29 18:23:04 +10:00
Lach
fd8ba4236d
Hardcode MT_SNEAKERPANELSPAWNER & adjust FF_GLOBALANIM behaviour
2023-07-29 17:51:25 +10:00
VelocitOni
19fa5c09db
Merge branch 'master' into directional-lighting-flag
2023-07-29 02:24:12 -04:00
AJ Martinez
c9cf1e4673
Add our custom controller mappings before init
2023-07-28 16:57:15 -07:00
toaster
bdc77ce940
Add "../k_objects.h" to dash-rings.c
2023-07-28 23:40:12 +01:00
toaster
16e036a0bd
Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into dashrings
2023-07-28 23:12:06 +01:00
toaster
9171992a9f
Merge branch 'inter-duel' into 'master'
...
Intermission - DUEL mode
See merge request KartKrew/Kart!1354
2023-07-28 22:09:51 +00:00
toaster
421a9f1990
Merge branch 'max-errors' into 'master'
...
CMakeLists.txt: add -fmax-errors=5 for GNU
See merge request KartKrew/Kart!1357
2023-07-28 21:54:55 +00:00
toaster
1b5d59746f
Adjustments/fixes to Duel Intermission view
...
- Always show, even in online
- Add Egga Channel/CPU icon if not a local player-controlled character
- This fixes an infinite loop crash that could previously affect 1v1s VS bots
2023-07-28 22:21:37 +01:00
Oni
bdad8d59ac
Merge branch 'sunbeam-palms' into 'master'
...
Sunbeam Palm
See merge request KartKrew/Kart!1353
2023-07-28 19:15:37 +00:00
James R
b7d4513fba
CMakeLists.txt: add -fmax-errors=5 for GNU
...
Stops compilation after 5 errors, such as in the case of
cascading errors from a missing semicolon.
2023-07-27 18:37:24 -07:00
James R
3eb356f7b9
Comptime.cmake: get rid of CMake < 3.5 compatibility warning
2023-07-27 18:19:14 -07:00
James R
46406931c1
Toggle all manner of directional lighting with MSF_FLATLIGHTING
2023-07-27 17:49:45 -07:00
James R
49e7357704
Add MSF_FLATLIGHTING
2023-07-27 17:49:26 -07:00
James R
9a262a308c
Add missing flags to MSF_LIST
2023-07-27 17:47:59 -07:00
James R
3cf2b27b11
Merge branch 'fix-ring-drain' into 'master'
...
Fix negative ring count in (460) Award Rings not actually subtracting rings
See merge request KartKrew/Kart!1355
2023-07-27 05:44:54 +00:00
James R
092bfd475e
P_ProcessSpecial: fix ring drain sign
2023-07-26 18:05:44 -07:00
toaster
2b4cd831e1
Fix on-screen alignment of Duel Intermission boxes
...
- Now more consistent between time/score and rankings mode
- Symmetrical if you flipped the screen, no slight rightward bias in placement
2023-07-26 16:51:05 +01:00
toaster
8553581d80
Improved behaviour for skipping second half of intermission in offline games
...
Instead of tying it directly to the number of players, instead base it on whether the points are important to keep track of.
- Match Race or Time Attack
- No next map override, since points will persist to that one
- No maps queued, so points aren't relevant
- OR maps are queued but you haven't started them yet, so the points will be discarded
2023-07-26 15:51:39 +01:00