]> git.localhorst.tv Git - blank.git/blobdiff - src/ai/Spawner.hpp
linear model instance state
[blank.git] / src / ai / Spawner.hpp
index d0c6f97c4695cbdf9db26202c8e8b8be4bf176fb..4b20dd4589ccfa07ba2a591ea7a144fae43c856a 100644 (file)
@@ -2,7 +2,6 @@
 #define BLANK_AI_SPAWNER_HPP_
 
 #include "../app/IntervalTimer.hpp"
-#include "../rand/GaloisLFSR.hpp"
 
 #include <vector>
 #include <glm/glm.hpp>
 
 namespace blank {
 
-class CompositeModel;
 class Controller;
 class Entity;
+class GaloisLFSR;
+class Model;
 class Skeletons;
 class World;
 
 class Spawner {
 
 public:
-       Spawner(World &, Skeletons &, std::uint64_t seed);
+       Spawner(World &, Skeletons &, GaloisLFSR &);
        ~Spawner();
 
        void LimitSkeletons(std::size_t begin, std::size_t end);
@@ -31,14 +31,14 @@ private:
        void TrySpawn();
        void Spawn(Entity &reference, const glm::ivec3 &, const glm::vec3 &);
 
-       CompositeModel &RandomSkeleton() noexcept;
+       Model &RandomSkeleton() noexcept;
 
 private:
        World &world;
        Skeletons &skeletons;
        std::vector<Controller *> controllers;
 
-       GaloisLFSR random;
+       GaloisLFSR &random;
 
        IntervalTimer timer;
        float despawn_range;