Karte.h 939 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef Karte_H
  2. #define Karte_H
  3. #include <Datei.h>
  4. #include <Vec2.h>
  5. #include "STS.h"
  6. #include "Team.h"
  7. #include "SpielObjekt.h"
  8. using namespace Framework;
  9. class Karte
  10. {
  11. private:
  12. Vec2< int > size;
  13. RCArray< RessourceStr > *ressources;
  14. RCArray< ObjektStr > *objekte;
  15. RCArray< SpielerStr > *spieler;
  16. RCArray< TeamStr > *teams;
  17. SpielerTeamStruktur *sts;
  18. int ref;
  19. public:
  20. // Konstruktor
  21. Karte();
  22. // Destruktor
  23. ~Karte();
  24. // nicht constant
  25. void ladeDaten( Datei *zDatei, SSDatenbankV *zDb, SpielerTeamStruktur *zSts, char *tmpPfad, int kId );
  26. // constant
  27. Vec2< int > getSize() const;
  28. Spieler *createSpieler( int sNum ) const;
  29. Team *createTeam( int tNum ) const;
  30. SpielObjekt *createObjekt( int oNum ) const;
  31. Iterator< ObjektStr * > getObjekte() const;
  32. int getMaxTeamAnzahl() const;
  33. int getMaxSpielerAnzahl() const;
  34. int getObjektAnzahl() const;
  35. // Reference Counting
  36. Karte *getThis();
  37. Karte *release();
  38. };
  39. #endif