123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300 |
- /*
- ===========================================================================
- Doom 3 BFG Edition GPL Source Code
- Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company.
- This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code").
- Doom 3 BFG Edition Source Code is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- Doom 3 BFG Edition Source Code is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with Doom 3 BFG Edition Source Code. If not, see <http://www.gnu.org/licenses/>.
- In addition, the Doom 3 BFG Edition Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 BFG Edition Source Code. If not, please request a copy in writing from id Software at the address below.
- If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
- ===========================================================================
- */
- #ifndef __SOUNDS__
- #define __SOUNDS__
- //
- // SoundFX struct.
- //
- typedef struct sfxinfo_struct sfxinfo_t;
- struct sfxinfo_struct
- {
- // up to 6-character name
- char* name;
- // Sfx singularity (only one at a time)
- int singularity;
- // Sfx priority
- int priority;
- // referenced sound if a link
- sfxinfo_t* link;
- // pitch if a link
- int pitch;
- // volume if a link
- int volume;
- // sound data
- void* data;
- // this is checked every second to see if sound
- // can be thrown out (if 0, then decrement, if -1,
- // then throw out, if > 0, then it is in use)
- int usefulness;
- // lump number of sfx
- int lumpnum;
- };
- //
- // MusicInfo struct.
- //
- typedef struct
- {
- // up to 6-character name
- const char* name;
- // lump number of music
- int lumpnum;
-
- // music data
- void* data;
- // music handle once registered
- int handle;
-
- } musicinfo_t;
- // the complete set of sound effects
- extern sfxinfo_t S_sfx[];
- // the complete set of music
- extern musicinfo_t S_music[];
- //
- // Identifiers for all music in game.
- //
- typedef enum
- {
- mus_None,
- 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_inter,
- mus_intro,
- mus_bunny,
- mus_victor,
- mus_introa,
- mus_runnin,
- mus_stalks,
- mus_countd,
- mus_betwee,
- mus_doom,
- mus_the_da,
- mus_shawn,
- mus_ddtblu,
- mus_in_cit,
- mus_dead,
- mus_stlks2,
- mus_theda2,
- mus_doom2,
- mus_ddtbl2,
- mus_runni2,
- mus_dead2,
- mus_stlks3,
- mus_romero,
- mus_shawn2,
- mus_messag,
- mus_count2,
- mus_ddtbl3,
- mus_ampie,
- mus_theda3,
- mus_adrian,
- mus_messg2,
- mus_romer2,
- mus_tense,
- mus_shawn3,
- mus_openin,
- mus_evil,
- mus_ultima,
- mus_read_m,
- mus_dm2ttl,
- mus_dm2int,
- NUMMUSIC
- } musicenum_t;
- //
- // Identifiers for all sfx in game.
- //
- typedef enum
- {
- sfx_None,
- sfx_pistol,
- sfx_shotgn,
- sfx_sgcock,
- sfx_dshtgn,
- sfx_dbopn,
- sfx_dbcls,
- sfx_dbload,
- sfx_plasma,
- sfx_bfg,
- sfx_sawup,
- sfx_sawidl,
- sfx_sawful,
- sfx_sawhit,
- sfx_rlaunc,
- sfx_rxplod,
- sfx_firsht,
- sfx_firxpl,
- sfx_pstart,
- sfx_pstop,
- sfx_doropn,
- sfx_dorcls,
- sfx_stnmov,
- sfx_swtchn,
- sfx_swtchx,
- sfx_plpain,
- sfx_dmpain,
- sfx_popain,
- sfx_vipain,
- sfx_mnpain,
- sfx_pepain,
- sfx_slop,
- sfx_itemup,
- sfx_wpnup,
- sfx_oof,
- sfx_telept,
- sfx_posit1,
- sfx_posit2,
- sfx_posit3,
- sfx_bgsit1,
- sfx_bgsit2,
- sfx_sgtsit,
- sfx_cacsit,
- sfx_brssit,
- sfx_cybsit,
- sfx_spisit,
- sfx_bspsit,
- sfx_kntsit,
- sfx_vilsit,
- sfx_mansit,
- sfx_pesit,
- sfx_sklatk,
- sfx_sgtatk,
- sfx_skepch,
- sfx_vilatk,
- sfx_claw,
- sfx_skeswg,
- sfx_pldeth,
- sfx_pdiehi,
- sfx_podth1,
- sfx_podth2,
- sfx_podth3,
- sfx_bgdth1,
- sfx_bgdth2,
- sfx_sgtdth,
- sfx_cacdth,
- sfx_skldth,
- sfx_brsdth,
- sfx_cybdth,
- sfx_spidth,
- sfx_bspdth,
- sfx_vildth,
- sfx_kntdth,
- sfx_pedth,
- sfx_skedth,
- sfx_posact,
- sfx_bgact,
- sfx_dmact,
- sfx_bspact,
- sfx_bspwlk,
- sfx_vilact,
- sfx_noway,
- sfx_barexp,
- sfx_punch,
- sfx_hoof,
- sfx_metal,
- sfx_chgun,
- sfx_tink,
- sfx_bdopn,
- sfx_bdcls,
- sfx_itmbk,
- sfx_flame,
- sfx_flamst,
- sfx_getpow,
- sfx_bospit,
- sfx_boscub,
- sfx_bossit,
- sfx_bospn,
- sfx_bosdth,
- sfx_manatk,
- sfx_mandth,
- sfx_sssit,
- sfx_ssdth,
- sfx_keenpn,
- sfx_keendt,
- sfx_skeact,
- sfx_skesit,
- sfx_skeatk,
- sfx_radio,
- NUMSFX
- } sfxenum_t;
- #endif
|