heretic/Heretic Source/SOUNDS.H

270 lines
3.3 KiB
C++
Raw Permalink Normal View History

2008-09-04 00:00:00 +00:00
// sounds.h
#ifndef __SOUNDSH__
#define __SOUNDSH__
#define MAX_SND_DIST 1600
#define MAX_CHANNELS 16
// Music identifiers
typedef enum
{
mus_e1m1,
mus_e1m2,
mus_e1m3,
mus_e1m4,
mus_e1m5,
mus_e1m6,
mus_e1m7,
mus_e1m8,
mus_e1m9,
mus_e2m1,
mus_e2m2,
mus_e2m3,
mus_e2m4,
mus_e2m5,
mus_e2m6,
mus_e2m7,
mus_e2m8,
mus_e2m9,
mus_e3m1,
mus_e3m2,
mus_e3m3,
mus_e3m4,
mus_e3m5,
mus_e3m6,
mus_e3m7,
mus_e3m8,
mus_e3m9,
mus_e4m1,
mus_e4m2,
mus_e4m3,
mus_e4m4,
mus_e4m5,
mus_e4m6,
mus_e4m7,
mus_e4m8,
mus_e4m9,
mus_e5m1,
mus_e5m2,
mus_e5m3,
mus_e5m4,
mus_e5m5,
mus_e5m6,
mus_e5m7,
mus_e5m8,
mus_e5m9,
mus_e6m1,
mus_e6m2,
mus_e6m3,
mus_titl,
mus_intr,
mus_cptd,
NUMMUSIC
} musicenum_t;
typedef struct
{
char name[8];
int p1;
} musicinfo_t;
typedef struct sfxinfo_s
{
char name[8];
struct sfxinfo_s *link; // Make alias for another sound
unsigned short priority; // Higher priority takes precendence
int usefulness; // Determines when a sound should be cached out
void *snd_ptr;
int lumpnum;
int numchannels; // total number of channels a sound type may occupy
} sfxinfo_t;
typedef struct
{
mobj_t *mo;
long sound_id;
long handle;
long pitch;
int priority;
} channel_t;
typedef struct
{
long id;
unsigned short priority;
char *name;
mobj_t *mo;
int distance;
} ChanInfo_t;
typedef struct
{
int channelCount;
int musicVolume;
int soundVolume;
ChanInfo_t chan[8];
} SoundInfo_t;
// Sound identifiers
typedef enum
{
sfx_None,
sfx_gldhit,
sfx_gntful,
sfx_gnthit,
sfx_gntpow,
sfx_gntact,
sfx_gntuse,
sfx_phosht,
sfx_phohit,
sfx_phopow,
sfx_lobsht,
sfx_lobhit,
sfx_lobpow,
sfx_hrnsht,
sfx_hrnhit,
sfx_hrnpow,
sfx_ramphit,
sfx_ramrain,
sfx_bowsht,
sfx_stfhit,
sfx_stfpow,
sfx_stfcrk,
sfx_impsit,
sfx_impat1,
sfx_impat2,
sfx_impdth,
sfx_impact,
sfx_imppai,
sfx_mumsit,
sfx_mumat1,
sfx_mumat2,
sfx_mumdth,
sfx_mumact,
sfx_mumpai,
sfx_mumhed,
sfx_bstsit,
sfx_bstatk,
sfx_bstdth,
sfx_bstact,
sfx_bstpai,
sfx_clksit,
sfx_clkatk,
sfx_clkdth,
sfx_clkact,
sfx_clkpai,
sfx_snksit,
sfx_snkatk,
sfx_snkdth,
sfx_snkact,
sfx_snkpai,
sfx_kgtsit,
sfx_kgtatk,
sfx_kgtat2,
sfx_kgtdth,
sfx_kgtact,
sfx_kgtpai,
sfx_wizsit,
sfx_wizatk,
sfx_wizdth,
sfx_wizact,
sfx_wizpai,
sfx_minsit,
sfx_minat1,
sfx_minat2,
sfx_minat3,
sfx_mindth,
sfx_minact,
sfx_minpai,
sfx_hedsit,
sfx_hedat1,
sfx_hedat2,
sfx_hedat3,
sfx_heddth,
sfx_hedact,
sfx_hedpai,
sfx_sorzap,
sfx_sorrise,
sfx_sorsit,
sfx_soratk,
sfx_soract,
sfx_sorpai,
sfx_sordsph,
sfx_sordexp,
sfx_sordbon,
sfx_sbtsit,
sfx_sbtatk,
sfx_sbtdth,
sfx_sbtact,
sfx_sbtpai,
sfx_plroof,
sfx_plrpai,
sfx_plrdth, // Normal
sfx_gibdth, // Extreme
sfx_plrwdth, // Wimpy
sfx_plrcdth, // Crazy
sfx_itemup,
sfx_wpnup,
sfx_telept,
sfx_doropn,
sfx_dorcls,
sfx_dormov,
sfx_artiup,
sfx_switch,
sfx_pstart,
sfx_pstop,
sfx_stnmov,
sfx_chicpai,
sfx_chicatk,
sfx_chicdth,
sfx_chicact,
sfx_chicpk1,
sfx_chicpk2,
sfx_chicpk3,
sfx_keyup,
sfx_ripslop,
sfx_newpod,
sfx_podexp,
sfx_bounce,
sfx_volsht,
sfx_volhit,
sfx_burn,
sfx_splash,
sfx_gloop,
sfx_respawn,
sfx_blssht,
sfx_blshit,
sfx_chat,
sfx_artiuse,
sfx_gfrag,
sfx_waterfl,
// Monophonic sounds
sfx_wind,
sfx_amb1,
sfx_amb2,
sfx_amb3,
sfx_amb4,
sfx_amb5,
sfx_amb6,
sfx_amb7,
sfx_amb8,
sfx_amb9,
sfx_amb10,
sfx_amb11,
NUMSFX
} sfxenum_t;
#endif