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");
_gameProjectVersion = 0;
_gameProjectValue = 0;
_scrollSpeed = 0;
_currSoundListCount = 0;
_soundEnabled = true;
_flgSoundList = true;
g_fullpipe = this;
}

View File

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

View File

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

View File

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

View File

@ -192,9 +192,35 @@ bool Scene::load(MfcArchive &file) {
if (shd->loadFile(shdname))
_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());
return true;
}
void Scene::initStaticANIObjects() {
warning("STUB: Scene::initStaticANIObjects");
}
} // End of namespace Fullpipe

View File

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