Files
source/Standard Gaming Platform/Button Sound Control.cpp
T
majcostaandGitHub aaa8b094c9 remove UTIL and JA2 preprocessor definitions (#66)
UTIL is never used, and JA2 is always used. assumption being we'll never make 1.13 for Wizardry 8.

video2.h doesn't exist, which prevented me from deleting it.
2023-01-05 20:40:36 +02:00

183 lines
5.4 KiB
C++

#include "types.h"
#include "Button System.h"
#include "Button Sound Control.h"
#include "Sound Control.h"
#include "jascreens.h"
void SpecifyButtonSoundScheme( INT32 iButtonID, INT8 bSoundScheme )
{
ButtonList[ iButtonID ]->ubSoundSchemeID = (UINT8)bSoundScheme;
if( bSoundScheme == BUTTON_SOUND_SCHEME_GENERIC )
{
switch( guiCurrentScreen )
{
case MAINMENU_SCREEN:
case OPTIONS_SCREEN:
case LOADSAVE_SCREEN:
case SAVE_LOAD_SCREEN:
case INIT_SCREEN:
ButtonList[ iButtonID ]->ubSoundSchemeID = BUTTON_SOUND_SCHEME_BIGSWITCH3;
break;
case LAPTOP_SCREEN:
ButtonList[ iButtonID ]->ubSoundSchemeID = BUTTON_SOUND_SCHEME_COMPUTERBEEP2;
break;
case AUTORESOLVE_SCREEN:
case MAP_SCREEN:
case GAME_SCREEN:
case SHOPKEEPER_SCREEN:
ButtonList[ iButtonID ]->ubSoundSchemeID = BUTTON_SOUND_SCHEME_SMALLSWITCH2;
break;
case GAME_INIT_OPTIONS_SCREEN:
ButtonList[ iButtonID ]->ubSoundSchemeID = BUTTON_SOUND_SCHEME_VERYSMALLSWITCH2;
break;
//Anything not handled gets NO sound.
//SHOPKEEPER_SCREEN,
//GAME_SCREEN,
//MSG_BOX_SCREEN,
//ERROR_SCREEN,
//ANIEDIT_SCREEN,
//PALEDIT_SCREEN,
//DEBUG_SCREEN,
//SEX_SCREEN,
}
if( bSoundScheme == BUTTON_SOUND_SCHEME_GENERIC )
bSoundScheme = BUTTON_SOUND_SCHEME_NONE;
}
}
void PlayButtonSound( INT32 iButtonID, INT32 iSoundType )
{
if ( ButtonList[ iButtonID ] == NULL )
{
return;
}
switch( ButtonList[ iButtonID ]->ubSoundSchemeID )
{
case BUTTON_SOUND_SCHEME_NONE:
case BUTTON_SOUND_SCHEME_GENERIC:
break;
case BUTTON_SOUND_SCHEME_VERYSMALLSWITCH1:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( VSM_SWITCH1_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( VSM_SWITCH1_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_VERYSMALLSWITCH2:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( VSM_SWITCH2_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( VSM_SWITCH2_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_SMALLSWITCH1:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( SM_SWITCH1_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( SM_SWITCH1_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_SMALLSWITCH2:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( SM_SWITCH2_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( SM_SWITCH2_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_SMALLSWITCH3:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( SM_SWITCH3_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( SM_SWITCH3_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_BIGSWITCH3:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( BIG_SWITCH3_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( BIG_SWITCH3_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_COMPUTERBEEP2:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( COMPUTER_BEEP2_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( COMPUTER_BEEP2_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
case BUTTON_SOUND_SCHEME_COMPUTERSWITCH1:
switch( iSoundType )
{
case BUTTON_SOUND_CLICKED_ON:
PlayJA2Sample( COMPUTER_SWITCH1_IN, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_CLICKED_OFF:
PlayJA2Sample( COMPUTER_SWITCH1_OUT, RATE_11025, 15, 1, MIDDLEPAN );
break;
case BUTTON_SOUND_DISABLED_CLICK:
PlayJA2SampleFromFile( "Sounds\\Disabled Button.wav", RATE_11025, 15, 1, MIDDLEPAN );
break;
}
break;
}
}