Skip to content
Snippets Groups Projects
sounds.c 56.1 KiB
Newer Older
Alam Ed Arias's avatar
Alam Ed Arias committed
// SONIC ROBO BLAST 2
//-----------------------------------------------------------------------------
// Copyright (C) 1993-1996 by id Software, Inc.
// Copyright (C) 1998-2000 by DooM Legacy Team.
// Copyright (C) 1999-2016 by Sonic Team Junior.
Alam Ed Arias's avatar
Alam Ed Arias committed
//
// 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.c
/// \brief music/sound tables, and related sound routines

#include "doomtype.h"
#include "i_sound.h"
#include "sounds.h"
#include "r_defs.h"
#include "r_things.h"
#include "z_zone.h"
#include "w_wad.h"
#include "lua_script.h"

//
// Information about all the sfx
//

sfxinfo_t S_sfx[NUMSFX] =
{

/*****
	Legacy doesn't use the PITCH variable, so now it is used for
	various flags. See soundflags_t.
*****/
Sal's avatar
Sal committed
  // S_sfx[0] needs to be a dummy for odd reasons. (don't modify this comment)
//  name, singularity, priority, pitch, volume, data, length, skinsound, usefulness, lumpnum
  {"none" ,  false,   0,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Skin Sounds
  {"altdi1", false, 192, 16, -1, NULL, 0, SKSPLDET1,  -1, LUMPERROR},
  {"altdi2", false, 192, 16, -1, NULL, 0, SKSPLDET2,  -1, LUMPERROR},
  {"altdi3", false, 192, 16, -1, NULL, 0, SKSPLDET3,  -1, LUMPERROR},
  {"altdi4", false, 192, 16, -1, NULL, 0, SKSPLDET4,  -1, LUMPERROR},
  {"altow1", false, 192, 16, -1, NULL, 0, SKSPLPAN1,  -1, LUMPERROR},
  {"altow2", false, 192, 16, -1, NULL, 0, SKSPLPAN2,  -1, LUMPERROR},
  {"altow3", false, 192, 16, -1, NULL, 0, SKSPLPAN3,  -1, LUMPERROR},
  {"altow4", false, 192, 16, -1, NULL, 0, SKSPLPAN4,  -1, LUMPERROR},
  {"victr1", false,  64, 16, -1, NULL, 0, SKSPLVCT1,  -1, LUMPERROR},
  {"victr2", false,  64, 16, -1, NULL, 0, SKSPLVCT2,  -1, LUMPERROR},
  {"victr3", false,  64, 16, -1, NULL, 0, SKSPLVCT3,  -1, LUMPERROR},
  {"victr4", false,  64, 16, -1, NULL, 0, SKSPLVCT4,  -1, LUMPERROR},
  {"gasp" ,  false,  64,  0, -1, NULL, 0,   SKSGASP,  -1, LUMPERROR},
  {"jump" ,  false, 140,  0, -1, NULL, 0,   SKSJUMP,  -1, LUMPERROR},
  {"pudpud", false,  64,  0, -1, NULL, 0, SKSPUDPUD,  -1, LUMPERROR},
  {"putput", false,  64,  0, -1, NULL, 0, SKSPUTPUT,  -1, LUMPERROR}, // not as high a priority
  {"spin" ,  false, 100,  0, -1, NULL, 0,   SKSSPIN,  -1, LUMPERROR},
  {"spndsh", false,  64,  1, -1, NULL, 0, SKSSPNDSH,  -1, LUMPERROR},
  {"thok" ,  false,  96,  0, -1, NULL, 0,   SKSTHOK,  -1, LUMPERROR},
  {"zoom" ,  false, 120,  1, -1, NULL, 0,   SKSZOOM,  -1, LUMPERROR},
  {"skid",   false,  64, 32, -1, NULL, 0,   SKSSKID,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Ambience/background objects/etc
  {"ambint",  true,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  {"alarm",  false,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"buzz1",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"buzz2",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"buzz3",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"buzz4",  false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"crumbl",  true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Platform Crumble Tails 03-16-2001
  {"fire",   false,   8, 32, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"grind",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"laser",   true,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mswing", false,  16,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"pstart", false, 100,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"pstop",  false, 100,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"steam1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Tails 06-19-2001
  {"steam2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Tails 06-19-2001
  {"wbreak", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  {"rainin",  true,  24,  4, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"litng1", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"litng2", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"litng3", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"litng4", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"athun1", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"athun2", false,  16,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  {"amwtr1", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr2", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr3", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr4", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr5", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr6", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr7", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"amwtr8", false,  12,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bubbl1", false,  11,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bubbl2", false,  11,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bubbl3", false,  11,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bubbl4", false,  11,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bubbl5", false,  11,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"floush", false,  16,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"splash", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"splish", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Splish Tails 12-08-2000
  {"wdrip1", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip2", false,   8 , 0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip3", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip4", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip5", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip6", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip7", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdrip8", false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wslap",  false,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Water Slap Tails 12-13-2000
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  {"doora1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"doorb1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"doorc1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"doorc2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"doord1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"doord2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"eleva1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"eleva2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"eleva3", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"elevb1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"elevb2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"elevb3", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  {"ambin2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"lavbub", false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rocks1", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rocks2", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rocks3", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rocks4", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rumbam", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rumble", false,  64, 24, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Game objects, etc
  {"appear", false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bkpoof", false,  70,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bnce1",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Boing!
  {"bnce2",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Boing!
  {"cannon", false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cgot" ,   true, 120,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Got Emerald! Tails 09-02-2001
  {"cybdth", false,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"deton",   true,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"ding",   false, 127,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"dmpain", false,  96,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"drown",  false, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"fizzle", false, 127,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"gbeep",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Grenade beep
  {"ghit" ,  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"gloop",  false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"gspray", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"gravch", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"itemup",  true, 255,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"jet",    false,   8,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"jshard",  true, 167,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"lose" ,  false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"lvpass", false,  96,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mindig", false,   8, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mixup",   true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"pogo" ,  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"pop"  ,  false,  78,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rail1",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rail2",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"rlaunc", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"shield", false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"shldls", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"spdpad", false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"spkdth", false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"spring", false, 112,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"statu1",  true,  64,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"statu2",  true,  64,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"strpst",  true, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Starpost Sound Tails 07-04-2002
  {"supert",  true, 127,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"telept", false,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"tink" ,  false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"token" ,  true, 224,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // SS token
  {"trfire",  true,  60,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"trpowr",  true, 127,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"turhit", false,  40,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wdjump", false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mswarp", false,  60, 16, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mspogo", false,  60,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Menu, interface
  {"chchng", false, 120,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"dwnind", false, 212,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"emfind", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"flgcap", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"menu1",   true,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"oneup",   true, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"ptally",  true,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Point tally is identical to menu for now
  {"radio",  false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"wepchg",  true,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Weapon switch is identical to menu for now
  {"wtrdng",  true, 212,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // make sure you can hear the DING DING! Tails 03-08-2000
  {"zelda",  false, 120,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // NiGHTS
  {"ideya",  false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"xideya", false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Xmas
  {"nbmper", false,  96,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"nxbump", false,  96,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Xmas
  {"ncitem", false, 204,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"nxitem", false, 204,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Xmas
  {"ngdone",  true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"nxdone",  true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Xmas
  {"drill1", false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"drill2", false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"ncspec", false, 204,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Tails 12-15-2003
  {"nghurt", false,  96,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"ngskid", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"hoop1",  false, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"hoop2",  false, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"hoop3",  false, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"hidden", false, 204,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"prloop", false, 104,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"timeup",  true, 256,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Mario
  {"koopfr" , true, 127,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario1", false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario2", false, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario3", false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario4",  true,  78,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario5", false,  78,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario6", false,  60,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario7", false,  32,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario8", false,  48,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mario9",  true, 120,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"marioa",  true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"thwomp",  true, 127,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Black Eggman
  {"bebomb", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bechrg", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"becrsh", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bedeen", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bedie1", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bedie2", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"beeyow", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"befall", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"befire", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"beflap", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"begoop", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"begrnd", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"behurt", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bejet1", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"belnch", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"beoutb", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"beragh", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"beshot", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bestep", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bestp2", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bewar1", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bewar2", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bewar3", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bewar4", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bexpld", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bgxpld", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // Cybrakdemon
  {"beelec", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"brakrl", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"brakrx", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

  // Sonic 1 sounds
  {"s1a0",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a1",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a2",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a3",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a4",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a5",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a6",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a7",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a8",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1a9",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1aa",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ab",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ac",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ad",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ae",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1af",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b0",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b1",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b2",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b3",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b4",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b5",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b6",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b7",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b8",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1b9",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ba",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1bb",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1bc",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1bd",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Ballhog bounce
  {"s1be",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1bf",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c0",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c1",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c2",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c3",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c4",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c5",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c6",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c7",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c8",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1c9",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ca",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1cb",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1cc",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1cd",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1ce",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s1cf",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},

  // Sonic 2 sounds
  {"s220",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s221",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Lap sound
  {"s222",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s223",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s224",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s225",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s226",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s227",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s228",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s229",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s22f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s230",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s231",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s232",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s233",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s234",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s235",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s236",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s237",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s238",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s239",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s23a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s23b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s23c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Drift boost
  {"s23d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s23e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s23f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s240",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s241",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s242",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s243",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s244",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s245",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s246",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s247",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s248",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s249",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s24a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s24b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s24c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s24d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s24e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s24f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s250",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s251",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s252",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s253",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // 1st place finish
  {"s254",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s255",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s256",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s257",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s258",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s259",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s25a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s25b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s25c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s25d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s25e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s25f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Perfect start boost
  {"s260",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s261",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s262",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s263",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s264",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s265",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s266",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s267",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s268",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s269",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s26a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s26b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s26c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s26d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Missed checkpoint
  {"s26e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s26f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s270",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},

Sal's avatar
Sal committed
  // S3&K sounds
  {"s3k33",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k34",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k35",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k36",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k37",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k38",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k39",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k3a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart item shield
Sal's avatar
Sal committed
  {"s3k3b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k3c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k3d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k3e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k3f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k40",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k41",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k42",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k43",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k44",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k45",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Thunder Shield use
Sal's avatar
Sal committed
  {"s3k46",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k47",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k48",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k49",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart bump sound
Sal's avatar
Sal committed
  {"s3k4a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k4b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k4c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k4d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k4e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k4f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k50",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k51",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k52",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k53",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k54",  false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR}, // MetalSonic shot fire
  {"s3k55",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k56",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k57",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k58",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k59",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k5a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k5b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k5c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Mine tick
Sal's avatar
Sal committed
  {"s3k5d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k5e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k5f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k60",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k61",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k62",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k63",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k64",  false,  64,  2, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k65",  false, 255,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Blue Spheres
  {"s3k66",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k67",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s3k68",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart final lap
Sal's avatar
Sal committed
  {"s3k69",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k6a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart finish
Sal's avatar
Sal committed
  {"s3k6b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k6c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k6d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k6e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k6f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k70",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k71",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k72",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k73",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k74",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k75",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k76",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k77",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k78",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k79",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k7a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k7b",  false,  64, 16, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart successful hit
Sal's avatar
Sal committed
  {"s3k7c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k7d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k7e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k7f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k80",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k81",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k82",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k83",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k84",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k85",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k86",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k87",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k88",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3k89",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Jawz target
Sal's avatar
Sal committed
  {"s3k8a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k8b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k8c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k8d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k8e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k8f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k90",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k91",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k92",  false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Hyudoro use
Sal's avatar
Sal committed
  {"s3k93",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k94",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k95",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s3k96",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Orbinaut
Sal's avatar
Sal committed
  {"s3k97",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k98",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k99",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9a",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9b",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9c",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9d",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9e",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3k9f",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka0",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka1",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka2",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka3",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka4",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka5",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka6",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s3ka7",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart 3,2,1
Sal's avatar
Sal committed
  {"s3ka8",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3ka9",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kaa",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kab",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kac",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s3kad",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart GO!
Sal's avatar
Sal committed
  {"s3kae",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kaf",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb0",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb1",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb2",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb3",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb4",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb5",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb6",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb7",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb8",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kb9",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kba",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbb",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbcs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbcl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbds", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbdl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbes", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbel", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbfs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kbfl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc0s", false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart Jawz
Sal's avatar
Sal committed
  {"s3kc0l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc1s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc1l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc2s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc2l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc3s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc3l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc4s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc4l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc5s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc5l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc6s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc6l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3kc7s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc7l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"s3kc8s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc8l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc9s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kc9l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"s3kcas", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Kart respawn
Sal's avatar
Sal committed
  {"s3kcal", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcbs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcbl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kccs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kccl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcds", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcdl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kces", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcel", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcfs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kcfl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd0s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd0l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd1s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd1l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd2s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd2l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd3s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd3l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd4s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd4l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd5s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd5l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd6s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd6l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd7s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd7l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd8s", false,  64, 64, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Sharp Spin (maybe use the long/L version?)
  {"s3kd8l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd9s", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kd9l", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kdas", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kdal", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kdbs", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"s3kdbl", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  // 3D Blast sounds (the "missing" ones are direct copies of S3K's, no minor differences what-so-ever)
Sal's avatar
Sal committed
  {"3db06",  false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Bumper stolen
  {"3db09",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"3db14",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"3db16",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},

  // Sonic CD sounds
  {"cdfm00", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
SeventhSentinel's avatar
SeventhSentinel committed
  {"cdfm01", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Sneaker boost
  {"cdfm02", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm03", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm04", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm05", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm06", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm07", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm08", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm09", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm10", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm11", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm12", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm13", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm14", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm15", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm16", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm17", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm18", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm19", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm20", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm21", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm22", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm23", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm24", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm25", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm26", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm27", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm28", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm29", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm30", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm31", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm32", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm33", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm34", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm35", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm36", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm37", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm38", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"cdfm39", false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Mine deployed
  {"cdfm40", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm41", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm42", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm43", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm44", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm45", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm46", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm47", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm48", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm49", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm50", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm51", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm52", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm53", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm54", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm55", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm56", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm57", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm58", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm59", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm60", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm61", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm62", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm63", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm64", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm65", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm66", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm67", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm68", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm69", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"cdfm70", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Trail item dragging
  {"cdfm71", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm72", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm73", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm74", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm75", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm76", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm77", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm78", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdfm79", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm0", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm3", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm4", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm5", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm6", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm7", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"cdpcm8", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"cdpcm9", false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // No damage taken

  // Knuckles Chaotix sounds
  {"kc2a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc2b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc2c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc2d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc2e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc2f",   false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Pogo Spring use
  {"kc30",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc31",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc32",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc33",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc34",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc35",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc36",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc37",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc38",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc39",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Voting roulette
  {"kc3a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc3b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc3c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc3d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc3e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc3f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc40",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc41",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc42",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Unlock everything cheat
  {"kc43",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc44",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc45",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc46",   false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Shrink use
  {"kc47",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc48",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Vote picked
  {"kc49",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc4a",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Voting beep
  {"kc4b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc4c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc4d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc4e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc4f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc50",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc51",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc52",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc53",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc54",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc55",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc56",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc57",   false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // SPB locked in
  {"kc58",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc59",   false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Shrink
  {"kc5a",   false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR}, // Grow
  {"kc5b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc5c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc5d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc5e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc5f",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc60",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc61",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc62",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc63",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc64",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc65",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc66",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc67",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc68",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc69",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc6b",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc6c",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc6d",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kc6e",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},

Sal's avatar
Sal committed
  // SRB2kart
  {"lkt1",    true, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"lkt2",    true, 192,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"lkt3",    true,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kart1",  false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kart2",  false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kart3",  false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"mlap",    true, 127,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"sboost",  true,  90,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mush",   false,  90,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"kinvnc", false, 140,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kgrow",  false, 140,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"bomb",   false, 110,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"bomb2",  false, 110,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"peel",   false, 100,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"slip",   false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"fake",   false, 100,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"grnshl", false, 120, 64, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"redshl", false, 130,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"shbrk",  false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkdrft", false,  52,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkslid", false,  48,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitem", false,  80,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm1",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm2",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm3",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm4",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm5",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm6",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm7",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitm8",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitmF",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"mkitmE",  true,  72,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"clash",  false,  64,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"tossed", false, 150,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"shelit", false,  64, 16, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"vroom",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"boing",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"smkinv", false, 140,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sryder's avatar
Sryder committed
  {"screec", false,  52,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"yeeeah", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"noooo1", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"noooo2", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"hogbom", false, 110,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"kpogos", false, 110,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sal's avatar
Sal committed
  {"ddash",  false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
toaster's avatar
toaster committed
  {"itfree", false,  64,  0, -1, NULL, 0,        -1,  -1, LUMPERROR},
  {"dbgsal", false, 110,  8, -1, NULL, 0,        -1,  -1, LUMPERROR},
Sryder's avatar
Sryder committed

Sal's avatar
Sal committed
  // SRB2kart - Skin sounds
  {"kwin",   false,  64,  0, -1, NULL, 0,    SKSWIN,  -1, LUMPERROR},
  {"klose",  false,  64,  0, -1, NULL, 0,   SKSLOSE,  -1, LUMPERROR},
  {"slow",   false, 128, 32, -1, NULL, 0,   SKSSLOW,  -1, LUMPERROR},
  {"taunt1", false,  64, 96, -1, NULL, 0, SKSPLTNT1,  -1, LUMPERROR},
  {"taunt2", false,  64, 96, -1, NULL, 0, SKSPLTNT2,  -1, LUMPERROR},
  {"taunt3", false,  64, 96, -1, NULL, 0, SKSPLTNT3,  -1, LUMPERROR},
  {"taunt4", false,  64, 96, -1, NULL, 0, SKSPLTNT4,  -1, LUMPERROR},
  {"hitem",  false,  64, 32, -1, NULL, 0,  SKSHITEM,  -1, LUMPERROR},
Alam Ed Arias's avatar
Alam Ed Arias committed

Sal's avatar
Sal committed
  // skin sounds free slots to add sounds at run time (Boris HACK!!!)
  // initialized to NULL
Alam Ed Arias's avatar
Alam Ed Arias committed
};

char freeslotnames[sfx_freeslot0 + NUMSFXFREESLOTS + NUMSKINSFXSLOTS][7];

// Prepare free sfx slots to add sfx at run time
void S_InitRuntimeSounds (void)
{
	sfxenum_t i;
	INT32 value;
	char soundname[10];
Alam Ed Arias's avatar
Alam Ed Arias committed

	for (i = sfx_freeslot0; i <= sfx_lastskinsoundslot; i++)
	{
		value = (i+1) - sfx_freeslot0;

		if (value < 10)
			sprintf(soundname, "fre00%d", value);
		else if (value < 100)
			sprintf(soundname, "fre0%d", value);
		else if (value < 1000)
			sprintf(soundname, "fre%d", value);
		else
			sprintf(soundname, "fr%d", value);

		strcpy(freeslotnames[value-1], soundname);

		S_sfx[i].name = freeslotnames[value-1];
		S_sfx[i].singularity = false;
		S_sfx[i].priority = 0;
		S_sfx[i].pitch = 0;
		S_sfx[i].volume = -1;
		S_sfx[i].data = NULL;
		S_sfx[i].length = 0;
		S_sfx[i].skinsound = -1;
		S_sfx[i].usefulness = -1;
		S_sfx[i].lumpnum = LUMPERROR;
	}
}

// Add a new sound fx into a free sfx slot.
//
Alam Ed Arias's avatar
Alam Ed Arias committed
sfxenum_t S_AddSoundFx(const char *name, boolean singular, INT32 flags, boolean skinsound)
Alam Ed Arias's avatar
Alam Ed Arias committed
{
	sfxenum_t i, slot;

	if (skinsound)
		slot = sfx_skinsoundslot0;
	else
		slot = sfx_freeslot0;

	for (i = slot; i < NUMSFX; i++)
	{
		if (!S_sfx[i].priority)
		{
			strncpy(freeslotnames[i-sfx_freeslot0], name, 6);
Alam Ed Arias's avatar
Alam Ed Arias committed
			S_sfx[i].singularity = singular;
Alam Ed Arias's avatar
Alam Ed Arias committed
			S_sfx[i].priority = 60;
Alam Ed Arias's avatar
Alam Ed Arias committed
			S_sfx[i].pitch = flags;
Alam Ed Arias's avatar
Alam Ed Arias committed
			S_sfx[i].volume = -1;
			S_sfx[i].lumpnum = LUMPERROR;
			S_sfx[i].skinsound = -1;
			S_sfx[i].usefulness = -1;

			/// \todo if precached load it here
			S_sfx[i].data = NULL;
			return i;
		}
	}
	CONS_Alert(CONS_WARNING, M_GetText("No more free sound slots\n"));
	return 0;
}

void S_RemoveSoundFx(sfxenum_t id)
{
	if (id >= sfx_freeslot0 && id <= sfx_lastskinsoundslot
		&& S_sfx[id].priority != 0)
	{
		S_sfx[id].lumpnum = LUMPERROR;
		I_FreeSfx(&S_sfx[id]);
		S_sfx[id].priority = 0;
	}
}