diff options
author | Sven Hesse | 2007-07-31 01:43:32 +0000 |
---|---|---|
committer | Sven Hesse | 2007-07-31 01:43:32 +0000 |
commit | 34292a6b586a44aa8fb9361369dddf854ce999c6 (patch) | |
tree | 4ec8a73772f15db9db8c6157d508aa3a283dbe96 /engines/gob/init.cpp | |
parent | 32d00708687d10152ebc84df86b84aaad2059478 (diff) | |
download | scummvm-rg350-34292a6b586a44aa8fb9361369dddf854ce999c6.tar.gz scummvm-rg350-34292a6b586a44aa8fb9361369dddf854ce999c6.tar.bz2 scummvm-rg350-34292a6b586a44aa8fb9361369dddf854ce999c6.zip |
Minor DataIO-cleanup
svn-id: r28349
Diffstat (limited to 'engines/gob/init.cpp')
-rw-r--r-- | engines/gob/init.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/engines/gob/init.cpp b/engines/gob/init.cpp index 85f95fb261..4712a19a5d 100644 --- a/engines/gob/init.cpp +++ b/engines/gob/init.cpp @@ -147,10 +147,12 @@ void Init::initGame(const char *totName) { handle = _vm->_dataIO->openData(buffer); if (handle >= 0) { - // Get variables count - _vm->_dataIO->seekData(handle, 0x2C, SEEK_SET); - varsCount = _vm->_dataIO->readUint16(handle); - _vm->_dataIO->closeData(handle); + DataStream *stream = _vm->_dataIO->openAsStream(handle, true); + + stream->seek(0x2C); + varsCount = stream->readUint16LE(); + + delete stream; _vm->_global->_inter_variables = new byte[varsCount * 4]; _vm->_global->_inter_variablesSizes = new byte[varsCount * 4]; @@ -178,9 +180,12 @@ void Init::initGame(const char *totName) { _vm->_draw->closeScreen(); } else if ((imdHandle = _vm->_dataIO->openData("coktel.clt")) >= 0) { _vm->_draw->initScreen(); + + stream = _vm->_dataIO->openAsStream(imdHandle, true); _vm->_util->clearPalette(); - _vm->_dataIO->readData(imdHandle, (byte *) _vm->_draw->_vgaPalette, 768); - _vm->_dataIO->closeData(imdHandle); + stream->read((byte *) _vm->_draw->_vgaPalette, 768); + delete stream; + imdHandle = _vm->_dataIO->openData("coktel.ims"); if (imdHandle >= 0) { byte *sprBuf; |