Editor.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #ifndef Editor_H
  2. #define Editor_H
  3. #include "../../../../Klient/Include/EditorV.h"
  4. #include "Interface.h"
  5. #include "EditorKlient.h"
  6. #include "Dialog.h"
  7. #include "EditorKarte.h"
  8. #include <Kamera2D.h>
  9. namespace Editor
  10. {
  11. class SMWEditor : public EditorV
  12. {
  13. private:
  14. enum Status
  15. {
  16. START,
  17. SITZUNG_FRAGE,
  18. INITIALIZED,
  19. WARTEND,
  20. EXIT
  21. };
  22. Status status;
  23. Schrift *schrift;
  24. EditorKlient *klient;
  25. Animation2D *laden;
  26. Interface *i;
  27. Array< Dialog* > *dialogs;
  28. Critical c;
  29. Punkt windowSize;
  30. SpielerTeamStruktur *sts;
  31. KarteDaten *daten;
  32. Kamera2D *kamera;
  33. Kamera2D *minimap;
  34. Punkt maus;
  35. EditorObject *moveObj;
  36. EditorObject *rotObj;
  37. unsigned char alpha;
  38. bool rend;
  39. int ref;
  40. void ladeKarte();
  41. public:
  42. // Konstruktor
  43. SMWEditor();
  44. // Destruktor
  45. ~SMWEditor();
  46. // nicht constant
  47. void addDialog( Dialog *d );
  48. void setSchrift( Schrift *schrift ) override;
  49. void setKlient( KSGClient::EditorServerClient *ekv ) override;
  50. void setLadeAnimation( Animation2D *la ) override;
  51. void setSichtbar() override;
  52. void doPublicMausEreignis( MausEreignis &me ) override;
  53. void doTastaturEreignis( TastaturEreignis &te ) override;
  54. bool tick( double z ) override;
  55. void render( Bild &zRObj ) override;
  56. // constant
  57. bool hatVerlassen( bool jetzt ) const override;
  58. // Reference Counting
  59. EditorV *getThis() override;
  60. EditorV *release() override;
  61. };
  62. }
  63. #endif