mirror of
https://github.com/jmarshall23/Hellfire.git
synced 2026-08-12 07:50:53 +02:00
79 lines
1.6 KiB
C++
79 lines
1.6 KiB
C++
//******************************************************************
|
|
// sound.h
|
|
// created 10.18.96
|
|
// written by Patrick Wyatt
|
|
//******************************************************************
|
|
|
|
|
|
#ifndef H_SND
|
|
#define H_SND
|
|
|
|
|
|
//******************************************************************
|
|
// public structures
|
|
//******************************************************************
|
|
#define DDA_BUF_SIZE 0x40000
|
|
|
|
typedef struct CKINFO {
|
|
DWORD dwSize;
|
|
DWORD dwOffset;
|
|
} CKINFO;
|
|
|
|
|
|
typedef struct TSnd {
|
|
WAVEFORMATEX wfx;
|
|
CKINFO waveInfo;
|
|
const char * pszName;
|
|
LPDIRECTSOUNDBUFFER pDSB;
|
|
DWORD dwLastPlayTime;
|
|
} TSnd;
|
|
|
|
|
|
//******************************************************************
|
|
// public vars
|
|
//******************************************************************
|
|
extern BYTE gbMusicOn;
|
|
extern BYTE gbSoundOn;
|
|
extern BYTE gbSndInited;
|
|
|
|
|
|
//******************************************************************
|
|
// public functions
|
|
//******************************************************************
|
|
void snd_init(HWND hWnd);
|
|
void snd_exit(void);
|
|
|
|
TSnd * snd_load_snd(const char * pszName);
|
|
void snd_free_snd(TSnd * pSnd);
|
|
void snd_play_snd(TSnd * pSnd,LONG lVolume,LONG lPan);
|
|
void snd_stop_snd(TSnd * pSnd);
|
|
BOOL snd_playing(TSnd * pSnd);
|
|
|
|
|
|
enum {
|
|
MUSIC_TOWN,
|
|
MUSIC_L1,
|
|
MUSIC_L2,
|
|
MUSIC_L3,
|
|
MUSIC_L4,
|
|
MUSIC_L5,
|
|
MUSIC_L6,
|
|
MUSIC_INTRO,
|
|
NUM_MUSIC
|
|
};
|
|
void music_start(int nTrack);
|
|
void music_stop();
|
|
|
|
|
|
#define VOLUME_READ 1
|
|
#define VOLUME_MIN -1600
|
|
#define VOLUME_MAX 0
|
|
#define VOLUME_STEP 100
|
|
#define VOLUME_TICKS (((VOLUME_MAX - VOLUME_MIN) / VOLUME_STEP) + 1)
|
|
LONG music_volume(LONG lVolume);
|
|
LONG sound_volume(LONG lVolume);
|
|
|
|
|
|
|
|
#endif
|