Fish.h

gehe zur Dokumentation dieser Datei
00001 #ifndef FISH_H_
00002 #define FISH_H_
00003 #include <list>
00004 #include "Object.h"
00005 #include "Children.h"
00006 #include "Animation.h"
00007 #include "Translation.h"
00008 #include "Rotation.h"
00009 #include "Polygon.h"
00010 #include "Sphere.h"
00011 #include "Vector.h"
00012 #include "config.h"
00013 using std::list;
00014 
00019 class Fish : public Object {
00020 protected:
00025         struct Data {
00026                 GLfloat vertex[3];
00027                 GLfloat normal[3];
00028         };
00029 
00033         Vector* position;
00034 
00038         Vector* destination;
00039 
00043         Vector* lastPosition;
00044 
00048         int lastAngle;
00049 
00053         int angle;
00054 
00058         static list<Fish*> fishList;
00059 
00063         bool friendly;
00064 
00068         Transform* tail;
00069 
00073         Transform* leftFin;
00074 
00078         Transform* rightFin;
00079 
00083         Children* fishParts;
00084 
00088         static int unfriendlies;
00089 
00093         static struct Data data[35];
00094 
00098         void constructParts();
00099 
00103         virtual bool move();
00104 
00105 public:
00109         static bool moveAll();
00110 
00114         static Fish* getFirst();
00115 
00119         Vector* getPosition();
00120 
00124         Fish(Material* mat, Text* name, Vector* position, Vector* direction);
00125 
00129         bool getFriendly();
00130 
00134         virtual void draw();
00135 
00139         virtual ~Fish();
00140 };
00141 
00142 #endif /*FISH_H_*/

Erzeugt am Sun Jun 10 13:47:51 2007 für Fishtank von  doxygen 1.5.2