summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/being/being.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/being/being.cpp b/src/being/being.cpp
index df52f7793..bfd9083a0 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -1714,7 +1714,15 @@ void Being::nextTile() restrict2
}
if (mX != pos.x || mY != pos.y)
+ {
mOldHeight = mMap->getHeightOffset(mX, mY);
+ if (mMap &&
+ mReachable == Reachable::REACH_NO &&
+ mMap->getBlockMask(mX, mY) != mMap->getBlockMask(pos.x, pos.y))
+ {
+ mReachable = Reachable::REACH_UNKNOWN;
+ }
+ }
mX = pos.x;
mY = pos.y;
const uint8_t height = mMap->getHeightOffset(mX, mY);