aboutsummaryrefslogtreecommitdiff
path: root/engines/xeen/map.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2015-01-13 08:51:04 -0500
committerPaul Gilbert2015-01-13 08:51:04 -0500
commit1a0a597ff8c02d103d56968bfd18de1908e219d6 (patch)
treecac19db2375e42d211a7e4da5b0ce86ddb36913b /engines/xeen/map.cpp
parent747ca9eb2ff87b1205d41fcd0cf65a016ade8e0d (diff)
downloadscummvm-rg350-1a0a597ff8c02d103d56968bfd18de1908e219d6.tar.gz
scummvm-rg350-1a0a597ff8c02d103d56968bfd18de1908e219d6.tar.bz2
scummvm-rg350-1a0a597ff8c02d103d56968bfd18de1908e219d6.zip
XEEN: Add indoor terrain loading and indoor list sprite setting to Map::load
Diffstat (limited to 'engines/xeen/map.cpp')
-rw-r--r--engines/xeen/map.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/engines/xeen/map.cpp b/engines/xeen/map.cpp
index f9a687b6ee..07cb0d600d 100644
--- a/engines/xeen/map.cpp
+++ b/engines/xeen/map.cpp
@@ -1050,6 +1050,40 @@ void Map::load(int mapId) {
filename = Common::String::format("%03d.pic", _mobData._wallItems[i]._spriteId);
_mobData._wallItemSprites[i]._sprites.load(filename);
}
+
+ // Handle loading miscellaneous sprites for the map
+ if (_isOutdoors) {
+ warning("TODO");
+ } else {
+ warning("TODO"); // Sound loading
+
+ _skySprites.load(isDarkCc ? "sky.sky" : "night.sky");
+ _mazeSkySprites.load(Common::String::format("%s.sky",
+ TERRAIN_TYPES[_mazeData[0]._wallKind]));
+ _groundSprites.load(Common::String::format("%s.gnd",
+ TERRAIN_TYPES[_mazeData[0]._wallKind]));
+ _tileSprites.load(Common::String::format("%s.til",
+ TERRAIN_TYPES[_mazeData[0]._wallKind]));
+
+ for (int i = 0; i < TOTAL_SURFACES; ++i) {
+ _surfaceSprites[i].clear();
+
+ if (_mazeData[0]._surfaceTypes[i] != 0 || i == 4)
+ _surfaceSprites[i].load(OUTDOOR_SURFACES[i]);
+ }
+
+ _wallSprites._wal.clear();
+ Common::String fwlName = Common::String::format("%s.til",
+ TERRAIN_TYPES[_mazeData[0]._wallKind]);
+ _wallSprites._fwl1.load(fwlName);
+ _wallSprites._fwl2.load(fwlName);
+ _wallSprites._fwl3.load(fwlName);
+ _wallSprites._fwl4.load(fwlName);
+ _wallSprites._swl.load(Common::String::format("s%s.swl",
+ TERRAIN_TYPES[_mazeData[0]._wallKind]));
+
+
+ }
}
int Map::mazeLookup(const Common::Point &pt, int directionLayerIndex) {