X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=vrlugburz;a=blobdiff_plain;f=src%2Ftileset.c;fp=src%2Ftileset.c;h=cde3021fdb48aa8243ea18e285335f7a9ae7f416;hp=53a3d38683a7f480c2ea2c4051d2d996bfae773f;hb=9089b4a32162a85cb3d244c915f31cc5adc3c389;hpb=7a1a5aa446fcf3d2b0bb26f6f7465e4f3d116e47 diff --git a/src/tileset.c b/src/tileset.c index 53a3d38..cde3021 100644 --- a/src/tileset.c +++ b/src/tileset.c @@ -5,12 +5,14 @@ #include "treestore.h" #include "tileset.h" #include "level.h" +#include "fs.h" int load_tileset(struct tileset *tset, const char *fname) { - struct ts_node *ts, *node; + struct ts_node *ts, *node, *iter; const char *str; char *path; + struct mesh *mesh; if(!(ts = ts_load(fname))) { fprintf(stderr, "failed to load tileset: %s\n", fname); @@ -38,4 +40,22 @@ int load_tileset(struct tileset *tset, const char *fname) } tset->name = strdup(ts_get_attr_str(ts, "name", fname)); + + iter = ts->child_list; + while(node) { + node = iter; + iter = iter->next; + if(strcmp(node->name, "tile") == 0) { + if(!(str = ts_get_attr_str(node, "prefix", 0))) { + continue; + } + if(!(mesh = find_mesh_prefix(&tset->scn, str))) { + fprintf(stderr, "load_tileset: failed to find mesh with prefix: %s\n", str); + continue; + } + /* TOOD cont */ + } + } + + return 0; }