mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-04-28 21:57:57 +03:00
Add tmvolume from Spearhead and Breakthrough
This commit is contained in:
parent
51c7e27bc1
commit
5edee7d12e
2 changed files with 34 additions and 3 deletions
|
@ -646,6 +646,8 @@ qboolean S_OPENAL_Init()
|
||||||
Cmd_AddCommand("tmstart", S_TriggeredMusic_Start);
|
Cmd_AddCommand("tmstart", S_TriggeredMusic_Start);
|
||||||
Cmd_AddCommand("tmstartloop", S_TriggeredMusic_StartLoop);
|
Cmd_AddCommand("tmstartloop", S_TriggeredMusic_StartLoop);
|
||||||
Cmd_AddCommand("tmstop", S_TriggeredMusic_Stop);
|
Cmd_AddCommand("tmstop", S_TriggeredMusic_Stop);
|
||||||
|
// Added in 2.0
|
||||||
|
Cmd_AddCommand("tmvolume", S_TriggeredMusic_Volume);
|
||||||
|
|
||||||
S_OPENAL_ClearLoopingSounds();
|
S_OPENAL_ClearLoopingSounds();
|
||||||
load_sfx_info();
|
load_sfx_info();
|
||||||
|
@ -3049,7 +3051,13 @@ bool openal_channel::set_sfx(sfx_t *pSfx)
|
||||||
qalGenBuffers(1, &pSfx->buffer);
|
qalGenBuffers(1, &pSfx->buffer);
|
||||||
alDieIfError();
|
alDieIfError();
|
||||||
|
|
||||||
qalBufferData(pSfx->buffer, fmt, &pSfx->data[pSfx->info.dataofs], pSfx->info.datasize - pSfx->info.dataofs, pSfx->info.rate);
|
qalBufferData(
|
||||||
|
pSfx->buffer,
|
||||||
|
fmt,
|
||||||
|
&pSfx->data[pSfx->info.dataofs],
|
||||||
|
pSfx->info.datasize - pSfx->info.dataofs,
|
||||||
|
pSfx->info.rate
|
||||||
|
);
|
||||||
alDieIfError();
|
alDieIfError();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4139,6 +4147,28 @@ void S_TriggeredMusic_Stop()
|
||||||
openal.tm_loopcount = 0;
|
openal.tm_loopcount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
==============
|
||||||
|
S_TriggeredMusic_Volume
|
||||||
|
|
||||||
|
Added in 2.0
|
||||||
|
==============
|
||||||
|
*/
|
||||||
|
void S_TriggeredMusic_Volume()
|
||||||
|
{
|
||||||
|
if (!s_bSoundStarted) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Cmd_Argc() != 2) {
|
||||||
|
Com_Printf("tmvolume <0-1>\n\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
openal.chan_trig_music.fVolume = atof(Cmd_Argv(1));
|
||||||
|
music_volume_changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
==============
|
==============
|
||||||
S_TriggeredMusic_Pause
|
S_TriggeredMusic_Pause
|
||||||
|
@ -4878,7 +4908,7 @@ unsigned int openal_channel_two_d_stream::getCurrentStreamPosition() const
|
||||||
if (streamNextOffset >= queueLength) {
|
if (streamNextOffset >= queueLength) {
|
||||||
return streamNextOffset - queueLength;
|
return streamNextOffset - queueLength;
|
||||||
} else if (streamHandle) {
|
} else if (streamHandle) {
|
||||||
snd_stream_t* stream = (snd_stream_t*)streamHandle;
|
snd_stream_t *stream = (snd_stream_t *)streamHandle;
|
||||||
return (stream->info.size + streamNextOffset - queueLength) % stream->info.size;
|
return (stream->info.size + streamNextOffset - queueLength) % stream->info.size;
|
||||||
} else {
|
} else {
|
||||||
return queueLength - streamNextOffset;
|
return queueLength - streamNextOffset;
|
||||||
|
|
|
@ -150,6 +150,7 @@ void S_TriggeredMusic_SetupHandle(const char* pszName, int iLoopCount, int iOffs
|
||||||
void S_TriggeredMusic_Start();
|
void S_TriggeredMusic_Start();
|
||||||
void S_TriggeredMusic_StartLoop();
|
void S_TriggeredMusic_StartLoop();
|
||||||
void S_TriggeredMusic_Stop();
|
void S_TriggeredMusic_Stop();
|
||||||
|
void S_TriggeredMusic_Volume();
|
||||||
void S_TriggeredMusic_Pause();
|
void S_TriggeredMusic_Pause();
|
||||||
void S_TriggeredMusic_Unpause();
|
void S_TriggeredMusic_Unpause();
|
||||||
void S_TriggeredMusic_PlayIntroMusic();
|
void S_TriggeredMusic_PlayIntroMusic();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue