From 550bf93656eb0c7677751ee18ba1adaa29dad3ba Mon Sep 17 00:00:00 2001 From: Jamieson Christian Date: Sun, 10 Aug 2003 11:39:17 +0000 Subject: [PATCH] Added imuse_panic to turn off all music players svn-id: r9621 --- scumm/debugger.cpp | 12 +++++++++++- scumm/debugger.h | 1 + 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/scumm/debugger.cpp b/scumm/debugger.cpp index d3442eb784a..b19aae44d47 100644 --- a/scumm/debugger.cpp +++ b/scumm/debugger.cpp @@ -112,6 +112,7 @@ void ScummDebugger::attach(Scumm *s, char *entry) { DCmd_Register("hide", &ScummDebugger::Cmd_Hide); DCmd_Register("imuse_multimidi", &ScummDebugger::Cmd_ImuseMultiMidi); + DCmd_Register("imuse_panic", &ScummDebugger::Cmd_ImusePanic); } } @@ -365,7 +366,8 @@ bool ScummDebugger::Cmd_Restart(int argc, const char **argv) { bool ScummDebugger::Cmd_ImuseMultiMidi (int argc, const char **argv) { if (argc > 1) { - _s->_imuse->property (IMuse::PROP_MULTI_MIDI, !strcmp (argv[1], "1") || !strcmp (argv[1], "on") || !strcmp (argv[1], "true")); + if (_s->_imuse) + _s->_imuse->property (IMuse::PROP_MULTI_MIDI, !strcmp (argv[1], "1") || !strcmp (argv[1], "on") || !strcmp (argv[1], "true")); return false; } else { Debug_Printf("Use 'imuse_multimidi on|off' to switch\n"); @@ -373,6 +375,14 @@ bool ScummDebugger::Cmd_ImuseMultiMidi (int argc, const char **argv) { } } +bool ScummDebugger::Cmd_ImusePanic (int argc, const char **argv) { + Debug_Printf ("AAAIIIEEEEEE!\n"); + Debug_Printf ("Shutting down all music tracks\n"); + if (_s->_imuse) + _s->_imuse->stop_all_sounds(); + return true; +} + bool ScummDebugger::Cmd_Room(int argc, const char **argv) { if (argc > 1) { int room = atoi(argv[1]); diff --git a/scumm/debugger.h b/scumm/debugger.h index e33015b617a..834a69b19d2 100644 --- a/scumm/debugger.h +++ b/scumm/debugger.h @@ -95,6 +95,7 @@ protected: bool Cmd_Hide(int argc, const char **argv); bool Cmd_ImuseMultiMidi (int argc, const char **argv); + bool Cmd_ImusePanic (int argc, const char **argv); void printBox(int box); void drawBox(int box);