Spiel.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #ifndef Spiel_H
  2. #define Spiel_H
  3. #include "SpielKlasse.h"
  4. #include <Datei.h>
  5. #include "Strukturen.h"
  6. #include "Spieler.h"
  7. #include "Karte.h"
  8. #include "Bestenliste.h"
  9. class Statistik;
  10. class StatistikV;
  11. class Spiel : public SpielKlasse
  12. {
  13. private:
  14. Statistik *stat;
  15. Bestenliste *score;
  16. Array< int > *teams;
  17. int teamAnzahl;
  18. RCArray< Spieler > *spieler;
  19. SSDatenbankV *psqldb;
  20. int spielId;
  21. int karteId;
  22. int spielerAnzahl;
  23. Karte *karte;
  24. CRITICAL_SECTION cs;
  25. SpielerTeamStruktur *sts;
  26. Datei *log;
  27. bool isRunning;
  28. int rundenAnzahl;
  29. double spielZeit;
  30. bool ende;
  31. Text mapPfad;
  32. int ref;
  33. public:
  34. // Konstruktor
  35. Spiel();
  36. // Destruktor
  37. ~Spiel();
  38. // nicht constant
  39. virtual void setPSQLK( SSDatenbankV *psqldb );
  40. virtual void setSpielId( int id );
  41. virtual void setKarteId( int karteId );
  42. virtual void setTempPfad( char *pfad );
  43. virtual void setAccounts( int anzahl, Array< int > *zAccounts );
  44. virtual void setKlients( int anzahl, RCArray< SSKlientV > *zKlients );
  45. virtual void setSpielerNummern( int anzahl, Array< int > *spielerNummern );
  46. virtual void klientOffline( int accountId );
  47. virtual void klientOnline( int accountId, SSKlientV *zKlient );
  48. virtual void nachricht( int accountId, int len, char *bytes );
  49. void tick( double zeit );
  50. virtual void run();
  51. // constant
  52. virtual StatistikV *getStatistik() const;
  53. // Reference Counting
  54. virtual SpielKlasse *getThis();
  55. virtual SpielKlasse *release();
  56. };
  57. #endif