From 8571843f1405e676142e7bb289f9879d10a888ed Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 12 Mar 2013 13:32:49 +0300 Subject: add walkmaps support. Fast detecting between two targets is they in same walkable area. --- src/map.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/map.cpp') diff --git a/src/map.cpp b/src/map.cpp index db2a46ef8..8ce96bdc5 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -30,6 +30,7 @@ #include "particle.h" #include "simpleanimation.h" #include "tileset.h" +#include "walklayer.h" #include "resources/ambientlayer.h" #include "resources/image.h" @@ -126,6 +127,7 @@ Map::Map(const int width, const int height, mTileWidth(tileWidth), mTileHeight(tileHeight), mMaxTileHeight(height), mMetaTiles(new MetaTile[mWidth * mHeight]), + mWalkLayer(nullptr), mHasWarps(false), mDebugFlags(MAP_NORMAL), mOnClosedList(1), mOnOpenList(2), @@ -187,6 +189,11 @@ Map::~Map() for (int i = 0; i < NB_BLOCKTYPES; i++) delete [] mOccupation[i]; + if (mWalkLayer) + { + mWalkLayer->decRef(); + mWalkLayer = nullptr; + } mFringeLayer = nullptr; delete_all(mLayers); delete_all(mTilesets); -- cgit v1.2.3-70-g09d2