00001 #ifndef _ACTION_H_ 00002 #define _ACTION_H_ 00003 00004 #include "AnimationTypes.h" 00005 #include "World.h" 00006 00010 class Action 00011 { 00012 public: 00013 Action(World *world); 00014 virtual ~Action(); 00015 00016 string getActionName() { return _actionName; } 00017 virtual void run(); 00018 bool finished() { return _finished; } 00019 00020 protected: 00021 string _actionName; 00022 vector <unsigned int > _animations; 00023 00024 bool _finished; 00025 00026 // hold a pointer to world 00027 World *_world; 00028 }; 00029 00030 #endif