Commit graph

29 commits

Author SHA1 Message Date
Eidolon
bd7646346b Use new containers and json 2025-03-16 18:45:11 -05:00
Eidolon
a4d304a1f5 Update copyright years to 2025 2025-02-13 15:32:26 -06:00
Cheariisan
aa1cd4d7d0 Expose most of the music handler to Lua 2024-08-28 22:04:31 +00:00
James R
b7b420819b Evaluation: play "credits_silence" tune before "credits" to mask any trace of level music from demos
"level_nosync" was reactivating via P_Ticker from credits
demo and showing a music credit for a brief moment, where
there should not be any music credit.
2024-04-15 02:01:02 -07:00
Sally Coolatta
7dfa597c7d SRB2 -> DRRR copyright in src, acs, android folder
Be consistent with toaster's recent changes to copyright
2024-04-05 02:08:23 -04:00
toaster
34ec886d34 (WIP) Play Title music after credits track ends
For some reason I_GetSongLength is not reliable here, and try to accomodate fastforward...
2024-03-23 16:21:03 -07:00
AJ Martinez
ebdb250c73 Disclaimer: Draw the rest of the owl 2024-03-13 22:33:19 -07:00
toaster
618d40882a Add the ability to play SECRET_ALTMUSIC music on the Challenges screen
Supports both standard play and "E Side", if it exists (justification for Encore using the same CD)
2024-03-10 21:18:15 +00:00
toaster
57d5e54983 Stereo Mode: Fix multi-Track musicdefs not having their first part loop under non-Seq conditions
Had to introduce a hacky Music_SetFadeOut func, but I didn't want to rework this section of code/menu too heavily for how little time we have left
2024-03-10 21:18:14 +00:00
Sally Coolatta
9b93f56111 Add pre-Podium intermission music 2024-03-10 14:08:59 -04:00
James R
d35edcac9c Invinc, Grow: fade with in-level music volume
Fade S-Monitor music with voice clip
2024-03-08 17:53:07 -08:00
Eidolon
6dc6bb63a7 Play TIMENT for mode attack intermission 2024-02-21 19:13:14 -06:00
James R
1a0b927cf2 Add Music_LevelVolume, Music_ResetLevelVolume: change music volume from gameplay contexts
- Tunes opt into using this volume by setting
  Tune::use_level_volume to true
2024-01-15 16:29:01 -08:00
James R
c192e57426 Battle: Overtime music
- Fade out level music for 1.5 seconds when "Hurry up!"
  plays.
- Play SHWDWN when level music finishes fading out.
- Switch to SHWDN2 when there are 2 players left and the
  Overtime Barrier has reached its smallest size.
  - Plays a loud noise to mask the transition.
2024-01-05 15:56:23 -08:00
James R
b7c9c92749 Music_Seek: argument in milliseconds instead of tics 2024-01-05 15:56:23 -08:00
Oni
2b2971c43f Merge branch 'revert-aae35b92' into 'master'
Revert "Merge branch 'title-music-credit' into 'master'"

See merge request KartKrew/Kart!1727
2023-12-31 17:26:27 +00:00
James R
8855486864 Add Music_FadeOutDuration 2023-12-29 04:26:05 -08:00
James R
fed42c4cd6 Music Manager: add suspension functionality
Suspending a tune makes it inaudible, but doesn't change
its timing. During suspension, other tunes may come into
priority. After un-suspending, the tune plays from the
point where it would be if it had not been suspended at
all.
2023-12-29 04:25:36 -08:00
SteelT
53725f59d2 Revert "Merge branch 'title-music-credit' into 'master'"
This reverts merge request !1725
2023-12-25 14:09:49 +00:00
SteelT
a61e9d4b71 Display the music credits for titlescreen 2023-12-24 16:56:15 -05:00
James R
f3208ac8ef TuneManager: clear current song if music is disabled, so music can resume later 2023-12-23 03:18:03 -08:00
James R
8546643b0c level_nosync only temporarily resists batch operations
It's supposed to resist Music_StopAll so it doesn't get
reset when the level changes. But only do this for one
turn, so level music does not have the potential to leak
into other contexts.
2023-12-05 04:18:27 -08:00
James R
806067f48f Add Music_BatchExempt, temporarily exemplify a tune from batch operations 2023-12-05 04:15:21 -08:00
James R
be8d8178bb Add level_nosync tune, played if GTR_NOPOSITION
- Does not reset if level music does not change between
  levels
2023-12-04 20:19:55 -08:00
James R
95a0fcabd5 Music_Init: refactor some code for less duplication 2023-12-04 20:18:14 -08:00
James R
46c8b47236 P_DoPlayerExit, P_DoTimeOver: replace Music_StopAll with silent track
- Silent track has priority over level music and
  invinc/grow themes
2023-11-17 01:12:09 -08:00
toaster
0784acea49 Instead of tying vape mode to music sync, make it (two) tune-specific properties.
Currently also affects Intermission (without nightcore), but it can be manually applied to other tracks as well
2023-10-24 23:10:17 +01:00
James R
feada89364 Port Sound Test (Stereo) code to new music system
Much of struct soundtest was removed, since the music
system handles its functionality now.
2023-08-06 17:31:45 -07:00
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