From 879c2c04d9c3879f871cfe79f9b25fd23c5184b4 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Thu, 11 Jun 2015 11:38:49 -0400 Subject: Wrote EntityManager --- src/components/ai.h | 73 ----------------------------------------------------- 1 file changed, 73 deletions(-) delete mode 100644 src/components/ai.h (limited to 'src/components/ai.h') diff --git a/src/components/ai.h b/src/components/ai.h deleted file mode 100644 index 840283b..0000000 --- a/src/components/ai.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef AI_H -#define AI_H - -#include -#include -#include -#include - -#include "entity.h" - -class AIAction { - public: - virtual void start(Game& game, Entity& entity) = 0; - virtual void perform(Game& game, Entity& entity, double dt) = 0; - virtual bool isDone() const = 0; -}; - -class AIActionContainer { - public: - void addAction(std::shared_ptr action); - virtual void start(Game& game, Entity& entity); - virtual void perform(Game& game, Entity& entity, double dt); - virtual bool isDone() const; - - private: - std::list> actions; - std::list>::iterator currentAction {end(actions)}; -}; - -class AI : public AIActionContainer { - public: - AI(int chance); - - int getChance() const; - - private: - int chance; -}; - -class AIComponent : public Component { - public: - AI& emplaceAI(int chance); - void tick(Game& game, Entity& entity, double dt); - - private: - int maxChance = 0; - std::list ais; - AI* currentAI = nullptr; -}; - -class MoveAIAction : public AIAction { - public: - enum class Direction { - Left, - Right, - Up, - Down - }; - - MoveAIAction(Direction dir, int len, int speed); - - void start(Game& game, Entity& entity); - void perform(Game& game, Entity& entity, double dt); - bool isDone() const; - - private: - Direction dir; - int len; - int speed; - double remaining; -}; - -#endif /* end of include guard: AI_H */ -- cgit 1.4.1