sounds.h (5570B)
1 /* 2 =========================================================================== 3 4 Doom 3 BFG Edition GPL Source Code 5 Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. 6 7 This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). 8 9 Doom 3 BFG Edition Source Code is free software: you can redistribute it and/or modify 10 it under the terms of the GNU General Public License as published by 11 the Free Software Foundation, either version 3 of the License, or 12 (at your option) any later version. 13 14 Doom 3 BFG Edition Source Code is distributed in the hope that it will be useful, 15 but WITHOUT ANY WARRANTY; without even the implied warranty of 16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 GNU General Public License for more details. 18 19 You should have received a copy of the GNU General Public License 20 along with Doom 3 BFG Edition Source Code. If not, see <http://www.gnu.org/licenses/>. 21 22 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. 23 24 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. 25 26 =========================================================================== 27 */ 28 29 #ifndef __SOUNDS__ 30 #define __SOUNDS__ 31 32 33 // 34 // SoundFX struct. 35 // 36 typedef struct sfxinfo_struct sfxinfo_t; 37 38 struct sfxinfo_struct 39 { 40 // up to 6-character name 41 char* name; 42 43 // Sfx singularity (only one at a time) 44 int singularity; 45 46 // Sfx priority 47 int priority; 48 49 // referenced sound if a link 50 sfxinfo_t* link; 51 52 // pitch if a link 53 int pitch; 54 55 // volume if a link 56 int volume; 57 58 // sound data 59 void* data; 60 61 // this is checked every second to see if sound 62 // can be thrown out (if 0, then decrement, if -1, 63 // then throw out, if > 0, then it is in use) 64 int usefulness; 65 66 // lump number of sfx 67 int lumpnum; 68 }; 69 70 71 72 73 // 74 // MusicInfo struct. 75 // 76 typedef struct 77 { 78 // up to 6-character name 79 const char* name; 80 81 // lump number of music 82 int lumpnum; 83 84 // music data 85 void* data; 86 87 // music handle once registered 88 int handle; 89 90 } musicinfo_t; 91 92 93 94 95 // the complete set of sound effects 96 extern sfxinfo_t S_sfx[]; 97 98 // the complete set of music 99 extern musicinfo_t S_music[]; 100 101 // 102 // Identifiers for all music in game. 103 // 104 105 typedef enum 106 { 107 mus_None, 108 mus_e1m1, 109 mus_e1m2, 110 mus_e1m3, 111 mus_e1m4, 112 mus_e1m5, 113 mus_e1m6, 114 mus_e1m7, 115 mus_e1m8, 116 mus_e1m9, 117 mus_e2m1, 118 mus_e2m2, 119 mus_e2m3, 120 mus_e2m4, 121 mus_e2m5, 122 mus_e2m6, 123 mus_e2m7, 124 mus_e2m8, 125 mus_e2m9, 126 mus_e3m1, 127 mus_e3m2, 128 mus_e3m3, 129 mus_e3m4, 130 mus_e3m5, 131 mus_e3m6, 132 mus_e3m7, 133 mus_e3m8, 134 mus_e3m9, 135 mus_inter, 136 mus_intro, 137 mus_bunny, 138 mus_victor, 139 mus_introa, 140 mus_runnin, 141 mus_stalks, 142 mus_countd, 143 mus_betwee, 144 mus_doom, 145 mus_the_da, 146 mus_shawn, 147 mus_ddtblu, 148 mus_in_cit, 149 mus_dead, 150 mus_stlks2, 151 mus_theda2, 152 mus_doom2, 153 mus_ddtbl2, 154 mus_runni2, 155 mus_dead2, 156 mus_stlks3, 157 mus_romero, 158 mus_shawn2, 159 mus_messag, 160 mus_count2, 161 mus_ddtbl3, 162 mus_ampie, 163 mus_theda3, 164 mus_adrian, 165 mus_messg2, 166 mus_romer2, 167 mus_tense, 168 mus_shawn3, 169 mus_openin, 170 mus_evil, 171 mus_ultima, 172 mus_read_m, 173 mus_dm2ttl, 174 mus_dm2int, 175 NUMMUSIC 176 } musicenum_t; 177 178 179 // 180 // Identifiers for all sfx in game. 181 // 182 183 typedef enum 184 { 185 sfx_None, 186 sfx_pistol, 187 sfx_shotgn, 188 sfx_sgcock, 189 sfx_dshtgn, 190 sfx_dbopn, 191 sfx_dbcls, 192 sfx_dbload, 193 sfx_plasma, 194 sfx_bfg, 195 sfx_sawup, 196 sfx_sawidl, 197 sfx_sawful, 198 sfx_sawhit, 199 sfx_rlaunc, 200 sfx_rxplod, 201 sfx_firsht, 202 sfx_firxpl, 203 sfx_pstart, 204 sfx_pstop, 205 sfx_doropn, 206 sfx_dorcls, 207 sfx_stnmov, 208 sfx_swtchn, 209 sfx_swtchx, 210 sfx_plpain, 211 sfx_dmpain, 212 sfx_popain, 213 sfx_vipain, 214 sfx_mnpain, 215 sfx_pepain, 216 sfx_slop, 217 sfx_itemup, 218 sfx_wpnup, 219 sfx_oof, 220 sfx_telept, 221 sfx_posit1, 222 sfx_posit2, 223 sfx_posit3, 224 sfx_bgsit1, 225 sfx_bgsit2, 226 sfx_sgtsit, 227 sfx_cacsit, 228 sfx_brssit, 229 sfx_cybsit, 230 sfx_spisit, 231 sfx_bspsit, 232 sfx_kntsit, 233 sfx_vilsit, 234 sfx_mansit, 235 sfx_pesit, 236 sfx_sklatk, 237 sfx_sgtatk, 238 sfx_skepch, 239 sfx_vilatk, 240 sfx_claw, 241 sfx_skeswg, 242 sfx_pldeth, 243 sfx_pdiehi, 244 sfx_podth1, 245 sfx_podth2, 246 sfx_podth3, 247 sfx_bgdth1, 248 sfx_bgdth2, 249 sfx_sgtdth, 250 sfx_cacdth, 251 sfx_skldth, 252 sfx_brsdth, 253 sfx_cybdth, 254 sfx_spidth, 255 sfx_bspdth, 256 sfx_vildth, 257 sfx_kntdth, 258 sfx_pedth, 259 sfx_skedth, 260 sfx_posact, 261 sfx_bgact, 262 sfx_dmact, 263 sfx_bspact, 264 sfx_bspwlk, 265 sfx_vilact, 266 sfx_noway, 267 sfx_barexp, 268 sfx_punch, 269 sfx_hoof, 270 sfx_metal, 271 sfx_chgun, 272 sfx_tink, 273 sfx_bdopn, 274 sfx_bdcls, 275 sfx_itmbk, 276 sfx_flame, 277 sfx_flamst, 278 sfx_getpow, 279 sfx_bospit, 280 sfx_boscub, 281 sfx_bossit, 282 sfx_bospn, 283 sfx_bosdth, 284 sfx_manatk, 285 sfx_mandth, 286 sfx_sssit, 287 sfx_ssdth, 288 sfx_keenpn, 289 sfx_keendt, 290 sfx_skeact, 291 sfx_skesit, 292 sfx_skeatk, 293 sfx_radio, 294 NUMSFX 295 } sfxenum_t; 296 297 #endif 298 299