diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-10-21 22:53:37 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-10-21 22:54:27 +0300 |
commit | 9e7d90f2c93e0158e4c6312f8cf77fe9dd1583fd (patch) | |
tree | 89caf6194c2cd01d845147db367c4ce888883995 /src/resources/map/map.cpp | |
parent | 27a943e95196a58103814edf3e4e3cd3a60ed8cd (diff) | |
download | manaplus-9e7d90f2c93e0158e4c6312f8cf77fe9dd1583fd.tar.gz manaplus-9e7d90f2c93e0158e4c6312f8cf77fe9dd1583fd.tar.bz2 manaplus-9e7d90f2c93e0158e4c6312f8cf77fe9dd1583fd.tar.xz manaplus-9e7d90f2c93e0158e4c6312f8cf77fe9dd1583fd.zip |
Add support for layers with conditional tiles.
For enable this mode for layer need add property: TileCondition
and set value to one of BlockMask bits.
Diffstat (limited to 'src/resources/map/map.cpp')
-rw-r--r-- | src/resources/map/map.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/resources/map/map.cpp b/src/resources/map/map.cpp index de6090dc2..d05bb2c23 100644 --- a/src/resources/map/map.cpp +++ b/src/resources/map/map.cpp @@ -1645,3 +1645,17 @@ void Map::setActorsFix(const int x, const int y) if (mFringeLayer) mFringeLayer->setActorsFix(y); } + +void Map::updateConditionLayers() +{ + mRedrawMap = true; + + FOR_EACH (LayersCIter, it, mLayers) + { + MapLayer *const layer = *it; + if (!layer || layer->mTileCondition == -1) + continue; + layer->updateConditionTiles(mMetaTiles, + mWidth, mHeight); + } +} |