summaryrefslogtreecommitdiff
path: root/src/being
diff options
context:
space:
mode:
Diffstat (limited to 'src/being')
-rw-r--r--src/being/being.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/being/being.cpp b/src/being/being.cpp
index 2da3c644f..90c5cb316 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -1630,10 +1630,17 @@ void Being::petLogic()
int dstX = dstX0;
int dstY = dstY0;
const int followDist = mInfo->getStartFollowDist();
+ const int warpDist = mInfo->getWarpDist();
const int dist = mInfo->getFollowDist();
const int divX = abs(dstX - mX);
const int divY = abs(dstY - mY);
- if (divX > followDist || divY > followDist)
+
+ if (divX >= warpDist || divY >= warpDist)
+ {
+ setAction(Being::STAND, 0);
+ setTileCoords(dstX0, dstY0);
+ }
+ else if (divX > followDist || divY > followDist)
{
if (divX > followDist)
{