diff --git a/source/duke3d/src/gamedef.cpp b/source/duke3d/src/gamedef.cpp index 6fc6589b7..b8ab2e2b6 100644 --- a/source/duke3d/src/gamedef.cpp +++ b/source/duke3d/src/gamedef.cpp @@ -600,6 +600,7 @@ const char *keyw[] = { "drawline256", // 404 "drawlinergb", // 405 "starttrackslot", // 406 + "stopallmusic", // 407 NULL }; #endif @@ -6038,6 +6039,7 @@ repeatcase: case CON_GETTEXTURECEILING: case CON_INSERTSPRITEQ: case CON_STOPALLSOUNDS: + case CON_STOPALLMUSIC: continue; case CON_NULLOP: diff --git a/source/duke3d/src/gamedef.h b/source/duke3d/src/gamedef.h index 3c10ab81c..45c46e19b 100644 --- a/source/duke3d/src/gamedef.h +++ b/source/duke3d/src/gamedef.h @@ -1142,6 +1142,7 @@ enum ScriptKeywords_t CON_DRAWLINE256, // 404 CON_DRAWLINERGB, // 405 CON_STARTTRACKSLOT, // 406 + CON_STOPALLMUSIC, // 407 CON_END }; // KEEPINSYNC with the keyword list in lunatic/con_lang.lua diff --git a/source/duke3d/src/gameexec.cpp b/source/duke3d/src/gameexec.cpp index ca7b7a8cb..84eb92345 100644 --- a/source/duke3d/src/gameexec.cpp +++ b/source/duke3d/src/gameexec.cpp @@ -3605,6 +3605,11 @@ nullquote: FX_StopAllSounds(); continue; + case CON_STOPALLMUSIC: + insptr++; + S_StopMusic(); + continue; + case CON_IFGAPZL: insptr++; VM_CONDITIONAL(((vm.pActor->floorz - vm.pActor->ceilingz) >> 8) < *insptr);