]> git.localhorst.tv Git - blobs.git/blobdiff - src/creature/Steering.hpp
change mode of steering mixing
[blobs.git] / src / creature / Steering.hpp
index d8f2cebfb7ba91fe1e35d736ea1261746d76448d..9af62b9c7573aaf78c824b8c8a0c0ec9d20a10fa 100644 (file)
@@ -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;