X-Git-Url: http://git.localhorst.tv/?p=blobs.git;a=blobdiff_plain;f=src%2Fcreature%2Fgoal.cpp;h=95a3426d986419b8e0e1459fca9cc5d442c083ca;hp=d72c3015be1ddbfddcc2d4936d7404154bf9828d;hb=da5e275f10252813b4de3af5e58f0c7975468962;hpb=806a118a907a5391c135983e7d57e27def521e5b diff --git a/src/creature/goal.cpp b/src/creature/goal.cpp index d72c301..95a3426 100644 --- a/src/creature/goal.cpp +++ b/src/creature/goal.cpp @@ -105,7 +105,8 @@ LocateResourceGoal::LocateResourceGoal(Creature &c, int res) , target_pos(0.0) , target_srf(0) , target_tile(0) -, searching(false) { +, searching(false) +, reevaluate(0.0) { } LocateResourceGoal::~LocateResourceGoal() noexcept { @@ -116,14 +117,18 @@ std::string LocateResourceGoal::Describe() const { } void LocateResourceGoal::Enable() { - LocateResource(); + } void LocateResourceGoal::Tick(double dt) { + reevaluate -= dt; } void LocateResourceGoal::Action() { - if (!found) { + if (reevaluate < 0.0) { + LocateResource(); + reevaluate = 3.0; + } else if (!found) { if (!searching) { LocateResource(); } else {