summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLogicParrot <LogicParrot@users.noreply.github.com>2017-09-01 20:36:07 +0200
committerLogicParrot <LogicParrot@users.noreply.github.com>2017-09-01 20:36:07 +0200
commitc4cbc34be577338ce819b459b12d7b7e3feeea6d (patch)
treeabebb2f45e5bbf371b960e3a568d7f2f976bf63d
parentPathfinder DontCare now a member variable (diff)
downloadcuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar.gz
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar.bz2
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar.lz
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar.xz
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.tar.zst
cuberite-c4cbc34be577338ce819b459b12d7b7e3feeea6d.zip
-rw-r--r--src/Mobs/Behaviors/BehaviorCoward.cpp4
-rw-r--r--src/Mobs/Behaviors/BehaviorCoward.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/Mobs/Behaviors/BehaviorCoward.cpp b/src/Mobs/Behaviors/BehaviorCoward.cpp
index 132735e0f..e1b0d2a25 100644
--- a/src/Mobs/Behaviors/BehaviorCoward.cpp
+++ b/src/Mobs/Behaviors/BehaviorCoward.cpp
@@ -40,6 +40,9 @@ bool cBehaviorCoward::ControlStarting(std::chrono::milliseconds a_Dt, cChunk & a
{
UNUSED(a_Dt);
UNUSED(a_Chunk);
+ m_OldDontCare = m_Parent->GetPathFinder().getDontCare();
+ m_Parent->GetPathFinder().setDontCare(true); // We don't care we're we are going when
+ // wandering. If a path is not found, the pathfinder just modifies our destination.
m_Parent->SetRelativeWalkSpeed(m_Parent->GetRelativeWalkSpeed() * 3);
return true;
}
@@ -50,6 +53,7 @@ bool cBehaviorCoward::ControlEnding(std::chrono::milliseconds a_Dt, cChunk & a_C
UNUSED(a_Dt);
UNUSED(a_Chunk);
m_Parent->SetRelativeWalkSpeed(m_Parent->GetRelativeWalkSpeed() / 3);
+ m_Parent->GetPathFinder().setDontCare(m_OldDontCare);
return true;
}
diff --git a/src/Mobs/Behaviors/BehaviorCoward.h b/src/Mobs/Behaviors/BehaviorCoward.h
index 3232f807b..16d68872c 100644
--- a/src/Mobs/Behaviors/BehaviorCoward.h
+++ b/src/Mobs/Behaviors/BehaviorCoward.h
@@ -19,4 +19,5 @@ public:
private:
cMonster * m_Parent; // Our Parent
cEntity * m_Attacker; // The entity we're running away from
+ bool m_OldDontCare;
};