Don't allow setting a new return position if there already is one and we haven't reached it yet

actorid
scrawl 11 years ago
parent 1fd7a07b5e
commit 28ef236f0e

@ -341,6 +341,8 @@ namespace MWMechanics
mChooseAction = false;
mIdleNow = false;
if (!mPathFinder.isPathConstructed())
{
Ogre::Vector3 destNodePos = mReturnPosition;
ESM::Pathgrid::Point dest;
@ -363,6 +365,7 @@ namespace MWMechanics
mWalking = true;
}
}
}
if(mChooseAction)
{
@ -529,6 +532,7 @@ namespace MWMechanics
mMoveNow = false;
mWalking = false;
mChooseAction = true;
mHasReturnPosition = false;
}
return false; // AiWander package not yet completed
@ -615,7 +619,11 @@ namespace MWMechanics
void AiWander::setReturnPosition(const Ogre::Vector3& position)
{
mHasReturnPosition = true; mReturnPosition = position;
if (!mHasReturnPosition)
{
mHasReturnPosition = true;
mReturnPosition = position;
}
}
void AiWander::getRandomIdle()

Loading…
Cancel
Save