Ship.h 894 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef Ship_H
  2. #define Ship_H
  3. #include <Model2D.h>
  4. #include <Datei.h>
  5. using namespace Framework;
  6. class Schuss;
  7. class Asteroid;
  8. class Ship
  9. {
  10. private:
  11. Model2D *ship;
  12. Vec2< float > pos;
  13. Vec2< float > speed;
  14. Vertex stL;
  15. Vertex kL;
  16. Vertex stR;
  17. Vertex kR;
  18. Vertex stM;
  19. Vertex kM;
  20. float rSpeed;
  21. int ref;
  22. public:
  23. // Konstruktor
  24. Ship( Model2DData *data, Textur2D *zFlammenM, Textur2D *zFlammenL, Textur2D *zFlammenR, Bild *textur, Vec2< float > p, Vec2< float > s, float r );
  25. // Destruktor
  26. ~Ship();
  27. // nicht constant
  28. bool tick( double zeit, int breite, int höhe, char tastenStände );
  29. void render( Bild &zRObj );
  30. // constant
  31. void save( Datei *zD ) const;
  32. Schuss *getSchuss() const;
  33. bool istTod( Asteroid *zA ) const;
  34. Punkt getKamPos( int breite, int höhe ) const;
  35. Punkt getPos() const;
  36. // Reference Counting
  37. Ship *getThis();
  38. Ship *release();
  39. };
  40. #endif