Нема описа

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #ifndef PROJECT_H
  2. #define PROJECT_H
  3. #include "map.h"
  4. #include "blockdata.h"
  5. #include <QStringList>
  6. #include <QList>
  7. #include <QStandardItem>
  8. class Project
  9. {
  10. public:
  11. Project();
  12. QString root;
  13. QStringList *groupNames = NULL;
  14. QMap<QString, int> *map_groups;
  15. QList<QStringList*> *groupedMapNames = NULL;
  16. QStringList *mapNames = NULL;
  17. QMap<QString, QString> *mapConstantsToMapNames;
  18. QMap<QString, QString> *mapNamesToMapConstants;
  19. QMap<int, QString> *mapAttributesTable;
  20. QMap<QString, QMap<QString, QString>*> *mapAttributes;
  21. QMap<QString, Map*> *map_cache;
  22. Map* loadMap(QString);
  23. Map* getMap(QString);
  24. QMap<QString, Tileset*> *tileset_cache = NULL;
  25. Tileset* loadTileset(QString);
  26. Tileset* getTileset(QString);
  27. Blockdata* readBlockdata(QString);
  28. void loadBlockdata(Map*);
  29. QString readTextFile(QString path);
  30. void saveTextFile(QString path, QString text);
  31. void readMapGroups();
  32. void addNewMapToGroup(QString mapName, int groupNum);
  33. QString getNewMapName();
  34. QString getProjectTitle();
  35. QList<QStringList>* getLabelMacros(QList<QStringList>*, QString);
  36. QStringList* getLabelValues(QList<QStringList>*, QString);
  37. void readMapHeader(Map*);
  38. void readMapAttributesTable();
  39. void readAllMapAttributes();
  40. void readMapAttributes(Map*);
  41. void getTilesets(Map*);
  42. void loadTilesetAssets(Tileset*);
  43. void setNewMapHeader(Map* map, int mapIndex);
  44. void setNewMapAttributes(Map* map);
  45. void setNewMapBlockdata(Map* map);
  46. void setNewMapBorder(Map *map);
  47. void setNewMapEvents(Map *map);
  48. void setNewMapConnections(Map *map);
  49. QString getBlockdataPath(Map*);
  50. void saveBlockdata(Map*);
  51. void writeBlockdata(QString, Blockdata*);
  52. void saveAllMaps();
  53. void saveMap(Map*);
  54. void saveAllDataStructures();
  55. QList<QStringList>* parse(QString text);
  56. QStringList getSongNames();
  57. QString getSongName(int);
  58. QStringList getLocations();
  59. QStringList getVisibilities();
  60. QStringList getWeathers();
  61. QStringList getMapTypes();
  62. QStringList getBattleScenes();
  63. void loadObjectPixmaps(QList<Event*> objects);
  64. QMap<QString, int> getMapObjGfxConstants();
  65. QString fixGraphicPath(QString path);
  66. void readMapEvents(Map *map);
  67. void loadMapConnections(Map *map);
  68. void loadMapBorder(Map *map);
  69. QString getMapBorderPath(Map *map);
  70. void saveMapEvents(Map *map);
  71. QStringList readCArray(QString text, QString label);
  72. QString readCIncbin(QString text, QString label);
  73. QMap<QString, int> readCDefines(QString text, QStringList prefixes);
  74. private:
  75. QString getMapAttributesTableFilepath();
  76. void saveMapHeader(Map*);
  77. void saveMapAttributesTable();
  78. };
  79. #endif // PROJECT_H