sounds.h 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. /* Emacs style mode select -*- C++ -*-
  2. *-----------------------------------------------------------------------------
  3. *
  4. *
  5. * PrBoom: a Doom port merged with LxDoom and LSDLDoom
  6. * based on BOOM, a modified and improved DOOM engine
  7. * Copyright (C) 1999 by
  8. * id Software, Chi Hoang, Lee Killough, Jim Flynn, Rand Phares, Ty Halderman
  9. * Copyright (C) 1999-2000 by
  10. * Jess Haas, Nicolas Kalkhof, Colin Phipps, Florian Schulze
  11. * Copyright 2005, 2006 by
  12. * Florian Schulze, Colin Phipps, Neil Stevens, Andrey Budko
  13. *
  14. * This program is free software; you can redistribute it and/or
  15. * modify it under the terms of the GNU General Public License
  16. * as published by the Free Software Foundation; either version 2
  17. * of the License, or (at your option) any later version.
  18. *
  19. * This program is distributed in the hope that it will be useful,
  20. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  22. * GNU General Public License for more details.
  23. *
  24. * You should have received a copy of the GNU General Public License
  25. * along with this program; if not, write to the Free Software
  26. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
  27. * 02111-1307, USA.
  28. *
  29. * DESCRIPTION:
  30. * Created by the sound utility written by Dave Taylor.
  31. * Kept as a sample, DOOM2 sounds. Frozen.
  32. *
  33. *-----------------------------------------------------------------------------*/
  34. #ifndef __SOUNDS__
  35. #define __SOUNDS__
  36. //
  37. // SoundFX struct.
  38. //
  39. struct sfxinfo_struct;
  40. typedef struct sfxinfo_struct sfxinfo_t;
  41. struct sfxinfo_struct {
  42. // up to 6-character name
  43. const char *name; // CPhipps - const
  44. int singularity;
  45. // Sfx priority
  46. int priority;
  47. // referenced sound if a link
  48. const sfxinfo_t *link;
  49. // volume if a link
  50. int volume;
  51. //Length of clip
  52. int ticks;
  53. };
  54. //
  55. // MusicInfo struct.
  56. //
  57. // the complete set of sound effects
  58. extern const sfxinfo_t S_sfx[];
  59. //
  60. // Identifiers for all music in game.
  61. //
  62. typedef enum {
  63. mus_None,
  64. mus_e1m1,
  65. mus_e1m2,
  66. mus_e1m3,
  67. mus_e1m4,
  68. mus_e1m5,
  69. mus_e1m6,
  70. mus_e1m7,
  71. mus_e1m8,
  72. mus_e1m9,
  73. mus_e2m1,
  74. mus_e2m2,
  75. mus_e2m3,
  76. mus_e2m4,
  77. mus_e2m5,
  78. mus_e2m6,
  79. mus_e2m7,
  80. mus_e2m8,
  81. mus_e2m9,
  82. mus_e3m1,
  83. mus_e3m2,
  84. mus_e3m3,
  85. mus_e3m4,
  86. mus_e3m5,
  87. mus_e3m6,
  88. mus_e3m7,
  89. mus_e3m8,
  90. mus_e3m9,
  91. mus_inter,
  92. mus_intro,
  93. mus_bunny,
  94. mus_victor,
  95. mus_introa,
  96. mus_runnin,
  97. mus_stalks,
  98. mus_countd,
  99. mus_betwee,
  100. mus_doom,
  101. mus_the_da,
  102. mus_shawn,
  103. mus_ddtblu,
  104. mus_in_cit,
  105. mus_dead,
  106. mus_stlks2,
  107. mus_theda2,
  108. mus_doom2,
  109. mus_ddtbl2,
  110. mus_runni2,
  111. mus_dead2,
  112. mus_stlks3,
  113. mus_romero,
  114. mus_shawn2,
  115. mus_messag,
  116. mus_count2,
  117. mus_ddtbl3,
  118. mus_ampie,
  119. mus_theda3,
  120. mus_adrian,
  121. mus_messg2,
  122. mus_romer2,
  123. mus_tense,
  124. mus_shawn3,
  125. mus_openin,
  126. mus_evil,
  127. mus_ultima,
  128. mus_read_m,
  129. mus_dm2ttl,
  130. mus_dm2int,
  131. NUMMUSIC
  132. } musicenum_t;
  133. //
  134. // Identifiers for all sfx in game.
  135. //
  136. typedef enum {
  137. sfx_None,
  138. sfx_pistol,
  139. sfx_shotgn,
  140. sfx_sgcock,
  141. sfx_dshtgn,
  142. sfx_dbopn,
  143. sfx_dbcls,
  144. sfx_dbload,
  145. sfx_plasma,
  146. sfx_bfg,
  147. sfx_sawup,
  148. sfx_sawidl,
  149. sfx_sawful,
  150. sfx_sawhit,
  151. sfx_rlaunc,
  152. sfx_rxplod,
  153. sfx_firsht,
  154. sfx_firxpl,
  155. sfx_pstart,
  156. sfx_pstop,
  157. sfx_doropn,
  158. sfx_dorcls,
  159. sfx_stnmov,
  160. sfx_swtchn,
  161. sfx_swtchx,
  162. sfx_plpain,
  163. sfx_dmpain,
  164. sfx_popain,
  165. sfx_vipain,
  166. sfx_mnpain,
  167. sfx_pepain,
  168. sfx_slop,
  169. sfx_itemup,
  170. sfx_wpnup,
  171. sfx_oof,
  172. sfx_telept,
  173. sfx_posit1,
  174. sfx_posit2,
  175. sfx_posit3,
  176. sfx_bgsit1,
  177. sfx_bgsit2,
  178. sfx_sgtsit,
  179. sfx_cacsit,
  180. sfx_brssit,
  181. sfx_cybsit,
  182. sfx_spisit,
  183. sfx_bspsit,
  184. sfx_kntsit,
  185. sfx_vilsit,
  186. sfx_mansit,
  187. sfx_pesit,
  188. sfx_sklatk,
  189. sfx_sgtatk,
  190. sfx_skepch,
  191. sfx_vilatk,
  192. sfx_claw,
  193. sfx_skeswg,
  194. sfx_pldeth,
  195. sfx_pdiehi,
  196. sfx_podth1,
  197. sfx_podth2,
  198. sfx_podth3,
  199. sfx_bgdth1,
  200. sfx_bgdth2,
  201. sfx_sgtdth,
  202. sfx_cacdth,
  203. sfx_skldth,
  204. sfx_brsdth,
  205. sfx_cybdth,
  206. sfx_spidth,
  207. sfx_bspdth,
  208. sfx_vildth,
  209. sfx_kntdth,
  210. sfx_pedth,
  211. sfx_skedth,
  212. sfx_posact,
  213. sfx_bgact,
  214. sfx_dmact,
  215. sfx_bspact,
  216. sfx_bspwlk,
  217. sfx_vilact,
  218. sfx_noway,
  219. sfx_barexp,
  220. sfx_punch,
  221. sfx_hoof,
  222. sfx_metal,
  223. sfx_chgun,
  224. sfx_tink,
  225. sfx_bdopn,
  226. sfx_bdcls,
  227. sfx_itmbk,
  228. sfx_flame,
  229. sfx_flamst,
  230. sfx_getpow,
  231. sfx_bospit,
  232. sfx_boscub,
  233. sfx_bossit,
  234. sfx_bospn,
  235. sfx_bosdth,
  236. sfx_manatk,
  237. sfx_mandth,
  238. sfx_sssit,
  239. sfx_ssdth,
  240. sfx_keenpn,
  241. sfx_keendt,
  242. sfx_skeact,
  243. sfx_skesit,
  244. sfx_skeatk,
  245. sfx_radio,
  246. NUMSFX
  247. } sfxenum_t;
  248. #endif