Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
patrolwaypointstask.h
1 #pragma once
2 
3 #include "ai/aigrouptask.h"
4 
5 #include <list>
6 
7 #include "glm/glm.hpp"
8 
9 
10 class Squad;
11 class FlyToTask;
12 
14 public:
15  PatrolWaypointsTask(Squad& squad);
16  PatrolWaypointsTask(Squad& squad, const std::list<glm::vec3>& points);
17 
18  void appendWaypoint(const glm::vec3& point);
19 
20  virtual void update(float deltaSec) override;
21 
22  const glm::vec3* currentTargetPoint();
23 
24 protected:
25  virtual void onNewLeader(Ship* leader) override;
26  virtual void onMemberJoin(Ship* member) override;
27 
28  std::shared_ptr<FlyToTask> m_leaderFlyTask;
29  std::list<glm::vec3> m_points;
30  std::list<glm::vec3>::iterator m_currentPoint;
31 };
32 
Definition: aigrouptask.h:16
Definition: patrolwaypointstask.h:13
Definition: flytotask.h:12
Definition: squad.h:16
Definition: ship.h:23