EditorKlient.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #pragma once
  2. #include <KSGNetwork.h>
  3. #include <Punkt.h>
  4. #include <Critical.h>
  5. namespace Editor
  6. {
  7. struct ResourceDaten;
  8. struct TeamDaten;
  9. struct SpielerDaten;
  10. struct ObjektDaten;
  11. class SpielerTeamStruktur : public SpielerTeamStrukturV
  12. {
  13. public:
  14. SpielerTeamStruktur();
  15. ~SpielerTeamStruktur();
  16. SpielerTeamStrukturV* getThis() override;
  17. SpielerTeamStrukturV* release() override;
  18. };
  19. class EditorKlient : public virtual ReferenceCounter
  20. {
  21. private:
  22. KSGClient::EditorServerClient* klient;
  23. Text error;
  24. Critical cs;
  25. void loadMapResourcePathsFromFolder(const char* folderPath, RCArray< Text >* zPaths);
  26. public:
  27. // Konstruktor
  28. // k: Der zu verwendende Klient
  29. EditorKlient(KSGClient::EditorServerClient* k);
  30. // Destruktor
  31. ~EditorKlient();
  32. // Initialisiert den Server
  33. // return: 1, falls erfolgreich
  34. // 2, falls bereits eine Sitzung existiert
  35. // 0, sonnst
  36. int init();
  37. // Verwirft die vorhandene Sitzung und erstellt eine neue
  38. bool sitzungVerwerfen();
  39. // Speichert Sitzung und beendet Editor
  40. bool sitzungBeenden();
  41. // Lädt die Spieler Team Struktur
  42. bool getSpielerTeamStruktur(SpielerTeamStrukturV* zSts);
  43. bool loadMapSize(Punkt& size);
  44. bool saveTeam(const TeamDaten* team);
  45. bool saveSpieler(const SpielerDaten* spieler);
  46. bool saveObjekt(const ObjektDaten* objekt);
  47. bool deleteObjekt(int id);
  48. bool loadResources(Array< ResourceDaten* >& resources);
  49. int addResource(const char* path);
  50. bool loadSpieler(Array< SpielerDaten* >& spieler);
  51. bool loadTeams(Array< TeamDaten* >& teams);
  52. bool loadObjekte(Array< ObjektDaten* >& Objekte);
  53. Bild* loadBild(const char* templatePath);
  54. Model2DData* loadModel(const char* templatePath);
  55. RCArray< Text >* getAllMapResourcePaths();
  56. // Gibt den Letzten Fehler zurück
  57. const char* getLastError() const;
  58. };
  59. }