VideoSpieler.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #ifndef VideoSpieler_H
  2. #define VideoSpieler_H
  3. #include "../Kamera/VideoKamera.h"
  4. #include "../VideoDaten/VideoDaten.h"
  5. #include <Text.h>
  6. #define TICK 0.03333333
  7. using namespace Framework;
  8. struct VideoSpielerRundeDaten
  9. {
  10. double xPos;
  11. double yPos;
  12. double xSpeed;
  13. double ySpeed;
  14. double kurve;
  15. int radius;
  16. bool amLeben;
  17. bool lKurve;
  18. bool rKurve;
  19. bool linieUnterbrochen;
  20. double todesZeit;
  21. double spielZeit;
  22. int renderVorTod;
  23. };
  24. class VideoSpieler : public virtual ReferenceCounter
  25. {
  26. private:
  27. int spielerNummer;
  28. int team;
  29. int spielerFarbe;
  30. int teamFarbe;
  31. Array< VideoSpielerRundeDaten * > *daten;
  32. int runde;
  33. Text *name;
  34. Text *teamName;
  35. Rahmen *teamRahmen;
  36. int gewonneneRunden;
  37. int linienLänge;
  38. double zeitAmLeben;
  39. double zeitTod;
  40. int kills;
  41. int tode;
  42. int killFarbe;
  43. Array< int > rLinienLänge;
  44. Array< int > rKills;
  45. Array< int > rTodesZeit;
  46. public:
  47. // Konstruktor
  48. VideoSpieler( SpielerVideoDaten *vDaten );
  49. // Destruktor
  50. ~VideoSpieler();
  51. // nicht constant
  52. void addKill();
  53. void neuRunde( bool vorwärts, RundeSpielerVideoDaten *vDaten, bool amLeben );
  54. void setLinksKurve( bool lKurve );
  55. void setRechtsKurve( bool rKurve );
  56. void setLinienUnterbrechung( bool unterbrechung );
  57. void prozessKurve( double zeit );
  58. void tick( Bild *zMap, double zeit );
  59. void render( VideoKamera *zKam, Bild &zRObj );
  60. // constant
  61. double getX() const;
  62. double getY() const;
  63. int getTeam() const;
  64. int getTeamFarbe() const;
  65. int getFarbe() const;
  66. int getSpielerNummer() const;
  67. bool istAmLeben() const;
  68. Text *getName() const;
  69. Text *zName() const;
  70. Text *getTeamName() const;
  71. Text *zTeamName() const;
  72. bool istMausIn( int mx, int my ) const;
  73. int getGewonneneRunden() const;
  74. int getLinienLänge() const;
  75. int getZeitAmLeben() const;
  76. int getZeitTod() const;
  77. int getKills() const;
  78. int getTode() const;
  79. int getKillFarbe() const;
  80. int getLinienLänge( int r ) const;
  81. int getKills( int r ) const;
  82. int getTodesZeit( int r ) const;
  83. };
  84. #endif