diff options
Diffstat (limited to 'engines/hdb/map-loader.cpp')
-rw-r--r-- | engines/hdb/map-loader.cpp | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/engines/hdb/map-loader.cpp b/engines/hdb/map-loader.cpp index 85f119771f..ba0917cb7d 100644 --- a/engines/hdb/map-loader.cpp +++ b/engines/hdb/map-loader.cpp @@ -28,8 +28,29 @@ MapLoader::MapLoader() { _mapLoaded = false; } -bool MapLoader::loadMap(Common::SeekableReadStream *stream) { - warning("STUB: MAPLOADER: LOAD MAP"); +bool MapLoader::loadMap(Common::SeekableReadStream *stream, int32 length) { + + if (_mapLoaded) { + return false; + } + + // Load MSM data into mapHeader + mapHeader = new MSMHeader; + stream->read(mapHeader->name, 32); + mapHeader->width = stream->readUint16LE(); + mapHeader->height = stream->readUint16LE(); + mapHeader->background = stream->readUint32LE(); + mapHeader->foreground = stream->readUint32LE(); + mapHeader->iconNum = stream->readUint16LE(); + mapHeader->iconList = stream->readUint32LE(); + mapHeader->infoNum = stream->readUint16LE(); + mapHeader->infoList = stream->readUint32LE(); + + /* + TODO: Set the InMapName in hdb.cpp + */ + + warning("STUB: MAPLOADER: LOAD MAP INCOMPLETE"); return false; } |