Bestenliste.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. #ifndef Bestenliste_H
  2. #define Bestenliste_H
  3. #include <TextFeld.h>
  4. #include <Array.h>
  5. using namespace Framework;
  6. class Spieler; // Spieler.h
  7. class Team; // Team.h
  8. class BLSpieler
  9. {
  10. private:
  11. int sNum;
  12. LRahmen *rahmen;
  13. TextFeld *name;
  14. TextFeld *punkte;
  15. TextFeld *kills;
  16. TextFeld *tode;
  17. TextFeld *schadenGemacht;
  18. TextFeld *schadenGenommen;
  19. TextFeld *präzision;
  20. int ref;
  21. public:
  22. // Konstruktor
  23. BLSpieler( int sNum, Schrift *zS );
  24. // Destruktor
  25. ~BLSpieler();
  26. // nicht constant
  27. bool update( Spieler *zSpieler );
  28. void render( int y, Bild &zRObj );
  29. // constant
  30. int getSpielerNummer() const;
  31. int getPunkte() const;
  32. // Reference Counting
  33. BLSpieler *getThis();
  34. BLSpieler *release();
  35. };
  36. class BLTeam
  37. {
  38. private:
  39. int teamId;
  40. int spielerAnzahl;
  41. Schrift *schrift;
  42. LRahmen *rahmen;
  43. RCArray< BLSpieler > *spieler;
  44. TextFeld *name;
  45. TextFeld *punkte;
  46. int ref;
  47. public:
  48. // Konstruktor
  49. BLTeam( int id, Schrift *s );
  50. // Destruktor
  51. ~BLTeam();
  52. // nicht constant
  53. bool addSpieler( Spieler *zSpieler );
  54. void update( Team *zTeam );
  55. bool updateSpieler( Spieler *zSpieler );
  56. void render( int y, Bild &zRObj );
  57. // constant
  58. int getSpielerAnzahl() const;
  59. int getPunkte() const;
  60. int getHeight() const;
  61. // Reference Counting
  62. BLTeam *getThis();
  63. BLTeam *release();
  64. };
  65. class Bestenliste
  66. {
  67. private:
  68. LRahmen *rahmen;
  69. RCArray< BLTeam > *teams;
  70. TextFeld *name;
  71. TextFeld *punkte;
  72. TextFeld *kills;
  73. TextFeld *tode;
  74. TextFeld *schadenGemacht;
  75. TextFeld *schadenGenommen;
  76. TextFeld *präzision;
  77. VScrollBar *scroll;
  78. Schrift *schrift;
  79. bool sichtbar;
  80. int teamAnzahl;
  81. int ref;
  82. public:
  83. // Konstruktor
  84. Bestenliste( Schrift *s );
  85. // Destruktor
  86. ~Bestenliste();
  87. // nicht constant
  88. void setTeamAnzahl( int anz );
  89. void addSpieler( Spieler *zSpieler );
  90. void updateSpieler( Spieler *zSpieler );
  91. void updateTeam( Team *zTeam );
  92. void doTastaturEreignis( TastaturEreignis &te );
  93. void doMausEreignis( MausEreignis &me );
  94. void render( Bild &zRObj );
  95. // constant
  96. int getTeamAnzahl() const;
  97. bool teamExistiert( int team ) const;
  98. int getTeamPunkte( int team ) const;
  99. // Reference Counting
  100. Bestenliste *getThis();
  101. Bestenliste *release();
  102. };
  103. #endif