123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #ifndef __DROIDOBJECT__
- #define __DROIDOBJECT__
- #include <QVector3D>
- class DroidWorld;
- enum eDROIDOBJECTTYPE { ePLAYER, ePLANET, eASTEROID, eAMMO };
- class DroidObject
- {
- public:
- DroidObject(DroidWorld *dw, eDROIDOBJECTTYPE t );
- ~DroidObject();
- inline QVector3D& getPosition() { return position; }
- inline QVector3D& getDirection() { return direction; }
- inline eDROIDOBJECTTYPE getType() { return type; }
- inline bool isAlive() { return alive; }
- inline float getMass() { return mass; }
- inline float getDrawSize() { return drawSize; }
- inline float getAngle() { return angle; }
- void run( float secsPassed );
- void draw();
- protected:
- float angle;
- float angleInc;
- float drawSize;
- float mass;
- eDROIDOBJECTTYPE type;
- bool alive;
- DroidWorld *world;
- QVector3D position;
- QVector3D direction; // units / sec
- };
- #endif
|