#ifndef AIMOVEMENTSYSTEM_H #define AIMOVEMENTSYSTEM_H #include "Game/Components/TransformComponent.h" #include "Game/Systems/Pathfinding/pathfinder.h" #include "Game/Systems/system.h" class AIMovementSystem : public System { public: AIMovementSystem(std::map>& dynamic_gameobjects, std::map>& rigid_gameobjects); void draw() override; void update(double deltaTime) override; void scrollEvent(double distance) override; void mousePosEvent(double xpos, double ypos) override; private: float gravitySimulation(float &initial_v, double deltaTime, float snapshot_time, float gravity); TransformComponent* getTransform(std::shared_ptr &go); std::map>& m_dynamic_gameobjects; std::map>& m_rigid_gameobjects; float horiz_velocity = .005f; float snapshot_time = 0.f; std::vector m_path; //std::shared_ptr m_pathfinder; }; #endif // AIMOVEMENTSYSTEM_H