Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

HomingBomb.h

Go to the documentation of this file.
00001 
00007 #ifndef _HOMINGBOMB_H_
00008 #define _HOMINGBOMB_H_
00009 
00010 #include "IsoBomb.h"
00011 #include "Bomb.h"
00012 #include "Character.h"
00013 #include "AStar.h"
00014 #include "SoundSystem.h"
00015 
00019 class HomingBomb : public Bomb {
00020 
00021 public:
00022 
00026     HomingBomb();
00027 
00038     HomingBomb( const Rect& initPos, int initDir, int size, 
00039                 float delay, float initSpeed, const Character* c );
00040 
00044     virtual ~HomingBomb();
00045 
00052     virtual bool update( float dt );
00053 
00059     virtual void draw( const Point& anchor );
00060 
00061 private:
00062 
00068     void move( float dt );
00069 
00075     bool hasReachedDestination();
00076 
00083     bool getNextDestination();
00084 
00089     void keepInCenter();
00090 
00091 private:
00092 
00096     const Character* target;
00097 
00101     Rect targetPos;
00102 
00106     float speed;
00107 
00111     AStar finder;
00112 
00116     Point destPoint;
00117 
00121     int direction;
00122 
00126     Animation feetAnim;
00127 
00131     bool hasPath;
00132 
00136     bool firstTime;
00137 
00141     SoundToken sound;
00142 };
00143 
00144 #endif

Generated on Tue Mar 4 02:29:25 2003 for SuperIsoBomb by doxygen1.2.18