diff --git a/Data/Img/AwesomeTileset.png b/Data/Img/AwesomeTileset.png index 41bbe3a..6547163 100644 Binary files a/Data/Img/AwesomeTileset.png and b/Data/Img/AwesomeTileset.png differ diff --git a/Data/Map/Ugly.tmx b/Data/Map/Ugly.tmx index 83927cf..027f30b 100644 --- a/Data/Map/Ugly.tmx +++ b/Data/Map/Ugly.tmx @@ -4,11 +4,16 @@ - + eJxjYWBgYMSCmdAwTJwFh3oQZsYjz4SDPRDmIWNi/ItNPcw8XHaRg2lhHjOa2aTS2NxHLTOHQviNmjdq3nAyj9oYABbJAjU= + + + eJxjYKAdYEXjs5FpDrn6KDGfHDth/mXDIobOJtY9xOqhBFAjfOnhzlEwCkbB4AIAbfMASQ== + + diff --git a/src/Level/Layer.cpp b/src/Level/Layer.cpp index fba8462..d424b3a 100644 --- a/src/Level/Layer.cpp +++ b/src/Level/Layer.cpp @@ -33,7 +33,9 @@ void Layer::Draw(int xOffset, int yOffset) { for(int x = 0; x < _width; x++) { for(int y = 0; y < _height; y++) { MapTile& tile = GetTile(x, y); - tile.tileset->DrawTile(tile.id, Vec2((float)x * _tileWidth, (float)y * _tileHeight)); + if(tile.tileset != NULL) { + tile.tileset->DrawTile(tile.id, Vec2((float)x * _tileWidth, (float)y * _tileHeight)); + } } } } diff --git a/src/Level/Level.cpp b/src/Level/Level.cpp index d0eb022..2960fbd 100644 --- a/src/Level/Level.cpp +++ b/src/Level/Level.cpp @@ -73,9 +73,13 @@ bool Level::Load(const std::string& filename) { const Tmx::Tileset* tmxTileset = map.FindTileset(tmxTile.gid); MapTile tile; - tile.id = tmxTile.gid - tmxTileset->GetFirstGid(); - tile.tileset = tilesetMap.find(tmxTileset)->second; - + if(tmxTile.gid != 0) { + tile.id = tmxTile.gid - tmxTileset->GetFirstGid(); + tile.tileset = tilesetMap.find(tmxTileset)->second; + } else { + tile.id = 0; + tile.tileset = NULL; + } layer->SetTile(x, y, tile); } }