From 4297507c8ffa4fc3878b8bb066eaa2b0fae97e28 Mon Sep 17 00:00:00 2001 From: hendricks266 Date: Sat, 1 Jun 2013 06:55:30 +0000 Subject: [PATCH] Dynamicsoundremap. git-svn-id: https://svn.eduke32.com/eduke32@3834 1a8010ca-5511-0410-912e-c29ae57300e0 --- polymer/eduke32/Makefile | 1 + polymer/eduke32/Makefile.deps | 2 + polymer/eduke32/Makefile.msvc | 1 + polymer/eduke32/eduke32.vcxproj | 2 + polymer/eduke32/eduke32.vcxproj.filters | 6 + polymer/eduke32/source/duke3d.h | 4 +- polymer/eduke32/source/game.c | 1 + polymer/eduke32/source/gamedef.c | 34 +- polymer/eduke32/source/gamedef.h | 1 + polymer/eduke32/source/gamevars.c | 62 +- polymer/eduke32/source/namesdyn.c | 8 +- polymer/eduke32/source/savegame.c | 1 + polymer/eduke32/source/sounds.c | 69 +- polymer/eduke32/source/soundsdyn.c | 900 ++++++++++++++++++++++++ polymer/eduke32/source/soundsdyn.h | 846 ++++++++++++++++++++++ 15 files changed, 1889 insertions(+), 49 deletions(-) create mode 100644 polymer/eduke32/source/soundsdyn.c create mode 100644 polymer/eduke32/source/soundsdyn.h diff --git a/polymer/eduke32/Makefile b/polymer/eduke32/Makefile index 26a560dc1..afe30ecbe 100644 --- a/polymer/eduke32/Makefile +++ b/polymer/eduke32/Makefile @@ -117,6 +117,7 @@ GAMEOBJS=$(OBJ)/game.$o \ $(OBJ)/osdcmds.$o \ $(OBJ)/grpscan.$o \ $(OBJ)/sounds.$o \ + $(OBJ)/soundsdyn.$o \ $(JMACTOBJ) EDITOROBJS=$(OBJ)/astub.$o \ diff --git a/polymer/eduke32/Makefile.deps b/polymer/eduke32/Makefile.deps index e27ea1f25..69d062600 100644 --- a/polymer/eduke32/Makefile.deps +++ b/polymer/eduke32/Makefile.deps @@ -18,6 +18,7 @@ duke3d_h=\ $(INC)/function.h \ $(INC)/config.h \ $(INC)/sounds.h \ + $(INC)/soundsdyn.h \ $(INC)/rts.h \ $(INC)/_rts.h \ $(INC)/soundefs.h \ @@ -53,6 +54,7 @@ $(OBJ)/premap.$o: $(SRC)/premap.c $(duke3d_h) $(EINC)/osd.h $(OBJ)/savegame.$o: $(SRC)/savegame.c $(duke3d_h) $(SRC)/savegame.h $(OBJ)/sector.$o: $(SRC)/sector.c $(duke3d_h) $(SRC)/input.h $(OBJ)/sounds.$o: $(SRC)/sounds.c $(duke3d_h) +$(OBJ)/soundsdyn.$o: $(SRC)/soundsdyn.c $(duke3d_h) $(OBJ)/rts.$o: $(SRC)/rts.c $(duke3d_h) $(OBJ)/config.$o: $(SRC)/config.c $(duke3d_h) $(SRC)/jmact/scriplib.h $(INC)/_functio.h $(OBJ)/winbits.$o: $(SRC)/winbits.c diff --git a/polymer/eduke32/Makefile.msvc b/polymer/eduke32/Makefile.msvc index d1a93af5c..edfc645c9 100644 --- a/polymer/eduke32/Makefile.msvc +++ b/polymer/eduke32/Makefile.msvc @@ -116,6 +116,7 @@ GAMEOBJS=$(OBJ)\game.$o \ $(JMACTOBJ) \ $(AUDIOLIBOBJ) \ $(OBJ)\sounds.$o \ + $(OBJ)\soundsdyn.$o \ !ifdef DEBUG $(OBJ)\mdump.$o !endif diff --git a/polymer/eduke32/eduke32.vcxproj b/polymer/eduke32/eduke32.vcxproj index 38c3aada3..84e089f95 100644 --- a/polymer/eduke32/eduke32.vcxproj +++ b/polymer/eduke32/eduke32.vcxproj @@ -156,6 +156,7 @@ + @@ -262,6 +263,7 @@ + diff --git a/polymer/eduke32/eduke32.vcxproj.filters b/polymer/eduke32/eduke32.vcxproj.filters index 16601a3a9..155458524 100644 --- a/polymer/eduke32/eduke32.vcxproj.filters +++ b/polymer/eduke32/eduke32.vcxproj.filters @@ -204,6 +204,9 @@ eduke32\headers + + eduke32\headers + eduke32\headers @@ -563,6 +566,9 @@ eduke32\source + + eduke32\source + eduke32\source diff --git a/polymer/eduke32/source/duke3d.h b/polymer/eduke32/source/duke3d.h index ac10fbf73..f8924d55a 100644 --- a/polymer/eduke32/source/duke3d.h +++ b/polymer/eduke32/source/duke3d.h @@ -57,7 +57,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define VOLUMEONE (g_Shareware == 1) // increase by 3, because atomic GRP adds 1, and Shareware adds 2 -#define BYTEVERSION_JF 276 +#define BYTEVERSION_JF 279 #define BYTEVERSION_13 27 #define BYTEVERSION_14 116 @@ -119,7 +119,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "control.h" #include "_rts.h" #include "rts.h" -#include "soundefs.h" +#include "soundsdyn.h" #include "music.h" #include "player.h" #include "actors.h" diff --git a/polymer/eduke32/source/game.c b/polymer/eduke32/source/game.c index 7ce026b7f..925c77b89 100644 --- a/polymer/eduke32/source/game.c +++ b/polymer/eduke32/source/game.c @@ -10763,6 +10763,7 @@ static void G_Startup(void) #endif G_InitDynamicTiles(); + G_InitDynamicSounds(); G_PostCreateGameState(); if (g_netServer || ud.multimode > 1) G_CheckGametype(); diff --git a/polymer/eduke32/source/gamedef.c b/polymer/eduke32/source/gamedef.c index 815a9dfca..73bdec757 100644 --- a/polymer/eduke32/source/gamedef.c +++ b/polymer/eduke32/source/gamedef.c @@ -93,6 +93,7 @@ static struct { uint32_t keyw; uint32_t date; } g_keywdate[] = { CON_ROTATESPRITEA, 20130324 }, { CON_ACTIVATE, 20130522 }, { CON_SCREENTEXT, 20130529 }, + { CON_DYNAMICSOUNDREMAP, 20130530 }, }; #endif @@ -111,7 +112,7 @@ static intptr_t *g_caseScriptPtr=NULL; static intptr_t *previous_event=NULL; static int32_t g_numCases = 0; static int32_t g_checkingSwitch = 0, g_currentEvent = -1; -static int32_t g_labelsOnly = 0, g_skipKeywordCheck = 0, g_dynamicTileMapping = 0; +static int32_t g_labelsOnly = 0, g_skipKeywordCheck = 0, g_dynamicTileMapping = 0, g_dynamicSoundMapping = 0; static int32_t g_numBraces = 0; static int32_t C_ParseCommand(int32_t loop); @@ -589,6 +590,7 @@ const char *keyw[] = "activate", // 368 "qstrdim", // 369 "screentext", // 370 + "dynamicsoundremap", // 371 "" }; #endif @@ -1187,6 +1189,7 @@ void C_InitHashes() hash_init(&h_arrays); hash_init(&h_labels); inithashnames(); + initsoundhashnames(); hash_init(&h_keywords); hash_init(§orH); @@ -4146,6 +4149,26 @@ static int32_t C_ParseCommand(int32_t loop) #endif continue; + case CON_DYNAMICSOUNDREMAP: + g_scriptPtr--; + if (g_dynamicSoundMapping) + { + initprintf("%s:%d: warning: duplicate dynamicsoundremap statement\n",g_szScriptFileName,g_lineNumber); + g_numCompilerWarnings++; + } + else +#ifdef DYNSOUNDREMAP_ENABLE + initprintf("Using dynamic sound remapping\n"); + + g_dynamicSoundMapping = 1; +#else + { + initprintf("%s:%d: warning: dynamic sound remapping is disabled in this build\n",g_szScriptFileName,g_lineNumber); + g_numCompilerWarnings++; + } +#endif + continue; + case CON_RANDVAR: case CON_ZSHOOT: case CON_EZSHOOT: @@ -5808,6 +5831,11 @@ repeatcase: case CON_DEFINESOUND: g_scriptPtr--; C_GetNextValue(LABEL_DEFINE); + + // Ideally we could keep the value of i from C_GetNextValue() instead of having to hash_find() again. + // This depends on tempbuf remaining in place after C_GetNextValue(): + j = hash_find(&h_labels,tempbuf); + k = *(g_scriptPtr-1); if ((unsigned)k >= MAXSOUNDS) { @@ -5875,6 +5903,9 @@ repeatcase: if (k > g_maxSoundPos) g_maxSoundPos = k; + + if (k >= 0 && k < MAXSOUNDS && g_dynamicSoundMapping && j >= 0 && (labeltype[j] & LABEL_DEFINE)) + G_ProcessDynamicSoundMapping(label+(j<<6),k); continue; case CON_ENDEVENT: @@ -6383,6 +6414,7 @@ void C_Compile(const char *filenam) hash_free(&h_keywords); freehashnames(); + freesoundhashnames(); hash_free(§orH); hash_free(&wallH); diff --git a/polymer/eduke32/source/gamedef.h b/polymer/eduke32/source/gamedef.h index 1ae51f32f..940ff5dda 100644 --- a/polymer/eduke32/source/gamedef.h +++ b/polymer/eduke32/source/gamedef.h @@ -943,6 +943,7 @@ enum ScriptKeywords_t CON_ACTIVATE, // 368 CON_QSTRDIM, // 369 CON_SCREENTEXT, // 370 + CON_DYNAMICSOUNDREMAP, // 371 CON_END }; #endif diff --git a/polymer/eduke32/source/gamevars.c b/polymer/eduke32/source/gamevars.c index 9fb1c9dc1..55dbd9b9f 100644 --- a/polymer/eduke32/source/gamevars.c +++ b/polymer/eduke32/source/gamevars.c @@ -1079,84 +1079,84 @@ static weapondata_t weapondefaults[MAX_WEAPONS] = { KNEE_WEAPON, 0, 0, 7, 14, 0, WEAPON_NOVISIBLE | WEAPON_RANDOMRESTART | WEAPON_AUTOMATIC, KNEE__STATIC, 0, 0, 0, 0, 0, 0, - 0, EJECT_CLIP, INSERT_CLIP, 0, 0 + 0, EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, 0, 0 }, { PISTOL_WEAPON, /*NAM?20:*/12, /*NAM?50:*/27, 2, 5, 0, /*(NAM?WEAPON_HOLSTER_CLEARS_CLIP:0) |*/ WEAPON_RELOAD_TIMING, - SHOTSPARK1__STATIC, 2, SHELL__STATIC, 0, 0, PISTOL_FIRE, 0, 0, - EJECT_CLIP, INSERT_CLIP, INSERT_CLIP, 255+(95<<8) + SHOTSPARK1__STATIC, 2, SHELL__STATIC, 0, 0, PISTOL_FIRE__STATIC, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, INSERT_CLIP__STATIC, 255+(95<<8) }, { SHOTGUN_WEAPON, 0, 13, 4, 30, 0, WEAPON_CHECKATRELOAD, - SHOTGUN__STATIC, 24, SHOTGUNSHELL__STATIC, 7, 0, SHOTGUN_FIRE, 15, SHOTGUN_COCK, - EJECT_CLIP, INSERT_CLIP, SHOTGUN_COCK, 255+(95<<8) + SHOTGUN__STATIC, 24, SHOTGUNSHELL__STATIC, 7, 0, SHOTGUN_FIRE__STATIC, 15, SHOTGUN_COCK__STATIC, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SHOTGUN_COCK__STATIC, 255+(95<<8) }, { CHAINGUN_WEAPON, 0, 0, 3, 12, 3, WEAPON_AUTOMATIC | WEAPON_FIREEVERYTHIRD | WEAPON_AMMOPERSHOT | WEAPON_SPAWNTYPE3 | WEAPON_RESET, - CHAINGUN__STATIC, 1, SHELL__STATIC, 0, 0, CHAINGUN_FIRE, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 255+(95<<8) + CHAINGUN__STATIC, 1, SHELL__STATIC, 0, 0, CHAINGUN_FIRE__STATIC, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 255+(95<<8) }, { RPG_WEAPON, 0, 0, 4, 20, 0, 0, RPG__STATIC, 0, 0, 0, 0, 0, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 255+(95<<8) + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 255+(95<<8) }, { HANDBOMB_WEAPON, 0, 30, 6, 19, 12, WEAPON_THROWIT, HEAVYHBOMB__STATIC, 0, 0, 0, 0, 0, 0, - 0, EJECT_CLIP, INSERT_CLIP, 0, 0 + 0, EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, 0, 0 }, { SHRINKER_WEAPON, 0, 0, 10, /*NAM?30:*/12, 0, WEAPON_GLOWS, - SHRINKER__STATIC, 0, 0, 0, SHRINKER_FIRE, 0, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 128+(255<<8)+(128<<16) + SHRINKER__STATIC, 0, 0, 0, SHRINKER_FIRE__STATIC, 0, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 128+(255<<8)+(128<<16) }, { DEVISTATOR_WEAPON, 0, 0, 3, 6, 5, WEAPON_FIREEVERYOTHER | WEAPON_AMMOPERSHOT, - RPG__STATIC, 0, 0, 2, CAT_FIRE, 0, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 255+(95<<8) + RPG__STATIC, 0, 0, 2, CAT_FIRE__STATIC, 0, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 255+(95<<8) }, { TRIPBOMB_WEAPON, 0, 16, 3, 16, 7, WEAPON_NOVISIBLE | WEAPON_STANDSTILL | WEAPON_CHECKATRELOAD, HANDHOLDINGLASER__STATIC, 0, 0, 0, 0, 0, 0, - 0, EJECT_CLIP, INSERT_CLIP, 0, 0 + 0, EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, 0, 0 }, { FREEZE_WEAPON, 0, 0, 3, 5, 0, WEAPON_RESET, - FREEZEBLAST__STATIC, 0, 0, 0, CAT_FIRE, CAT_FIRE, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 128+(128<<8)+(255<<16) + FREEZEBLAST__STATIC, 0, 0, 0, CAT_FIRE__STATIC, CAT_FIRE__STATIC, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 128+(128<<8)+(255<<16) }, { HANDREMOTE_WEAPON, 0, 10, 2, 10, 0, WEAPON_BOMB_TRIGGER | WEAPON_NOVISIBLE, 0, 0, 0, 0, 0, 0, 0, - 0, EJECT_CLIP, INSERT_CLIP, 0, 0 + 0, EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, 0, 0 }, { GROW_WEAPON, 0, 0, 3, /*NAM?30:*/5, 0, WEAPON_GLOWS, - GROWSPARK__STATIC, /*NAM?2:*/0, /*NAM?SHELL:*/0, 0, 0, /*NAM?0:*/EXPANDERSHOOT, 0, 0, - EJECT_CLIP, INSERT_CLIP, SELECT_WEAPON, 255+(95<<8) + GROWSPARK__STATIC, /*NAM?2:*/0, /*NAM?SHELL:*/0, 0, 0, /*NAM?0:*/EXPANDERSHOOT__STATIC, 0, 0, + EJECT_CLIP__STATIC, INSERT_CLIP__STATIC, SELECT_WEAPON__STATIC, 255+(95<<8) }, }; @@ -1181,6 +1181,23 @@ static int32_t G_StaticToDynamicTile(int32_t tile) default: return tile; } } +static int32_t G_StaticToDynamicSound(int32_t sound) +{ + switch (sound) + { + case CAT_FIRE__STATIC: return CAT_FIRE; + case CHAINGUN_FIRE__STATIC: return CHAINGUN_FIRE; + case EJECT_CLIP__STATIC: return EJECT_CLIP; + case EXPANDERSHOOT__STATIC: return EXPANDERSHOOT; + case INSERT_CLIP__STATIC: return INSERT_CLIP; + case PISTOL_FIRE__STATIC: return PISTOL_FIRE; + case SELECT_WEAPON__STATIC: return SELECT_WEAPON; + case SHOTGUN_FIRE__STATIC: return SHOTGUN_FIRE; + case SHOTGUN_COCK__STATIC: return SHOTGUN_COCK; + case SHRINKER_FIRE__STATIC: return SHRINKER_FIRE; + default: return sound; + } +} #ifdef LUNATIC # define ADDWEAPONVAR(Weapidx, Membname) do { \ @@ -1225,6 +1242,13 @@ static void Gv_AddSystemVars(void) weapondefaults[i].Shoots = G_StaticToDynamicTile(weapondefaults[i].Shoots); weapondefaults[i].Spawn = G_StaticToDynamicTile(weapondefaults[i].Spawn); + weapondefaults[i].InitialSound = G_StaticToDynamicSound(weapondefaults[i].InitialSound); + weapondefaults[i].FireSound = G_StaticToDynamicSound(weapondefaults[i].FireSound); + weapondefaults[i].ReloadSound1 = G_StaticToDynamicSound(weapondefaults[i].ReloadSound1); + weapondefaults[i].Sound2Sound = G_StaticToDynamicSound(weapondefaults[i].Sound2Sound); + weapondefaults[i].ReloadSound2 = G_StaticToDynamicSound(weapondefaults[i].ReloadSound2); + weapondefaults[i].SelectSound = G_StaticToDynamicSound(weapondefaults[i].SelectSound); + ADDWEAPONVAR(i, WorksLike); ADDWEAPONVAR(i, Clip); ADDWEAPONVAR(i, Reload); diff --git a/polymer/eduke32/source/namesdyn.c b/polymer/eduke32/source/namesdyn.c index 8bb9267bb..ece85c075 100644 --- a/polymer/eduke32/source/namesdyn.c +++ b/polymer/eduke32/source/namesdyn.c @@ -20,8 +20,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ //------------------------------------------------------------------------- -// Maybe this should be called "hacks.c" instead of "namesdyn.c"... - #include "compat.h" #include "build.h" @@ -782,7 +780,7 @@ LUNATIC_EXTERN struct dynitem g_dynTileList[] = { "RESERVEDSLOT10", DVPTR(RESERVEDSLOT10), RESERVEDSLOT10__STATIC }, { "RESERVEDSLOT11", DVPTR(RESERVEDSLOT11), RESERVEDSLOT11__STATIC }, { "RESERVEDSLOT12", DVPTR(RESERVEDSLOT12), RESERVEDSLOT12__STATIC }, - { NULL, NULL, 0 }, + { NULL, NULL, -1 }, }; #ifdef DYNTILEREMAP_ENABLE @@ -1554,7 +1552,7 @@ void inithashnames(void) hash_init(&h_names); - for (i=0; g_dynTileList[i].staticval; i++) + for (i=0; g_dynTileList[i].staticval >= 0; i++) hash_add(&h_names, g_dynTileList[i].str, i, 0); } @@ -1573,7 +1571,7 @@ void G_InitDynamicTiles(void) Bmemset(DynamicTileMap, 0, sizeof(DynamicTileMap)); - for (i=0; g_dynTileList[i].staticval; i++) + for (i=0; g_dynTileList[i].staticval >= 0; i++) #ifdef DYNTILEREMAP_ENABLE DynamicTileMap[*(g_dynTileList[i].dynvalptr)] = g_dynTileList[i].staticval; #else diff --git a/polymer/eduke32/source/savegame.c b/polymer/eduke32/source/savegame.c index 0126b91dd..4d066d624 100644 --- a/polymer/eduke32/source/savegame.c +++ b/polymer/eduke32/source/savegame.c @@ -948,6 +948,7 @@ static const dataspec_t svgm_secwsp[] = { DS_SAVEFN|DS_LOADFN, (void *)&sv_postspriteext, 0, 1 }, #endif { 0, &DynamicTileMap[0], sizeof(DynamicTileMap[0]), MAXTILES }, // NOCHK? + { 0, &DynamicSoundMap[0], sizeof(DynamicSoundMap[0]), MAXSOUNDS }, // NOCHK? { DS_NOCHK, &g_numCyclers, sizeof(g_numCyclers), 1 }, { DS_CNT(g_numCyclers), &cyclers[0][0], sizeof(cyclers[0]), (intptr_t)&g_numCyclers }, { DS_NOCHK, &g_numAnimWalls, sizeof(g_numAnimWalls), 1 }, diff --git a/polymer/eduke32/source/sounds.c b/polymer/eduke32/source/sounds.c index fc7a2f5a4..b1be44241 100644 --- a/polymer/eduke32/source/sounds.c +++ b/polymer/eduke32/source/sounds.c @@ -163,31 +163,56 @@ void S_MusicVolume(int32_t volume) MUSIC_SetVolume(volume); } +static int32_t S_StaticToDynamicMenuSound(int32_t sound) +{ + switch (sound) + { + case LASERTRIP_EXPLODE__STATIC: return LASERTRIP_EXPLODE; + case DUKE_GRUNT__STATIC: return DUKE_GRUNT; + case DUKE_LAND_HURT__STATIC: return DUKE_LAND_HURT; + case CHAINGUN_FIRE__STATIC: return CHAINGUN_FIRE; + case SQUISHED__STATIC: return SQUISHED; + case KICK_HIT__STATIC: return KICK_HIT; + case PISTOL_RICOCHET__STATIC: return PISTOL_RICOCHET; + case PISTOL_BODYHIT__STATIC: return PISTOL_BODYHIT; + case PISTOL_FIRE__STATIC: return PISTOL_FIRE; + case SHOTGUN_FIRE__STATIC: return SHOTGUN_FIRE; + case BOS1_WALK__STATIC: return BOS1_WALK; + case RPG_EXPLODE__STATIC: return RPG_EXPLODE; + case PIPEBOMB_BOUNCE__STATIC: return PIPEBOMB_BOUNCE; + case PIPEBOMB_EXPLODE__STATIC: return PIPEBOMB_EXPLODE; + case NITEVISION_ONOFF__STATIC: return NITEVISION_ONOFF; + case RPG_SHOOT__STATIC: return RPG_SHOOT; + case SELECT_WEAPON__STATIC: return SELECT_WEAPON; + default: return sound; + } +} + void S_MenuSound(void) { static int32_t SoundNum=0; static const uint8_t menusnds[] = { - LASERTRIP_EXPLODE, - DUKE_GRUNT, - DUKE_LAND_HURT, - CHAINGUN_FIRE, - SQUISHED, - KICK_HIT, - PISTOL_RICOCHET, - PISTOL_BODYHIT, - PISTOL_FIRE, - SHOTGUN_FIRE, - BOS1_WALK, - RPG_EXPLODE, - PIPEBOMB_BOUNCE, - PIPEBOMB_EXPLODE, - NITEVISION_ONOFF, - RPG_SHOOT, - SELECT_WEAPON + LASERTRIP_EXPLODE__STATIC, + DUKE_GRUNT__STATIC, + DUKE_LAND_HURT__STATIC, + CHAINGUN_FIRE__STATIC, + SQUISHED__STATIC, + KICK_HIT__STATIC, + PISTOL_RICOCHET__STATIC, + PISTOL_BODYHIT__STATIC, + PISTOL_FIRE__STATIC, + SHOTGUN_FIRE__STATIC, + BOS1_WALK__STATIC, + RPG_EXPLODE__STATIC, + PIPEBOMB_BOUNCE__STATIC, + PIPEBOMB_EXPLODE__STATIC, + NITEVISION_ONOFF__STATIC, + RPG_SHOOT__STATIC, + SELECT_WEAPON__STATIC, }; - S_PlaySound(menusnds[SoundNum++ % (sizeof(menusnds)/sizeof(menusnds[0]))]); + S_PlaySound(S_StaticToDynamicMenuSound(menusnds[SoundNum++ % (sizeof(menusnds)/sizeof(menusnds[0]))])); } int32_t S_PlayMusic(const char *fn, const int32_t sel) @@ -523,11 +548,11 @@ sound_further_processing: !cansee(cam->x,cam->y,cam->z-(24<<8),camsect, SX,SY,SZ-(24<<8),SECT)) sndist += sndist>>5; - switch (num) + switch (DYNAMICSOUNDMAP(num)) { - case PIPEBOMB_EXPLODE: - case LASERTRIP_EXPLODE: - case RPG_EXPLODE: + case PIPEBOMB_EXPLODE__STATIC: + case LASERTRIP_EXPLODE__STATIC: + case RPG_EXPLODE__STATIC: explosion = 1; if (sndist > 6144) sndist = 6144; diff --git a/polymer/eduke32/source/soundsdyn.c b/polymer/eduke32/source/soundsdyn.c new file mode 100644 index 000000000..60832cc0f --- /dev/null +++ b/polymer/eduke32/source/soundsdyn.c @@ -0,0 +1,900 @@ +//------------------------------------------------------------------------- +/* +Copyright (C) 2013 EDuke32 developers and contributors + +This file is part of EDuke32. + +EDuke32 is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License version 2 +as published by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +//------------------------------------------------------------------------- + +#include "compat.h" +#include "build.h" + +#include "namesdyn.h" +#include "sounds.h" +#include "soundsdyn.h" +#include "global.h" + +#ifdef DYNSOUNDREMAP_ENABLE +# define DVPTR(x) &x +#else +# define DVPTR(x) NULL +#endif + +int16_t DynamicSoundMap[MAXSOUNDS]; + +struct dynitem +{ + const char *str; + int32_t *dynvalptr; + const int16_t staticval; +}; + +LUNATIC_EXTERN struct dynitem g_dynSoundList[] = +{ + { "KICK_HIT", DVPTR(KICK_HIT), KICK_HIT__STATIC }, + { "PISTOL_RICOCHET", DVPTR(PISTOL_RICOCHET), PISTOL_RICOCHET__STATIC }, + { "PISTOL_BODYHIT", DVPTR(PISTOL_BODYHIT), PISTOL_BODYHIT__STATIC }, + { "PISTOL_FIRE", DVPTR(PISTOL_FIRE), PISTOL_FIRE__STATIC }, + { "EJECT_CLIP", DVPTR(EJECT_CLIP), EJECT_CLIP__STATIC }, + { "INSERT_CLIP", DVPTR(INSERT_CLIP), INSERT_CLIP__STATIC }, + { "CHAINGUN_FIRE", DVPTR(CHAINGUN_FIRE), CHAINGUN_FIRE__STATIC }, + { "RPG_SHOOT", DVPTR(RPG_SHOOT), RPG_SHOOT__STATIC }, + { "POOLBALLHIT", DVPTR(POOLBALLHIT), POOLBALLHIT__STATIC }, + { "RPG_EXPLODE", DVPTR(RPG_EXPLODE), RPG_EXPLODE__STATIC }, + { "CAT_FIRE", DVPTR(CAT_FIRE), CAT_FIRE__STATIC }, + { "SHRINKER_FIRE", DVPTR(SHRINKER_FIRE), SHRINKER_FIRE__STATIC }, + { "ACTOR_SHRINKING", DVPTR(ACTOR_SHRINKING), ACTOR_SHRINKING__STATIC }, + { "PIPEBOMB_BOUNCE", DVPTR(PIPEBOMB_BOUNCE), PIPEBOMB_BOUNCE__STATIC }, + { "PIPEBOMB_EXPLODE", DVPTR(PIPEBOMB_EXPLODE), PIPEBOMB_EXPLODE__STATIC }, + { "LASERTRIP_ONWALL", DVPTR(LASERTRIP_ONWALL), LASERTRIP_ONWALL__STATIC }, + { "LASERTRIP_ARMING", DVPTR(LASERTRIP_ARMING), LASERTRIP_ARMING__STATIC }, + { "LASERTRIP_EXPLODE", DVPTR(LASERTRIP_EXPLODE), LASERTRIP_EXPLODE__STATIC }, + { "VENT_BUST", DVPTR(VENT_BUST), VENT_BUST__STATIC }, + { "GLASS_BREAKING", DVPTR(GLASS_BREAKING), GLASS_BREAKING__STATIC }, + { "GLASS_HEAVYBREAK", DVPTR(GLASS_HEAVYBREAK), GLASS_HEAVYBREAK__STATIC }, + { "SHORT_CIRCUIT", DVPTR(SHORT_CIRCUIT), SHORT_CIRCUIT__STATIC }, + { "ITEM_SPLASH", DVPTR(ITEM_SPLASH), ITEM_SPLASH__STATIC }, + { "DUKE_BREATHING", DVPTR(DUKE_BREATHING), DUKE_BREATHING__STATIC }, + { "DUKE_EXHALING", DVPTR(DUKE_EXHALING), DUKE_EXHALING__STATIC }, + { "DUKE_GASP", DVPTR(DUKE_GASP), DUKE_GASP__STATIC }, + { "SLIM_RECOG", DVPTR(SLIM_RECOG), SLIM_RECOG__STATIC }, +// { "ENDSEQVOL3SND1", DVPTR(ENDSEQVOL3SND1), ENDSEQVOL3SND1__STATIC }, + { "DUKE_URINATE", DVPTR(DUKE_URINATE), DUKE_URINATE__STATIC }, + { "ENDSEQVOL3SND2", DVPTR(ENDSEQVOL3SND2), ENDSEQVOL3SND2__STATIC }, + { "ENDSEQVOL3SND3", DVPTR(ENDSEQVOL3SND3), ENDSEQVOL3SND3__STATIC }, + { "DUKE_PASSWIND", DVPTR(DUKE_PASSWIND), DUKE_PASSWIND__STATIC }, + { "DUKE_CRACK", DVPTR(DUKE_CRACK), DUKE_CRACK__STATIC }, + { "SLIM_ATTACK", DVPTR(SLIM_ATTACK), SLIM_ATTACK__STATIC }, + { "SOMETHINGHITFORCE", DVPTR(SOMETHINGHITFORCE), SOMETHINGHITFORCE__STATIC }, + { "DUKE_DRINKING", DVPTR(DUKE_DRINKING), DUKE_DRINKING__STATIC }, + { "DUKE_KILLED1", DVPTR(DUKE_KILLED1), DUKE_KILLED1__STATIC }, + { "DUKE_GRUNT", DVPTR(DUKE_GRUNT), DUKE_GRUNT__STATIC }, + { "DUKE_HARTBEAT", DVPTR(DUKE_HARTBEAT), DUKE_HARTBEAT__STATIC }, + { "DUKE_ONWATER", DVPTR(DUKE_ONWATER), DUKE_ONWATER__STATIC }, + { "DUKE_DEAD", DVPTR(DUKE_DEAD), DUKE_DEAD__STATIC }, + { "DUKE_LAND", DVPTR(DUKE_LAND), DUKE_LAND__STATIC }, + { "DUKE_WALKINDUCTS", DVPTR(DUKE_WALKINDUCTS), DUKE_WALKINDUCTS__STATIC }, + { "DUKE_GLAD", DVPTR(DUKE_GLAD), DUKE_GLAD__STATIC }, + { "DUKE_YES", DVPTR(DUKE_YES), DUKE_YES__STATIC }, + { "DUKE_HEHE", DVPTR(DUKE_HEHE), DUKE_HEHE__STATIC }, + { "DUKE_SHUCKS", DVPTR(DUKE_SHUCKS), DUKE_SHUCKS__STATIC }, + { "DUKE_UNDERWATER", DVPTR(DUKE_UNDERWATER), DUKE_UNDERWATER__STATIC }, + { "DUKE_JETPACK_ON", DVPTR(DUKE_JETPACK_ON), DUKE_JETPACK_ON__STATIC }, + { "DUKE_JETPACK_IDLE", DVPTR(DUKE_JETPACK_IDLE), DUKE_JETPACK_IDLE__STATIC }, + { "DUKE_JETPACK_OFF", DVPTR(DUKE_JETPACK_OFF), DUKE_JETPACK_OFF__STATIC }, + { "LIZTROOP_GROWL", DVPTR(LIZTROOP_GROWL), LIZTROOP_GROWL__STATIC }, + { "LIZTROOP_TALK1", DVPTR(LIZTROOP_TALK1), LIZTROOP_TALK1__STATIC }, + { "LIZTROOP_TALK2", DVPTR(LIZTROOP_TALK2), LIZTROOP_TALK2__STATIC }, + { "LIZTROOP_TALK3", DVPTR(LIZTROOP_TALK3), LIZTROOP_TALK3__STATIC }, + { "DUKETALKTOBOSS", DVPTR(DUKETALKTOBOSS), DUKETALKTOBOSS__STATIC }, + { "LIZCAPT_GROWL", DVPTR(LIZCAPT_GROWL), LIZCAPT_GROWL__STATIC }, + { "LIZCAPT_TALK1", DVPTR(LIZCAPT_TALK1), LIZCAPT_TALK1__STATIC }, + { "LIZCAPT_TALK2", DVPTR(LIZCAPT_TALK2), LIZCAPT_TALK2__STATIC }, + { "LIZCAPT_TALK3", DVPTR(LIZCAPT_TALK3), LIZCAPT_TALK3__STATIC }, + { "LIZARD_BEG", DVPTR(LIZARD_BEG), LIZARD_BEG__STATIC }, + { "LIZARD_PAIN", DVPTR(LIZARD_PAIN), LIZARD_PAIN__STATIC }, + { "LIZARD_DEATH", DVPTR(LIZARD_DEATH), LIZARD_DEATH__STATIC }, + { "LIZARD_SPIT", DVPTR(LIZARD_SPIT), LIZARD_SPIT__STATIC }, + { "DRONE1_HISSRATTLE", DVPTR(DRONE1_HISSRATTLE), DRONE1_HISSRATTLE__STATIC }, + { "DRONE1_HISSSCREECH", DVPTR(DRONE1_HISSSCREECH), DRONE1_HISSSCREECH__STATIC }, + { "DUKE_TIP2", DVPTR(DUKE_TIP2), DUKE_TIP2__STATIC }, + { "FLESH_BURNING", DVPTR(FLESH_BURNING), FLESH_BURNING__STATIC }, + { "SQUISHED", DVPTR(SQUISHED), SQUISHED__STATIC }, + { "TELEPORTER", DVPTR(TELEPORTER), TELEPORTER__STATIC }, + { "ELEVATOR_ON", DVPTR(ELEVATOR_ON), ELEVATOR_ON__STATIC }, + { "DUKE_KILLED3", DVPTR(DUKE_KILLED3), DUKE_KILLED3__STATIC }, + { "ELEVATOR_OFF", DVPTR(ELEVATOR_OFF), ELEVATOR_OFF__STATIC }, + { "DOOR_OPERATE1", DVPTR(DOOR_OPERATE1), DOOR_OPERATE1__STATIC }, + { "SUBWAY", DVPTR(SUBWAY), SUBWAY__STATIC }, + { "SWITCH_ON", DVPTR(SWITCH_ON), SWITCH_ON__STATIC }, + { "FAN", DVPTR(FAN), FAN__STATIC }, + { "DUKE_GETWEAPON3", DVPTR(DUKE_GETWEAPON3), DUKE_GETWEAPON3__STATIC }, + { "FLUSH_TOILET", DVPTR(FLUSH_TOILET), FLUSH_TOILET__STATIC }, + { "HOVER_CRAFT", DVPTR(HOVER_CRAFT), HOVER_CRAFT__STATIC }, + { "EARTHQUAKE", DVPTR(EARTHQUAKE), EARTHQUAKE__STATIC }, + { "INTRUDER_ALERT", DVPTR(INTRUDER_ALERT), INTRUDER_ALERT__STATIC }, + { "END_OF_LEVEL_WARN", DVPTR(END_OF_LEVEL_WARN), END_OF_LEVEL_WARN__STATIC }, + { "ENGINE_OPERATING", DVPTR(ENGINE_OPERATING), ENGINE_OPERATING__STATIC }, + { "REACTOR_ON", DVPTR(REACTOR_ON), REACTOR_ON__STATIC }, + { "COMPUTER_AMBIENCE", DVPTR(COMPUTER_AMBIENCE), COMPUTER_AMBIENCE__STATIC }, + { "GEARS_GRINDING", DVPTR(GEARS_GRINDING), GEARS_GRINDING__STATIC }, + { "BUBBLE_AMBIENCE", DVPTR(BUBBLE_AMBIENCE), BUBBLE_AMBIENCE__STATIC }, + { "MACHINE_AMBIENCE", DVPTR(MACHINE_AMBIENCE), MACHINE_AMBIENCE__STATIC }, + { "SEWER_AMBIENCE", DVPTR(SEWER_AMBIENCE), SEWER_AMBIENCE__STATIC }, + { "WIND_AMBIENCE", DVPTR(WIND_AMBIENCE), WIND_AMBIENCE__STATIC }, + { "SOMETHING_DRIPPING", DVPTR(SOMETHING_DRIPPING), SOMETHING_DRIPPING__STATIC }, + { "STEAM_HISSING", DVPTR(STEAM_HISSING), STEAM_HISSING__STATIC }, + { "THEATER_BREATH", DVPTR(THEATER_BREATH), THEATER_BREATH__STATIC }, + { "BAR_MUSIC", DVPTR(BAR_MUSIC), BAR_MUSIC__STATIC }, + { "BOS1_ROAM", DVPTR(BOS1_ROAM), BOS1_ROAM__STATIC }, + { "BOS1_RECOG", DVPTR(BOS1_RECOG), BOS1_RECOG__STATIC }, + { "BOS1_ATTACK1", DVPTR(BOS1_ATTACK1), BOS1_ATTACK1__STATIC }, + { "BOS1_PAIN", DVPTR(BOS1_PAIN), BOS1_PAIN__STATIC }, + { "BOS1_DYING", DVPTR(BOS1_DYING), BOS1_DYING__STATIC }, + { "BOS2_ROAM", DVPTR(BOS2_ROAM), BOS2_ROAM__STATIC }, + { "BOS2_RECOG", DVPTR(BOS2_RECOG), BOS2_RECOG__STATIC }, + { "BOS2_ATTACK", DVPTR(BOS2_ATTACK), BOS2_ATTACK__STATIC }, + { "BOS2_PAIN", DVPTR(BOS2_PAIN), BOS2_PAIN__STATIC }, + { "BOS2_DYING", DVPTR(BOS2_DYING), BOS2_DYING__STATIC }, + { "GETATOMICHEALTH", DVPTR(GETATOMICHEALTH), GETATOMICHEALTH__STATIC }, + { "DUKE_GETWEAPON2", DVPTR(DUKE_GETWEAPON2), DUKE_GETWEAPON2__STATIC }, + { "BOS3_DYING", DVPTR(BOS3_DYING), BOS3_DYING__STATIC }, + { "SHOTGUN_FIRE", DVPTR(SHOTGUN_FIRE), SHOTGUN_FIRE__STATIC }, + { "PRED_ROAM", DVPTR(PRED_ROAM), PRED_ROAM__STATIC }, + { "PRED_RECOG", DVPTR(PRED_RECOG), PRED_RECOG__STATIC }, + { "PRED_ATTACK", DVPTR(PRED_ATTACK), PRED_ATTACK__STATIC }, + { "PRED_PAIN", DVPTR(PRED_PAIN), PRED_PAIN__STATIC }, + { "PRED_DYING", DVPTR(PRED_DYING), PRED_DYING__STATIC }, + { "CAPT_ROAM", DVPTR(CAPT_ROAM), CAPT_ROAM__STATIC }, + { "CAPT_ATTACK", DVPTR(CAPT_ATTACK), CAPT_ATTACK__STATIC }, + { "CAPT_RECOG", DVPTR(CAPT_RECOG), CAPT_RECOG__STATIC }, + { "CAPT_PAIN", DVPTR(CAPT_PAIN), CAPT_PAIN__STATIC }, + { "CAPT_DYING", DVPTR(CAPT_DYING), CAPT_DYING__STATIC }, + { "PIG_ROAM", DVPTR(PIG_ROAM), PIG_ROAM__STATIC }, + { "PIG_RECOG", DVPTR(PIG_RECOG), PIG_RECOG__STATIC }, + { "PIG_ATTACK", DVPTR(PIG_ATTACK), PIG_ATTACK__STATIC }, + { "PIG_PAIN", DVPTR(PIG_PAIN), PIG_PAIN__STATIC }, + { "PIG_DYING", DVPTR(PIG_DYING), PIG_DYING__STATIC }, + { "RECO_ROAM", DVPTR(RECO_ROAM), RECO_ROAM__STATIC }, + { "RECO_RECOG", DVPTR(RECO_RECOG), RECO_RECOG__STATIC }, + { "RECO_ATTACK", DVPTR(RECO_ATTACK), RECO_ATTACK__STATIC }, + { "RECO_PAIN", DVPTR(RECO_PAIN), RECO_PAIN__STATIC }, + { "RECO_DYING", DVPTR(RECO_DYING), RECO_DYING__STATIC }, + { "DRON_ROAM", DVPTR(DRON_ROAM), DRON_ROAM__STATIC }, + { "DRON_RECOG", DVPTR(DRON_RECOG), DRON_RECOG__STATIC }, + { "DRON_ATTACK1", DVPTR(DRON_ATTACK1), DRON_ATTACK1__STATIC }, + { "DRON_PAIN", DVPTR(DRON_PAIN), DRON_PAIN__STATIC }, + { "DRON_DYING", DVPTR(DRON_DYING), DRON_DYING__STATIC }, + { "COMM_ROAM", DVPTR(COMM_ROAM), COMM_ROAM__STATIC }, + { "COMM_RECOG", DVPTR(COMM_RECOG), COMM_RECOG__STATIC }, + { "COMM_ATTACK", DVPTR(COMM_ATTACK), COMM_ATTACK__STATIC }, + { "COMM_PAIN", DVPTR(COMM_PAIN), COMM_PAIN__STATIC }, + { "COMM_DYING", DVPTR(COMM_DYING), COMM_DYING__STATIC }, + { "OCTA_ROAM", DVPTR(OCTA_ROAM), OCTA_ROAM__STATIC }, + { "OCTA_RECOG", DVPTR(OCTA_RECOG), OCTA_RECOG__STATIC }, + { "OCTA_ATTACK1", DVPTR(OCTA_ATTACK1), OCTA_ATTACK1__STATIC }, + { "OCTA_PAIN", DVPTR(OCTA_PAIN), OCTA_PAIN__STATIC }, + { "OCTA_DYING", DVPTR(OCTA_DYING), OCTA_DYING__STATIC }, + { "TURR_ROAM", DVPTR(TURR_ROAM), TURR_ROAM__STATIC }, + { "TURR_RECOG", DVPTR(TURR_RECOG), TURR_RECOG__STATIC }, + { "TURR_ATTACK", DVPTR(TURR_ATTACK), TURR_ATTACK__STATIC }, + { "DUMPSTER_MOVE", DVPTR(DUMPSTER_MOVE), DUMPSTER_MOVE__STATIC }, + { "SLIM_DYING", DVPTR(SLIM_DYING), SLIM_DYING__STATIC }, + { "BOS3_ROAM", DVPTR(BOS3_ROAM), BOS3_ROAM__STATIC }, + { "BOS3_RECOG", DVPTR(BOS3_RECOG), BOS3_RECOG__STATIC }, + { "BOS3_ATTACK1", DVPTR(BOS3_ATTACK1), BOS3_ATTACK1__STATIC }, + { "BOS3_PAIN", DVPTR(BOS3_PAIN), BOS3_PAIN__STATIC }, + { "BOS1_ATTACK2", DVPTR(BOS1_ATTACK2), BOS1_ATTACK2__STATIC }, + { "COMM_SPIN", DVPTR(COMM_SPIN), COMM_SPIN__STATIC }, + { "BOS1_WALK", DVPTR(BOS1_WALK), BOS1_WALK__STATIC }, + { "DRON_ATTACK2", DVPTR(DRON_ATTACK2), DRON_ATTACK2__STATIC }, + { "THUD", DVPTR(THUD), THUD__STATIC }, + { "OCTA_ATTACK2", DVPTR(OCTA_ATTACK2), OCTA_ATTACK2__STATIC }, + { "WIERDSHOT_FLY", DVPTR(WIERDSHOT_FLY), WIERDSHOT_FLY__STATIC }, + { "TURR_PAIN", DVPTR(TURR_PAIN), TURR_PAIN__STATIC }, + { "TURR_DYING", DVPTR(TURR_DYING), TURR_DYING__STATIC }, + { "SLIM_ROAM", DVPTR(SLIM_ROAM), SLIM_ROAM__STATIC }, + { "LADY_SCREAM", DVPTR(LADY_SCREAM), LADY_SCREAM__STATIC }, + { "DOOR_OPERATE2", DVPTR(DOOR_OPERATE2), DOOR_OPERATE2__STATIC }, + { "DOOR_OPERATE3", DVPTR(DOOR_OPERATE3), DOOR_OPERATE3__STATIC }, + { "DOOR_OPERATE4", DVPTR(DOOR_OPERATE4), DOOR_OPERATE4__STATIC }, + { "BORNTOBEWILDSND", DVPTR(BORNTOBEWILDSND), BORNTOBEWILDSND__STATIC }, + { "SHOTGUN_COCK", DVPTR(SHOTGUN_COCK), SHOTGUN_COCK__STATIC }, + { "GENERIC_AMBIENCE1", DVPTR(GENERIC_AMBIENCE1), GENERIC_AMBIENCE1__STATIC }, + { "GENERIC_AMBIENCE2", DVPTR(GENERIC_AMBIENCE2), GENERIC_AMBIENCE2__STATIC }, + { "GENERIC_AMBIENCE3", DVPTR(GENERIC_AMBIENCE3), GENERIC_AMBIENCE3__STATIC }, + { "GENERIC_AMBIENCE4", DVPTR(GENERIC_AMBIENCE4), GENERIC_AMBIENCE4__STATIC }, + { "GENERIC_AMBIENCE5", DVPTR(GENERIC_AMBIENCE5), GENERIC_AMBIENCE5__STATIC }, + { "GENERIC_AMBIENCE6", DVPTR(GENERIC_AMBIENCE6), GENERIC_AMBIENCE6__STATIC }, + { "BOS3_ATTACK2", DVPTR(BOS3_ATTACK2), BOS3_ATTACK2__STATIC }, + { "GENERIC_AMBIENCE17", DVPTR(GENERIC_AMBIENCE17), GENERIC_AMBIENCE17__STATIC }, + { "GENERIC_AMBIENCE18", DVPTR(GENERIC_AMBIENCE18), GENERIC_AMBIENCE18__STATIC }, + { "GENERIC_AMBIENCE19", DVPTR(GENERIC_AMBIENCE19), GENERIC_AMBIENCE19__STATIC }, + { "GENERIC_AMBIENCE20", DVPTR(GENERIC_AMBIENCE20), GENERIC_AMBIENCE20__STATIC }, + { "GENERIC_AMBIENCE21", DVPTR(GENERIC_AMBIENCE21), GENERIC_AMBIENCE21__STATIC }, + { "GENERIC_AMBIENCE22", DVPTR(GENERIC_AMBIENCE22), GENERIC_AMBIENCE22__STATIC }, + { "SECRETLEVELSND", DVPTR(SECRETLEVELSND), SECRETLEVELSND__STATIC }, + { "GENERIC_AMBIENCE8", DVPTR(GENERIC_AMBIENCE8), GENERIC_AMBIENCE8__STATIC }, + { "GENERIC_AMBIENCE9", DVPTR(GENERIC_AMBIENCE9), GENERIC_AMBIENCE9__STATIC }, + { "GENERIC_AMBIENCE10", DVPTR(GENERIC_AMBIENCE10), GENERIC_AMBIENCE10__STATIC }, + { "GENERIC_AMBIENCE11", DVPTR(GENERIC_AMBIENCE11), GENERIC_AMBIENCE11__STATIC }, + { "GENERIC_AMBIENCE12", DVPTR(GENERIC_AMBIENCE12), GENERIC_AMBIENCE12__STATIC }, + { "GENERIC_AMBIENCE13", DVPTR(GENERIC_AMBIENCE13), GENERIC_AMBIENCE13__STATIC }, + { "GENERIC_AMBIENCE14", DVPTR(GENERIC_AMBIENCE14), GENERIC_AMBIENCE14__STATIC }, + { "GENERIC_AMBIENCE15", DVPTR(GENERIC_AMBIENCE15), GENERIC_AMBIENCE15__STATIC }, + { "GENERIC_AMBIENCE16", DVPTR(GENERIC_AMBIENCE16), GENERIC_AMBIENCE16__STATIC }, + { "FIRE_CRACKLE", DVPTR(FIRE_CRACKLE), FIRE_CRACKLE__STATIC }, + { "BONUS_SPEECH1", DVPTR(BONUS_SPEECH1), BONUS_SPEECH1__STATIC }, + { "BONUS_SPEECH2", DVPTR(BONUS_SPEECH2), BONUS_SPEECH2__STATIC }, + { "BONUS_SPEECH3", DVPTR(BONUS_SPEECH3), BONUS_SPEECH3__STATIC }, + { "PIG_CAPTURE_DUKE", DVPTR(PIG_CAPTURE_DUKE), PIG_CAPTURE_DUKE__STATIC }, + { "BONUS_SPEECH4", DVPTR(BONUS_SPEECH4), BONUS_SPEECH4__STATIC }, + { "DUKE_LAND_HURT", DVPTR(DUKE_LAND_HURT), DUKE_LAND_HURT__STATIC }, + { "DUKE_HIT_STRIPPER1", DVPTR(DUKE_HIT_STRIPPER1), DUKE_HIT_STRIPPER1__STATIC }, + { "DUKE_TIP1", DVPTR(DUKE_TIP1), DUKE_TIP1__STATIC }, + { "DUKE_KILLED2", DVPTR(DUKE_KILLED2), DUKE_KILLED2__STATIC }, + { "PRED_ROAM2", DVPTR(PRED_ROAM2), PRED_ROAM2__STATIC }, + { "PIG_ROAM2", DVPTR(PIG_ROAM2), PIG_ROAM2__STATIC }, + { "DUKE_GETWEAPON1", DVPTR(DUKE_GETWEAPON1), DUKE_GETWEAPON1__STATIC }, + { "DUKE_SEARCH2", DVPTR(DUKE_SEARCH2), DUKE_SEARCH2__STATIC }, + { "DUKE_CRACK2", DVPTR(DUKE_CRACK2), DUKE_CRACK2__STATIC }, + { "DUKE_SEARCH", DVPTR(DUKE_SEARCH), DUKE_SEARCH__STATIC }, + { "DUKE_GET", DVPTR(DUKE_GET), DUKE_GET__STATIC }, + { "DUKE_LONGTERM_PAIN", DVPTR(DUKE_LONGTERM_PAIN), DUKE_LONGTERM_PAIN__STATIC }, + { "MONITOR_ACTIVE", DVPTR(MONITOR_ACTIVE), MONITOR_ACTIVE__STATIC }, + { "NITEVISION_ONOFF", DVPTR(NITEVISION_ONOFF), NITEVISION_ONOFF__STATIC }, + { "DUKE_HIT_STRIPPER2", DVPTR(DUKE_HIT_STRIPPER2), DUKE_HIT_STRIPPER2__STATIC }, + { "DUKE_CRACK_FIRST", DVPTR(DUKE_CRACK_FIRST), DUKE_CRACK_FIRST__STATIC }, + { "DUKE_USEMEDKIT", DVPTR(DUKE_USEMEDKIT), DUKE_USEMEDKIT__STATIC }, + { "DUKE_TAKEPILLS", DVPTR(DUKE_TAKEPILLS), DUKE_TAKEPILLS__STATIC }, + { "DUKE_PISSRELIEF", DVPTR(DUKE_PISSRELIEF), DUKE_PISSRELIEF__STATIC }, + { "SELECT_WEAPON", DVPTR(SELECT_WEAPON), SELECT_WEAPON__STATIC }, + { "WATER_GURGLE", DVPTR(WATER_GURGLE), WATER_GURGLE__STATIC }, + { "DUKE_GETWEAPON4", DVPTR(DUKE_GETWEAPON4), DUKE_GETWEAPON4__STATIC }, + { "JIBBED_ACTOR1", DVPTR(JIBBED_ACTOR1), JIBBED_ACTOR1__STATIC }, + { "JIBBED_ACTOR2", DVPTR(JIBBED_ACTOR2), JIBBED_ACTOR2__STATIC }, + { "JIBBED_ACTOR3", DVPTR(JIBBED_ACTOR3), JIBBED_ACTOR3__STATIC }, + { "JIBBED_ACTOR4", DVPTR(JIBBED_ACTOR4), JIBBED_ACTOR4__STATIC }, + { "JIBBED_ACTOR5", DVPTR(JIBBED_ACTOR5), JIBBED_ACTOR5__STATIC }, + { "JIBBED_ACTOR6", DVPTR(JIBBED_ACTOR6), JIBBED_ACTOR6__STATIC }, + { "JIBBED_ACTOR7", DVPTR(JIBBED_ACTOR7), JIBBED_ACTOR7__STATIC }, + { "DUKE_GOTHEALTHATLOW", DVPTR(DUKE_GOTHEALTHATLOW), DUKE_GOTHEALTHATLOW__STATIC }, + { "BOSSTALKTODUKE", DVPTR(BOSSTALKTODUKE), BOSSTALKTODUKE__STATIC }, + { "WAR_AMBIENCE1", DVPTR(WAR_AMBIENCE1), WAR_AMBIENCE1__STATIC }, + { "WAR_AMBIENCE2", DVPTR(WAR_AMBIENCE2), WAR_AMBIENCE2__STATIC }, + { "WAR_AMBIENCE3", DVPTR(WAR_AMBIENCE3), WAR_AMBIENCE3__STATIC }, + { "WAR_AMBIENCE4", DVPTR(WAR_AMBIENCE4), WAR_AMBIENCE4__STATIC }, + { "WAR_AMBIENCE5", DVPTR(WAR_AMBIENCE5), WAR_AMBIENCE5__STATIC }, + { "WAR_AMBIENCE6", DVPTR(WAR_AMBIENCE6), WAR_AMBIENCE6__STATIC }, + { "WAR_AMBIENCE7", DVPTR(WAR_AMBIENCE7), WAR_AMBIENCE7__STATIC }, + { "WAR_AMBIENCE8", DVPTR(WAR_AMBIENCE8), WAR_AMBIENCE8__STATIC }, + { "WAR_AMBIENCE9", DVPTR(WAR_AMBIENCE9), WAR_AMBIENCE9__STATIC }, + { "WAR_AMBIENCE10", DVPTR(WAR_AMBIENCE10), WAR_AMBIENCE10__STATIC }, + { "ALIEN_TALK1", DVPTR(ALIEN_TALK1), ALIEN_TALK1__STATIC }, + { "ALIEN_TALK2", DVPTR(ALIEN_TALK2), ALIEN_TALK2__STATIC }, + { "EXITMENUSOUND", DVPTR(EXITMENUSOUND), EXITMENUSOUND__STATIC }, + { "FLY_BY", DVPTR(FLY_BY), FLY_BY__STATIC }, + { "DUKE_SCREAM", DVPTR(DUKE_SCREAM), DUKE_SCREAM__STATIC }, + { "SHRINKER_HIT", DVPTR(SHRINKER_HIT), SHRINKER_HIT__STATIC }, + { "RATTY", DVPTR(RATTY), RATTY__STATIC }, + { "INTO_MENU", DVPTR(INTO_MENU), INTO_MENU__STATIC }, + { "BONUSMUSIC", DVPTR(BONUSMUSIC), BONUSMUSIC__STATIC }, + { "DUKE_BOOBY", DVPTR(DUKE_BOOBY), DUKE_BOOBY__STATIC }, + { "DUKE_TALKTOBOSSFALL", DVPTR(DUKE_TALKTOBOSSFALL), DUKE_TALKTOBOSSFALL__STATIC }, + { "DUKE_LOOKINTOMIRROR", DVPTR(DUKE_LOOKINTOMIRROR), DUKE_LOOKINTOMIRROR__STATIC }, + { "PIG_ROAM3", DVPTR(PIG_ROAM3), PIG_ROAM3__STATIC }, + { "KILLME", DVPTR(KILLME), KILLME__STATIC }, + { "DRON_JETSND", DVPTR(DRON_JETSND), DRON_JETSND__STATIC }, + { "SPACE_DOOR1", DVPTR(SPACE_DOOR1), SPACE_DOOR1__STATIC }, + { "SPACE_DOOR2", DVPTR(SPACE_DOOR2), SPACE_DOOR2__STATIC }, + { "SPACE_DOOR3", DVPTR(SPACE_DOOR3), SPACE_DOOR3__STATIC }, + { "SPACE_DOOR4", DVPTR(SPACE_DOOR4), SPACE_DOOR4__STATIC }, + { "SPACE_DOOR5", DVPTR(SPACE_DOOR5), SPACE_DOOR5__STATIC }, + { "ALIEN_ELEVATOR1", DVPTR(ALIEN_ELEVATOR1), ALIEN_ELEVATOR1__STATIC }, + { "VAULT_DOOR", DVPTR(VAULT_DOOR), VAULT_DOOR__STATIC }, + { "JIBBED_ACTOR13", DVPTR(JIBBED_ACTOR13), JIBBED_ACTOR13__STATIC }, + { "DUKE_GETWEAPON6", DVPTR(DUKE_GETWEAPON6), DUKE_GETWEAPON6__STATIC }, + { "JIBBED_ACTOR8", DVPTR(JIBBED_ACTOR8), JIBBED_ACTOR8__STATIC }, + { "JIBBED_ACTOR9", DVPTR(JIBBED_ACTOR9), JIBBED_ACTOR9__STATIC }, + { "JIBBED_ACTOR10", DVPTR(JIBBED_ACTOR10), JIBBED_ACTOR10__STATIC }, + { "JIBBED_ACTOR11", DVPTR(JIBBED_ACTOR11), JIBBED_ACTOR11__STATIC }, + { "JIBBED_ACTOR12", DVPTR(JIBBED_ACTOR12), JIBBED_ACTOR12__STATIC }, + { "DUKE_KILLED4", DVPTR(DUKE_KILLED4), DUKE_KILLED4__STATIC }, + { "DUKE_KILLED5", DVPTR(DUKE_KILLED5), DUKE_KILLED5__STATIC }, + { "ALIEN_SWITCH1", DVPTR(ALIEN_SWITCH1), ALIEN_SWITCH1__STATIC }, + { "DUKE_STEPONFECES", DVPTR(DUKE_STEPONFECES), DUKE_STEPONFECES__STATIC }, + { "DUKE_LONGTERM_PAIN2", DVPTR(DUKE_LONGTERM_PAIN2), DUKE_LONGTERM_PAIN2__STATIC }, + { "DUKE_LONGTERM_PAIN3", DVPTR(DUKE_LONGTERM_PAIN3), DUKE_LONGTERM_PAIN3__STATIC }, + { "DUKE_LONGTERM_PAIN4", DVPTR(DUKE_LONGTERM_PAIN4), DUKE_LONGTERM_PAIN4__STATIC }, + { "COMPANB2", DVPTR(COMPANB2), COMPANB2__STATIC }, + { "KTIT", DVPTR(KTIT), KTIT__STATIC }, + { "HELICOP_IDLE", DVPTR(HELICOP_IDLE), HELICOP_IDLE__STATIC }, + { "STEPNIT", DVPTR(STEPNIT), STEPNIT__STATIC }, + { "SPACE_AMBIENCE1", DVPTR(SPACE_AMBIENCE1), SPACE_AMBIENCE1__STATIC }, + { "SPACE_AMBIENCE2", DVPTR(SPACE_AMBIENCE2), SPACE_AMBIENCE2__STATIC }, + { "SLIM_HATCH", DVPTR(SLIM_HATCH), SLIM_HATCH__STATIC }, + { "RIPHEADNECK", DVPTR(RIPHEADNECK), RIPHEADNECK__STATIC }, + { "FOUNDJONES", DVPTR(FOUNDJONES), FOUNDJONES__STATIC }, + { "ALIEN_DOOR1", DVPTR(ALIEN_DOOR1), ALIEN_DOOR1__STATIC }, + { "ALIEN_DOOR2", DVPTR(ALIEN_DOOR2), ALIEN_DOOR2__STATIC }, + { "ENDSEQVOL3SND4", DVPTR(ENDSEQVOL3SND4), ENDSEQVOL3SND4__STATIC }, + { "ENDSEQVOL3SND5", DVPTR(ENDSEQVOL3SND5), ENDSEQVOL3SND5__STATIC }, + { "ENDSEQVOL3SND6", DVPTR(ENDSEQVOL3SND6), ENDSEQVOL3SND6__STATIC }, + { "ENDSEQVOL3SND7", DVPTR(ENDSEQVOL3SND7), ENDSEQVOL3SND7__STATIC }, + { "ENDSEQVOL3SND8", DVPTR(ENDSEQVOL3SND8), ENDSEQVOL3SND8__STATIC }, + { "ENDSEQVOL3SND9", DVPTR(ENDSEQVOL3SND9), ENDSEQVOL3SND9__STATIC }, + { "WHIPYOURASS", DVPTR(WHIPYOURASS), WHIPYOURASS__STATIC }, + { "ENDSEQVOL2SND1", DVPTR(ENDSEQVOL2SND1), ENDSEQVOL2SND1__STATIC }, + { "ENDSEQVOL2SND2", DVPTR(ENDSEQVOL2SND2), ENDSEQVOL2SND2__STATIC }, + { "ENDSEQVOL2SND3", DVPTR(ENDSEQVOL2SND3), ENDSEQVOL2SND3__STATIC }, + { "ENDSEQVOL2SND4", DVPTR(ENDSEQVOL2SND4), ENDSEQVOL2SND4__STATIC }, + { "ENDSEQVOL2SND5", DVPTR(ENDSEQVOL2SND5), ENDSEQVOL2SND5__STATIC }, + { "ENDSEQVOL2SND6", DVPTR(ENDSEQVOL2SND6), ENDSEQVOL2SND6__STATIC }, + { "ENDSEQVOL2SND7", DVPTR(ENDSEQVOL2SND7), ENDSEQVOL2SND7__STATIC }, + { "GENERIC_AMBIENCE23", DVPTR(GENERIC_AMBIENCE23), GENERIC_AMBIENCE23__STATIC }, + { "SOMETHINGFROZE", DVPTR(SOMETHINGFROZE), SOMETHINGFROZE__STATIC }, + { "DUKE_LONGTERM_PAIN5", DVPTR(DUKE_LONGTERM_PAIN5), DUKE_LONGTERM_PAIN5__STATIC }, + { "DUKE_LONGTERM_PAIN6", DVPTR(DUKE_LONGTERM_PAIN6), DUKE_LONGTERM_PAIN6__STATIC }, + { "DUKE_LONGTERM_PAIN7", DVPTR(DUKE_LONGTERM_PAIN7), DUKE_LONGTERM_PAIN7__STATIC }, + { "DUKE_LONGTERM_PAIN8", DVPTR(DUKE_LONGTERM_PAIN8), DUKE_LONGTERM_PAIN8__STATIC }, + { "WIND_REPEAT", DVPTR(WIND_REPEAT), WIND_REPEAT__STATIC }, + { "MYENEMY_ROAM", DVPTR(MYENEMY_ROAM), MYENEMY_ROAM__STATIC }, + { "MYENEMY_HURT", DVPTR(MYENEMY_HURT), MYENEMY_HURT__STATIC }, + { "MYENEMY_DEAD", DVPTR(MYENEMY_DEAD), MYENEMY_DEAD__STATIC }, + { "MYENEMY_SHOOT", DVPTR(MYENEMY_SHOOT), MYENEMY_SHOOT__STATIC }, + { "STORE_MUSIC", DVPTR(STORE_MUSIC), STORE_MUSIC__STATIC }, + { "STORE_MUSIC_BROKE", DVPTR(STORE_MUSIC_BROKE), STORE_MUSIC_BROKE__STATIC }, + { "ACTOR_GROWING", DVPTR(ACTOR_GROWING), ACTOR_GROWING__STATIC }, + { "NEWBEAST_ROAM", DVPTR(NEWBEAST_ROAM), NEWBEAST_ROAM__STATIC }, + { "NEWBEAST_RECOG", DVPTR(NEWBEAST_RECOG), NEWBEAST_RECOG__STATIC }, + { "NEWBEAST_ATTACK", DVPTR(NEWBEAST_ATTACK), NEWBEAST_ATTACK__STATIC }, + { "NEWBEAST_PAIN", DVPTR(NEWBEAST_PAIN), NEWBEAST_PAIN__STATIC }, + { "NEWBEAST_DYING", DVPTR(NEWBEAST_DYING), NEWBEAST_DYING__STATIC }, + { "NEWBEAST_SPIT", DVPTR(NEWBEAST_SPIT), NEWBEAST_SPIT__STATIC }, + { "VOL4_1", DVPTR(VOL4_1), VOL4_1__STATIC }, + { "SUPERMARKET", DVPTR(SUPERMARKET), SUPERMARKET__STATIC }, + { "MOUSEANNOY", DVPTR(MOUSEANNOY), MOUSEANNOY__STATIC }, + { "BOOKEM", DVPTR(BOOKEM), BOOKEM__STATIC }, + { "SUPERMARKETCRY", DVPTR(SUPERMARKETCRY), SUPERMARKETCRY__STATIC }, + { "DESTRUCT", DVPTR(DESTRUCT), DESTRUCT__STATIC }, + { "EATFOOD", DVPTR(EATFOOD), EATFOOD__STATIC }, + { "MAKEMYDAY", DVPTR(MAKEMYDAY), MAKEMYDAY__STATIC }, + { "WITNESSSTAND", DVPTR(WITNESSSTAND), WITNESSSTAND__STATIC }, + { "VACATIONSPEECH", DVPTR(VACATIONSPEECH), VACATIONSPEECH__STATIC }, + { "YIPPEE1", DVPTR(YIPPEE1), YIPPEE1__STATIC }, + { "YOHOO1", DVPTR(YOHOO1), YOHOO1__STATIC }, + { "YOHOO2", DVPTR(YOHOO2), YOHOO2__STATIC }, + { "DOLPHINSND", DVPTR(DOLPHINSND), DOLPHINSND__STATIC }, + { "TOUGHGALSND1", DVPTR(TOUGHGALSND1), TOUGHGALSND1__STATIC }, + { "TOUGHGALSND2", DVPTR(TOUGHGALSND2), TOUGHGALSND2__STATIC }, + { "TOUGHGALSND3", DVPTR(TOUGHGALSND3), TOUGHGALSND3__STATIC }, + { "TOUGHGALSND4", DVPTR(TOUGHGALSND4), TOUGHGALSND4__STATIC }, + { "TANK_ROAM", DVPTR(TANK_ROAM), TANK_ROAM__STATIC }, + { "BOS4_ROAM", DVPTR(BOS4_ROAM), BOS4_ROAM__STATIC }, + { "BOS4_RECOG", DVPTR(BOS4_RECOG), BOS4_RECOG__STATIC }, + { "BOS4_ATTACK", DVPTR(BOS4_ATTACK), BOS4_ATTACK__STATIC }, + { "BOS4_PAIN", DVPTR(BOS4_PAIN), BOS4_PAIN__STATIC }, + { "BOS4_DYING", DVPTR(BOS4_DYING), BOS4_DYING__STATIC }, + { "NEWBEAST_ATTACKMISS", DVPTR(NEWBEAST_ATTACKMISS), NEWBEAST_ATTACKMISS__STATIC }, + { "VOL4_2", DVPTR(VOL4_2), VOL4_2__STATIC }, + { "COOKINGDEEPFRIER", DVPTR(COOKINGDEEPFRIER), COOKINGDEEPFRIER__STATIC }, + { "WHINING_DOG", DVPTR(WHINING_DOG), WHINING_DOG__STATIC }, + { "DEAD_DOG", DVPTR(DEAD_DOG), DEAD_DOG__STATIC }, + { "LIGHTNING_SLAP", DVPTR(LIGHTNING_SLAP), LIGHTNING_SLAP__STATIC }, + { "THUNDER", DVPTR(THUNDER), THUNDER__STATIC }, + { "HAPPYMOUSESND1", DVPTR(HAPPYMOUSESND1), HAPPYMOUSESND1__STATIC }, + { "HAPPYMOUSESND2", DVPTR(HAPPYMOUSESND2), HAPPYMOUSESND2__STATIC }, + { "HAPPYMOUSESND3", DVPTR(HAPPYMOUSESND3), HAPPYMOUSESND3__STATIC }, + { "HAPPYMOUSESND4", DVPTR(HAPPYMOUSESND4), HAPPYMOUSESND4__STATIC }, + { "ALARM", DVPTR(ALARM), ALARM__STATIC }, + { "RAIN", DVPTR(RAIN), RAIN__STATIC }, + { "DTAG_GREENRUN", DVPTR(DTAG_GREENRUN), DTAG_GREENRUN__STATIC }, + { "DTAG_BROWNRUN", DVPTR(DTAG_BROWNRUN), DTAG_BROWNRUN__STATIC }, + { "DTAG_GREENSCORE", DVPTR(DTAG_GREENSCORE), DTAG_GREENSCORE__STATIC }, + { "DTAG_BROWNSCORE", DVPTR(DTAG_BROWNSCORE), DTAG_BROWNSCORE__STATIC }, + { "INTRO4_1", DVPTR(INTRO4_1), INTRO4_1__STATIC }, + { "INTRO4_2", DVPTR(INTRO4_2), INTRO4_2__STATIC }, + { "INTRO4_3", DVPTR(INTRO4_3), INTRO4_3__STATIC }, + { "INTRO4_4", DVPTR(INTRO4_4), INTRO4_4__STATIC }, + { "INTRO4_5", DVPTR(INTRO4_5), INTRO4_5__STATIC }, + { "INTRO4_6", DVPTR(INTRO4_6), INTRO4_6__STATIC }, + { "SCREECH", DVPTR(SCREECH), SCREECH__STATIC }, + { "BOSS4_DEADSPEECH", DVPTR(BOSS4_DEADSPEECH), BOSS4_DEADSPEECH__STATIC }, + { "BOSS4_FIRSTSEE", DVPTR(BOSS4_FIRSTSEE), BOSS4_FIRSTSEE__STATIC }, + { "PARTY_SPEECH", DVPTR(PARTY_SPEECH), PARTY_SPEECH__STATIC }, + { "POSTAL_SPEECH", DVPTR(POSTAL_SPEECH), POSTAL_SPEECH__STATIC }, + { "TGSPEECH", DVPTR(TGSPEECH), TGSPEECH__STATIC }, + { "DOGROOMSPEECH", DVPTR(DOGROOMSPEECH), DOGROOMSPEECH__STATIC }, + { "SMACKED", DVPTR(SMACKED), SMACKED__STATIC }, + { "MDEVSPEECH", DVPTR(MDEVSPEECH), MDEVSPEECH__STATIC }, + { "AREA51SPEECH", DVPTR(AREA51SPEECH), AREA51SPEECH__STATIC }, + { "JEEPSOUND", DVPTR(JEEPSOUND), JEEPSOUND__STATIC }, + { "BIGDOORSLAM", DVPTR(BIGDOORSLAM), BIGDOORSLAM__STATIC }, + { "BOS4_LAY", DVPTR(BOS4_LAY), BOS4_LAY__STATIC }, + { "WAVESOUND", DVPTR(WAVESOUND), WAVESOUND__STATIC }, + { "ILLBEBACK", DVPTR(ILLBEBACK), ILLBEBACK__STATIC }, + { "VOL4ENDSND1", DVPTR(VOL4ENDSND1), VOL4ENDSND1__STATIC }, + { "VOL4ENDSND2", DVPTR(VOL4ENDSND2), VOL4ENDSND2__STATIC }, + { "EXPANDERHIT", DVPTR(EXPANDERHIT), EXPANDERHIT__STATIC }, + { "SNAKESPEECH", DVPTR(SNAKESPEECH), SNAKESPEECH__STATIC }, + { "EXPANDERSHOOT", DVPTR(EXPANDERSHOOT), EXPANDERSHOOT__STATIC }, + { "GETBACKTOWORK", DVPTR(GETBACKTOWORK), GETBACKTOWORK__STATIC }, + { "JIBBED_ACTOR14", DVPTR(JIBBED_ACTOR14), JIBBED_ACTOR14__STATIC }, + { "JIBBED_ACTOR15", DVPTR(JIBBED_ACTOR15), JIBBED_ACTOR15__STATIC }, + { "INTRO4_B", DVPTR(INTRO4_B), INTRO4_B__STATIC }, + { "BIGBANG", DVPTR(BIGBANG), BIGBANG__STATIC }, + { "HORNSND", DVPTR(HORNSND), HORNSND__STATIC }, + { "BELLSND", DVPTR(BELLSND), BELLSND__STATIC }, + { "GOAWAY", DVPTR(GOAWAY), GOAWAY__STATIC }, + { "JOKE", DVPTR(JOKE), JOKE__STATIC }, + { NULL, NULL, -1 }, + }; + +#ifdef DYNSOUNDREMAP_ENABLE + +int32_t KICK_HIT = KICK_HIT__STATIC; +int32_t PISTOL_RICOCHET = PISTOL_RICOCHET__STATIC; +int32_t PISTOL_BODYHIT = PISTOL_BODYHIT__STATIC; +int32_t PISTOL_FIRE = PISTOL_FIRE__STATIC; +int32_t EJECT_CLIP = EJECT_CLIP__STATIC; +int32_t INSERT_CLIP = INSERT_CLIP__STATIC; +int32_t CHAINGUN_FIRE = CHAINGUN_FIRE__STATIC; +int32_t RPG_SHOOT = RPG_SHOOT__STATIC; +int32_t POOLBALLHIT = POOLBALLHIT__STATIC; +int32_t RPG_EXPLODE = RPG_EXPLODE__STATIC; +int32_t CAT_FIRE = CAT_FIRE__STATIC; +int32_t SHRINKER_FIRE = SHRINKER_FIRE__STATIC; +int32_t ACTOR_SHRINKING = ACTOR_SHRINKING__STATIC; +int32_t PIPEBOMB_BOUNCE = PIPEBOMB_BOUNCE__STATIC; +int32_t PIPEBOMB_EXPLODE = PIPEBOMB_EXPLODE__STATIC; +int32_t LASERTRIP_ONWALL = LASERTRIP_ONWALL__STATIC; +int32_t LASERTRIP_ARMING = LASERTRIP_ARMING__STATIC; +int32_t LASERTRIP_EXPLODE = LASERTRIP_EXPLODE__STATIC; +int32_t VENT_BUST = VENT_BUST__STATIC; +int32_t GLASS_BREAKING = GLASS_BREAKING__STATIC; +int32_t GLASS_HEAVYBREAK = GLASS_HEAVYBREAK__STATIC; +int32_t SHORT_CIRCUIT = SHORT_CIRCUIT__STATIC; +int32_t ITEM_SPLASH = ITEM_SPLASH__STATIC; +int32_t DUKE_BREATHING = DUKE_BREATHING__STATIC; +int32_t DUKE_EXHALING = DUKE_EXHALING__STATIC; +int32_t DUKE_GASP = DUKE_GASP__STATIC; +int32_t SLIM_RECOG = SLIM_RECOG__STATIC; +// int32_t ENDSEQVOL3SND1 = ENDSEQVOL3SND1__STATIC; +int32_t DUKE_URINATE = DUKE_URINATE__STATIC; +int32_t ENDSEQVOL3SND2 = ENDSEQVOL3SND2__STATIC; +int32_t ENDSEQVOL3SND3 = ENDSEQVOL3SND3__STATIC; +int32_t DUKE_PASSWIND = DUKE_PASSWIND__STATIC; +int32_t DUKE_CRACK = DUKE_CRACK__STATIC; +int32_t SLIM_ATTACK = SLIM_ATTACK__STATIC; +int32_t SOMETHINGHITFORCE = SOMETHINGHITFORCE__STATIC; +int32_t DUKE_DRINKING = DUKE_DRINKING__STATIC; +int32_t DUKE_KILLED1 = DUKE_KILLED1__STATIC; +int32_t DUKE_GRUNT = DUKE_GRUNT__STATIC; +int32_t DUKE_HARTBEAT = DUKE_HARTBEAT__STATIC; +int32_t DUKE_ONWATER = DUKE_ONWATER__STATIC; +int32_t DUKE_DEAD = DUKE_DEAD__STATIC; +int32_t DUKE_LAND = DUKE_LAND__STATIC; +int32_t DUKE_WALKINDUCTS = DUKE_WALKINDUCTS__STATIC; +int32_t DUKE_GLAD = DUKE_GLAD__STATIC; +int32_t DUKE_YES = DUKE_YES__STATIC; +int32_t DUKE_HEHE = DUKE_HEHE__STATIC; +int32_t DUKE_SHUCKS = DUKE_SHUCKS__STATIC; +int32_t DUKE_UNDERWATER = DUKE_UNDERWATER__STATIC; +int32_t DUKE_JETPACK_ON = DUKE_JETPACK_ON__STATIC; +int32_t DUKE_JETPACK_IDLE = DUKE_JETPACK_IDLE__STATIC; +int32_t DUKE_JETPACK_OFF = DUKE_JETPACK_OFF__STATIC; +int32_t LIZTROOP_GROWL = LIZTROOP_GROWL__STATIC; +int32_t LIZTROOP_TALK1 = LIZTROOP_TALK1__STATIC; +int32_t LIZTROOP_TALK2 = LIZTROOP_TALK2__STATIC; +int32_t LIZTROOP_TALK3 = LIZTROOP_TALK3__STATIC; +int32_t DUKETALKTOBOSS = DUKETALKTOBOSS__STATIC; +int32_t LIZCAPT_GROWL = LIZCAPT_GROWL__STATIC; +int32_t LIZCAPT_TALK1 = LIZCAPT_TALK1__STATIC; +int32_t LIZCAPT_TALK2 = LIZCAPT_TALK2__STATIC; +int32_t LIZCAPT_TALK3 = LIZCAPT_TALK3__STATIC; +int32_t LIZARD_BEG = LIZARD_BEG__STATIC; +int32_t LIZARD_PAIN = LIZARD_PAIN__STATIC; +int32_t LIZARD_DEATH = LIZARD_DEATH__STATIC; +int32_t LIZARD_SPIT = LIZARD_SPIT__STATIC; +int32_t DRONE1_HISSRATTLE = DRONE1_HISSRATTLE__STATIC; +int32_t DRONE1_HISSSCREECH = DRONE1_HISSSCREECH__STATIC; +int32_t DUKE_TIP2 = DUKE_TIP2__STATIC; +int32_t FLESH_BURNING = FLESH_BURNING__STATIC; +int32_t SQUISHED = SQUISHED__STATIC; +int32_t TELEPORTER = TELEPORTER__STATIC; +int32_t ELEVATOR_ON = ELEVATOR_ON__STATIC; +int32_t DUKE_KILLED3 = DUKE_KILLED3__STATIC; +int32_t ELEVATOR_OFF = ELEVATOR_OFF__STATIC; +int32_t DOOR_OPERATE1 = DOOR_OPERATE1__STATIC; +int32_t SUBWAY = SUBWAY__STATIC; +int32_t SWITCH_ON = SWITCH_ON__STATIC; +int32_t FAN = FAN__STATIC; +int32_t DUKE_GETWEAPON3 = DUKE_GETWEAPON3__STATIC; +int32_t FLUSH_TOILET = FLUSH_TOILET__STATIC; +int32_t HOVER_CRAFT = HOVER_CRAFT__STATIC; +int32_t EARTHQUAKE = EARTHQUAKE__STATIC; +int32_t INTRUDER_ALERT = INTRUDER_ALERT__STATIC; +int32_t END_OF_LEVEL_WARN = END_OF_LEVEL_WARN__STATIC; +int32_t ENGINE_OPERATING = ENGINE_OPERATING__STATIC; +int32_t REACTOR_ON = REACTOR_ON__STATIC; +int32_t COMPUTER_AMBIENCE = COMPUTER_AMBIENCE__STATIC; +int32_t GEARS_GRINDING = GEARS_GRINDING__STATIC; +int32_t BUBBLE_AMBIENCE = BUBBLE_AMBIENCE__STATIC; +int32_t MACHINE_AMBIENCE = MACHINE_AMBIENCE__STATIC; +int32_t SEWER_AMBIENCE = SEWER_AMBIENCE__STATIC; +int32_t WIND_AMBIENCE = WIND_AMBIENCE__STATIC; +int32_t SOMETHING_DRIPPING = SOMETHING_DRIPPING__STATIC; +int32_t STEAM_HISSING = STEAM_HISSING__STATIC; +int32_t THEATER_BREATH = THEATER_BREATH__STATIC; +int32_t BAR_MUSIC = BAR_MUSIC__STATIC; +int32_t BOS1_ROAM = BOS1_ROAM__STATIC; +int32_t BOS1_RECOG = BOS1_RECOG__STATIC; +int32_t BOS1_ATTACK1 = BOS1_ATTACK1__STATIC; +int32_t BOS1_PAIN = BOS1_PAIN__STATIC; +int32_t BOS1_DYING = BOS1_DYING__STATIC; +int32_t BOS2_ROAM = BOS2_ROAM__STATIC; +int32_t BOS2_RECOG = BOS2_RECOG__STATIC; +int32_t BOS2_ATTACK = BOS2_ATTACK__STATIC; +int32_t BOS2_PAIN = BOS2_PAIN__STATIC; +int32_t BOS2_DYING = BOS2_DYING__STATIC; +int32_t GETATOMICHEALTH = GETATOMICHEALTH__STATIC; +int32_t DUKE_GETWEAPON2 = DUKE_GETWEAPON2__STATIC; +int32_t BOS3_DYING = BOS3_DYING__STATIC; +int32_t SHOTGUN_FIRE = SHOTGUN_FIRE__STATIC; +int32_t PRED_ROAM = PRED_ROAM__STATIC; +int32_t PRED_RECOG = PRED_RECOG__STATIC; +int32_t PRED_ATTACK = PRED_ATTACK__STATIC; +int32_t PRED_PAIN = PRED_PAIN__STATIC; +int32_t PRED_DYING = PRED_DYING__STATIC; +int32_t CAPT_ROAM = CAPT_ROAM__STATIC; +int32_t CAPT_ATTACK = CAPT_ATTACK__STATIC; +int32_t CAPT_RECOG = CAPT_RECOG__STATIC; +int32_t CAPT_PAIN = CAPT_PAIN__STATIC; +int32_t CAPT_DYING = CAPT_DYING__STATIC; +int32_t PIG_ROAM = PIG_ROAM__STATIC; +int32_t PIG_RECOG = PIG_RECOG__STATIC; +int32_t PIG_ATTACK = PIG_ATTACK__STATIC; +int32_t PIG_PAIN = PIG_PAIN__STATIC; +int32_t PIG_DYING = PIG_DYING__STATIC; +int32_t RECO_ROAM = RECO_ROAM__STATIC; +int32_t RECO_RECOG = RECO_RECOG__STATIC; +int32_t RECO_ATTACK = RECO_ATTACK__STATIC; +int32_t RECO_PAIN = RECO_PAIN__STATIC; +int32_t RECO_DYING = RECO_DYING__STATIC; +int32_t DRON_ROAM = DRON_ROAM__STATIC; +int32_t DRON_RECOG = DRON_RECOG__STATIC; +int32_t DRON_ATTACK1 = DRON_ATTACK1__STATIC; +int32_t DRON_PAIN = DRON_PAIN__STATIC; +int32_t DRON_DYING = DRON_DYING__STATIC; +int32_t COMM_ROAM = COMM_ROAM__STATIC; +int32_t COMM_RECOG = COMM_RECOG__STATIC; +int32_t COMM_ATTACK = COMM_ATTACK__STATIC; +int32_t COMM_PAIN = COMM_PAIN__STATIC; +int32_t COMM_DYING = COMM_DYING__STATIC; +int32_t OCTA_ROAM = OCTA_ROAM__STATIC; +int32_t OCTA_RECOG = OCTA_RECOG__STATIC; +int32_t OCTA_ATTACK1 = OCTA_ATTACK1__STATIC; +int32_t OCTA_PAIN = OCTA_PAIN__STATIC; +int32_t OCTA_DYING = OCTA_DYING__STATIC; +int32_t TURR_ROAM = TURR_ROAM__STATIC; +int32_t TURR_RECOG = TURR_RECOG__STATIC; +int32_t TURR_ATTACK = TURR_ATTACK__STATIC; +int32_t DUMPSTER_MOVE = DUMPSTER_MOVE__STATIC; +int32_t SLIM_DYING = SLIM_DYING__STATIC; +int32_t BOS3_ROAM = BOS3_ROAM__STATIC; +int32_t BOS3_RECOG = BOS3_RECOG__STATIC; +int32_t BOS3_ATTACK1 = BOS3_ATTACK1__STATIC; +int32_t BOS3_PAIN = BOS3_PAIN__STATIC; +int32_t BOS1_ATTACK2 = BOS1_ATTACK2__STATIC; +int32_t COMM_SPIN = COMM_SPIN__STATIC; +int32_t BOS1_WALK = BOS1_WALK__STATIC; +int32_t DRON_ATTACK2 = DRON_ATTACK2__STATIC; +int32_t THUD = THUD__STATIC; +int32_t OCTA_ATTACK2 = OCTA_ATTACK2__STATIC; +int32_t WIERDSHOT_FLY = WIERDSHOT_FLY__STATIC; +int32_t TURR_PAIN = TURR_PAIN__STATIC; +int32_t TURR_DYING = TURR_DYING__STATIC; +int32_t SLIM_ROAM = SLIM_ROAM__STATIC; +int32_t LADY_SCREAM = LADY_SCREAM__STATIC; +int32_t DOOR_OPERATE2 = DOOR_OPERATE2__STATIC; +int32_t DOOR_OPERATE3 = DOOR_OPERATE3__STATIC; +int32_t DOOR_OPERATE4 = DOOR_OPERATE4__STATIC; +int32_t BORNTOBEWILDSND = BORNTOBEWILDSND__STATIC; +int32_t SHOTGUN_COCK = SHOTGUN_COCK__STATIC; +int32_t GENERIC_AMBIENCE1 = GENERIC_AMBIENCE1__STATIC; +int32_t GENERIC_AMBIENCE2 = GENERIC_AMBIENCE2__STATIC; +int32_t GENERIC_AMBIENCE3 = GENERIC_AMBIENCE3__STATIC; +int32_t GENERIC_AMBIENCE4 = GENERIC_AMBIENCE4__STATIC; +int32_t GENERIC_AMBIENCE5 = GENERIC_AMBIENCE5__STATIC; +int32_t GENERIC_AMBIENCE6 = GENERIC_AMBIENCE6__STATIC; +int32_t BOS3_ATTACK2 = BOS3_ATTACK2__STATIC; +int32_t GENERIC_AMBIENCE17 = GENERIC_AMBIENCE17__STATIC; +int32_t GENERIC_AMBIENCE18 = GENERIC_AMBIENCE18__STATIC; +int32_t GENERIC_AMBIENCE19 = GENERIC_AMBIENCE19__STATIC; +int32_t GENERIC_AMBIENCE20 = GENERIC_AMBIENCE20__STATIC; +int32_t GENERIC_AMBIENCE21 = GENERIC_AMBIENCE21__STATIC; +int32_t GENERIC_AMBIENCE22 = GENERIC_AMBIENCE22__STATIC; +int32_t SECRETLEVELSND = SECRETLEVELSND__STATIC; +int32_t GENERIC_AMBIENCE8 = GENERIC_AMBIENCE8__STATIC; +int32_t GENERIC_AMBIENCE9 = GENERIC_AMBIENCE9__STATIC; +int32_t GENERIC_AMBIENCE10 = GENERIC_AMBIENCE10__STATIC; +int32_t GENERIC_AMBIENCE11 = GENERIC_AMBIENCE11__STATIC; +int32_t GENERIC_AMBIENCE12 = GENERIC_AMBIENCE12__STATIC; +int32_t GENERIC_AMBIENCE13 = GENERIC_AMBIENCE13__STATIC; +int32_t GENERIC_AMBIENCE14 = GENERIC_AMBIENCE14__STATIC; +int32_t GENERIC_AMBIENCE15 = GENERIC_AMBIENCE15__STATIC; +int32_t GENERIC_AMBIENCE16 = GENERIC_AMBIENCE16__STATIC; +int32_t FIRE_CRACKLE = FIRE_CRACKLE__STATIC; +int32_t BONUS_SPEECH1 = BONUS_SPEECH1__STATIC; +int32_t BONUS_SPEECH2 = BONUS_SPEECH2__STATIC; +int32_t BONUS_SPEECH3 = BONUS_SPEECH3__STATIC; +int32_t PIG_CAPTURE_DUKE = PIG_CAPTURE_DUKE__STATIC; +int32_t BONUS_SPEECH4 = BONUS_SPEECH4__STATIC; +int32_t DUKE_LAND_HURT = DUKE_LAND_HURT__STATIC; +int32_t DUKE_HIT_STRIPPER1 = DUKE_HIT_STRIPPER1__STATIC; +int32_t DUKE_TIP1 = DUKE_TIP1__STATIC; +int32_t DUKE_KILLED2 = DUKE_KILLED2__STATIC; +int32_t PRED_ROAM2 = PRED_ROAM2__STATIC; +int32_t PIG_ROAM2 = PIG_ROAM2__STATIC; +int32_t DUKE_GETWEAPON1 = DUKE_GETWEAPON1__STATIC; +int32_t DUKE_SEARCH2 = DUKE_SEARCH2__STATIC; +int32_t DUKE_CRACK2 = DUKE_CRACK2__STATIC; +int32_t DUKE_SEARCH = DUKE_SEARCH__STATIC; +int32_t DUKE_GET = DUKE_GET__STATIC; +int32_t DUKE_LONGTERM_PAIN = DUKE_LONGTERM_PAIN__STATIC; +int32_t MONITOR_ACTIVE = MONITOR_ACTIVE__STATIC; +int32_t NITEVISION_ONOFF = NITEVISION_ONOFF__STATIC; +int32_t DUKE_HIT_STRIPPER2 = DUKE_HIT_STRIPPER2__STATIC; +int32_t DUKE_CRACK_FIRST = DUKE_CRACK_FIRST__STATIC; +int32_t DUKE_USEMEDKIT = DUKE_USEMEDKIT__STATIC; +int32_t DUKE_TAKEPILLS = DUKE_TAKEPILLS__STATIC; +int32_t DUKE_PISSRELIEF = DUKE_PISSRELIEF__STATIC; +int32_t SELECT_WEAPON = SELECT_WEAPON__STATIC; +int32_t WATER_GURGLE = WATER_GURGLE__STATIC; +int32_t DUKE_GETWEAPON4 = DUKE_GETWEAPON4__STATIC; +int32_t JIBBED_ACTOR1 = JIBBED_ACTOR1__STATIC; +int32_t JIBBED_ACTOR2 = JIBBED_ACTOR2__STATIC; +int32_t JIBBED_ACTOR3 = JIBBED_ACTOR3__STATIC; +int32_t JIBBED_ACTOR4 = JIBBED_ACTOR4__STATIC; +int32_t JIBBED_ACTOR5 = JIBBED_ACTOR5__STATIC; +int32_t JIBBED_ACTOR6 = JIBBED_ACTOR6__STATIC; +int32_t JIBBED_ACTOR7 = JIBBED_ACTOR7__STATIC; +int32_t DUKE_GOTHEALTHATLOW = DUKE_GOTHEALTHATLOW__STATIC; +int32_t BOSSTALKTODUKE = BOSSTALKTODUKE__STATIC; +int32_t WAR_AMBIENCE1 = WAR_AMBIENCE1__STATIC; +int32_t WAR_AMBIENCE2 = WAR_AMBIENCE2__STATIC; +int32_t WAR_AMBIENCE3 = WAR_AMBIENCE3__STATIC; +int32_t WAR_AMBIENCE4 = WAR_AMBIENCE4__STATIC; +int32_t WAR_AMBIENCE5 = WAR_AMBIENCE5__STATIC; +int32_t WAR_AMBIENCE6 = WAR_AMBIENCE6__STATIC; +int32_t WAR_AMBIENCE7 = WAR_AMBIENCE7__STATIC; +int32_t WAR_AMBIENCE8 = WAR_AMBIENCE8__STATIC; +int32_t WAR_AMBIENCE9 = WAR_AMBIENCE9__STATIC; +int32_t WAR_AMBIENCE10 = WAR_AMBIENCE10__STATIC; +int32_t ALIEN_TALK1 = ALIEN_TALK1__STATIC; +int32_t ALIEN_TALK2 = ALIEN_TALK2__STATIC; +int32_t EXITMENUSOUND = EXITMENUSOUND__STATIC; +int32_t FLY_BY = FLY_BY__STATIC; +int32_t DUKE_SCREAM = DUKE_SCREAM__STATIC; +int32_t SHRINKER_HIT = SHRINKER_HIT__STATIC; +int32_t RATTY = RATTY__STATIC; +int32_t INTO_MENU = INTO_MENU__STATIC; +int32_t BONUSMUSIC = BONUSMUSIC__STATIC; +int32_t DUKE_BOOBY = DUKE_BOOBY__STATIC; +int32_t DUKE_TALKTOBOSSFALL = DUKE_TALKTOBOSSFALL__STATIC; +int32_t DUKE_LOOKINTOMIRROR = DUKE_LOOKINTOMIRROR__STATIC; +int32_t PIG_ROAM3 = PIG_ROAM3__STATIC; +int32_t KILLME = KILLME__STATIC; +int32_t DRON_JETSND = DRON_JETSND__STATIC; +int32_t SPACE_DOOR1 = SPACE_DOOR1__STATIC; +int32_t SPACE_DOOR2 = SPACE_DOOR2__STATIC; +int32_t SPACE_DOOR3 = SPACE_DOOR3__STATIC; +int32_t SPACE_DOOR4 = SPACE_DOOR4__STATIC; +int32_t SPACE_DOOR5 = SPACE_DOOR5__STATIC; +int32_t ALIEN_ELEVATOR1 = ALIEN_ELEVATOR1__STATIC; +int32_t VAULT_DOOR = VAULT_DOOR__STATIC; +int32_t JIBBED_ACTOR13 = JIBBED_ACTOR13__STATIC; +int32_t DUKE_GETWEAPON6 = DUKE_GETWEAPON6__STATIC; +int32_t JIBBED_ACTOR8 = JIBBED_ACTOR8__STATIC; +int32_t JIBBED_ACTOR9 = JIBBED_ACTOR9__STATIC; +int32_t JIBBED_ACTOR10 = JIBBED_ACTOR10__STATIC; +int32_t JIBBED_ACTOR11 = JIBBED_ACTOR11__STATIC; +int32_t JIBBED_ACTOR12 = JIBBED_ACTOR12__STATIC; +int32_t DUKE_KILLED4 = DUKE_KILLED4__STATIC; +int32_t DUKE_KILLED5 = DUKE_KILLED5__STATIC; +int32_t ALIEN_SWITCH1 = ALIEN_SWITCH1__STATIC; +int32_t DUKE_STEPONFECES = DUKE_STEPONFECES__STATIC; +int32_t DUKE_LONGTERM_PAIN2 = DUKE_LONGTERM_PAIN2__STATIC; +int32_t DUKE_LONGTERM_PAIN3 = DUKE_LONGTERM_PAIN3__STATIC; +int32_t DUKE_LONGTERM_PAIN4 = DUKE_LONGTERM_PAIN4__STATIC; +int32_t COMPANB2 = COMPANB2__STATIC; +int32_t KTIT = KTIT__STATIC; +int32_t HELICOP_IDLE = HELICOP_IDLE__STATIC; +int32_t STEPNIT = STEPNIT__STATIC; +int32_t SPACE_AMBIENCE1 = SPACE_AMBIENCE1__STATIC; +int32_t SPACE_AMBIENCE2 = SPACE_AMBIENCE2__STATIC; +int32_t SLIM_HATCH = SLIM_HATCH__STATIC; +int32_t RIPHEADNECK = RIPHEADNECK__STATIC; +int32_t FOUNDJONES = FOUNDJONES__STATIC; +int32_t ALIEN_DOOR1 = ALIEN_DOOR1__STATIC; +int32_t ALIEN_DOOR2 = ALIEN_DOOR2__STATIC; +int32_t ENDSEQVOL3SND4 = ENDSEQVOL3SND4__STATIC; +int32_t ENDSEQVOL3SND5 = ENDSEQVOL3SND5__STATIC; +int32_t ENDSEQVOL3SND6 = ENDSEQVOL3SND6__STATIC; +int32_t ENDSEQVOL3SND7 = ENDSEQVOL3SND7__STATIC; +int32_t ENDSEQVOL3SND8 = ENDSEQVOL3SND8__STATIC; +int32_t ENDSEQVOL3SND9 = ENDSEQVOL3SND9__STATIC; +int32_t WHIPYOURASS = WHIPYOURASS__STATIC; +int32_t ENDSEQVOL2SND1 = ENDSEQVOL2SND1__STATIC; +int32_t ENDSEQVOL2SND2 = ENDSEQVOL2SND2__STATIC; +int32_t ENDSEQVOL2SND3 = ENDSEQVOL2SND3__STATIC; +int32_t ENDSEQVOL2SND4 = ENDSEQVOL2SND4__STATIC; +int32_t ENDSEQVOL2SND5 = ENDSEQVOL2SND5__STATIC; +int32_t ENDSEQVOL2SND6 = ENDSEQVOL2SND6__STATIC; +int32_t ENDSEQVOL2SND7 = ENDSEQVOL2SND7__STATIC; +int32_t GENERIC_AMBIENCE23 = GENERIC_AMBIENCE23__STATIC; +int32_t SOMETHINGFROZE = SOMETHINGFROZE__STATIC; +int32_t DUKE_LONGTERM_PAIN5 = DUKE_LONGTERM_PAIN5__STATIC; +int32_t DUKE_LONGTERM_PAIN6 = DUKE_LONGTERM_PAIN6__STATIC; +int32_t DUKE_LONGTERM_PAIN7 = DUKE_LONGTERM_PAIN7__STATIC; +int32_t DUKE_LONGTERM_PAIN8 = DUKE_LONGTERM_PAIN8__STATIC; +int32_t WIND_REPEAT = WIND_REPEAT__STATIC; +int32_t MYENEMY_ROAM = MYENEMY_ROAM__STATIC; +int32_t MYENEMY_HURT = MYENEMY_HURT__STATIC; +int32_t MYENEMY_DEAD = MYENEMY_DEAD__STATIC; +int32_t MYENEMY_SHOOT = MYENEMY_SHOOT__STATIC; +int32_t STORE_MUSIC = STORE_MUSIC__STATIC; +int32_t STORE_MUSIC_BROKE = STORE_MUSIC_BROKE__STATIC; +int32_t ACTOR_GROWING = ACTOR_GROWING__STATIC; +int32_t NEWBEAST_ROAM = NEWBEAST_ROAM__STATIC; +int32_t NEWBEAST_RECOG = NEWBEAST_RECOG__STATIC; +int32_t NEWBEAST_ATTACK = NEWBEAST_ATTACK__STATIC; +int32_t NEWBEAST_PAIN = NEWBEAST_PAIN__STATIC; +int32_t NEWBEAST_DYING = NEWBEAST_DYING__STATIC; +int32_t NEWBEAST_SPIT = NEWBEAST_SPIT__STATIC; +int32_t VOL4_1 = VOL4_1__STATIC; +int32_t SUPERMARKET = SUPERMARKET__STATIC; +int32_t MOUSEANNOY = MOUSEANNOY__STATIC; +int32_t BOOKEM = BOOKEM__STATIC; +int32_t SUPERMARKETCRY = SUPERMARKETCRY__STATIC; +int32_t DESTRUCT = DESTRUCT__STATIC; +int32_t EATFOOD = EATFOOD__STATIC; +int32_t MAKEMYDAY = MAKEMYDAY__STATIC; +int32_t WITNESSSTAND = WITNESSSTAND__STATIC; +int32_t VACATIONSPEECH = VACATIONSPEECH__STATIC; +int32_t YIPPEE1 = YIPPEE1__STATIC; +int32_t YOHOO1 = YOHOO1__STATIC; +int32_t YOHOO2 = YOHOO2__STATIC; +int32_t DOLPHINSND = DOLPHINSND__STATIC; +int32_t TOUGHGALSND1 = TOUGHGALSND1__STATIC; +int32_t TOUGHGALSND2 = TOUGHGALSND2__STATIC; +int32_t TOUGHGALSND3 = TOUGHGALSND3__STATIC; +int32_t TOUGHGALSND4 = TOUGHGALSND4__STATIC; +int32_t TANK_ROAM = TANK_ROAM__STATIC; +int32_t BOS4_ROAM = BOS4_ROAM__STATIC; +int32_t BOS4_RECOG = BOS4_RECOG__STATIC; +int32_t BOS4_ATTACK = BOS4_ATTACK__STATIC; +int32_t BOS4_PAIN = BOS4_PAIN__STATIC; +int32_t BOS4_DYING = BOS4_DYING__STATIC; +int32_t NEWBEAST_ATTACKMISS = NEWBEAST_ATTACKMISS__STATIC; +int32_t VOL4_2 = VOL4_2__STATIC; +int32_t COOKINGDEEPFRIER = COOKINGDEEPFRIER__STATIC; +int32_t WHINING_DOG = WHINING_DOG__STATIC; +int32_t DEAD_DOG = DEAD_DOG__STATIC; +int32_t LIGHTNING_SLAP = LIGHTNING_SLAP__STATIC; +int32_t THUNDER = THUNDER__STATIC; +int32_t HAPPYMOUSESND1 = HAPPYMOUSESND1__STATIC; +int32_t HAPPYMOUSESND2 = HAPPYMOUSESND2__STATIC; +int32_t HAPPYMOUSESND3 = HAPPYMOUSESND3__STATIC; +int32_t HAPPYMOUSESND4 = HAPPYMOUSESND4__STATIC; +int32_t ALARM = ALARM__STATIC; +int32_t RAIN = RAIN__STATIC; +int32_t DTAG_GREENRUN = DTAG_GREENRUN__STATIC; +int32_t DTAG_BROWNRUN = DTAG_BROWNRUN__STATIC; +int32_t DTAG_GREENSCORE = DTAG_GREENSCORE__STATIC; +int32_t DTAG_BROWNSCORE = DTAG_BROWNSCORE__STATIC; +int32_t INTRO4_1 = INTRO4_1__STATIC; +int32_t INTRO4_2 = INTRO4_2__STATIC; +int32_t INTRO4_3 = INTRO4_3__STATIC; +int32_t INTRO4_4 = INTRO4_4__STATIC; +int32_t INTRO4_5 = INTRO4_5__STATIC; +int32_t INTRO4_6 = INTRO4_6__STATIC; +int32_t SCREECH = SCREECH__STATIC; +int32_t BOSS4_DEADSPEECH = BOSS4_DEADSPEECH__STATIC; +int32_t BOSS4_FIRSTSEE = BOSS4_FIRSTSEE__STATIC; +int32_t PARTY_SPEECH = PARTY_SPEECH__STATIC; +int32_t POSTAL_SPEECH = POSTAL_SPEECH__STATIC; +int32_t TGSPEECH = TGSPEECH__STATIC; +int32_t DOGROOMSPEECH = DOGROOMSPEECH__STATIC; +int32_t SMACKED = SMACKED__STATIC; +int32_t MDEVSPEECH = MDEVSPEECH__STATIC; +int32_t AREA51SPEECH = AREA51SPEECH__STATIC; +int32_t JEEPSOUND = JEEPSOUND__STATIC; +int32_t BIGDOORSLAM = BIGDOORSLAM__STATIC; +int32_t BOS4_LAY = BOS4_LAY__STATIC; +int32_t WAVESOUND = WAVESOUND__STATIC; +int32_t ILLBEBACK = ILLBEBACK__STATIC; +int32_t VOL4ENDSND1 = VOL4ENDSND1__STATIC; +int32_t VOL4ENDSND2 = VOL4ENDSND2__STATIC; +int32_t EXPANDERHIT = EXPANDERHIT__STATIC; +int32_t SNAKESPEECH = SNAKESPEECH__STATIC; +int32_t EXPANDERSHOOT = EXPANDERSHOOT__STATIC; +int32_t GETBACKTOWORK = GETBACKTOWORK__STATIC; +int32_t JIBBED_ACTOR14 = JIBBED_ACTOR14__STATIC; +int32_t JIBBED_ACTOR15 = JIBBED_ACTOR15__STATIC; +int32_t INTRO4_B = INTRO4_B__STATIC; +int32_t BIGBANG = BIGBANG__STATIC; +int32_t HORNSND = HORNSND__STATIC; +int32_t BELLSND = BELLSND__STATIC; +int32_t GOAWAY = GOAWAY__STATIC; +int32_t JOKE = JOKE__STATIC; + +#if !defined LUNATIC +static hashtable_t h_names = {512, NULL}; + +void G_ProcessDynamicSoundMapping(const char *szLabel, int32_t lValue) +{ + int32_t i; + + if ((unsigned)lValue >= MAXSOUNDS || !szLabel) + return; + + i = hash_find(&h_names,szLabel); + if (i>=0) + { + struct dynitem *di = &g_dynSoundList[i]; +#ifdef DEBUGGINGAIDS + if (di->staticval != lValue) + OSD_Printf("REMAP %s (%d) --> %d\n", di->str, di->staticval, lValue); +#endif + *di->dynvalptr = lValue; + } +} + +void initsoundhashnames(void) +{ + int32_t i; + + hash_init(&h_names); + + for (i=0; g_dynSoundList[i].staticval >= 0; i++) + hash_add(&h_names, g_dynSoundList[i].str, i, 0); +} + +void freesoundhashnames(void) +{ + hash_free(&h_names); +} +#endif +#endif + +// This is run after all CON define's have been processed to set up the +// dynamic->static sound mapping. +void G_InitDynamicSounds(void) +{ + int32_t i; + + Bmemset(DynamicSoundMap, 0, sizeof(DynamicSoundMap)); + + for (i=0; g_dynSoundList[i].staticval >= 0; i++) +#ifdef DYNSOUNDREMAP_ENABLE + DynamicSoundMap[*(g_dynSoundList[i].dynvalptr)] = g_dynSoundList[i].staticval; +#else + DynamicSoundMap[g_dynSoundList[i].staticval] = g_dynSoundList[i].staticval; +#endif + +} diff --git a/polymer/eduke32/source/soundsdyn.h b/polymer/eduke32/source/soundsdyn.h new file mode 100644 index 000000000..9ed91eaf1 --- /dev/null +++ b/polymer/eduke32/source/soundsdyn.h @@ -0,0 +1,846 @@ +//------------------------------------------------------------------------- +/* +Copyright (C) 2013 EDuke32 developers and contributors + +This file is part of EDuke32. + +EDuke32 is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License version 2 +as published by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +//------------------------------------------------------------------------- + +#define DYNSOUNDREMAP_ENABLE + + +#define KICK_HIT__STATIC 0 +#define PISTOL_RICOCHET__STATIC 1 +#define PISTOL_BODYHIT__STATIC 2 +#define PISTOL_FIRE__STATIC 3 +#define EJECT_CLIP__STATIC 4 +#define INSERT_CLIP__STATIC 5 +#define CHAINGUN_FIRE__STATIC 6 +#define RPG_SHOOT__STATIC 7 +#define POOLBALLHIT__STATIC 8 +#define RPG_EXPLODE__STATIC 9 +#define CAT_FIRE__STATIC 10 +#define SHRINKER_FIRE__STATIC 11 +#define ACTOR_SHRINKING__STATIC 12 +#define PIPEBOMB_BOUNCE__STATIC 13 +#define PIPEBOMB_EXPLODE__STATIC 14 +#define LASERTRIP_ONWALL__STATIC 15 +#define LASERTRIP_ARMING__STATIC 16 +#define LASERTRIP_EXPLODE__STATIC 17 +#define VENT_BUST__STATIC 18 +#define GLASS_BREAKING__STATIC 19 +#define GLASS_HEAVYBREAK__STATIC 20 +#define SHORT_CIRCUIT__STATIC 21 +#define ITEM_SPLASH__STATIC 22 +#define DUKE_BREATHING__STATIC 23 +#define DUKE_EXHALING__STATIC 24 +#define DUKE_GASP__STATIC 25 +#define SLIM_RECOG__STATIC 26 +// #define ENDSEQVOL3SND1__STATIC 27 +#define DUKE_URINATE__STATIC 28 +#define ENDSEQVOL3SND2__STATIC 29 +#define ENDSEQVOL3SND3__STATIC 30 +#define DUKE_PASSWIND__STATIC 32 +#define DUKE_CRACK__STATIC 33 +#define SLIM_ATTACK__STATIC 34 +#define SOMETHINGHITFORCE__STATIC 35 +#define DUKE_DRINKING__STATIC 36 +#define DUKE_KILLED1__STATIC 37 +#define DUKE_GRUNT__STATIC 38 +#define DUKE_HARTBEAT__STATIC 39 +#define DUKE_ONWATER__STATIC 40 +#define DUKE_DEAD__STATIC 41 +#define DUKE_LAND__STATIC 42 +#define DUKE_WALKINDUCTS__STATIC 43 +#define DUKE_GLAD__STATIC 44 +#define DUKE_YES__STATIC 45 +#define DUKE_HEHE__STATIC 46 +#define DUKE_SHUCKS__STATIC 47 +#define DUKE_UNDERWATER__STATIC 48 +#define DUKE_JETPACK_ON__STATIC 49 +#define DUKE_JETPACK_IDLE__STATIC 50 +#define DUKE_JETPACK_OFF__STATIC 51 +#define LIZTROOP_GROWL__STATIC 52 +#define LIZTROOP_TALK1__STATIC 53 +#define LIZTROOP_TALK2__STATIC 54 +#define LIZTROOP_TALK3__STATIC 55 +#define DUKETALKTOBOSS__STATIC 56 +#define LIZCAPT_GROWL__STATIC 57 +#define LIZCAPT_TALK1__STATIC 58 +#define LIZCAPT_TALK2__STATIC 59 +#define LIZCAPT_TALK3__STATIC 60 +#define LIZARD_BEG__STATIC 61 +#define LIZARD_PAIN__STATIC 62 +#define LIZARD_DEATH__STATIC 63 +#define LIZARD_SPIT__STATIC 64 +#define DRONE1_HISSRATTLE__STATIC 65 +#define DRONE1_HISSSCREECH__STATIC 66 +#define DUKE_TIP2__STATIC 67 +#define FLESH_BURNING__STATIC 68 +#define SQUISHED__STATIC 69 +#define TELEPORTER__STATIC 70 +#define ELEVATOR_ON__STATIC 71 +#define DUKE_KILLED3__STATIC 72 +#define ELEVATOR_OFF__STATIC 73 +#define DOOR_OPERATE1__STATIC 74 +#define SUBWAY__STATIC 75 +#define SWITCH_ON__STATIC 76 +#define FAN__STATIC 77 +#define DUKE_GETWEAPON3__STATIC 78 +#define FLUSH_TOILET__STATIC 79 +#define HOVER_CRAFT__STATIC 80 +#define EARTHQUAKE__STATIC 81 +#define INTRUDER_ALERT__STATIC 82 +#define END_OF_LEVEL_WARN__STATIC 83 +#define ENGINE_OPERATING__STATIC 84 +#define REACTOR_ON__STATIC 85 +#define COMPUTER_AMBIENCE__STATIC 86 +#define GEARS_GRINDING__STATIC 87 +#define BUBBLE_AMBIENCE__STATIC 88 +#define MACHINE_AMBIENCE__STATIC 89 +#define SEWER_AMBIENCE__STATIC 90 +#define WIND_AMBIENCE__STATIC 91 +#define SOMETHING_DRIPPING__STATIC 92 +#define STEAM_HISSING__STATIC 93 +#define THEATER_BREATH__STATIC 94 +#define BAR_MUSIC__STATIC 95 +#define BOS1_ROAM__STATIC 96 +#define BOS1_RECOG__STATIC 97 +#define BOS1_ATTACK1__STATIC 98 +#define BOS1_PAIN__STATIC 99 +#define BOS1_DYING__STATIC 100 +#define BOS2_ROAM__STATIC 101 +#define BOS2_RECOG__STATIC 102 +#define BOS2_ATTACK__STATIC 103 +#define BOS2_PAIN__STATIC 104 +#define BOS2_DYING__STATIC 105 +#define GETATOMICHEALTH__STATIC 106 +#define DUKE_GETWEAPON2__STATIC 107 +#define BOS3_DYING__STATIC 108 +#define SHOTGUN_FIRE__STATIC 109 +#define PRED_ROAM__STATIC 110 +#define PRED_RECOG__STATIC 111 +#define PRED_ATTACK__STATIC 112 +#define PRED_PAIN__STATIC 113 +#define PRED_DYING__STATIC 114 +#define CAPT_ROAM__STATIC 115 +#define CAPT_ATTACK__STATIC 116 +#define CAPT_RECOG__STATIC 117 +#define CAPT_PAIN__STATIC 118 +#define CAPT_DYING__STATIC 119 +#define PIG_ROAM__STATIC 120 +#define PIG_RECOG__STATIC 121 +#define PIG_ATTACK__STATIC 122 +#define PIG_PAIN__STATIC 123 +#define PIG_DYING__STATIC 124 +#define RECO_ROAM__STATIC 125 +#define RECO_RECOG__STATIC 126 +#define RECO_ATTACK__STATIC 127 +#define RECO_PAIN__STATIC 128 +#define RECO_DYING__STATIC 129 +#define DRON_ROAM__STATIC 130 +#define DRON_RECOG__STATIC 131 +#define DRON_ATTACK1__STATIC 132 +#define DRON_PAIN__STATIC 133 +#define DRON_DYING__STATIC 134 +#define COMM_ROAM__STATIC 135 +#define COMM_RECOG__STATIC 136 +#define COMM_ATTACK__STATIC 137 +#define COMM_PAIN__STATIC 138 +#define COMM_DYING__STATIC 139 +#define OCTA_ROAM__STATIC 140 +#define OCTA_RECOG__STATIC 141 +#define OCTA_ATTACK1__STATIC 142 +#define OCTA_PAIN__STATIC 143 +#define OCTA_DYING__STATIC 144 +#define TURR_ROAM__STATIC 145 +#define TURR_RECOG__STATIC 146 +#define TURR_ATTACK__STATIC 147 +#define DUMPSTER_MOVE__STATIC 148 +#define SLIM_DYING__STATIC 149 +#define BOS3_ROAM__STATIC 150 +#define BOS3_RECOG__STATIC 151 +#define BOS3_ATTACK1__STATIC 152 +#define BOS3_PAIN__STATIC 153 +#define BOS1_ATTACK2__STATIC 154 +#define COMM_SPIN__STATIC 155 +#define BOS1_WALK__STATIC 156 +#define DRON_ATTACK2__STATIC 157 +#define THUD__STATIC 158 +#define OCTA_ATTACK2__STATIC 159 +#define WIERDSHOT_FLY__STATIC 160 +#define TURR_PAIN__STATIC 161 +#define TURR_DYING__STATIC 162 +#define SLIM_ROAM__STATIC 163 +#define LADY_SCREAM__STATIC 164 +#define DOOR_OPERATE2__STATIC 165 +#define DOOR_OPERATE3__STATIC 166 +#define DOOR_OPERATE4__STATIC 167 +#define BORNTOBEWILDSND__STATIC 168 +#define SHOTGUN_COCK__STATIC 169 +#define GENERIC_AMBIENCE1__STATIC 170 +#define GENERIC_AMBIENCE2__STATIC 171 +#define GENERIC_AMBIENCE3__STATIC 172 +#define GENERIC_AMBIENCE4__STATIC 173 +#define GENERIC_AMBIENCE5__STATIC 174 +#define GENERIC_AMBIENCE6__STATIC 175 +#define BOS3_ATTACK2__STATIC 176 +#define GENERIC_AMBIENCE17__STATIC 177 +#define GENERIC_AMBIENCE18__STATIC 178 +#define GENERIC_AMBIENCE19__STATIC 179 +#define GENERIC_AMBIENCE20__STATIC 180 +#define GENERIC_AMBIENCE21__STATIC 181 +#define GENERIC_AMBIENCE22__STATIC 182 +#define SECRETLEVELSND__STATIC 183 +#define GENERIC_AMBIENCE8__STATIC 184 +#define GENERIC_AMBIENCE9__STATIC 185 +#define GENERIC_AMBIENCE10__STATIC 186 +#define GENERIC_AMBIENCE11__STATIC 187 +#define GENERIC_AMBIENCE12__STATIC 188 +#define GENERIC_AMBIENCE13__STATIC 189 +#define GENERIC_AMBIENCE14__STATIC 190 +#define GENERIC_AMBIENCE15__STATIC 192 +#define GENERIC_AMBIENCE16__STATIC 193 +#define FIRE_CRACKLE__STATIC 194 +#define BONUS_SPEECH1__STATIC 195 +#define BONUS_SPEECH2__STATIC 196 +#define BONUS_SPEECH3__STATIC 197 +#define PIG_CAPTURE_DUKE__STATIC 198 +#define BONUS_SPEECH4__STATIC 199 +#define DUKE_LAND_HURT__STATIC 200 +#define DUKE_HIT_STRIPPER1__STATIC 201 +#define DUKE_TIP1__STATIC 202 +#define DUKE_KILLED2__STATIC 203 +#define PRED_ROAM2__STATIC 204 +#define PIG_ROAM2__STATIC 205 +#define DUKE_GETWEAPON1__STATIC 206 +#define DUKE_SEARCH2__STATIC 207 +#define DUKE_CRACK2__STATIC 208 +#define DUKE_SEARCH__STATIC 209 +#define DUKE_GET__STATIC 210 +#define DUKE_LONGTERM_PAIN__STATIC 211 +#define MONITOR_ACTIVE__STATIC 212 +#define NITEVISION_ONOFF__STATIC 213 +#define DUKE_HIT_STRIPPER2__STATIC 214 +#define DUKE_CRACK_FIRST__STATIC 215 +#define DUKE_USEMEDKIT__STATIC 216 +#define DUKE_TAKEPILLS__STATIC 217 +#define DUKE_PISSRELIEF__STATIC 218 +#define SELECT_WEAPON__STATIC 219 +#define WATER_GURGLE__STATIC 220 +#define DUKE_GETWEAPON4__STATIC 221 +#define JIBBED_ACTOR1__STATIC 222 +#define JIBBED_ACTOR2__STATIC 223 +#define JIBBED_ACTOR3__STATIC 224 +#define JIBBED_ACTOR4__STATIC 225 +#define JIBBED_ACTOR5__STATIC 226 +#define JIBBED_ACTOR6__STATIC 227 +#define JIBBED_ACTOR7__STATIC 228 +#define DUKE_GOTHEALTHATLOW__STATIC 229 +#define BOSSTALKTODUKE__STATIC 230 +#define WAR_AMBIENCE1__STATIC 231 +#define WAR_AMBIENCE2__STATIC 232 +#define WAR_AMBIENCE3__STATIC 233 +#define WAR_AMBIENCE4__STATIC 234 +#define WAR_AMBIENCE5__STATIC 235 +#define WAR_AMBIENCE6__STATIC 236 +#define WAR_AMBIENCE7__STATIC 237 +#define WAR_AMBIENCE8__STATIC 238 +#define WAR_AMBIENCE9__STATIC 239 +#define WAR_AMBIENCE10__STATIC 240 +#define ALIEN_TALK1__STATIC 241 +#define ALIEN_TALK2__STATIC 242 +#define EXITMENUSOUND__STATIC 243 +#define FLY_BY__STATIC 244 +#define DUKE_SCREAM__STATIC 245 +#define SHRINKER_HIT__STATIC 246 +#define RATTY__STATIC 247 +#define INTO_MENU__STATIC 248 +#define BONUSMUSIC__STATIC 249 +#define DUKE_BOOBY__STATIC 250 +#define DUKE_TALKTOBOSSFALL__STATIC 251 +#define DUKE_LOOKINTOMIRROR__STATIC 252 +#define PIG_ROAM3__STATIC 253 +#define KILLME__STATIC 254 +#define DRON_JETSND__STATIC 255 +#define SPACE_DOOR1__STATIC 256 +#define SPACE_DOOR2__STATIC 257 +#define SPACE_DOOR3__STATIC 258 +#define SPACE_DOOR4__STATIC 259 +#define SPACE_DOOR5__STATIC 260 +#define ALIEN_ELEVATOR1__STATIC 261 +#define VAULT_DOOR__STATIC 262 +#define JIBBED_ACTOR13__STATIC 263 +#define DUKE_GETWEAPON6__STATIC 264 +#define JIBBED_ACTOR8__STATIC 265 +#define JIBBED_ACTOR9__STATIC 266 +#define JIBBED_ACTOR10__STATIC 267 +#define JIBBED_ACTOR11__STATIC 268 +#define JIBBED_ACTOR12__STATIC 269 +#define DUKE_KILLED4__STATIC 270 +#define DUKE_KILLED5__STATIC 271 +#define ALIEN_SWITCH1__STATIC 272 +#define DUKE_STEPONFECES__STATIC 273 +#define DUKE_LONGTERM_PAIN2__STATIC 274 +#define DUKE_LONGTERM_PAIN3__STATIC 275 +#define DUKE_LONGTERM_PAIN4__STATIC 276 +#define COMPANB2__STATIC 277 +#define KTIT__STATIC 278 +#define HELICOP_IDLE__STATIC 279 +#define STEPNIT__STATIC 280 +#define SPACE_AMBIENCE1__STATIC 281 +#define SPACE_AMBIENCE2__STATIC 282 +#define SLIM_HATCH__STATIC 283 +#define RIPHEADNECK__STATIC 284 +#define FOUNDJONES__STATIC 285 +#define ALIEN_DOOR1__STATIC 286 +#define ALIEN_DOOR2__STATIC 287 +#define ENDSEQVOL3SND4__STATIC 288 +#define ENDSEQVOL3SND5__STATIC 289 +#define ENDSEQVOL3SND6__STATIC 290 +#define ENDSEQVOL3SND7__STATIC 291 +#define ENDSEQVOL3SND8__STATIC 292 +#define ENDSEQVOL3SND9__STATIC 293 +#define WHIPYOURASS__STATIC 294 +#define ENDSEQVOL2SND1__STATIC 295 +#define ENDSEQVOL2SND2__STATIC 296 +#define ENDSEQVOL2SND3__STATIC 297 +#define ENDSEQVOL2SND4__STATIC 298 +#define ENDSEQVOL2SND5__STATIC 299 +#define ENDSEQVOL2SND6__STATIC 300 +#define ENDSEQVOL2SND7__STATIC 301 +#define GENERIC_AMBIENCE23__STATIC 302 +#define SOMETHINGFROZE__STATIC 303 +#define DUKE_LONGTERM_PAIN5__STATIC 304 +#define DUKE_LONGTERM_PAIN6__STATIC 305 +#define DUKE_LONGTERM_PAIN7__STATIC 306 +#define DUKE_LONGTERM_PAIN8__STATIC 307 +#define WIND_REPEAT__STATIC 308 +#define MYENEMY_ROAM__STATIC 309 +#define MYENEMY_HURT__STATIC 310 +#define MYENEMY_DEAD__STATIC 311 +#define MYENEMY_SHOOT__STATIC 312 +#define STORE_MUSIC__STATIC 313 +#define STORE_MUSIC_BROKE__STATIC 314 +#define ACTOR_GROWING__STATIC 315 +#define NEWBEAST_ROAM__STATIC 316 +#define NEWBEAST_RECOG__STATIC 317 +#define NEWBEAST_ATTACK__STATIC 318 +#define NEWBEAST_PAIN__STATIC 319 +#define NEWBEAST_DYING__STATIC 320 +#define NEWBEAST_SPIT__STATIC 321 +#define VOL4_1__STATIC 322 +#define SUPERMARKET__STATIC 323 +#define MOUSEANNOY__STATIC 324 +#define BOOKEM__STATIC 325 +#define SUPERMARKETCRY__STATIC 326 +#define DESTRUCT__STATIC 327 +#define EATFOOD__STATIC 328 +#define MAKEMYDAY__STATIC 329 +#define WITNESSSTAND__STATIC 330 +#define VACATIONSPEECH__STATIC 331 +#define YIPPEE1__STATIC 332 +#define YOHOO1__STATIC 333 +#define YOHOO2__STATIC 334 +#define DOLPHINSND__STATIC 335 +#define TOUGHGALSND1__STATIC 336 +#define TOUGHGALSND2__STATIC 337 +#define TOUGHGALSND3__STATIC 338 +#define TOUGHGALSND4__STATIC 339 +#define TANK_ROAM__STATIC 340 +#define BOS4_ROAM__STATIC 341 +#define BOS4_RECOG__STATIC 342 +#define BOS4_ATTACK__STATIC 343 +#define BOS4_PAIN__STATIC 344 +#define BOS4_DYING__STATIC 345 +#define NEWBEAST_ATTACKMISS__STATIC 346 +#define VOL4_2__STATIC 347 +#define COOKINGDEEPFRIER__STATIC 348 +#define WHINING_DOG__STATIC 349 +#define DEAD_DOG__STATIC 350 +#define LIGHTNING_SLAP__STATIC 351 +#define THUNDER__STATIC 352 +#define HAPPYMOUSESND1__STATIC 353 +#define HAPPYMOUSESND2__STATIC 354 +#define HAPPYMOUSESND3__STATIC 355 +#define HAPPYMOUSESND4__STATIC 356 +#define ALARM__STATIC 357 +#define RAIN__STATIC 358 +#define DTAG_GREENRUN__STATIC 359 +#define DTAG_BROWNRUN__STATIC 360 +#define DTAG_GREENSCORE__STATIC 361 +#define DTAG_BROWNSCORE__STATIC 362 +#define INTRO4_1__STATIC 363 +#define INTRO4_2__STATIC 364 +#define INTRO4_3__STATIC 365 +#define INTRO4_4__STATIC 366 +#define INTRO4_5__STATIC 367 +#define INTRO4_6__STATIC 368 +#define SCREECH__STATIC 369 +#define BOSS4_DEADSPEECH__STATIC 370 +#define BOSS4_FIRSTSEE__STATIC 371 +#define PARTY_SPEECH__STATIC 372 +#define POSTAL_SPEECH__STATIC 373 +#define TGSPEECH__STATIC 374 +#define DOGROOMSPEECH__STATIC 375 +#define SMACKED__STATIC 376 +#define MDEVSPEECH__STATIC 377 +#define AREA51SPEECH__STATIC 378 +#define JEEPSOUND__STATIC 379 +#define BIGDOORSLAM__STATIC 380 +#define BOS4_LAY__STATIC 381 +#define WAVESOUND__STATIC 382 +#define ILLBEBACK__STATIC 383 +#define VOL4ENDSND1__STATIC 384 +#define VOL4ENDSND2__STATIC 385 +#define EXPANDERHIT__STATIC 386 +#define SNAKESPEECH__STATIC 387 +#define EXPANDERSHOOT__STATIC 388 +#define GETBACKTOWORK__STATIC 389 +#define JIBBED_ACTOR14__STATIC 390 +#define JIBBED_ACTOR15__STATIC 391 +#define INTRO4_B__STATIC 392 +#define BIGBANG__STATIC 393 +#define HORNSND__STATIC 394 +#define BELLSND__STATIC 395 +#define GOAWAY__STATIC 396 +#define JOKE__STATIC 397 + +extern int16_t DynamicSoundMap[MAXSOUNDS]; + +void G_InitDynamicSounds(void); + +#ifdef DYNSOUNDREMAP_ENABLE + +void G_ProcessDynamicSoundMapping(const char *szLabel, int32_t lValue); + +#if !defined LUNATIC +void initsoundhashnames(void); +void freesoundhashnames(void); +#endif + +extern int32_t KICK_HIT; +extern int32_t PISTOL_RICOCHET; +extern int32_t PISTOL_BODYHIT; +extern int32_t PISTOL_FIRE; +extern int32_t EJECT_CLIP; +extern int32_t INSERT_CLIP; +extern int32_t CHAINGUN_FIRE; +extern int32_t RPG_SHOOT; +extern int32_t POOLBALLHIT; +extern int32_t RPG_EXPLODE; +extern int32_t CAT_FIRE; +extern int32_t SHRINKER_FIRE; +extern int32_t ACTOR_SHRINKING; +extern int32_t PIPEBOMB_BOUNCE; +extern int32_t PIPEBOMB_EXPLODE; +extern int32_t LASERTRIP_ONWALL; +extern int32_t LASERTRIP_ARMING; +extern int32_t LASERTRIP_EXPLODE; +extern int32_t VENT_BUST; +extern int32_t GLASS_BREAKING; +extern int32_t GLASS_HEAVYBREAK; +extern int32_t SHORT_CIRCUIT; +extern int32_t ITEM_SPLASH; +extern int32_t DUKE_BREATHING; +extern int32_t DUKE_EXHALING; +extern int32_t DUKE_GASP; +extern int32_t SLIM_RECOG; +// extern int32_t ENDSEQVOL3SND1; +extern int32_t DUKE_URINATE; +extern int32_t ENDSEQVOL3SND2; +extern int32_t ENDSEQVOL3SND3; +extern int32_t DUKE_PASSWIND; +extern int32_t DUKE_CRACK; +extern int32_t SLIM_ATTACK; +extern int32_t SOMETHINGHITFORCE; +extern int32_t DUKE_DRINKING; +extern int32_t DUKE_KILLED1; +extern int32_t DUKE_GRUNT; +extern int32_t DUKE_HARTBEAT; +extern int32_t DUKE_ONWATER; +extern int32_t DUKE_DEAD; +extern int32_t DUKE_LAND; +extern int32_t DUKE_WALKINDUCTS; +extern int32_t DUKE_GLAD; +extern int32_t DUKE_YES; +extern int32_t DUKE_HEHE; +extern int32_t DUKE_SHUCKS; +extern int32_t DUKE_UNDERWATER; +extern int32_t DUKE_JETPACK_ON; +extern int32_t DUKE_JETPACK_IDLE; +extern int32_t DUKE_JETPACK_OFF; +extern int32_t LIZTROOP_GROWL; +extern int32_t LIZTROOP_TALK1; +extern int32_t LIZTROOP_TALK2; +extern int32_t LIZTROOP_TALK3; +extern int32_t DUKETALKTOBOSS; +extern int32_t LIZCAPT_GROWL; +extern int32_t LIZCAPT_TALK1; +extern int32_t LIZCAPT_TALK2; +extern int32_t LIZCAPT_TALK3; +extern int32_t LIZARD_BEG; +extern int32_t LIZARD_PAIN; +extern int32_t LIZARD_DEATH; +extern int32_t LIZARD_SPIT; +extern int32_t DRONE1_HISSRATTLE; +extern int32_t DRONE1_HISSSCREECH; +extern int32_t DUKE_TIP2; +extern int32_t FLESH_BURNING; +extern int32_t SQUISHED; +extern int32_t TELEPORTER; +extern int32_t ELEVATOR_ON; +extern int32_t DUKE_KILLED3; +extern int32_t ELEVATOR_OFF; +extern int32_t DOOR_OPERATE1; +extern int32_t SUBWAY; +extern int32_t SWITCH_ON; +extern int32_t FAN; +extern int32_t DUKE_GETWEAPON3; +extern int32_t FLUSH_TOILET; +extern int32_t HOVER_CRAFT; +extern int32_t EARTHQUAKE; +extern int32_t INTRUDER_ALERT; +extern int32_t END_OF_LEVEL_WARN; +extern int32_t ENGINE_OPERATING; +extern int32_t REACTOR_ON; +extern int32_t COMPUTER_AMBIENCE; +extern int32_t GEARS_GRINDING; +extern int32_t BUBBLE_AMBIENCE; +extern int32_t MACHINE_AMBIENCE; +extern int32_t SEWER_AMBIENCE; +extern int32_t WIND_AMBIENCE; +extern int32_t SOMETHING_DRIPPING; +extern int32_t STEAM_HISSING; +extern int32_t THEATER_BREATH; +extern int32_t BAR_MUSIC; +extern int32_t BOS1_ROAM; +extern int32_t BOS1_RECOG; +extern int32_t BOS1_ATTACK1; +extern int32_t BOS1_PAIN; +extern int32_t BOS1_DYING; +extern int32_t BOS2_ROAM; +extern int32_t BOS2_RECOG; +extern int32_t BOS2_ATTACK; +extern int32_t BOS2_PAIN; +extern int32_t BOS2_DYING; +extern int32_t GETATOMICHEALTH; +extern int32_t DUKE_GETWEAPON2; +extern int32_t BOS3_DYING; +extern int32_t SHOTGUN_FIRE; +extern int32_t PRED_ROAM; +extern int32_t PRED_RECOG; +extern int32_t PRED_ATTACK; +extern int32_t PRED_PAIN; +extern int32_t PRED_DYING; +extern int32_t CAPT_ROAM; +extern int32_t CAPT_ATTACK; +extern int32_t CAPT_RECOG; +extern int32_t CAPT_PAIN; +extern int32_t CAPT_DYING; +extern int32_t PIG_ROAM; +extern int32_t PIG_RECOG; +extern int32_t PIG_ATTACK; +extern int32_t PIG_PAIN; +extern int32_t PIG_DYING; +extern int32_t RECO_ROAM; +extern int32_t RECO_RECOG; +extern int32_t RECO_ATTACK; +extern int32_t RECO_PAIN; +extern int32_t RECO_DYING; +extern int32_t DRON_ROAM; +extern int32_t DRON_RECOG; +extern int32_t DRON_ATTACK1; +extern int32_t DRON_PAIN; +extern int32_t DRON_DYING; +extern int32_t COMM_ROAM; +extern int32_t COMM_RECOG; +extern int32_t COMM_ATTACK; +extern int32_t COMM_PAIN; +extern int32_t COMM_DYING; +extern int32_t OCTA_ROAM; +extern int32_t OCTA_RECOG; +extern int32_t OCTA_ATTACK1; +extern int32_t OCTA_PAIN; +extern int32_t OCTA_DYING; +extern int32_t TURR_ROAM; +extern int32_t TURR_RECOG; +extern int32_t TURR_ATTACK; +extern int32_t DUMPSTER_MOVE; +extern int32_t SLIM_DYING; +extern int32_t BOS3_ROAM; +extern int32_t BOS3_RECOG; +extern int32_t BOS3_ATTACK1; +extern int32_t BOS3_PAIN; +extern int32_t BOS1_ATTACK2; +extern int32_t COMM_SPIN; +extern int32_t BOS1_WALK; +extern int32_t DRON_ATTACK2; +extern int32_t THUD; +extern int32_t OCTA_ATTACK2; +extern int32_t WIERDSHOT_FLY; +extern int32_t TURR_PAIN; +extern int32_t TURR_DYING; +extern int32_t SLIM_ROAM; +extern int32_t LADY_SCREAM; +extern int32_t DOOR_OPERATE2; +extern int32_t DOOR_OPERATE3; +extern int32_t DOOR_OPERATE4; +extern int32_t BORNTOBEWILDSND; +extern int32_t SHOTGUN_COCK; +extern int32_t GENERIC_AMBIENCE1; +extern int32_t GENERIC_AMBIENCE2; +extern int32_t GENERIC_AMBIENCE3; +extern int32_t GENERIC_AMBIENCE4; +extern int32_t GENERIC_AMBIENCE5; +extern int32_t GENERIC_AMBIENCE6; +extern int32_t BOS3_ATTACK2; +extern int32_t GENERIC_AMBIENCE17; +extern int32_t GENERIC_AMBIENCE18; +extern int32_t GENERIC_AMBIENCE19; +extern int32_t GENERIC_AMBIENCE20; +extern int32_t GENERIC_AMBIENCE21; +extern int32_t GENERIC_AMBIENCE22; +extern int32_t SECRETLEVELSND; +extern int32_t GENERIC_AMBIENCE8; +extern int32_t GENERIC_AMBIENCE9; +extern int32_t GENERIC_AMBIENCE10; +extern int32_t GENERIC_AMBIENCE11; +extern int32_t GENERIC_AMBIENCE12; +extern int32_t GENERIC_AMBIENCE13; +extern int32_t GENERIC_AMBIENCE14; +extern int32_t GENERIC_AMBIENCE15; +extern int32_t GENERIC_AMBIENCE16; +extern int32_t FIRE_CRACKLE; +extern int32_t BONUS_SPEECH1; +extern int32_t BONUS_SPEECH2; +extern int32_t BONUS_SPEECH3; +extern int32_t PIG_CAPTURE_DUKE; +extern int32_t BONUS_SPEECH4; +extern int32_t DUKE_LAND_HURT; +extern int32_t DUKE_HIT_STRIPPER1; +extern int32_t DUKE_TIP1; +extern int32_t DUKE_KILLED2; +extern int32_t PRED_ROAM2; +extern int32_t PIG_ROAM2; +extern int32_t DUKE_GETWEAPON1; +extern int32_t DUKE_SEARCH2; +extern int32_t DUKE_CRACK2; +extern int32_t DUKE_SEARCH; +extern int32_t DUKE_GET; +extern int32_t DUKE_LONGTERM_PAIN; +extern int32_t MONITOR_ACTIVE; +extern int32_t NITEVISION_ONOFF; +extern int32_t DUKE_HIT_STRIPPER2; +extern int32_t DUKE_CRACK_FIRST; +extern int32_t DUKE_USEMEDKIT; +extern int32_t DUKE_TAKEPILLS; +extern int32_t DUKE_PISSRELIEF; +extern int32_t SELECT_WEAPON; +extern int32_t WATER_GURGLE; +extern int32_t DUKE_GETWEAPON4; +extern int32_t JIBBED_ACTOR1; +extern int32_t JIBBED_ACTOR2; +extern int32_t JIBBED_ACTOR3; +extern int32_t JIBBED_ACTOR4; +extern int32_t JIBBED_ACTOR5; +extern int32_t JIBBED_ACTOR6; +extern int32_t JIBBED_ACTOR7; +extern int32_t DUKE_GOTHEALTHATLOW; +extern int32_t BOSSTALKTODUKE; +extern int32_t WAR_AMBIENCE1; +extern int32_t WAR_AMBIENCE2; +extern int32_t WAR_AMBIENCE3; +extern int32_t WAR_AMBIENCE4; +extern int32_t WAR_AMBIENCE5; +extern int32_t WAR_AMBIENCE6; +extern int32_t WAR_AMBIENCE7; +extern int32_t WAR_AMBIENCE8; +extern int32_t WAR_AMBIENCE9; +extern int32_t WAR_AMBIENCE10; +extern int32_t ALIEN_TALK1; +extern int32_t ALIEN_TALK2; +extern int32_t EXITMENUSOUND; +extern int32_t FLY_BY; +extern int32_t DUKE_SCREAM; +extern int32_t SHRINKER_HIT; +extern int32_t RATTY; +extern int32_t INTO_MENU; +extern int32_t BONUSMUSIC; +extern int32_t DUKE_BOOBY; +extern int32_t DUKE_TALKTOBOSSFALL; +extern int32_t DUKE_LOOKINTOMIRROR; +extern int32_t PIG_ROAM3; +extern int32_t KILLME; +extern int32_t DRON_JETSND; +extern int32_t SPACE_DOOR1; +extern int32_t SPACE_DOOR2; +extern int32_t SPACE_DOOR3; +extern int32_t SPACE_DOOR4; +extern int32_t SPACE_DOOR5; +extern int32_t ALIEN_ELEVATOR1; +extern int32_t VAULT_DOOR; +extern int32_t JIBBED_ACTOR13; +extern int32_t DUKE_GETWEAPON6; +extern int32_t JIBBED_ACTOR8; +extern int32_t JIBBED_ACTOR9; +extern int32_t JIBBED_ACTOR10; +extern int32_t JIBBED_ACTOR11; +extern int32_t JIBBED_ACTOR12; +extern int32_t DUKE_KILLED4; +extern int32_t DUKE_KILLED5; +extern int32_t ALIEN_SWITCH1; +extern int32_t DUKE_STEPONFECES; +extern int32_t DUKE_LONGTERM_PAIN2; +extern int32_t DUKE_LONGTERM_PAIN3; +extern int32_t DUKE_LONGTERM_PAIN4; +extern int32_t COMPANB2; +extern int32_t KTIT; +extern int32_t HELICOP_IDLE; +extern int32_t STEPNIT; +extern int32_t SPACE_AMBIENCE1; +extern int32_t SPACE_AMBIENCE2; +extern int32_t SLIM_HATCH; +extern int32_t RIPHEADNECK; +extern int32_t FOUNDJONES; +extern int32_t ALIEN_DOOR1; +extern int32_t ALIEN_DOOR2; +extern int32_t ENDSEQVOL3SND4; +extern int32_t ENDSEQVOL3SND5; +extern int32_t ENDSEQVOL3SND6; +extern int32_t ENDSEQVOL3SND7; +extern int32_t ENDSEQVOL3SND8; +extern int32_t ENDSEQVOL3SND9; +extern int32_t WHIPYOURASS; +extern int32_t ENDSEQVOL2SND1; +extern int32_t ENDSEQVOL2SND2; +extern int32_t ENDSEQVOL2SND3; +extern int32_t ENDSEQVOL2SND4; +extern int32_t ENDSEQVOL2SND5; +extern int32_t ENDSEQVOL2SND6; +extern int32_t ENDSEQVOL2SND7; +extern int32_t GENERIC_AMBIENCE23; +extern int32_t SOMETHINGFROZE; +extern int32_t DUKE_LONGTERM_PAIN5; +extern int32_t DUKE_LONGTERM_PAIN6; +extern int32_t DUKE_LONGTERM_PAIN7; +extern int32_t DUKE_LONGTERM_PAIN8; +extern int32_t WIND_REPEAT; +extern int32_t MYENEMY_ROAM; +extern int32_t MYENEMY_HURT; +extern int32_t MYENEMY_DEAD; +extern int32_t MYENEMY_SHOOT; +extern int32_t STORE_MUSIC; +extern int32_t STORE_MUSIC_BROKE; +extern int32_t ACTOR_GROWING; +extern int32_t NEWBEAST_ROAM; +extern int32_t NEWBEAST_RECOG; +extern int32_t NEWBEAST_ATTACK; +extern int32_t NEWBEAST_PAIN; +extern int32_t NEWBEAST_DYING; +extern int32_t NEWBEAST_SPIT; +extern int32_t VOL4_1; +extern int32_t SUPERMARKET; +extern int32_t MOUSEANNOY; +extern int32_t BOOKEM; +extern int32_t SUPERMARKETCRY; +extern int32_t DESTRUCT; +extern int32_t EATFOOD; +extern int32_t MAKEMYDAY; +extern int32_t WITNESSSTAND; +extern int32_t VACATIONSPEECH; +extern int32_t YIPPEE1; +extern int32_t YOHOO1; +extern int32_t YOHOO2; +extern int32_t DOLPHINSND; +extern int32_t TOUGHGALSND1; +extern int32_t TOUGHGALSND2; +extern int32_t TOUGHGALSND3; +extern int32_t TOUGHGALSND4; +extern int32_t TANK_ROAM; +extern int32_t BOS4_ROAM; +extern int32_t BOS4_RECOG; +extern int32_t BOS4_ATTACK; +extern int32_t BOS4_PAIN; +extern int32_t BOS4_DYING; +extern int32_t NEWBEAST_ATTACKMISS; +extern int32_t VOL4_2; +extern int32_t COOKINGDEEPFRIER; +extern int32_t WHINING_DOG; +extern int32_t DEAD_DOG; +extern int32_t LIGHTNING_SLAP; +extern int32_t THUNDER; +extern int32_t HAPPYMOUSESND1; +extern int32_t HAPPYMOUSESND2; +extern int32_t HAPPYMOUSESND3; +extern int32_t HAPPYMOUSESND4; +extern int32_t ALARM; +extern int32_t RAIN; +extern int32_t DTAG_GREENRUN; +extern int32_t DTAG_BROWNRUN; +extern int32_t DTAG_GREENSCORE; +extern int32_t DTAG_BROWNSCORE; +extern int32_t INTRO4_1; +extern int32_t INTRO4_2; +extern int32_t INTRO4_3; +extern int32_t INTRO4_4; +extern int32_t INTRO4_5; +extern int32_t INTRO4_6; +extern int32_t SCREECH; +extern int32_t BOSS4_DEADSPEECH; +extern int32_t BOSS4_FIRSTSEE; +extern int32_t PARTY_SPEECH; +extern int32_t POSTAL_SPEECH; +extern int32_t TGSPEECH; +extern int32_t DOGROOMSPEECH; +extern int32_t SMACKED; +extern int32_t MDEVSPEECH; +extern int32_t AREA51SPEECH; +extern int32_t JEEPSOUND; +extern int32_t BIGDOORSLAM; +extern int32_t BOS4_LAY; +extern int32_t WAVESOUND; +extern int32_t ILLBEBACK; +extern int32_t VOL4ENDSND1; +extern int32_t VOL4ENDSND2; +extern int32_t EXPANDERHIT; +extern int32_t SNAKESPEECH; +extern int32_t EXPANDERSHOOT; +extern int32_t GETBACKTOWORK; +extern int32_t JIBBED_ACTOR14; +extern int32_t JIBBED_ACTOR15; +extern int32_t INTRO4_B; +extern int32_t BIGBANG; +extern int32_t HORNSND; +extern int32_t BELLSND; +extern int32_t GOAWAY; +extern int32_t JOKE; + +#define DYNAMICSOUNDMAP(Soundnum) (DynamicSoundMap[Soundnum]) + +#else /* if !defined DYNSOUNDREMAP_ENABLE */ + +#define G_ProcessDynamicSoundMapping(x, y) ((void)(0)) + +#define initsoundhashnames() ((void)0) +#define freesoundhashnames() ((void)0) + +#include "soundefs.h" + +#define DYNAMICSOUNDMAP(Soundnum) (Soundnum) + +#endif