SRB2/src/sounds.h
2014-03-18 13:56:54 -04:00

1637 lines
22 KiB
C

// SONIC ROBO BLAST 2
//-----------------------------------------------------------------------------
// Copyright (C) 1993-1996 by id Software, Inc.
// Copyright (C) 1998-2000 by DooM Legacy Team.
// Copyright (C) 1999-2014 by Sonic Team Junior.
//
// This program is free software distributed under the
// terms of the GNU General Public License, version 2.
// See the 'LICENSE' file for more details.
//-----------------------------------------------------------------------------
/// \file sounds.h
/// \brief Sound and music info
#ifndef __SOUNDS__
#define __SOUNDS__
// Customisable sounds for Skins
typedef enum
{
SKSSPIN,
SKSPUTPUT,
SKSPUDPUD,
SKSPLPAN1, // Ouchies
SKSPLPAN2,
SKSPLPAN3,
SKSPLPAN4,
SKSPLDET1, // Deaths
SKSPLDET2,
SKSPLDET3,
SKSPLDET4,
SKSPLVCT1, // Victories
SKSPLVCT2,
SKSPLVCT3,
SKSPLVCT4,
SKSTHOK,
SKSSPNDSH,
SKSZOOM,
SKSSKID,
SKSRADIO,
SKSGASP,
SKSJUMP,
NUMSKINSOUNDS
} skinsound_t;
// free sfx for S_AddSoundFx()
#define NUMSFXFREESLOTS 800 // Matches SOC Editor.
#define NUMSKINSFXSLOTS (MAXSKINS*NUMSKINSOUNDS)
//
// SoundFX struct.
//
typedef struct sfxinfo_struct sfxinfo_t;
struct sfxinfo_struct
{
// up to 6-character name
const char *name;
// Sfx singularity (only one at a time)
boolean singularity;
// Sfx priority
INT32 priority;
// pitch if a link
INT32 pitch;
// volume if a link
INT32 volume;
// sound data
void *data;
// length of sound data
size_t length;
// sound that can be remapped for a skin, indexes skins[].skinsounds
// 0 up to (NUMSKINSOUNDS-1), -1 = not skin specifc
INT32 skinsound;
// 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)
INT32 usefulness;
// lump number of sfx
lumpnum_t lumpnum;
};
//
// MusicInfo struct.
//
typedef struct
{
// up to 6-character name
const char *name;
// lump number of music
lumpnum_t lumpnum;
// music data
void *data;
// music handle once registered
INT32 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.
//
// Music list (don't edit this comment!)
typedef enum
{
mus_None,
mus_map01m,
mus_map02m,
mus_map03m,
mus_map04m,
mus_map05m,
mus_map06m,
mus_map07m,
mus_map08m,
mus_map09m,
mus_map10m,
mus_map11m,
mus_map12m,
mus_map13m,
mus_map14m,
mus_map15m,
mus_map16m,
mus_map17m,
mus_map18m,
mus_map19m,
mus_map20m,
mus_map21m,
mus_map22m,
mus_map23m,
mus_map24m,
mus_map25m,
mus_map26m,
mus_map27m,
mus_map28m,
mus_map29m,
mus_map30m,
mus_map31m,
mus_map32m,
mus_map33m,
mus_map34m,
mus_map35m,
mus_map36m,
mus_map37m,
mus_map38m,
mus_map39m,
mus_map40m,
mus_map41m,
mus_map42m,
mus_map43m,
mus_map44m,
mus_map45m,
mus_map46m,
mus_map47m,
mus_map48m,
mus_map49m,
mus_map50m,
mus_map51m,
mus_map52m,
mus_map53m,
mus_map54m,
mus_map55m,
mus_map56m,
mus_map57m,
mus_map58m,
mus_map59m,
mus_map60m,
mus_map61m,
mus_map62m,
mus_map63m,
mus_map64m,
mus_map65m,
mus_map66m,
mus_map67m,
mus_map68m,
mus_map69m,
mus_map70m,
mus_map71m,
mus_map72m,
mus_map73m,
mus_map74m,
mus_map75m,
mus_map76m,
mus_map77m,
mus_map78m,
mus_map79m,
mus_map80m,
mus_map81m,
mus_map82m,
mus_map83m,
mus_map84m,
mus_map85m,
mus_map86m,
mus_map87m,
mus_map88m,
mus_map89m,
mus_map90m,
mus_map91m,
mus_map92m,
mus_map93m,
mus_map94m,
mus_map95m,
mus_map96m,
mus_map97m,
mus_map98m,
mus_map99m,
mus_mapa0m,
mus_mapa1m,
mus_mapa2m,
mus_mapa3m,
mus_mapa4m,
mus_mapa5m,
mus_mapa6m,
mus_mapa7m,
mus_mapa8m,
mus_mapa9m,
mus_mapaam,
mus_mapabm,
mus_mapacm,
mus_mapadm,
mus_mapaem,
mus_mapafm,
mus_mapagm,
mus_mapahm,
mus_mapaim,
mus_mapajm,
mus_mapakm,
mus_mapalm,
mus_mapamm,
mus_mapanm,
mus_mapaom,
mus_mapapm,
mus_mapaqm,
mus_maparm,
mus_mapasm,
mus_mapatm,
mus_mapaum,
mus_mapavm,
mus_mapawm,
mus_mapaxm,
mus_mapaym,
mus_mapazm,
mus_mapb0m,
mus_mapb1m,
mus_mapb2m,
mus_mapb3m,
mus_mapb4m,
mus_mapb5m,
mus_mapb6m,
mus_mapb7m,
mus_mapb8m,
mus_mapb9m,
mus_mapbam,
mus_mapbbm,
mus_mapbcm,
mus_mapbdm,
mus_mapbem,
mus_mapbfm,
mus_mapbgm,
mus_mapbhm,
mus_mapbim,
mus_mapbjm,
mus_mapbkm,
mus_mapblm,
mus_mapbmm,
mus_mapbnm,
mus_mapbom,
mus_mapbpm,
mus_mapbqm,
mus_mapbrm,
mus_mapbsm,
mus_mapbtm,
mus_mapbum,
mus_mapbvm,
mus_mapbwm,
mus_mapbxm,
mus_mapbym,
mus_mapbzm,
mus_mapc0m,
mus_mapc1m,
mus_mapc2m,
mus_mapc3m,
mus_mapc4m,
mus_mapc5m,
mus_mapc6m,
mus_mapc7m,
mus_mapc8m,
mus_mapc9m,
mus_mapcam,
mus_mapcbm,
mus_mapccm,
mus_mapcdm,
mus_mapcem,
mus_mapcfm,
mus_mapcgm,
mus_mapchm,
mus_mapcim,
mus_mapcjm,
mus_mapckm,
mus_mapclm,
mus_mapcmm,
mus_mapcnm,
mus_mapcom,
mus_mapcpm,
mus_mapcqm,
mus_mapcrm,
mus_mapcsm,
mus_mapctm,
mus_mapcum,
mus_mapcvm,
mus_mapcwm,
mus_mapcxm,
mus_mapcym,
mus_mapczm,
mus_mapd0m,
mus_mapd1m,
mus_mapd2m,
mus_mapd3m,
mus_mapd4m,
mus_mapd5m,
mus_mapd6m,
mus_mapd7m,
mus_mapd8m,
mus_mapd9m,
mus_mapdam,
mus_mapdbm,
mus_mapdcm,
mus_mapddm,
mus_mapdem,
mus_mapdfm,
mus_mapdgm,
mus_mapdhm,
mus_mapdim,
mus_mapdjm,
mus_mapdkm,
mus_mapdlm,
mus_mapdmm,
mus_mapdnm,
mus_mapdom,
mus_mapdpm,
mus_mapdqm,
mus_mapdrm,
mus_mapdsm,
mus_mapdtm,
mus_mapdum,
mus_mapdvm,
mus_mapdwm,
mus_mapdxm,
mus_mapdym,
mus_mapdzm,
mus_mape0m,
mus_mape1m,
mus_mape2m,
mus_mape3m,
mus_mape4m,
mus_mape5m,
mus_mape6m,
mus_mape7m,
mus_mape8m,
mus_mape9m,
mus_mapeam,
mus_mapebm,
mus_mapecm,
mus_mapedm,
mus_mapeem,
mus_mapefm,
mus_mapegm,
mus_mapehm,
mus_mapeim,
mus_mapejm,
mus_mapekm,
mus_mapelm,
mus_mapemm,
mus_mapenm,
mus_mapeom,
mus_mapepm,
mus_mapeqm,
mus_maperm,
mus_mapesm,
mus_mapetm,
mus_mapeum,
mus_mapevm,
mus_mapewm,
mus_mapexm,
mus_mapeym,
mus_mapezm,
mus_mapf0m,
mus_mapf1m,
mus_mapf2m,
mus_mapf3m,
mus_mapf4m,
mus_mapf5m,
mus_mapf6m,
mus_mapf7m,
mus_mapf8m,
mus_mapf9m,
mus_mapfam,
mus_mapfbm,
mus_mapfcm,
mus_mapfdm,
mus_mapfem,
mus_mapffm,
mus_mapfgm,
mus_mapfhm,
mus_mapfim,
mus_mapfjm,
mus_mapfkm,
mus_mapflm,
mus_mapfmm,
mus_mapfnm,
mus_mapfom,
mus_mapfpm,
mus_mapfqm,
mus_mapfrm,
mus_mapfsm,
mus_mapftm,
mus_mapfum,
mus_mapfvm,
mus_mapfwm,
mus_mapfxm,
mus_mapfym,
mus_mapfzm,
mus_mapg0m,
mus_mapg1m,
mus_mapg2m,
mus_mapg3m,
mus_mapg4m,
mus_mapg5m,
mus_mapg6m,
mus_mapg7m,
mus_mapg8m,
mus_mapg9m,
mus_mapgam,
mus_mapgbm,
mus_mapgcm,
mus_mapgdm,
mus_mapgem,
mus_mapgfm,
mus_mapggm,
mus_mapghm,
mus_mapgim,
mus_mapgjm,
mus_mapgkm,
mus_mapglm,
mus_mapgmm,
mus_mapgnm,
mus_mapgom,
mus_mapgpm,
mus_mapgqm,
mus_mapgrm,
mus_mapgsm,
mus_mapgtm,
mus_mapgum,
mus_mapgvm,
mus_mapgwm,
mus_mapgxm,
mus_mapgym,
mus_mapgzm,
mus_maph0m,
mus_maph1m,
mus_maph2m,
mus_maph3m,
mus_maph4m,
mus_maph5m,
mus_maph6m,
mus_maph7m,
mus_maph8m,
mus_maph9m,
mus_mapham,
mus_maphbm,
mus_maphcm,
mus_maphdm,
mus_maphem,
mus_maphfm,
mus_maphgm,
mus_maphhm,
mus_maphim,
mus_maphjm,
mus_maphkm,
mus_maphlm,
mus_maphmm,
mus_maphnm,
mus_maphom,
mus_maphpm,
mus_maphqm,
mus_maphrm,
mus_maphsm,
mus_maphtm,
mus_maphum,
mus_maphvm,
mus_maphwm,
mus_maphxm,
mus_maphym,
mus_maphzm,
mus_mapi0m,
mus_mapi1m,
mus_mapi2m,
mus_mapi3m,
mus_mapi4m,
mus_mapi5m,
mus_mapi6m,
mus_mapi7m,
mus_mapi8m,
mus_mapi9m,
mus_mapiam,
mus_mapibm,
mus_mapicm,
mus_mapidm,
mus_mapiem,
mus_mapifm,
mus_mapigm,
mus_mapihm,
mus_mapiim,
mus_mapijm,
mus_mapikm,
mus_mapilm,
mus_mapimm,
mus_mapinm,
mus_mapiom,
mus_mapipm,
mus_mapiqm,
mus_mapirm,
mus_mapism,
mus_mapitm,
mus_mapium,
mus_mapivm,
mus_mapiwm,
mus_mapixm,
mus_mapiym,
mus_mapizm,
mus_mapj0m,
mus_mapj1m,
mus_mapj2m,
mus_mapj3m,
mus_mapj4m,
mus_mapj5m,
mus_mapj6m,
mus_mapj7m,
mus_mapj8m,
mus_mapj9m,
mus_mapjam,
mus_mapjbm,
mus_mapjcm,
mus_mapjdm,
mus_mapjem,
mus_mapjfm,
mus_mapjgm,
mus_mapjhm,
mus_mapjim,
mus_mapjjm,
mus_mapjkm,
mus_mapjlm,
mus_mapjmm,
mus_mapjnm,
mus_mapjom,
mus_mapjpm,
mus_mapjqm,
mus_mapjrm,
mus_mapjsm,
mus_mapjtm,
mus_mapjum,
mus_mapjvm,
mus_mapjwm,
mus_mapjxm,
mus_mapjym,
mus_mapjzm,
mus_mapk0m,
mus_mapk1m,
mus_mapk2m,
mus_mapk3m,
mus_mapk4m,
mus_mapk5m,
mus_mapk6m,
mus_mapk7m,
mus_mapk8m,
mus_mapk9m,
mus_mapkam,
mus_mapkbm,
mus_mapkcm,
mus_mapkdm,
mus_mapkem,
mus_mapkfm,
mus_mapkgm,
mus_mapkhm,
mus_mapkim,
mus_mapkjm,
mus_mapkkm,
mus_mapklm,
mus_mapkmm,
mus_mapknm,
mus_mapkom,
mus_mapkpm,
mus_mapkqm,
mus_mapkrm,
mus_mapksm,
mus_mapktm,
mus_mapkum,
mus_mapkvm,
mus_mapkwm,
mus_mapkxm,
mus_mapkym,
mus_mapkzm,
mus_mapl0m,
mus_mapl1m,
mus_mapl2m,
mus_mapl3m,
mus_mapl4m,
mus_mapl5m,
mus_mapl6m,
mus_mapl7m,
mus_mapl8m,
mus_mapl9m,
mus_maplam,
mus_maplbm,
mus_maplcm,
mus_mapldm,
mus_maplem,
mus_maplfm,
mus_maplgm,
mus_maplhm,
mus_maplim,
mus_mapljm,
mus_maplkm,
mus_mapllm,
mus_maplmm,
mus_maplnm,
mus_maplom,
mus_maplpm,
mus_maplqm,
mus_maplrm,
mus_maplsm,
mus_mapltm,
mus_maplum,
mus_maplvm,
mus_maplwm,
mus_maplxm,
mus_maplym,
mus_maplzm,
mus_mapm0m,
mus_mapm1m,
mus_mapm2m,
mus_mapm3m,
mus_mapm4m,
mus_mapm5m,
mus_mapm6m,
mus_mapm7m,
mus_mapm8m,
mus_mapm9m,
mus_mapmam,
mus_mapmbm,
mus_mapmcm,
mus_mapmdm,
mus_mapmem,
mus_mapmfm,
mus_mapmgm,
mus_mapmhm,
mus_mapmim,
mus_mapmjm,
mus_mapmkm,
mus_mapmlm,
mus_mapmmm,
mus_mapmnm,
mus_mapmom,
mus_mapmpm,
mus_mapmqm,
mus_mapmrm,
mus_mapmsm,
mus_mapmtm,
mus_mapmum,
mus_mapmvm,
mus_mapmwm,
mus_mapmxm,
mus_mapmym,
mus_mapmzm,
mus_mapn0m,
mus_mapn1m,
mus_mapn2m,
mus_mapn3m,
mus_mapn4m,
mus_mapn5m,
mus_mapn6m,
mus_mapn7m,
mus_mapn8m,
mus_mapn9m,
mus_mapnam,
mus_mapnbm,
mus_mapncm,
mus_mapndm,
mus_mapnem,
mus_mapnfm,
mus_mapngm,
mus_mapnhm,
mus_mapnim,
mus_mapnjm,
mus_mapnkm,
mus_mapnlm,
mus_mapnmm,
mus_mapnnm,
mus_mapnom,
mus_mapnpm,
mus_mapnqm,
mus_mapnrm,
mus_mapnsm,
mus_mapntm,
mus_mapnum,
mus_mapnvm,
mus_mapnwm,
mus_mapnxm,
mus_mapnym,
mus_mapnzm,
mus_mapo0m,
mus_mapo1m,
mus_mapo2m,
mus_mapo3m,
mus_mapo4m,
mus_mapo5m,
mus_mapo6m,
mus_mapo7m,
mus_mapo8m,
mus_mapo9m,
mus_mapoam,
mus_mapobm,
mus_mapocm,
mus_mapodm,
mus_mapoem,
mus_mapofm,
mus_mapogm,
mus_mapohm,
mus_mapoim,
mus_mapojm,
mus_mapokm,
mus_mapolm,
mus_mapomm,
mus_maponm,
mus_mapoom,
mus_mapopm,
mus_mapoqm,
mus_maporm,
mus_maposm,
mus_mapotm,
mus_mapoum,
mus_mapovm,
mus_mapowm,
mus_mapoxm,
mus_mapoym,
mus_mapozm,
mus_mapp0m,
mus_mapp1m,
mus_mapp2m,
mus_mapp3m,
mus_mapp4m,
mus_mapp5m,
mus_mapp6m,
mus_mapp7m,
mus_mapp8m,
mus_mapp9m,
mus_mappam,
mus_mappbm,
mus_mappcm,
mus_mappdm,
mus_mappem,
mus_mappfm,
mus_mappgm,
mus_mapphm,
mus_mappim,
mus_mappjm,
mus_mappkm,
mus_mapplm,
mus_mappmm,
mus_mappnm,
mus_mappom,
mus_mapppm,
mus_mappqm,
mus_mapprm,
mus_mappsm,
mus_mapptm,
mus_mappum,
mus_mappvm,
mus_mappwm,
mus_mappxm,
mus_mappym,
mus_mappzm,
mus_mapq0m,
mus_mapq1m,
mus_mapq2m,
mus_mapq3m,
mus_mapq4m,
mus_mapq5m,
mus_mapq6m,
mus_mapq7m,
mus_mapq8m,
mus_mapq9m,
mus_mapqam,
mus_mapqbm,
mus_mapqcm,
mus_mapqdm,
mus_mapqem,
mus_mapqfm,
mus_mapqgm,
mus_mapqhm,
mus_mapqim,
mus_mapqjm,
mus_mapqkm,
mus_mapqlm,
mus_mapqmm,
mus_mapqnm,
mus_mapqom,
mus_mapqpm,
mus_mapqqm,
mus_mapqrm,
mus_mapqsm,
mus_mapqtm,
mus_mapqum,
mus_mapqvm,
mus_mapqwm,
mus_mapqxm,
mus_mapqym,
mus_mapqzm,
mus_mapr0m,
mus_mapr1m,
mus_mapr2m,
mus_mapr3m,
mus_mapr4m,
mus_mapr5m,
mus_mapr6m,
mus_mapr7m,
mus_mapr8m,
mus_mapr9m,
mus_mapram,
mus_maprbm,
mus_maprcm,
mus_maprdm,
mus_maprem,
mus_maprfm,
mus_maprgm,
mus_maprhm,
mus_maprim,
mus_maprjm,
mus_maprkm,
mus_maprlm,
mus_maprmm,
mus_maprnm,
mus_maprom,
mus_maprpm,
mus_maprqm,
mus_maprrm,
mus_maprsm,
mus_maprtm,
mus_maprum,
mus_maprvm,
mus_maprwm,
mus_maprxm,
mus_maprym,
mus_maprzm,
mus_maps0m,
mus_maps1m,
mus_maps2m,
mus_maps3m,
mus_maps4m,
mus_maps5m,
mus_maps6m,
mus_maps7m,
mus_maps8m,
mus_maps9m,
mus_mapsam,
mus_mapsbm,
mus_mapscm,
mus_mapsdm,
mus_mapsem,
mus_mapsfm,
mus_mapsgm,
mus_mapshm,
mus_mapsim,
mus_mapsjm,
mus_mapskm,
mus_mapslm,
mus_mapsmm,
mus_mapsnm,
mus_mapsom,
mus_mapspm,
mus_mapsqm,
mus_mapsrm,
mus_mapssm,
mus_mapstm,
mus_mapsum,
mus_mapsvm,
mus_mapswm,
mus_mapsxm,
mus_mapsym,
mus_mapszm,
mus_mapt0m,
mus_mapt1m,
mus_mapt2m,
mus_mapt3m,
mus_mapt4m,
mus_mapt5m,
mus_mapt6m,
mus_mapt7m,
mus_mapt8m,
mus_mapt9m,
mus_maptam,
mus_maptbm,
mus_maptcm,
mus_maptdm,
mus_maptem,
mus_maptfm,
mus_maptgm,
mus_mapthm,
mus_maptim,
mus_maptjm,
mus_maptkm,
mus_maptlm,
mus_maptmm,
mus_maptnm,
mus_maptom,
mus_maptpm,
mus_maptqm,
mus_maptrm,
mus_maptsm,
mus_mapttm,
mus_maptum,
mus_maptvm,
mus_maptwm,
mus_maptxm,
mus_maptym,
mus_maptzm,
mus_mapu0m,
mus_mapu1m,
mus_mapu2m,
mus_mapu3m,
mus_mapu4m,
mus_mapu5m,
mus_mapu6m,
mus_mapu7m,
mus_mapu8m,
mus_mapu9m,
mus_mapuam,
mus_mapubm,
mus_mapucm,
mus_mapudm,
mus_mapuem,
mus_mapufm,
mus_mapugm,
mus_mapuhm,
mus_mapuim,
mus_mapujm,
mus_mapukm,
mus_mapulm,
mus_mapumm,
mus_mapunm,
mus_mapuom,
mus_mapupm,
mus_mapuqm,
mus_mapurm,
mus_mapusm,
mus_maputm,
mus_mapuum,
mus_mapuvm,
mus_mapuwm,
mus_mapuxm,
mus_mapuym,
mus_mapuzm,
mus_mapv0m,
mus_mapv1m,
mus_mapv2m,
mus_mapv3m,
mus_mapv4m,
mus_mapv5m,
mus_mapv6m,
mus_mapv7m,
mus_mapv8m,
mus_mapv9m,
mus_mapvam,
mus_mapvbm,
mus_mapvcm,
mus_mapvdm,
mus_mapvem,
mus_mapvfm,
mus_mapvgm,
mus_mapvhm,
mus_mapvim,
mus_mapvjm,
mus_mapvkm,
mus_mapvlm,
mus_mapvmm,
mus_mapvnm,
mus_mapvom,
mus_mapvpm,
mus_mapvqm,
mus_mapvrm,
mus_mapvsm,
mus_mapvtm,
mus_mapvum,
mus_mapvvm,
mus_mapvwm,
mus_mapvxm,
mus_mapvym,
mus_mapvzm,
mus_mapw0m,
mus_mapw1m,
mus_mapw2m,
mus_mapw3m,
mus_mapw4m,
mus_mapw5m,
mus_mapw6m,
mus_mapw7m,
mus_mapw8m,
mus_mapw9m,
mus_mapwam,
mus_mapwbm,
mus_mapwcm,
mus_mapwdm,
mus_mapwem,
mus_mapwfm,
mus_mapwgm,
mus_mapwhm,
mus_mapwim,
mus_mapwjm,
mus_mapwkm,
mus_mapwlm,
mus_mapwmm,
mus_mapwnm,
mus_mapwom,
mus_mapwpm,
mus_mapwqm,
mus_mapwrm,
mus_mapwsm,
mus_mapwtm,
mus_mapwum,
mus_mapwvm,
mus_mapwwm,
mus_mapwxm,
mus_mapwym,
mus_mapwzm,
mus_mapx0m,
mus_mapx1m,
mus_mapx2m,
mus_mapx3m,
mus_mapx4m,
mus_mapx5m,
mus_mapx6m,
mus_mapx7m,
mus_mapx8m,
mus_mapx9m,
mus_mapxam,
mus_mapxbm,
mus_mapxcm,
mus_mapxdm,
mus_mapxem,
mus_mapxfm,
mus_mapxgm,
mus_mapxhm,
mus_mapxim,
mus_mapxjm,
mus_mapxkm,
mus_mapxlm,
mus_mapxmm,
mus_mapxnm,
mus_mapxom,
mus_mapxpm,
mus_mapxqm,
mus_mapxrm,
mus_mapxsm,
mus_mapxtm,
mus_mapxum,
mus_mapxvm,
mus_mapxwm,
mus_mapxxm,
mus_mapxym,
mus_mapxzm,
mus_mapy0m,
mus_mapy1m,
mus_mapy2m,
mus_mapy3m,
mus_mapy4m,
mus_mapy5m,
mus_mapy6m,
mus_mapy7m,
mus_mapy8m,
mus_mapy9m,
mus_mapyam,
mus_mapybm,
mus_mapycm,
mus_mapydm,
mus_mapyem,
mus_mapyfm,
mus_mapygm,
mus_mapyhm,
mus_mapyim,
mus_mapyjm,
mus_mapykm,
mus_mapylm,
mus_mapymm,
mus_mapynm,
mus_mapyom,
mus_mapypm,
mus_mapyqm,
mus_mapyrm,
mus_mapysm,
mus_mapytm,
mus_mapyum,
mus_mapyvm,
mus_mapywm,
mus_mapyxm,
mus_mapyym,
mus_mapyzm,
mus_mapz0m,
mus_mapz1m,
mus_mapz2m,
mus_mapz3m,
mus_mapz4m,
mus_mapz5m,
mus_mapz6m,
mus_mapz7m,
mus_mapz8m,
mus_mapz9m,
mus_mapzam,
mus_mapzbm,
mus_mapzcm,
mus_mapzdm,
mus_mapzem,
mus_mapzfm,
mus_mapzgm,
mus_mapzhm,
mus_mapzim,
mus_mapzjm,
mus_mapzkm,
mus_mapzlm,
mus_mapzmm,
mus_mapznm,
mus_mapzom,
mus_mapzpm,
mus_mapzqm,
mus_mapzrm,
mus_mapzsm,
mus_mapztm,
mus_mapzum,
mus_mapzvm,
mus_mapzwm,
mus_mapzxm,
mus_mapzym,
mus_mapzzm,
mus_titles, // title screen
mus_read_m, // intro
mus_lclear, // level clear
mus_invinc, // invincibility
mus_shoes, // super sneakers
mus_minvnc, // Mario invincibility
mus_drown, // drowning
mus_gmover, // game over
mus_xtlife, // extra life
mus_contsc, // continue screen
mus_supers, // Super Sonic
mus_chrsel, // character select
mus_credit, // credits
mus_racent, // Race Results
mus_stjr, // Sonic Team Jr. Presents
NUMMUSIC
} musicenum_t;
// Note: song number should be a UINT16, as mapmusic only uses 16 bits for music slot number.
// (the rest is track number and an internal reload flag)
//
// Identifiers for all sfx in game.
//
// List of sounds (don't modify this comment!)
typedef enum
{
sfx_None,
// Skin Sounds
sfx_altdi1,
sfx_altdi2,
sfx_altdi3,
sfx_altdi4,
sfx_altow1,
sfx_altow2,
sfx_altow3,
sfx_altow4,
sfx_victr1,
sfx_victr2,
sfx_victr3,
sfx_victr4,
sfx_gasp,
sfx_jump,
sfx_pudpud,
sfx_putput,
sfx_spin,
sfx_spndsh,
sfx_thok,
sfx_zoom,
sfx_skid,
// Ambience/background objects/etc
sfx_ambint,
sfx_alarm,
sfx_buzz1,
sfx_buzz2,
sfx_buzz3,
sfx_buzz4,
sfx_crumbl,
sfx_fire,
sfx_grind,
sfx_laser,
sfx_mswing,
sfx_pstart,
sfx_pstop,
sfx_steam1,
sfx_steam2,
sfx_wbreak,
sfx_rainin,
sfx_litng1,
sfx_litng2,
sfx_litng3,
sfx_litng4,
sfx_athun1,
sfx_athun2,
sfx_amwtr1,
sfx_amwtr2,
sfx_amwtr3,
sfx_amwtr4,
sfx_amwtr5,
sfx_amwtr6,
sfx_amwtr7,
sfx_amwtr8,
sfx_bubbl1,
sfx_bubbl2,
sfx_bubbl3,
sfx_bubbl4,
sfx_bubbl5,
sfx_floush,
sfx_splash,
sfx_splish,
sfx_wdrip1,
sfx_wdrip2,
sfx_wdrip3,
sfx_wdrip4,
sfx_wdrip5,
sfx_wdrip6,
sfx_wdrip7,
sfx_wdrip8,
sfx_wslap,
sfx_doora1,
sfx_doorb1,
sfx_doorc1,
sfx_doorc2,
sfx_doord1,
sfx_doord2,
sfx_eleva1,
sfx_eleva2,
sfx_eleva3,
sfx_elevb1,
sfx_elevb2,
sfx_elevb3,
sfx_ambin2,
sfx_lavbub,
sfx_rocks1,
sfx_rocks2,
sfx_rocks3,
sfx_rocks4,
sfx_rumbam,
sfx_rumble,
// Game objects, etc
sfx_appear,
sfx_bkpoof,
sfx_bnce1,
sfx_bnce2,
sfx_cannon,
sfx_cgot,
sfx_cybdth,
sfx_deton,
sfx_ding, // old sfx_appear sound
sfx_dmpain,
sfx_drown,
sfx_fizzle,
sfx_gbeep,
sfx_gclose,
sfx_ghit,
sfx_gloop,
sfx_gspray,
sfx_gravch,
sfx_itemup,
sfx_jet,
sfx_jshard,
sfx_lose,
sfx_lvpass,
sfx_mindig,
sfx_mixup,
sfx_pogo,
sfx_pop,
sfx_rail1,
sfx_rail2,
sfx_rlaunc,
sfx_shield,
sfx_shldls,
sfx_spdpad,
sfx_spkdth,
sfx_spring,
sfx_statu1,
sfx_statu2,
sfx_strpst,
sfx_supert,
sfx_telept,
sfx_tink,
sfx_token,
sfx_trfire,
sfx_trpowr,
sfx_turhit,
sfx_wdjump,
sfx_mswarp,
sfx_mspogo,
// Menu, interface
sfx_chchng,
sfx_dwnind,
sfx_emfind,
sfx_flgcap,
sfx_menu1,
sfx_oneup,
sfx_ptally,
sfx_radio,
sfx_wepchg,
sfx_wtrdng,
sfx_zelda,
// NiGHTS
sfx_ideya,
sfx_xideya, // Xmas
sfx_nbmper,
sfx_nxbump, // Xmas
sfx_ncitem,
sfx_nxitem, // Xmas
sfx_ngdone,
sfx_nxdone, // Xmas
sfx_drill1,
sfx_drill2,
sfx_ncspec,
sfx_nghurt,
sfx_ngskid,
sfx_hoop1,
sfx_hoop2,
sfx_hoop3,
sfx_hidden,
sfx_prloop,
sfx_timeup, // Was gonna be played when less than ten seconds are on the clock; uncomment uses of this to see it in-context
// Mario
sfx_koopfr,
sfx_mario1,
sfx_mario2,
sfx_mario3,
sfx_mario4,
sfx_mario5,
sfx_mario6,
sfx_mario7,
sfx_mario8,
sfx_mario9,
sfx_marioa,
sfx_thwomp,
// Black Eggman
sfx_bebomb,
sfx_bechrg,
sfx_becrsh,
sfx_bedeen,
sfx_bedie1,
sfx_bedie2,
sfx_beeyow,
sfx_befall,
sfx_befire,
sfx_beflap,
sfx_begoop,
sfx_begrnd,
sfx_behurt,
sfx_bejet1,
sfx_belnch,
sfx_beoutb,
sfx_beragh,
sfx_beshot,
sfx_bestep,
sfx_bestp2,
sfx_bewar1,
sfx_bewar2,
sfx_bewar3,
sfx_bewar4,
sfx_bexpld,
sfx_bgxpld,
// Cy-Brak-Demon
sfx_beelec, // Electric barrier ambience
sfx_brakrl, // Rocket launcher
sfx_brakrx, // Rocket explodes
// S3&K sounds
sfx_s3k33,
sfx_s3k34,
sfx_s3k35,
sfx_s3k36,
sfx_s3k37,
sfx_s3k38,
sfx_s3k39,
sfx_s3k3a,
sfx_s3k3b,
sfx_s3k3c,
sfx_s3k3d,
sfx_s3k3e,
sfx_s3k3f,
sfx_s3k40,
sfx_s3k41,
sfx_s3k42,
sfx_s3k43,
sfx_s3k44,
sfx_s3k45,
sfx_s3k46,
sfx_s3k47,
sfx_s3k48,
sfx_s3k49,
sfx_s3k4a,
sfx_s3k4b,
sfx_s3k4c,
sfx_s3k4d,
sfx_s3k4e,
sfx_s3k4f,
sfx_s3k50,
sfx_s3k51,
sfx_s3k52,
sfx_s3k53,
sfx_s3k54,
sfx_s3k55,
sfx_s3k56,
sfx_s3k57,
sfx_s3k58,
sfx_s3k59,
sfx_s3k5a,
sfx_s3k5b,
sfx_s3k5c,
sfx_s3k5d,
sfx_s3k5e,
sfx_s3k5f,
sfx_s3k60,
sfx_s3k61,
sfx_s3k62,
sfx_s3k63,
sfx_s3k64,
sfx_s3k65,
sfx_s3k66,
sfx_s3k67,
sfx_s3k68,
sfx_s3k69,
sfx_s3k6a,
sfx_s3k6b,
sfx_s3k6c,
sfx_s3k6d,
sfx_s3k6e,
sfx_s3k6f,
sfx_s3k70,
sfx_s3k71,
sfx_s3k72,
sfx_s3k73,
sfx_s3k74,
sfx_s3k75,
sfx_s3k76,
sfx_s3k77,
sfx_s3k78,
sfx_s3k79,
sfx_s3k7a,
sfx_s3k7b,
sfx_s3k7c,
sfx_s3k7d,
sfx_s3k7e,
sfx_s3k7f,
sfx_s3k80,
sfx_s3k81,
sfx_s3k82,
sfx_s3k83,
sfx_s3k84,
sfx_s3k85,
sfx_s3k86,
sfx_s3k87,
sfx_s3k88,
sfx_s3k89,
sfx_s3k8a,
sfx_s3k8b,
sfx_s3k8c,
sfx_s3k8d,
sfx_s3k8e,
sfx_s3k8f,
sfx_s3k90,
sfx_s3k91,
sfx_s3k92,
sfx_s3k93,
sfx_s3k94,
sfx_s3k95,
sfx_s3k96,
sfx_s3k97,
sfx_s3k98,
sfx_s3k99,
sfx_s3k9a,
sfx_s3k9b,
sfx_s3k9c,
sfx_s3k9d,
sfx_s3k9e,
sfx_s3k9f,
sfx_s3ka0,
sfx_s3ka1,
sfx_s3ka2,
sfx_s3ka3,
sfx_s3ka4,
sfx_s3ka5,
sfx_s3ka6,
sfx_s3ka7,
sfx_s3ka8,
sfx_s3ka9,
sfx_s3kaa,
sfx_s3kab,
sfx_s3kac,
sfx_s3kad,
sfx_s3kae,
sfx_s3kaf,
sfx_s3kb0,
sfx_s3kb1,
sfx_s3kb2,
sfx_s3kb3,
sfx_s3kb4,
sfx_s3kb5,
sfx_s3kb6,
sfx_s3kb7,
sfx_s3kb8,
sfx_s3kb9,
sfx_s3kba,
sfx_s3kbb,
sfx_s3kbcs,
sfx_s3kbcl,
sfx_s3kbds,
sfx_s3kbdl,
sfx_s3kbes,
sfx_s3kbel,
sfx_s3kbfs,
sfx_s3kbfl,
sfx_s3kc0s,
sfx_s3kc0l,
sfx_s3kc1s,
sfx_s3kc1l,
sfx_s3kc2s,
sfx_s3kc2l,
sfx_s3kc3s,
sfx_s3kc3l,
sfx_s3kc4s,
sfx_s3kc4l,
sfx_s3kc5s,
sfx_s3kc5l,
sfx_s3kc6s,
sfx_s3kc6l,
sfx_s3kc7,
sfx_s3kc8s,
sfx_s3kc8l,
sfx_s3kc9s,
sfx_s3kc9l,
sfx_s3kcas,
sfx_s3kcal,
sfx_s3kcbs,
sfx_s3kcbl,
sfx_s3kccs,
sfx_s3kccl,
sfx_s3kcds,
sfx_s3kcdl,
sfx_s3kces,
sfx_s3kcel,
sfx_s3kcfs,
sfx_s3kcfl,
sfx_s3kd0s,
sfx_s3kd0l,
sfx_s3kd1s,
sfx_s3kd1l,
sfx_s3kd2s,
sfx_s3kd2l,
sfx_s3kd3s,
sfx_s3kd3l,
sfx_s3kd4s,
sfx_s3kd4l,
sfx_s3kd5s,
sfx_s3kd5l,
sfx_s3kd6s,
sfx_s3kd6l,
sfx_s3kd7s,
sfx_s3kd7l,
sfx_s3kd8s,
sfx_s3kd8l,
sfx_s3kd9s,
sfx_s3kd9l,
sfx_s3kdas,
sfx_s3kdal,
sfx_s3kdbs,
sfx_s3kdbl,
// free slots for S_AddSoundFx() at run-time --------------------
sfx_freeslot0,
//
// ... 60 free sounds here ...
//
sfx_lastfreeslot = sfx_freeslot0 + NUMSFXFREESLOTS-1,
// end of freeslots ---------------------------------------------
sfx_skinsoundslot0,
sfx_lastskinsoundslot = sfx_skinsoundslot0 + NUMSKINSFXSLOTS-1,
NUMSFX
} sfxenum_t;
void S_InitRuntimeSounds(void);
sfxenum_t S_AddSoundFx(const char *name, boolean singular, INT32 flags, boolean skinsound);
void S_RemoveSoundFx(sfxenum_t id);
#endif