123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #ifndef Spiel_H
- #define Spiel_H
- #include "SpielKlasse.h"
- #include <Array.h>
- #ifdef WIN32
- #include "..\Strukturen.h"
- #include "Statistik\Statistik.h"
- #else
- #include "Strukturen.h"
- #include "Statistik.h"
- #define HINSTANCE void*
- #endif
- class SSKlient; // SpielServer.h
- class SpielServer; // SpielServer.h
- using namespace Framework;
- using namespace Network;
- class Spiel : private Thread
- {
- private:
- SpielServer *ss;
- int id;
- RCArray< SSKlient > *klients;
- SpielerTeamStruktur *sts;
- Array< int > *accounts;
- Array< int > *spielerNummern;
- Array< int > *status;
- Array< int > *prozent;
- Array< bool > *teamAuswahlFertig;
- SpielKlasse *spiel;
- StatistikV *statistik;
- int state;
- int spielerAnzahl;
- int karte;
- HINSTANCE spielDll;
- int ref;
- int findFreeTeam();
- void teamAusgleich();
- public:
- // Konstruktor
- Spiel( int id, SpielServer *ss );
- // Destruktor
- virtual ~Spiel();
- // nicht constant
- void setAccounts( int anzahl, Array< int > *zAccounts );
- void setKlients( int anzahl, RCArray< SSKlient > *zKlients );
- void setKarteId( int karteId );
- bool klientVerbunden( SSKlient *klient );
- bool klientWechseltTeam( int accountId, int team );
- bool chatNachricht( char *nachricht );
- bool klientGetrennt( SSKlient *zKlient );
- bool klientTeamAuswahlFertig( int accountId );
- bool klientBereitZumLaden( int accountId );
- bool klientSpielLadenProzent( int accountId, int prozent );
- bool klientBereitZumSpiel( int accountId );
- bool spielNachricht( int accountId, int len, char *bytes );
- bool statistikNachricht( int accountId, int len, char *bytes );
- virtual void thread();
- // constant
- int getId() const;
- int getSpielerNummer( int accountId ) const;
- // Reference Counting
- Spiel *getThis();
- Spiel *release();
- };
- #endif
|