X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fcreature%2FSteering.hpp;h=9af62b9c7573aaf78c824b8c8a0c0ec9d20a10fa;hb=d921cba26f21e4a75b22f5e9d9be988707bf6a8f;hp=d8f2cebfb7ba91fe1e35d736ea1261746d76448d;hpb=b03c2f42ba325ab909b159a4bc8e7568defdc4c5;p=blobs.git diff --git a/src/creature/Steering.hpp b/src/creature/Steering.hpp index d8f2ceb..9af62b9 100644 --- a/src/creature/Steering.hpp +++ b/src/creature/Steering.hpp @@ -21,23 +21,24 @@ public: void Haste(double h) noexcept { haste = h; } double Haste() const noexcept { return haste; } - void MaxAcceleration(double a) noexcept { max_accel = a; } - double MaxAcceleration() const noexcept { return max_accel; } + void MaxForce(double f) noexcept { max_force = f; } + double MaxForce() const noexcept { return max_force; } void MaxSpeed(double s) noexcept { max_speed = s; } double MaxSpeed() const noexcept { return max_speed; } public: + void Off() noexcept; void Separate(double min_distance, double max_lookaround) noexcept; void DontSeparate() noexcept; + void ResumeSeparate() noexcept; void Halt() noexcept; void Pass(const glm::dvec3 &) noexcept; void GoTo(const glm::dvec3 &) noexcept; - glm::dvec3 Acceleration(const Situation::State &) const noexcept; + glm::dvec3 Force(const Situation::State &) const noexcept; private: - bool SumForce(glm::dvec3 &out, const glm::dvec3 &in, double max) const noexcept; glm::dvec3 TargetVelocity(const Situation::State &, const glm::dvec3 &, double acc) const noexcept; private: @@ -45,7 +46,7 @@ private: glm::dvec3 target; double haste; - double max_accel; + double max_force; double max_speed; double min_dist; double max_look;