Bestenliste.h 2.9 KB

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