#include "Controller.hpp"
+#include "../rand/GaloisLFSR.hpp"
+
+#include <glm/glm.hpp>
+
namespace blank {
: public Controller {
public:
- explicit RandomWalk(Entity &) noexcept;
+ RandomWalk(Entity &, std::uint64_t seed) noexcept;
~RandomWalk();
void Update(int dt) override;
private:
- int time_left;
+ void Change() noexcept;
+
+private:
+ GaloisLFSR random;
+
+ glm::vec3 start_vel;
+ glm::vec3 target_vel;
+
+ glm::vec3 start_rot;
+ glm::vec3 target_rot;
+
+ int switch_time;
+ float lerp_max;
+ float lerp_time;
};