1 // SONIC ROBO BLAST 2 2 //----------------------------------------------------------------------------- 3 // Copyright (C) 1993-1996 by id Software, Inc. 4 // Copyright (C) 1998-2000 by DooM Legacy Team. 5 // Copyright (C) 1999-2020 by Sonic Team Junior. 6 // 7 // This program is free software distributed under the 8 // terms of the GNU General Public License, version 2. 9 // See the 'LICENSE' file for more details. 10 //----------------------------------------------------------------------------- 11 /// \file sounds.h 12 /// \brief Sound and music info 13 14 #ifndef __SOUNDS__ 15 #define __SOUNDS__ 16 17 // Customisable sounds for Skins 18 typedef enum 19 { 20 SKSSPIN, 21 SKSPUTPUT, 22 SKSPUDPUD, 23 SKSPLPAN1, // Ouchies 24 SKSPLPAN2, 25 SKSPLPAN3, 26 SKSPLPAN4, 27 SKSPLDET1, // Deaths 28 SKSPLDET2, 29 SKSPLDET3, 30 SKSPLDET4, 31 SKSPLVCT1, // Victories 32 SKSPLVCT2, 33 SKSPLVCT3, 34 SKSPLVCT4, 35 SKSTHOK, 36 SKSSPNDSH, 37 SKSZOOM, 38 SKSSKID, 39 SKSGASP, 40 SKSJUMP, 41 NUMSKINSOUNDS 42 } skinsound_t; 43 44 // free sfx for S_AddSoundFx() 45 #define NUMSFXFREESLOTS 1600 // Matches SOC Editor. 46 #define NUMSKINSFXSLOTS (MAXSKINS*NUMSKINSOUNDS) 47 48 // 49 // SoundFX struct. 50 // 51 typedef struct sfxinfo_struct sfxinfo_t; 52 53 struct sfxinfo_struct 54 { 55 // up to 6-character name 56 const char *name; 57 58 // Sfx singularity (only one at a time) 59 boolean singularity; 60 61 // Sfx priority 62 INT32 priority; 63 64 // pitch if a link 65 INT32 pitch; 66 67 // volume if a link 68 INT32 volume; 69 70 // sound data 71 void *data; 72 73 // length of sound data 74 size_t length; 75 76 // sound that can be remapped for a skin, indexes skins[].skinsounds 77 // 0 up to (NUMSKINSOUNDS-1), -1 = not skin specifc 78 INT32 skinsound; 79 80 // this is checked every second to see if sound 81 // can be thrown out (if 0, then decrement, if -1, 82 // then throw out, if > 0, then it is in use) 83 INT32 usefulness; 84 85 // lump number of sfx 86 lumpnum_t lumpnum; 87 88 // closed caption info/wiki table bait 89 char caption[32]; 90 }; 91 92 // the complete set of sound effects 93 extern sfxinfo_t S_sfx[]; 94 95 // 96 // Identifiers for all sfx in game. 97 // 98 99 // List of sounds (don't modify this comment!) 100 typedef enum 101 { 102 sfx_None, 103 104 // Skin Sounds 105 sfx_altdi1, 106 sfx_altdi2, 107 sfx_altdi3, 108 sfx_altdi4, 109 sfx_altow1, 110 sfx_altow2, 111 sfx_altow3, 112 sfx_altow4, 113 sfx_victr1, 114 sfx_victr2, 115 sfx_victr3, 116 sfx_victr4, 117 sfx_gasp, 118 sfx_jump, 119 sfx_pudpud, 120 sfx_putput, 121 sfx_spin, 122 sfx_spndsh, 123 sfx_thok, 124 sfx_zoom, 125 sfx_skid, 126 127 // Ambience/background objects/etc 128 sfx_ambint, 129 130 sfx_alarm, 131 sfx_buzz1, 132 sfx_buzz2, 133 sfx_buzz3, 134 sfx_buzz4, 135 sfx_crumbl, 136 sfx_fire, 137 sfx_grind, 138 sfx_laser, 139 sfx_mswing, 140 sfx_pstart, 141 sfx_pstop, 142 sfx_steam1, 143 sfx_steam2, 144 sfx_wbreak, 145 sfx_ambmac, 146 sfx_spsmsh, 147 148 sfx_rainin, 149 sfx_litng1, 150 sfx_litng2, 151 sfx_litng3, 152 sfx_litng4, 153 sfx_athun1, 154 sfx_athun2, 155 156 sfx_amwtr1, 157 sfx_amwtr2, 158 sfx_amwtr3, 159 sfx_amwtr4, 160 sfx_amwtr5, 161 sfx_amwtr6, 162 sfx_amwtr7, 163 sfx_amwtr8, 164 sfx_bubbl1, 165 sfx_bubbl2, 166 sfx_bubbl3, 167 sfx_bubbl4, 168 sfx_bubbl5, 169 sfx_floush, 170 sfx_splash, 171 sfx_splish, 172 sfx_wdrip1, 173 sfx_wdrip2, 174 sfx_wdrip3, 175 sfx_wdrip4, 176 sfx_wdrip5, 177 sfx_wdrip6, 178 sfx_wdrip7, 179 sfx_wdrip8, 180 sfx_wslap, 181 182 sfx_doora1, 183 sfx_doorb1, 184 sfx_doorc1, 185 sfx_doorc2, 186 sfx_doord1, 187 sfx_doord2, 188 sfx_eleva1, 189 sfx_eleva2, 190 sfx_eleva3, 191 sfx_elevb1, 192 sfx_elevb2, 193 sfx_elevb3, 194 195 sfx_ambin2, 196 sfx_lavbub, 197 sfx_rocks1, 198 sfx_rocks2, 199 sfx_rocks3, 200 sfx_rocks4, 201 sfx_rumbam, 202 sfx_rumble, 203 204 // Game objects, etc 205 sfx_appear, 206 sfx_bkpoof, 207 sfx_bnce1, 208 sfx_bnce2, 209 sfx_cannon, 210 sfx_cgot, 211 sfx_cybdth, 212 sfx_deton, 213 sfx_ding, // old sfx_appear sound 214 sfx_dmpain, 215 sfx_drown, 216 sfx_fizzle, 217 sfx_gbeep, 218 sfx_wepfir, 219 sfx_ghit, 220 sfx_gloop, 221 sfx_gspray, 222 sfx_gravch, 223 sfx_itemup, 224 sfx_jet, 225 sfx_jshard, 226 sfx_lose, 227 sfx_lvpass, 228 sfx_mindig, 229 sfx_mixup, 230 sfx_monton, 231 sfx_pogo, 232 sfx_pop, 233 sfx_rail1, 234 sfx_rail2, 235 sfx_rlaunc, 236 sfx_shield, 237 sfx_wirlsg, 238 sfx_forcsg, 239 sfx_frcssg, 240 sfx_elemsg, 241 sfx_armasg, 242 sfx_attrsg, 243 sfx_shldls, 244 sfx_spdpad, 245 sfx_spkdth, 246 sfx_spring, 247 sfx_statu1, 248 sfx_statu2, 249 sfx_strpst, 250 sfx_supert, 251 sfx_telept, 252 sfx_tink, 253 sfx_token, 254 sfx_trfire, 255 sfx_trpowr, 256 sfx_turhit, 257 sfx_wdjump, 258 sfx_shrpsp, 259 sfx_shrpgo, 260 sfx_mswarp, 261 sfx_mspogo, 262 sfx_boingf, 263 sfx_corkp, 264 sfx_corkh, 265 sfx_alart, 266 sfx_vwre, 267 sfx_bowl, 268 sfx_chuchu, 269 sfx_bsnipe, 270 sfx_sprong, 271 sfx_lvfal1, 272 sfx_pscree, 273 sfx_iceb, 274 sfx_shattr, 275 sfx_antiri, 276 277 // Menu, interface 278 sfx_chchng, 279 sfx_dwnind, 280 sfx_emfind, 281 sfx_flgcap, 282 sfx_menu1, 283 sfx_oneup, 284 sfx_ptally, 285 sfx_radio, 286 sfx_wepchg, 287 sfx_wtrdng, 288 sfx_zelda, 289 sfx_adderr, 290 sfx_notadd, 291 sfx_addfil, 292 293 // NiGHTS 294 sfx_ideya, 295 sfx_xideya, // Xmas 296 sfx_nbmper, 297 sfx_nxbump, // Xmas 298 sfx_ncchip, 299 sfx_ncitem, 300 sfx_nxitem, // Xmas 301 sfx_ngdone, 302 sfx_nxdone, // Xmas 303 sfx_drill1, 304 sfx_drill2, 305 sfx_ncspec, 306 sfx_nghurt, 307 sfx_ngskid, 308 sfx_hoop1, 309 sfx_hoop2, 310 sfx_hoop3, 311 sfx_hidden, 312 sfx_prloop, 313 sfx_timeup, 314 sfx_ngjump, 315 sfx_peww, 316 317 // Halloween 318 sfx_lntsit, 319 sfx_lntdie, 320 sfx_pumpkn, 321 sfx_ghosty, 322 323 // Mario 324 sfx_koopfr, 325 sfx_mario1, 326 sfx_mario2, 327 sfx_mario3, 328 sfx_mario4, 329 sfx_mario5, 330 sfx_mario6, 331 sfx_mario7, 332 sfx_mario8, 333 sfx_mario9, 334 sfx_marioa, 335 sfx_thwomp, 336 337 // Black Eggman 338 sfx_bebomb, 339 sfx_bechrg, 340 sfx_becrsh, 341 sfx_bedeen, 342 sfx_bedie1, 343 sfx_bedie2, 344 sfx_beeyow, 345 sfx_befall, 346 sfx_befire, 347 sfx_beflap, 348 sfx_begoop, 349 sfx_begrnd, 350 sfx_behurt, 351 sfx_bejet1, 352 sfx_belnch, 353 sfx_beoutb, 354 sfx_beragh, 355 sfx_beshot, 356 sfx_bestep, 357 sfx_bestp2, 358 sfx_bewar1, 359 sfx_bewar2, 360 sfx_bewar3, 361 sfx_bewar4, 362 sfx_bexpld, 363 sfx_bgxpld, 364 365 // Cy-Brak-Demon 366 sfx_beelec, // Electric barrier ambience 367 sfx_brakrl, // Rocket launcher 368 sfx_brakrx, // Rocket explodes 369 370 // S1 sounds 371 sfx_s1a0, 372 sfx_s1a1, 373 sfx_s1a2, 374 sfx_s1a3, 375 sfx_s1a4, 376 sfx_s1a5, 377 sfx_s1a6, 378 sfx_s1a7, 379 sfx_s1a8, 380 sfx_s1a9, 381 sfx_s1aa, 382 sfx_s1ab, 383 sfx_s1ac, 384 sfx_s1ad, 385 sfx_s1ae, 386 sfx_s1af, 387 sfx_s1b0, 388 sfx_s1b1, 389 sfx_s1b2, 390 sfx_s1b3, 391 sfx_s1b4, 392 sfx_s1b5, 393 sfx_s1b6, 394 sfx_s1b7, 395 sfx_s1b8, 396 sfx_s1b9, 397 sfx_s1ba, 398 sfx_s1bb, 399 sfx_s1bc, 400 sfx_s1bd, 401 sfx_s1be, 402 sfx_s1bf, 403 sfx_s1c0, 404 sfx_s1c1, 405 sfx_s1c2, 406 sfx_s1c3, 407 sfx_s1c4, 408 sfx_s1c5, 409 sfx_s1c6, 410 sfx_s1c7, 411 sfx_s1c8, 412 sfx_s1c9, 413 sfx_s1ca, 414 sfx_s1cb, 415 sfx_s1cc, 416 sfx_s1cd, 417 sfx_s1ce, 418 sfx_s1cf, 419 420 // S2 sounds 421 sfx_s220, 422 sfx_s221, 423 sfx_s222, 424 sfx_s223, 425 sfx_s224, 426 sfx_s225, 427 sfx_s226, 428 sfx_s227, 429 sfx_s228, 430 sfx_s229, 431 sfx_s22a, 432 sfx_s22b, 433 sfx_s22c, 434 sfx_s22d, 435 sfx_s22e, 436 sfx_s22f, 437 sfx_s230, 438 sfx_s231, 439 sfx_s232, 440 sfx_s233, 441 sfx_s234, 442 sfx_s235, 443 sfx_s236, 444 sfx_s237, 445 sfx_s238, 446 sfx_s239, 447 sfx_s23a, 448 sfx_s23b, 449 sfx_s23c, 450 sfx_s23d, 451 sfx_s23e, 452 sfx_s23f, 453 sfx_s240, 454 sfx_s241, 455 sfx_s242, 456 sfx_s243, 457 sfx_s244, 458 sfx_s245, 459 sfx_s246, 460 sfx_s247, 461 sfx_s248, 462 sfx_s249, 463 sfx_s24a, 464 sfx_s24b, 465 sfx_s24c, 466 sfx_s24d, 467 sfx_s24e, 468 sfx_s24f, 469 sfx_s250, 470 sfx_s251, 471 sfx_s252, 472 sfx_s253, 473 sfx_s254, 474 sfx_s255, 475 sfx_s256, 476 sfx_s257, 477 sfx_s258, 478 sfx_s259, 479 sfx_s25a, 480 sfx_s25b, 481 sfx_s25c, 482 sfx_s25d, 483 sfx_s25e, 484 sfx_s25f, 485 sfx_s260, 486 487 // S3&K sounds 488 sfx_s3k2b, 489 sfx_s3k33, 490 sfx_s3k34, 491 sfx_s3k35, 492 sfx_s3k36, 493 sfx_s3k37, 494 sfx_s3k38, 495 sfx_s3k39, 496 sfx_s3k3a, 497 sfx_s3k3b, 498 sfx_s3k3c, 499 sfx_s3k3d, 500 sfx_s3k3e, 501 sfx_s3k3f, 502 sfx_s3k40, 503 sfx_s3k41, 504 sfx_s3k42, 505 sfx_s3k43, 506 sfx_s3k44, 507 sfx_s3k45, 508 sfx_s3k46, 509 sfx_s3k47, 510 sfx_s3k48, 511 sfx_s3k49, 512 sfx_s3k4a, 513 sfx_s3k4b, 514 sfx_s3k4c, 515 sfx_s3k4d, 516 sfx_s3k4e, 517 sfx_s3k4f, 518 sfx_s3k50, 519 sfx_s3k51, 520 sfx_s3k52, 521 sfx_s3k53, 522 sfx_s3k54, 523 sfx_s3k55, 524 sfx_s3k56, 525 sfx_s3k57, 526 sfx_s3k58, 527 sfx_s3k59, 528 sfx_s3k5a, 529 sfx_s3k5b, 530 sfx_s3k5c, 531 sfx_s3k5d, 532 sfx_s3k5e, 533 sfx_s3k5f, 534 sfx_s3k60, 535 sfx_s3k61, 536 sfx_s3k62, 537 sfx_s3k63, 538 sfx_s3k64, 539 sfx_s3k65, 540 sfx_s3k66, 541 sfx_s3k67, 542 sfx_s3k68, 543 sfx_s3k69, 544 sfx_s3k6a, 545 sfx_s3k6b, 546 sfx_s3k6c, 547 sfx_s3k6d, 548 sfx_s3k6e, 549 sfx_s3k6f, 550 sfx_s3k70, 551 sfx_s3k71, 552 sfx_s3k72, 553 sfx_s3k73, 554 sfx_s3k74, 555 sfx_s3k75, 556 sfx_s3k76, 557 sfx_s3k77, 558 sfx_s3k78, 559 sfx_s3k79, 560 sfx_s3k7a, 561 sfx_s3k7b, 562 sfx_s3k7c, 563 sfx_s3k7d, 564 sfx_s3k7e, 565 sfx_s3k7f, 566 sfx_s3k80, 567 sfx_s3k81, 568 sfx_s3k82, 569 sfx_s3k83, 570 sfx_s3k84, 571 sfx_s3k85, 572 sfx_s3k86, 573 sfx_s3k87, 574 sfx_s3k88, 575 sfx_s3k89, 576 sfx_s3k8a, 577 sfx_s3k8b, 578 sfx_s3k8c, 579 sfx_s3k8d, 580 sfx_s3k8e, 581 sfx_s3k8f, 582 sfx_s3k90, 583 sfx_s3k91, 584 sfx_s3k92, 585 sfx_s3k93, 586 sfx_s3k94, 587 sfx_s3k95, 588 sfx_s3k96, 589 sfx_s3k97, 590 sfx_s3k98, 591 sfx_s3k99, 592 sfx_s3k9a, 593 sfx_s3k9b, 594 sfx_s3k9c, 595 sfx_s3k9d, 596 sfx_s3k9e, 597 sfx_s3k9f, 598 sfx_s3ka0, 599 sfx_s3ka1, 600 sfx_s3ka2, 601 sfx_s3ka3, 602 sfx_s3ka4, 603 sfx_s3ka5, 604 sfx_s3ka6, 605 sfx_s3ka7, 606 sfx_s3ka8, 607 sfx_s3ka9, 608 sfx_s3kaa, 609 sfx_s3kab, 610 sfx_s3kab1, 611 sfx_s3kab2, 612 sfx_s3kab3, 613 sfx_s3kab4, 614 sfx_s3kab5, 615 sfx_s3kab6, 616 sfx_s3kab7, 617 sfx_s3kab8, 618 sfx_s3kab9, 619 sfx_s3kaba, 620 sfx_s3kabb, 621 sfx_s3kabc, 622 sfx_s3kabd, 623 sfx_s3kabe, 624 sfx_s3kabf, 625 sfx_s3kac, 626 sfx_s3kad, 627 sfx_s3kae, 628 sfx_s3kaf, 629 sfx_s3kb0, 630 sfx_s3kb1, 631 sfx_s3kb2, 632 sfx_s3kb3, 633 sfx_s3kb4, 634 sfx_s3kb5, 635 sfx_s3kb6, 636 sfx_s3kb7, 637 sfx_s3kb8, 638 sfx_s3kb9, 639 sfx_s3kba, 640 sfx_s3kbb, 641 sfx_s3kbcs, 642 sfx_s3kbcl, 643 sfx_s3kbds, 644 sfx_s3kbdl, 645 sfx_s3kbes, 646 sfx_s3kbel, 647 sfx_s3kbfs, 648 sfx_s3kbfl, 649 sfx_s3kc0s, 650 sfx_s3kc0l, 651 sfx_s3kc1s, 652 sfx_s3kc1l, 653 sfx_s3kc2s, 654 sfx_s3kc2l, 655 sfx_s3kc3s, 656 sfx_s3kc3l, 657 sfx_s3kc4s, 658 sfx_s3kc4l, 659 sfx_s3kc5s, 660 sfx_s3kc5l, 661 sfx_s3kc6s, 662 sfx_s3kc6l, 663 sfx_s3kc7s, 664 sfx_s3kc7l, 665 sfx_s3kc8s, 666 sfx_s3kc8l, 667 sfx_s3kc9s, 668 sfx_s3kc9l, 669 sfx_s3kcas, 670 sfx_s3kcal, 671 sfx_s3kcbs, 672 sfx_s3kcbl, 673 sfx_s3kccs, 674 sfx_s3kccl, 675 sfx_s3kcds, 676 sfx_s3kcdl, 677 sfx_s3kces, 678 sfx_s3kcel, 679 sfx_s3kcfs, 680 sfx_s3kcfl, 681 sfx_s3kd0s, 682 sfx_s3kd0l, 683 sfx_s3kd1s, 684 sfx_s3kd1l, 685 sfx_s3kd2s, 686 sfx_s3kd2l, 687 sfx_s3kd3s, 688 sfx_s3kd3l, 689 sfx_s3kd4s, 690 sfx_s3kd4l, 691 sfx_s3kd5s, 692 sfx_s3kd5l, 693 sfx_s3kd6s, 694 sfx_s3kd6l, 695 sfx_s3kd7s, 696 sfx_s3kd7l, 697 sfx_s3kd8s, 698 sfx_s3kd8l, 699 sfx_s3kd9s, 700 sfx_s3kd9l, 701 sfx_s3kdas, 702 sfx_s3kdal, 703 sfx_s3kdbs, 704 sfx_s3kdbl, 705 706 // 3DB sounds 707 sfx_3db06, 708 sfx_3db09, 709 sfx_3db14, 710 sfx_3db16, 711 712 // SCD sounds 713 sfx_cdfm00, 714 sfx_cdfm01, 715 sfx_cdfm02, 716 sfx_cdfm03, 717 sfx_cdfm04, 718 sfx_cdfm05, 719 sfx_cdfm06, 720 sfx_cdfm07, 721 sfx_cdfm08, 722 sfx_cdfm09, 723 sfx_cdfm10, 724 sfx_cdfm11, 725 sfx_cdfm12, 726 sfx_cdfm13, 727 sfx_cdfm14, 728 sfx_cdfm15, 729 sfx_cdfm16, 730 sfx_cdfm17, 731 sfx_cdfm18, 732 sfx_cdfm19, 733 sfx_cdfm20, 734 sfx_cdfm21, 735 sfx_cdfm22, 736 sfx_cdfm23, 737 sfx_cdfm24, 738 sfx_cdfm25, 739 sfx_cdfm26, 740 sfx_cdfm27, 741 sfx_cdfm28, 742 sfx_cdfm29, 743 sfx_cdfm30, 744 sfx_cdfm31, 745 sfx_cdfm32, 746 sfx_cdfm33, 747 sfx_cdfm34, 748 sfx_cdfm35, 749 sfx_cdfm36, 750 sfx_cdfm37, 751 sfx_cdfm38, 752 sfx_cdfm39, 753 sfx_cdfm40, 754 sfx_cdfm41, 755 sfx_cdfm42, 756 sfx_cdfm43, 757 sfx_cdfm44, 758 sfx_cdfm45, 759 sfx_cdfm46, 760 sfx_cdfm47, 761 sfx_cdfm48, 762 sfx_cdfm49, 763 sfx_cdfm50, 764 sfx_cdfm51, 765 sfx_cdfm52, 766 sfx_cdfm53, 767 sfx_cdfm54, 768 sfx_cdfm55, 769 sfx_cdfm56, 770 sfx_cdfm57, 771 sfx_cdfm58, 772 sfx_cdfm59, 773 sfx_cdfm60, 774 sfx_cdfm61, 775 sfx_cdfm62, 776 sfx_cdfm63, 777 sfx_cdfm64, 778 sfx_cdfm65, 779 sfx_cdfm66, 780 sfx_cdfm67, 781 sfx_cdfm68, 782 sfx_cdfm69, 783 sfx_cdfm70, 784 sfx_cdfm71, 785 sfx_cdfm72, 786 sfx_cdfm73, 787 sfx_cdfm74, 788 sfx_cdfm75, 789 sfx_cdfm76, 790 sfx_cdfm77, 791 sfx_cdfm78, 792 sfx_cdfm79, 793 sfx_cdpcm0, 794 sfx_cdpcm1, 795 sfx_cdpcm2, 796 sfx_cdpcm3, 797 sfx_cdpcm4, 798 sfx_cdpcm5, 799 sfx_cdpcm6, 800 sfx_cdpcm7, 801 sfx_cdpcm8, 802 sfx_cdpcm9, 803 804 // KC sounds 805 sfx_kc2a, 806 sfx_kc2b, 807 sfx_kc2c, 808 sfx_kc2d, 809 sfx_kc2e, 810 sfx_kc2f, 811 sfx_kc30, 812 sfx_kc31, 813 sfx_kc32, 814 sfx_kc33, 815 sfx_kc34, 816 sfx_kc35, 817 sfx_kc36, 818 sfx_kc37, 819 sfx_kc38, 820 sfx_kc39, 821 sfx_kc3a, 822 sfx_kc3b, 823 sfx_kc3c, 824 sfx_kc3d, 825 sfx_kc3e, 826 sfx_kc3f, 827 sfx_kc40, 828 sfx_kc41, 829 sfx_kc42, 830 sfx_kc43, 831 sfx_kc44, 832 sfx_kc45, 833 sfx_kc46, 834 sfx_kc47, 835 sfx_kc48, 836 sfx_kc49, 837 sfx_kc4a, 838 sfx_kc4b, 839 sfx_kc4c, 840 sfx_kc4d, 841 sfx_kc4e, 842 sfx_kc4f, 843 sfx_kc50, 844 sfx_kc51, 845 sfx_kc52, 846 sfx_kc53, 847 sfx_kc54, 848 sfx_kc55, 849 sfx_kc56, 850 sfx_kc57, 851 sfx_kc58, 852 sfx_kc59, 853 sfx_kc5a, 854 sfx_kc5b, 855 sfx_kc5c, 856 sfx_kc5d, 857 sfx_kc5e, 858 sfx_kc5f, 859 sfx_kc60, 860 sfx_kc61, 861 sfx_kc62, 862 sfx_kc63, 863 sfx_kc64, 864 sfx_kc65, 865 sfx_kc66, 866 sfx_kc67, 867 sfx_kc68, 868 sfx_kc69, 869 sfx_kc6b, 870 sfx_kc6c, 871 sfx_kc6d, 872 sfx_kc6e, 873 874 // free slots for S_AddSoundFx() at run-time -------------------- 875 sfx_freeslot0, 876 // 877 // ... 60 free sounds here ... 878 // 879 sfx_lastfreeslot = sfx_freeslot0 + NUMSFXFREESLOTS-1, 880 // end of freeslots --------------------------------------------- 881 882 sfx_skinsoundslot0, 883 sfx_lastskinsoundslot = sfx_skinsoundslot0 + NUMSKINSFXSLOTS-1, 884 NUMSFX 885 } sfxenum_t; 886 887 888 void S_InitRuntimeSounds(void); 889 sfxenum_t S_AddSoundFx(const char *name, boolean singular, INT32 flags, boolean skinsound); 890 extern sfxenum_t sfxfree; // sound test and slotting 891 void S_RemoveSoundFx(sfxenum_t id); 892 893 #endif 894