#ifndef Bestenliste_H #define Bestenliste_H #include #include #include #include using namespace Framework; class Spieler; // Spieler.h class Team; // Team.h class BLSpieler : public virtual ReferenceCounter { private: int sNum; LRahmen *rahmen; TextFeld *name; TextFeld *punkte; TextFeld *kills; TextFeld *tode; TextFeld *schadenGemacht; TextFeld *schadenGenommen; TextFeld *präzision; public: // Konstruktor BLSpieler( int sNum, UIInit &uiFactory ); // Destruktor ~BLSpieler(); // nicht constant bool update( Spieler *zSpieler ); void render( int y, Bild &zRObj ); // constant int getSpielerNummer() const; int getPunkte() const; }; class BLTeam : public virtual ReferenceCounter { private: int teamId; int spielerAnzahl; UIInit uiFactory; LRahmen *rahmen; RCArray< BLSpieler > *spieler; TextFeld *name; TextFeld *punkte; public: // Konstruktor BLTeam( int id, UIInit &uiFactory ); // Destruktor ~BLTeam(); // nicht constant bool addSpieler( Spieler *zSpieler ); void update( Team *zTeam ); bool updateSpieler( Spieler *zSpieler ); void render( int y, Bild &zRObj ); // constant int getSpielerAnzahl() const; int getPunkte() const; int getHeight() const; }; class Bestenliste : public virtual ReferenceCounter { private: LRahmen *rahmen; RCArray< BLTeam > *teams; TextFeld *name; TextFeld *punkte; TextFeld *kills; TextFeld *tode; TextFeld *schadenGemacht; TextFeld *schadenGenommen; TextFeld *präzision; VScrollBar *scroll; UIInit uiFactory; bool sichtbar; int teamAnzahl; public: // Konstruktor Bestenliste( UIInit &uiFactory ); // Destruktor ~Bestenliste(); // nicht constant void setTeamAnzahl( int anz ); void addSpieler( Spieler *zSpieler ); void updateSpieler( Spieler *zSpieler ); void updateTeam( Team *zTeam ); void doTastaturEreignis( TastaturEreignis &te ); void doPublicMausEreignis( MausEreignis &me ); void render( Bild &zRObj ); // constant int getTeamAnzahl() const; bool teamExistiert( int team ) const; int getTeamPunkte( int team ) const; }; #endif