blob: 98ca08322d20369d3315fe5900c8e1ecb87d8756 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <isogfx/asset.h>
bool ts_validate_tileset(const Ts_TileSet* tileset) {
assert(tileset);
for (uint16_t i = 0; i < tileset->num_tiles; ++i) {
const Ts_Tile* tile = ts_tileset_get_tile(tileset, i);
// Tile should be non-empty.
if (tile->width == 0) {
return false;
}
if (tile->height == 0) {
return false;
}
}
return true;
}
bool tm_validate_map(const Tm_Map* map, const Ts_TileSet* tileset) {
assert(map);
assert(tileset);
for (uint16_t t = 0; t < tileset->num_tiles; ++t) {
const Ts_Tile* tile = ts_tileset_get_tile(tileset, t);
// Tile dimensions should be a multiple of the base tile size.
if ((tile->width % map->base_tile_width) != 0) {
return false;
}
if ((tile->height % map->base_tile_height) != 0) {
return false;
}
}
return true;
}
|