Geschoss.h 975 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #pragma once
  2. #include "GameObject.h"
  3. #include "Spieler.h"
  4. enum GeschossTyp
  5. {
  6. GESCHOSS_PFEIL,
  7. GESCHOSS_KUGEL,
  8. GESCHOSS_DRACHENAUGE,
  9. GESCHOSS_FEUERBALL
  10. };
  11. class Geschoss : public GameObject
  12. {
  13. private:
  14. float speed;
  15. Richtung richtung;
  16. Spieler *besitzer;
  17. GeschossTyp typ;
  18. int tunnelBenutzt;
  19. int umgelenkt;
  20. int geschosseGetroffen;
  21. int id;
  22. public:
  23. Geschoss( int id, float speed, GeschossTyp typ, Richtung r, int x, int y, Spieler *besitzer );
  24. ~Geschoss();
  25. void invertDirection();
  26. void setRichtung( Richtung r );
  27. void tick( double zeit );
  28. GeschossTyp getTyp() const;
  29. Spieler *zBesitzer() const;
  30. Spieler *getBesitzer() const;
  31. };
  32. // size: 150x150
  33. class FeuerballTreffer : public GameObject
  34. {
  35. private:
  36. int id;
  37. Spieler *besitzer;
  38. float timeLeft;
  39. public:
  40. FeuerballTreffer( int id, int x, int y, Spieler *besitzer, int maxZeit );
  41. ~FeuerballTreffer();
  42. void tick( double zeit );
  43. };