FULLPIPE: Started sound loading

This commit is contained in:
Eugene Sandulenko 2013-06-24 16:22:26 -04:00
parent 00971bf209
commit 5f7cf0131c
6 changed files with 40 additions and 1 deletions

View File

@ -46,6 +46,14 @@ FullpipeEngine::FullpipeEngine(OSystem *syst, const ADGameDescription *gameDesc)
_rnd = new Common::RandomSource("fullpipe"); _rnd = new Common::RandomSource("fullpipe");
_gameProjectVersion = 0;
_gameProjectValue = 0;
_scrollSpeed = 0;
_currSoundListCount = 0;
_soundEnabled = true;
_flgSoundList = true;
g_fullpipe = this; g_fullpipe = this;
} }

View File

@ -81,6 +81,8 @@ public:
int _gameProjectValue; int _gameProjectValue;
int _scrollSpeed; int _scrollSpeed;
int _currSoundListCount; int _currSoundListCount;
bool _soundEnabled;
bool _flgSoundList;
void initObjectStates(); void initObjectStates();
void setLevelStates(); void setLevelStates();

View File

@ -8,6 +8,7 @@ MODULE_OBJS = \
motion.o \ motion.o \
ngiarchive.o \ ngiarchive.o \
scene.o \ scene.o \
sound.o \
stateloader.o \ stateloader.o \
statics.o \ statics.o \
utils.o utils.o

View File

@ -26,6 +26,7 @@
#include "fullpipe/utils.h" #include "fullpipe/utils.h"
#include "fullpipe/inventory.h" #include "fullpipe/inventory.h"
#include "fullpipe/gfx.h" #include "fullpipe/gfx.h"
#include "fullpipe/sound.h"
#include "fullpipe/scene.h" #include "fullpipe/scene.h"
namespace Fullpipe { namespace Fullpipe {

View File

@ -192,9 +192,35 @@ bool Scene::load(MfcArchive &file) {
if (shd->loadFile(shdname)) if (shd->loadFile(shdname))
_shadows = shd; _shadows = shd;
free(shdname);
char *slsname = genFileName(0, _sceneId, "sls");
if (g_fullpipe->_soundEnabled) {
_soundList = new SoundList();
if (g_fullpipe->_flgSoundList) {
char *nlname = genFileName(17, _sceneId, "nl");
_soundList->loadFile(slsname, nlname);
free(nlname);
} else {
_soundList->loadFile(slsname, 0);
}
}
free(slsname);
initStaticANIObjects();
warning("STUB: Scene::load (%d bytes left)", file.size() - file.pos()); warning("STUB: Scene::load (%d bytes left)", file.size() - file.pos());
return true; return true;
} }
void Scene::initStaticANIObjects() {
warning("STUB: Scene::initStaticANIObjects");
}
} // End of namespace Fullpipe } // End of namespace Fullpipe

View File

@ -32,7 +32,7 @@ class Scene : public Background {
CPtrList _messageQueueList; CPtrList _messageQueueList;
CPtrList _faObjectList; CPtrList _faObjectList;
Shadows *_shadows; Shadows *_shadows;
int _soundList; SoundList *_soundList;
int16 _sceneId; int16 _sceneId;
char *_scstringObj; char *_scstringObj;
int _field_BC; int _field_BC;
@ -41,6 +41,7 @@ class Scene : public Background {
public: public:
Scene(); Scene();
virtual bool load(MfcArchive &file); virtual bool load(MfcArchive &file);
void initStaticANIObjects();
}; };
class SceneTag : public CObject { class SceneTag : public CObject {