00001 00011 #ifndef ISO_TILE_SET_H 00012 #define ISO_TILE_SET_H 00013 00014 #include "SDL/SDL.h" 00015 00016 #include "SDL_Tools.h" 00017 #include "IsoGeometryTools.h" 00018 //We don't technically need to include IsoDefinitions, because that file is 00019 //already included by IsoGeometryTools.h 00020 //#include "IsoDefinitions.h" 00021 #include "ImageCanvas.h" 00022 00024 struct TILEINFO { 00026 RECT rcSrc; 00028 POINT ptAnchor; 00030 RECT rcDstExtent; 00031 }; 00032 00077 class IsoTileSet { 00078 private: 00080 Uint32 tileCount; 00081 00083 TILEINFO* tileList; 00084 00086 char* filename; 00087 00089 SDL_Surface* tilesetSurface; 00090 00091 public: 00093 00094 IsoTileSet(); 00095 ~IsoTileSet(); 00096 00098 00099 00100 00102 00103 bool loadTileset(char* name); 00105 bool reloadTileset(); 00107 bool unloadTileset(); 00109 00110 00111 00113 00114 Uint32 getTileCount(); 00115 00117 TILEINFO* getTileList(); 00118 00120 SDL_Surface* getSurface(); 00121 00124 char* getFileName(); 00126 00136 void putTile(SDL_Surface* destinationSurface, int xCoord, int yCoord, int tileNumber); 00137 }; 00138 00139 #endif//ISO_TILE_SET_H