#ifndef Editor_H #define Editor_H #include "../../../../Klient/Include/EditorV.h" #include "Interface.h" #include "EditorKlient.h" #include "Dialog.h" #include "EditorKarte.h" #include namespace Editor { class SMWEditor : public EditorV { private: enum Status { START, SITZUNG_FRAGE, INITIALIZED, WARTEND, EXIT }; Status status; UIInit uiFactory; EditorKlient *klient; Animation2D *laden; Interface *i; Array< Dialog * > *dialogs; Critical c; Punkt windowSize; SpielerTeamStruktur *sts; KarteDaten *daten; Punkt maus; EditorObject *moveObj; EditorObject *rotObj; unsigned char alpha; bool rend; void ladeKarte(); public: // Konstruktor SMWEditor(); // Destruktor ~SMWEditor(); // nicht constant void addDialog( Dialog *d ); void setUIFactory( UIInit &uiFactory ) override; void setKlient( KSGClient::EditorServerClient *ekv ) override; void setLadeAnimation( Animation2D *la ) override; void setSichtbar() override; void doPublicMausEreignis( MausEreignis &me ) override; void doTastaturEreignis( TastaturEreignis &te ) override; bool tick( double z ) override; void render( Bild &zRObj ) override; // constant bool hatVerlassen( bool jetzt ) const override; }; } #endif