aboutsummaryrefslogtreecommitdiff
path: root/engines/hdb/map-loader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/hdb/map-loader.cpp')
-rw-r--r--engines/hdb/map-loader.cpp25
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;
}