7 #include <unordered_map>
10 #include "external/json/json.h"
18 typedef std::unordered_map<std::string, Tile> mTileSetMap;
19 typedef std::unordered_map<std::string, std::shared_ptr<SDL_Texture>> mImageSetMap;
28 TileSet(
const std::string &file);
38 virtual void Add(
const std::string &file);
45 virtual SDL_Texture*
Texture(
const std::string &tile);
52 virtual Recti Clip(
const std::string &tile);
59 virtual std::string
File(
const std::string &tile);
65 virtual bool Solid(
const std::string &tile);
70 int Size() {
return mTileSet.size(); }
75 mTileSetMap::iterator
Begin() {
return mTileSet.begin(); }
80 mTileSetMap::iterator
End() {
return mTileSet.end(); }
97 void ParseImageJson(
Json::Value val,
const std::string &file);
100 mTileSetMap mTileSet;
101 mImageSetMap mImageSet;
102 mTileSetMap::iterator mTileSetBegin;
103 mTileSetMap::iterator mTileSetEnd;
104 mImageSetMap::iterator mImageSetBegin;
105 mImageSetMap::iterator mImageSetEnd;
107 SDL_Texture* lastTexture;
108 std::string lastTextureName;
111 std::string lastTileName;