aboutsummaryrefslogtreecommitdiff
path: root/engines/director/director.cpp
diff options
context:
space:
mode:
authorDmitry Iskrich2016-06-17 15:08:05 +0300
committerEugene Sandulenko2016-08-03 23:40:36 +0200
commit6b5c0626f7318542726bacce75a56b93af59fbe5 (patch)
treeb1560355dc521a34276cfc50c73966447e4c309e /engines/director/director.cpp
parent57e092ab8f4212b5fa3e549dcf45e8bd2f3237d9 (diff)
downloadscummvm-rg350-6b5c0626f7318542726bacce75a56b93af59fbe5.tar.gz
scummvm-rg350-6b5c0626f7318542726bacce75a56b93af59fbe5.tar.bz2
scummvm-rg350-6b5c0626f7318542726bacce75a56b93af59fbe5.zip
DIRECTOR: Load palette directly to engine
Diffstat (limited to 'engines/director/director.cpp')
-rw-r--r--engines/director/director.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index 7808d52040..dfb4928b2b 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -64,6 +64,7 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam
DirectorEngine::~DirectorEngine() {
delete _mainArchive;
delete _macBinary;
+ delete[] _currentPalette;
}
Common::Error DirectorEngine::run() {
@@ -85,7 +86,7 @@ Common::Error DirectorEngine::run() {
_mainArchive = new RIFFArchive();
_mainArchive->openFile("bookshelf_example.mmm");
- Score score(*_mainArchive, *_lingo, *_soundManager);
+ Score score(this);
debug(0, "Score name %s", score.getMacName().c_str());
score.loadArchive();
@@ -110,7 +111,7 @@ Common::HashMap<Common::String, Score *> DirectorEngine::loadMMMNames(Common::St
for (Common::FSList::const_iterator i = movies.begin(); i != movies.end(); ++i) {
RIFFArchive *arc = new RIFFArchive();
arc->openFile(i->getPath());
- Score *sc = new Score(*arc, *_lingo, *_soundManager);
+ Score *sc = new Score(this);
nameMap[sc->getMacName()] = sc;
}
}
@@ -266,4 +267,9 @@ Common::String DirectorEngine::readPascalString(Common::SeekableReadStream &stre
return x;
}
+void DirectorEngine::setPalette(byte *palette, uint16 count) {
+ _currentPalette = palette;
+ _currentPaletteLength = count;
+}
+
} // End of namespace Director