#ifndef SpielKlasse_H #define SpielKlasse_H #include "SpielV.h" #include "Spieler\Spieler.h" #include "Karte\Karte.h" #include "Chat\Chat.h" #include "Ende\Ende.h" #include "Bestenliste\Bestenliste.h" #include "..\Netzwerk\STKNachricht.h" #include "Schuss\Laser.h" #include #include "Objekt/SpielObjekt.h" #include #include "Asteroid/Asteroid.h" #include "Asteroid/Pixel.h" class SpielKlasse : public SpielV { private: struct SaveData { int spielZeit; }; RCArray< STKNachricht > *stkn; int stkna; Bestenliste *bestenliste; Schrift *schrift; KSGClient::InformationServerClient *infoKlient; KSGClient::SpielServerClient *spielKlient; RCArray< Spieler > *spieler; RCArray< Asteroid > *asteroids; RCArray< Team > *teams; RCArray< SpielObjekt > *objekte; RCArray< Laser > *schüsse; Bildschirm *screen; Karte *map; Kamera2D *kam; Kamera2D *minimap; Welt2D *welt; SpielChat *chat; Ende *end; SpielerGUI *shipGUI; Datei csv; RCArray< DeadPlayer > *deads; RCArray< Model2DData > *asteroidModels; RCArray< Textur2D > *asteroidTextures; RCArray< Pixel > *pixel; bool rendern; int spielZeit; double rZeit; int spielerAnzahl; int karteId; int ladenProzent; int spielerNummer; char *tasten; bool spielPause; SaveData last; bool setKam; int ref; bool istAmLeben() const; void goBackInTime( int zeit ); void goToPresence( int zeit ); void load(); void save(); void tick(); public: // Konstruktor SpielKlasse(); // Destruktor ~SpielKlasse(); // nicht constant void lock(); void unlock(); void setSchrift( Schrift *schrift ) override; // call 4 void setBildschirm( Bildschirm *zScreen ) override; // call 3 void nachricht( int län, char *bytes ) override; void setKlients( KSGClient::InformationServerClient *infoKlient, KSGClient::SpielServerClient *spielKlient ) override; // call 2 void setKarteId( int karteId ) override; // call 1 void ladeDaten() override; // call 5 void doMausEreignis( MausEreignis &me ) override; void doTastaturEreignis( TastaturEreignis &te ) override; void stknVerarbeitung(); bool tick( double zeit ) override; void render( Bild &zRObj ) override; // constant int läuft() const override; // Reference Counting SpielV *getThis() override; SpielV *release() override; }; #endif