aboutsummaryrefslogtreecommitdiff
path: root/engines/lab
diff options
context:
space:
mode:
authorStrangerke2015-12-06 18:32:48 +0100
committerWillem Jan Palenstijn2015-12-23 21:33:52 +0100
commitb3269dc80d2a2e1dca9ac24854578befe5004f4f (patch)
tree7a0e26165302ab470035229d9d9a5b8853611da6 /engines/lab
parenta9dc3a930241e0d6bb878d70dd98a5511572cc1c (diff)
downloadscummvm-rg350-b3269dc80d2a2e1dca9ac24854578befe5004f4f.tar.gz
scummvm-rg350-b3269dc80d2a2e1dca9ac24854578befe5004f4f.tar.bz2
scummvm-rg350-b3269dc80d2a2e1dca9ac24854578befe5004f4f.zip
LAB: Move readMusic to the Music class
Diffstat (limited to 'engines/lab')
-rw-r--r--engines/lab/graphics.cpp17
-rw-r--r--engines/lab/labfun.h6
-rw-r--r--engines/lab/music.cpp18
-rw-r--r--engines/lab/music.h1
-rw-r--r--engines/lab/processroom.cpp6
5 files changed, 22 insertions, 26 deletions
diff --git a/engines/lab/graphics.cpp b/engines/lab/graphics.cpp
index 52f92e5b9e..6c93b516fa 100644
--- a/engines/lab/graphics.cpp
+++ b/engines/lab/graphics.cpp
@@ -181,23 +181,6 @@ void DisplayMan::freePict() {
_curBitmap = NULL;
}
-/*****************************************************************************/
-/* Reads in a music file. Ignores any graphics. */
-/*****************************************************************************/
-bool readMusic(const char *filename, bool waitTillFinished) {
- Common::File *file = g_lab->_resource->openDataFile(filename, MKTAG('D', 'I', 'F', 'F'));
- g_lab->_music->updateMusic();
- if (!g_lab->_music->_doNotFilestopSoundEffect)
- g_lab->_music->stopSoundEffect();
- if (!file)
- return false;
-
- g_lab->_anim->_doBlack = false;
- g_lab->_anim->readSound(waitTillFinished, file);
-
- return true;
-}
-
/*---------------------------------------------------------------------------*/
/*------------ Does all the text rendering to the message boxes. ------------*/
/*---------------------------------------------------------------------------*/
diff --git a/engines/lab/labfun.h b/engines/lab/labfun.h
index c56dbcdd5b..80291f617b 100644
--- a/engines/lab/labfun.h
+++ b/engines/lab/labfun.h
@@ -64,12 +64,6 @@ struct SaveGameHeader {
uint16 _direction;
};
-/*----------------------------*/
-/*----- From graphics.c ------*/
-/*----------------------------*/
-
-bool readMusic(const char *filename, bool waitTillFinished);
-
/*--------------------------*/
/*----- From saveGame.c ----*/
/*--------------------------*/
diff --git a/engines/lab/music.cpp b/engines/lab/music.cpp
index 0f42064a5c..66db0d8493 100644
--- a/engines/lab/music.cpp
+++ b/engines/lab/music.cpp
@@ -308,4 +308,22 @@ void Music::resetMusic() {
_tFile = 0;
}
+/*****************************************************************************/
+/* Reads in a music file. Ignores any graphics. */
+/*****************************************************************************/
+bool Music::readMusic(const char *filename, bool waitTillFinished) {
+ Common::File *file = _vm->_resource->openDataFile(filename, MKTAG('D', 'I', 'F', 'F'));
+ updateMusic();
+ if (!_doNotFilestopSoundEffect)
+ stopSoundEffect();
+
+ if (!file)
+ return false;
+
+ _vm->_anim->_doBlack = false;
+ _vm->_anim->readSound(waitTillFinished, file);
+
+ return true;
+}
+
} // End of namespace Lab
diff --git a/engines/lab/music.h b/engines/lab/music.h
index a94fae589e..d292e9ed9c 100644
--- a/engines/lab/music.h
+++ b/engines/lab/music.h
@@ -67,6 +67,7 @@ public:
void playSoundEffect(uint16 SampleSpeed, uint32 Length, void *Data);
void stopSoundEffect();
bool isSoundEffectActive() const;
+ bool readMusic(const char *filename, bool waitTillFinished);
bool _winmusic, _doNotFilestopSoundEffect;
bool _musicOn;
diff --git a/engines/lab/processroom.cpp b/engines/lab/processroom.cpp
index a4d3da293d..932649cb7e 100644
--- a/engines/lab/processroom.cpp
+++ b/engines/lab/processroom.cpp
@@ -304,20 +304,20 @@ void LabEngine::doActions(Action *aptr, CloseDataPtr *lcptr) {
case PLAYSOUND:
_music->_loopSoundEffect = false;
_music->_waitTillFinished = true;
- readMusic((char *)aptr->Data, true);
+ _music->readMusic((char *)aptr->Data, true);
_music->_waitTillFinished = false;
break;
case PLAYSOUNDB:
_music->_loopSoundEffect = false;
_music->_waitTillFinished = false;
- readMusic((char *)aptr->Data, false);
+ _music->readMusic((char *)aptr->Data, false);
break;
case PLAYSOUNDCONT:
_music->_doNotFilestopSoundEffect = true;
_music->_loopSoundEffect = true;
- readMusic((char *)aptr->Data, _music->_waitTillFinished);
+ _music->readMusic((char *)aptr->Data, _music->_waitTillFinished);
break;
case SHOWDIFF: