aboutsummaryrefslogtreecommitdiff
path: root/engines/pegasus/menu.cpp
diff options
context:
space:
mode:
authorMatthew Hoops2011-06-15 13:00:17 -0400
committerMatthew Hoops2011-06-15 13:00:17 -0400
commit9aa9e6afcb160d0aee233aeaeb80390a23a616a4 (patch)
treececd1751668147b58693b5e0f893418755d6ecf1 /engines/pegasus/menu.cpp
parentae1a9323917b7d1d45929d675a14ffd314bf95da (diff)
downloadscummvm-rg350-9aa9e6afcb160d0aee233aeaeb80390a23a616a4.tar.gz
scummvm-rg350-9aa9e6afcb160d0aee233aeaeb80390a23a616a4.tar.bz2
scummvm-rg350-9aa9e6afcb160d0aee233aeaeb80390a23a616a4.zip
PEGASUS: Switch sound playback to using the MMSound class
Diffstat (limited to 'engines/pegasus/menu.cpp')
-rw-r--r--engines/pegasus/menu.cpp22
1 files changed, 10 insertions, 12 deletions
diff --git a/engines/pegasus/menu.cpp b/engines/pegasus/menu.cpp
index 33e8df3f6b..577d96aa82 100644
--- a/engines/pegasus/menu.cpp
+++ b/engines/pegasus/menu.cpp
@@ -26,6 +26,8 @@
#include "pegasus/console.h"
#include "pegasus/pegasus.h"
+#include "pegasus/MMShell/Sounds/MMSound.h"
+
namespace Pegasus {
enum {
@@ -44,7 +46,9 @@ enum {
};
void PegasusEngine::runMainMenu() {
- _sound->playSound("Sounds/Main Menu.aiff", true);
+ MMSound sound;
+ sound.InitFromAIFFFile("Sounds/Main Menu.aiff");
+ sound.LoopSound();
// Note down how long since the last click
uint32 lastClickTime = _system->getMillis();
@@ -82,14 +86,14 @@ void PegasusEngine::runMainMenu() {
case Common::KEYCODE_RETURN:
if (buttonSelected != kDifficultyButton) {
drawMenuButtonSelected(buttonSelected);
+ sound.StopSound();
setGameMode(buttonSelected);
- if (_gameMode != kMainMenuMode) {
- _sound->stopSound();
+ if (_gameMode != kMainMenuMode)
return;
- }
-
+
drawMenu(buttonSelected);
+ sound.LoopSound();
}
break;
case Common::KEYCODE_d:
@@ -118,7 +122,7 @@ void PegasusEngine::runMainMenu() {
return;
// Too slow! Go back and show the intro again.
- _sound->stopSound();
+ sound.StopSound();
_video->playMovie(_introDirectory + "/LilMovie.movie");
_gameMode = kIntroMode;
}
@@ -173,9 +177,7 @@ void PegasusEngine::setGameMode(int buttonSelected) {
_gameMode = kMainGameMode;
break;
case kDemoCreditsButton:
- _sound->stopSound();
runDemoCredits();
- _sound->playSound("Sounds/Main Menu.aiff", true);
break;
case kDemoQuitButton:
_gameMode = kQuitMode;
@@ -184,9 +186,7 @@ void PegasusEngine::setGameMode(int buttonSelected) {
} else {
switch (buttonSelected) {
case kInterfaceOverviewButton:
- _sound->stopSound();
runInterfaceOverview();
- _sound->playSound("Sounds/Main Menu.aiff", true);
break;
case kStartButton:
_gameMode = kMainGameMode;
@@ -195,9 +195,7 @@ void PegasusEngine::setGameMode(int buttonSelected) {
showLoadDialog();
break;
case kCreditsButton:
- _sound->stopSound();
runCredits();
- _sound->playSound("Sounds/Main Menu.aiff", true);
break;
case kQuitButton:
_gameMode = kQuitMode;