an in-memory WAV file. At the moment it's only used in one place, which is
a bit silly, but I hope to use it for the cutscene player to figure out
when to start the lead-out music.
(To do that I'll need to know how long the cutscene is, though. I haven't
looked into how to find that out yet.)
svn-id: r12424
fading-up music to distort and eventually deteriorate into white noise.
This was because I allowed _fade to be set on channels that weren't playing
and because I only checked _fade for equality when deciding when to stop
the fading. It should work much better now, I think.
svn-id: r12392
grows larger, both when fading up or down. This fixes the problem where the
volume would "jump" when changing the fading "direction" of a stream.
Also changed the logic for deciding which music stream to stop if both
streams are playing and a third stream is started. Before it always tried
to pick the one that was fading down. Now it will pick the one with the
lowest volume, assuming that the more faded a stream is the lower its
volume.
Together, this should fix some abrupt music changes at the watchman's hut,
where it would sometimes start two music streams in rapid succession.
svn-id: r12372
and it now fades both up and down.
Plenty of cleanups, simplifications and just moving code around to group it
in what I hope is a more logical fashion.
Fixed a long-standing bug where spot effects would eventually use up all
available sound effect handles. (I may have introduced this when I removed
the expiration of sound effects from FxServer().)
svn-id: r12108
open so that it can be re-opened afterwards. It's not so much that it may
have changed, but it may have been closed.
This should fix a crash when escaping the credits.
svn-id: r12055
over the past few weeks, except for g_sword2. (Of course, this doesn't
necessarily make the code any prettier, but we can work on that later.)
svn-id: r11309
function that creates the panning table. The difference is that you now
have to tell whether you want one for normal or reverse stereo, so you are
not dependent on the previous state of the table.
(I still think it may be possible to get rid of the panning table
completely, but that's for later cleanups.)
svn-id: r11027
file, plus some other cleanup. I don't know how the config manager decides
if/when to save the settings to file, but we can worry about that later.
svn-id: r11001
touches a lot of the code, of course, and adds yet another global variable
(temporarily, I hope), but everything still seems to work.
Knock on wood.
svn-id: r10806
suggestion, but I prepared the patch long before reading the mail :-).
Also, the remaining parts of the control panel etc. have been moved into a
class of their own.
This is still work in progress. I'm well aware that some of the classes
aren't as well separated as they ought to be, and that using global
variables to keep track of the different classes probably isn't pretty.
svn-id: r10561
The initial sample is, indeed, two bytes, just like the rest of them, but
it really, really helps if you read it from the correct position in the
file.
After fixing that, it turned out that my changing of signedness of the
sample was also wrong. Funny how those two bugs almost cancelled each other
out. Almost.
I've made a few other changes as well, but they're just to clean things up
a bit. The credits music works for me, and I've played the game up to
arriving in Quaramonte, with no obvious music-related problems.
svn-id: r10412