123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562 |
- #ifndef KSGKlient_H
- #define KSGKlient_H
- #include "KSGKlientV.h"
- #include "../Strukturen/Strukturen.h"
- #include <Bild.h>
- #include <GSLSoundV.h>
- #include "Critical.h"
- using namespace Network;
- using namespace Framework;
- #define LOCK( cs ) EnterCriticalSection( cs )
- #define UNLOCK( cs ) LeaveCriticalSection( cs )
- struct AHDaten;
- class LoginKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- char *fehler;
- bool brauchKick;
- int klientId;
- int accountId;
- int ref;
- Critical cs;
- public:
-
- LoginKlient();
-
- ~LoginKlient();
-
- bool verbinde();
- int login( const char *name, const char *pass );
- bool kick( const char *geheim );
- bool logout();
- bool keepAlive();
- bool trenne();
- void setLetzterFehler( char *err );
-
- bool istVerbunden() const;
- int getAccountId() const;
- char *getLetzterFehler() const;
-
- LoginKlient *getThis();
- LoginKlient *release();
- };
- class RegisterKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- char *fehler;
- bool brauchSchlüssel;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- RegisterKlient();
-
- ~RegisterKlient();
-
- bool verbinde();
- bool accountErstellen( const char *name, const char *pass, const char *geheim, const char *eMail, unsigned short jahr, char monat, char tag );
- bool accountLöschen( const char *name, const char *pass, const char *geheim );
- int accountBestätigen( const char *name, const char *pass );
- bool bestätigen( const char *schlüssel );
- void eMailErneutSenden();
- void später();
- void abbrechen();
- bool passwortÄndern( const char *name, const char *pass, const char *geheim, const char *nPass );
- bool eMailÄndern( const char *name, const char *pass, const char *geheim, const char *nEMail );
- bool geheimnisÄndern( const char *name, const char *pass, const char *geheim, const char *nGeheim );
- bool nameVergessen( const char *pass, const char *geheim );
- bool passwortVergessen( const char *name, const char *geheim );
- bool geheimnisVergessen( const char *name, const char *pass );
- bool eMailVergessen( const char *name, const char *pass, const char *geheim, char **eMail );
- bool keepAlive();
- bool trenne();
-
- bool istVerbunden() const;
- bool vorgangBrauchBestätigung() const;
- char *getLetzterFehler() const;
-
- RegisterKlient *getThis();
- RegisterKlient *release();
- };
- class InformationKlient : public InformationKlientV
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- InformationKlient();
-
- ~InformationKlient();
-
- virtual bool verbinde() override;
- virtual bool getInformationText( Text *txt, int *typ ) override;
- virtual bool istSpielErlaubt( int spielId ) override;
- virtual bool istKarteErlaubt( int karteId ) override;
- virtual int getKarteId( char *name ) override;
- virtual int getSpielId( char *name ) override;
- virtual Text *getSpielerName( int accountId );
- virtual bool getSpielStatistik( int accountId, int spielId, Array< int > *werte ) override;
- virtual Text *getKarteName( int karteId ) override;
- virtual Text *getSpielName( int spielId ) override;
- virtual Text *getChatroomName( int chatroomId ) override;
- virtual int getSpielId( int karteId ) override;
- virtual int getAccountId( char *name ) override;
- virtual int getChatroomId( char *name ) override;
- virtual int getGruppenKarteId( int gruppenId ) override;
- virtual bool getGruppeSpielerHinzufügen( int gruppeId ) override;
- virtual int getGruppeAdminId( int gruppeId ) override;
- virtual int getSpielerPunkte( int accountId, int spielId ) override;
- virtual Array< int > *getAccountSpielArtListe() override;
- virtual int getSpielVersion( int spielId ) override;
- virtual int getKupfer() override;
- virtual int getDateiGruppeIdVonSpiel( int spielId ) override;
- virtual Text *getDateiGruppePfad( int dgId ) override;
- virtual Array< int > *getAccountKarteListe( int spielId ) override;
- virtual int getDateiGruppeIdVonPfad( char *pfad ) override;
- virtual int getDateiGruppeVersion( int dg ) override;
- virtual int getSpielerListe( char *suche, int *seite, int *maxSeite, char sortSpalte, char rückwärts,
- Array< int > *accounts, RCArray< Text > *name, RCArray< Text > *zuletztOnline,
- RCArray< Text > *letztesSpiel, RCArray< Text > *letzteKarte, RCArray< Text > *punkte ) override;
- virtual bool getSpielerAktivität( int accId, RCArray< Text > *datum, Array< double > *stOnline, Array< double > *stGespielt,
- Array< int > *anzSpiele, Array< int > *anzGewonnen ) override;
- virtual int getAccountKarteSpiele( int account, int karte ) override;
- virtual int getAccountKarteSpieleGewonnen( int account, int karte ) override;
- virtual bool hatAccountKarte( int account, int karte ) override;
- virtual bool hatAccountSpiel( int account, int spiel ) override;
- virtual Array< int > *getAccountKarteGespieltListe( int account, int spielId ) override;
- virtual Array< int > *getAccountSpielGespieltListe( int account ) override;
- virtual bool getSpielPartnerListe( int account, Array< int > *spieler, Array< int > *karten, Array< int > *anzahl ) override;
- virtual bool getStatistikListe( int account, int *seite, int *maxSeite, char sortSpalte, char rückwärts,
- RCArray< Array< int > > *werte, RCArray< Text > *namen ) override;
- virtual AHDaten *getSpielHistorieDaten( int account ) override;
- virtual bool getHistorieServer( int spielId, int *port, Text *ip ) override;
- virtual bool keepAlive() override;
- virtual bool hatRecht( int recht ) override;
- virtual int getKartenListe( char *filter, char sortSpalte, char absteigend, Array< int > *kId, RCArray< Text > *kName, RCArray< Text > *sName,
- Array< int > *kupfer, Array< int > *verkauft, Array< int > *maxSpieler ) override;
- virtual bool getEditorServer( int karteId, int *port, Text *ip ) override;
- virtual bool getKartenServer( int karteId, int *port, Text *ip ) override;
- virtual bool trenne() override;
-
- virtual bool istVerbunden() const override;
- virtual char *getLetzterFehler() const override;
-
- virtual InformationKlientV *getThis() override;
- virtual InformationKlientV *release() override;
- };
- class ChatKlient : private Thread
- {
- private:
- Klient *senden;
- Klient *empfangen;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- ChatKlient();
-
- ~ChatKlient();
-
- bool verbinde();
- bool chatNachricht( int zuAccount, const char *nachricht );
- bool accountNameÄndern( const char *name );
- bool freundschaftBeenden( int accountId );
- bool freundesAnfrage( int accountId );
- bool freundesAnfrageBeantworten( int accountId, bool ja );
- int chatroomErstellen( const char *name );
- bool chatroomEinladung( int accountId, int chatroomId );
- bool chatroomEinladungAblehnen( int accountId, int chatroomId );
- bool chatroomBetreten( int chatroomId );
- bool chatroomNachricht( int chatroomId, const char *nachricht );
- bool chatroomVerlassen( int chatroomId );
- bool chatroomKick( int chatroomId, int accountId );
- bool freundesListeAnfragen();
- bool chatNachrichtAnfrage();
- bool keepAlive();
- bool trenne();
- virtual void thread();
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- ChatKlient *getThis();
- ChatKlient *release();
- };
- class AnmeldungKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- bool spielHistorie;
- int ref;
- Critical cs;
- public:
-
- AnmeldungKlient();
-
- ~AnmeldungKlient();
-
- bool verbinde();
- int gruppeErstellen( int karteId );
- bool gruppeBetreten( int gruppeId, Array< int > *mitglieder, int *anzahl );
- bool gruppeVerlassen( int gruppeId );
- bool gruppeAnmelden( int gruppeId );
- bool gruppeAbmelden( int gruppeId );
- bool gruppeSpielerEinladen( int accountId, int gruppeId );
- bool gruppeEinladungAbbrechen( int accountId, int gruppeId );
- bool gruppeEinladungAblehnen( int gruppeId );
- bool kickSpielerAusGruppe( int accountId, int gruppeId );
- bool gruppeSpielStarten( int gruppeId, bool spielStarten );
- bool gruppeNachricht( int gruppeId, char *nachricht );
- bool anmelden( int karteId );
- bool abmelden();
- bool keepAlive();
- bool trenne();
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- AnmeldungKlient *getThis();
- AnmeldungKlient *release();
- };
- class SpielKlient : public SpielKlientV
- {
- private:
- Klient *senden;
- Klient *empfangen;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- SpielKlient();
-
- ~SpielKlient();
-
- virtual bool verbinde( unsigned short port, char *ip );
- virtual bool spielErstelltAnnehmen();
- virtual bool spielErstelltAblehnen();
- virtual bool spielErstelltTeamWechseln( int team );
- virtual bool spielErstelltTeamFertig();
- virtual bool spielErstelltChatNachricht( char *nachricht );
- virtual bool bereitZumLaden();
- virtual bool setLadenProzent( int prozent );
- virtual bool bereitZumSpiel();
- virtual bool spielNachricht( short län, char *bytes );
- virtual bool statistikNachricht( short län, char *bytes );
- virtual bool keepAlive();
- virtual bool trenne();
- virtual void thread();
-
- virtual bool istVerbunden() const;
- virtual char *getLetzterFehler() const;
-
- virtual SpielKlientV *getThis();
- virtual SpielKlientV *release();
- };
- class ShopKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- bool verbinde( int port, char *ip );
- public:
-
- ShopKlient();
-
- ~ShopKlient();
-
- bool verbinde();
- Array< int > *suchSpiele( const char *suche );
- bool ladeSpielTitel( int id );
- bool ladeSpielSeite( int id );
- int getSpielBesitzStatus( int id );
- int getSpielTestversion( int id );
- int istSpielErwerbbar( int id );
- int getSpielPreis( int id, bool testVersion );
- bool spielErwerben( int spielId, bool testVersion );
- Array< int > *suchKarten( const char *suche, int spielId );
- bool ladeKarteTitel( int id );
- bool ladeKarteSeite( int id );
- int getKarteBesitzStatus( int id );
- int getKarteTestversion( int id );
- int istKarteErwerbbar( int id );
- int getKartePreis( int id, bool testVersion );
- bool karteErwerben( int karteId, bool testVersion );
- bool keepAlive();
- bool trenne();
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- ShopKlient *getThis();
- ShopKlient *release();
- };
- class HistorieKlient
- {
- private:
- Klient *klient;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
-
- bool verbinde( char *ip, int port );
- bool trenne();
- public:
-
- HistorieKlient();
-
- ~HistorieKlient();
-
- bool downloadSpielHistorie( int spielId );
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- HistorieKlient *getThis();
- HistorieKlient *release();
- };
- class NewsKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- NewsKlient();
-
- ~NewsKlient();
-
- bool verbinde();
- bool ladeSeite( char *name );
- bool keepAlive();
- bool trenne();
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- NewsKlient *getThis();
- NewsKlient *release();
- };
- class EditorKlient : public EditorKlientV
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- EditorKlient();
-
- ~EditorKlient();
-
- bool verbinde( unsigned short port, char *ip ) override;
- bool karteErstellen( Text *zName, int spielArt ) override;
- bool ladeKarte( int id ) override;
- int getAbbildListe( RCArray< Text > *name, RCArray< Zeit > *datum ) override;
- bool abbildErstellen( char *name ) override;
- bool abbildLöschen( char *name ) override;
- bool abbildHerstellen( char *name ) override;
- bool veröffentlichen() override;
- bool shopSeiteVeröffentlichen() override;
- bool ladeShopSeiteVorschau() override;
- bool ssDateiErstellen( char *name, int typ ) override;
- bool ssOrdnerÖffnen( char *name ) override;
- Bild *ssBildLaden( char *datei, char *bild ) override;
- bool ssDateiLöschen( char *name ) override;
- Text *ssTextLaden( char *datei ) override;
- bool ssTextSpeichern( char *datei, Text *zText ) override;
- bool ssBildLöschen( char *datei, char *bild ) override;
- bool ssBildSpeichern( char *datei, char *name, Bild *zBild ) override;
- int ssGetDateiListe( RCArray< Text > *zList ) override;
- int ssGetBildListe( char *name, RCArray< Text > *zList ) override;
- bool getShopDaten( int &es, int &tp, int &vp ) override;
- bool setShopDaten( int es, int tp, int vp ) override;
- Text *beschreibungLaden() override;
- Bild *titelbildLaden() override;
- Bild *minimapLaden() override;
- Bild *ladebildLaden() override;
- bool beschreibungSpeichern( Text *zText ) override;
- bool titelbildSpeichern( Bild *zBild ) override;
- bool minimapSpeichern( Bild *zBild ) override;
- bool ladebildSpeichern( Bild *zBild ) override;
- bool ladeTeamDaten( SpielerTeamStruktur *sts ) override;
- bool speicherTeamDaten( SpielerTeamStruktur *sts ) override;
- bool deNeueDatei( char typ, Text *zName ) override;
- bool deOrdnerÖffnen( Text *zName ) override;
- Bild *deBildLaden( Text *zDatei, Text *zBild, FBalken *zF ) override;
- bool deDateiLöschen( Text *zName ) override;
- bool deBildLöschen( Text *zDatei, Text *zBild ) override;
- bool deBildSpeichern( Text *zDatei, Text *zName, Bild *zBild, FBalken *zF ) override;
- int deGetDateiListe( RCArray< Text > *zNamen ) override;
- int deGetBildListe( Text *zDatei, RCArray< Text > *zNamen ) override;
- int deGetModelListe( Text *zDatei, RCArray< Text > *zNamen ) override;
- int deGetSoundListe( Text *zDatei, RCArray< Text > *zNamen ) override;
- bool deModelLöschen( Text *zDatei, Text *zModel ) override;
- bool deSoundLöschen( Text *zDatei, Text *zSound ) override;
- Model2DData *deModelLaden( Text *zDatei, Text *zModel, FBalken *zF ) override;
- GSL::GSLSoundV *deSoundLaden( Text *zDatei, Text *zSound, FBalken *zF ) override;
- bool deModelSpeichern( Text *zDatei, Text *zModel, Model2DData *zData, FBalken *zF ) override;
- bool deSoundSpeichern( Text *zDatei, Text *zSound, GSL::GSLSoundV *zData, FBalken *zF ) override;
- int getVerkaufStatistik( Array< int > *verkauft, Array< int > *einkommen, Array< int > *gespielt ) override;
- bool initEditor() override;
- bool keepAlive() override;
- bool trenne() override;
- void lock() override;
- void unlock() override;
- Klient *zKlient() override;
-
- bool istVerbunden() const override;
- char *getLetzterFehler() const override;
-
- EditorKlientV *getThis() override;
- EditorKlientV *release() override;
- };
- class KartenKlient
- {
- private:
- Klient *klient;
- bool verbunden;
- Text *fehler;
- int klientId;
- int ref;
- Critical cs;
- public:
-
- KartenKlient();
-
- ~KartenKlient();
-
- bool verbinde( unsigned short port, char *ip );
- bool downloadKarte( int id );
- bool downloadKarteTitel( int id );
- bool downloadKarteBeschreibung( int id );
- bool downloadKarteMinimap( int id );
- bool downloadKarteLadebild( int id );
- bool keepAlive();
- bool trenne();
-
- bool istVerbunden() const;
- char *getLetzterFehler() const;
-
- KartenKlient *getThis();
- KartenKlient *release();
- };
- class MinigameClient : public MinigameKlientV
- {
- private:
- Klient *klient;
- bool verbunden;
- char *fehler;
- int klientId;
- int ref;
- bool needCapture;
- Critical cs;
- public:
-
- MinigameClient();
-
- ~MinigameClient();
-
- bool verbinde() override;
-
-
-
-
- int getMinigameOptionList( char *mName, RCArray< Text > *zOptionList ) override;
-
-
-
-
-
-
- int getMinigameBestscoreList( char *mName, Array< int > *zScore, RCArray< Text > *zPlayerList, RCArray< Text > *zOptionList ) override;
-
-
-
-
-
- int getMinigameOptionBestscore( char *mName, char *oName, Text *zPlayer ) override;
-
-
-
-
-
- int reportEndOfGame( char *mName, char *oName, int score ) override;
-
-
-
- bool uploadGameCapture( Datei *zCapture ) override;
-
-
-
-
- Datei *downloadGameCapture( char *mName, char *oName ) override;
- bool keepAlive() override;
- bool trenne() override;
- bool istVerbunden() const override;
- char *getLetzterFehler() const override;
-
- MinigameKlientV *getThis();
- MinigameKlientV *release();
- };
- #endif
|