Bestenliste.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  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 BLSpieler
  8. {
  9. private:
  10. int sNum;
  11. int farbe;
  12. int p;
  13. int nP;
  14. LRahmen *rahmen;
  15. TextFeld *name;
  16. TextFeld *punkte;
  17. TextFeld *neuPunkte;
  18. TextFeld *status;
  19. int ref;
  20. public:
  21. // Konstruktor
  22. BLSpieler( int sNum, int farbe, Schrift *zS );
  23. // Destruktor
  24. ~BLSpieler();
  25. // nicht constant
  26. bool updateStatus( Spieler *zSpieler );
  27. void setPunkte( int p );
  28. void addPunkt( bool plus );
  29. void updatePunkte();
  30. void render( int y, Bild &zRObj );
  31. // constant
  32. int getSpielerNummer() const;
  33. int getPunkte() const;
  34. // Reference Counting
  35. BLSpieler *getThis();
  36. BLSpieler *release();
  37. };
  38. class BLTeam
  39. {
  40. private:
  41. int teamId;
  42. int spielerAnzahl;
  43. int p;
  44. int mP;
  45. int nP;
  46. int farbe;
  47. Schrift *schrift;
  48. LRahmen *rahmen;
  49. RCArray< BLSpieler > *spieler;
  50. TextFeld *name;
  51. TextFeld *punkte;
  52. TextFeld *neuPunkte;
  53. TextFeld *status;
  54. int ref;
  55. public:
  56. // Konstruktor
  57. BLTeam( int id, int farbe, Schrift *s );
  58. // Destruktor
  59. ~BLTeam();
  60. // nicht constant
  61. bool addSpieler( Spieler *zSpieler );
  62. void setName( char *name );
  63. bool updateSpielerStatus( Spieler *zSpieler );
  64. void setStatus( const char *txt, int f );
  65. void setPunkte( int p );
  66. void setMaxPunkte( int mP );
  67. bool setSpielerPunkte( int sNum, int p );
  68. void addPunkt( bool plus );
  69. bool addPunkt( int sNum, bool plus );
  70. void updatePunkte();
  71. void render( int y, Bild &zRObj );
  72. // constant
  73. int getSpielerAnzahl() const;
  74. int getPunkte() const;
  75. int getHeight() const;
  76. // Reference Counting
  77. BLTeam *getThis();
  78. BLTeam *release();
  79. };
  80. class Bestenliste
  81. {
  82. private:
  83. LRahmen *rahmen;
  84. RCArray< BLTeam > *teams;
  85. TextFeld *name;
  86. TextFeld *punkte;
  87. TextFeld *neuPunkte;
  88. TextFeld *status;
  89. VScrollBar *scroll;
  90. Schrift *schrift;
  91. bool update;
  92. int teamAnzahl;
  93. int ref;
  94. public:
  95. // Konstruktor
  96. Bestenliste( Schrift *s );
  97. // Destruktor
  98. ~Bestenliste();
  99. // nicht constant
  100. void setTeamAnzahl( int anz );
  101. void addSpieler( Spieler *zSpieler );
  102. void updateSpielerStatus( Spieler *zSpieler );
  103. void setTeamName( int team, char *name );
  104. void setTeamStatus( int team, const char *txt, int f );
  105. void setTeamPunkte( int teamId, int punkte );
  106. void setTeamMaxPunkte( int teamId, int mPunkte );
  107. void setSpielerPunkte( int teamNum, int sNum, int punkte );
  108. void addPunkt( int tNum, bool plus );
  109. void addPunkt( int tNum, int sNum, bool plus );
  110. void updatePunkte();
  111. void doMausEreignis( MausEreignis &me );
  112. void render( Bild &zRObj );
  113. // constant
  114. int getTeamAnzahl() const;
  115. bool teamExistiert( int team ) const;
  116. int getTeamPunkte( int team ) const;
  117. // Reference Counting
  118. Bestenliste *getThis();
  119. Bestenliste *release();
  120. };
  121. #endif