diff options
author | ennewalker <ennewalker@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-03-15 22:36:20 +0000 |
---|---|---|
committer | ennewalker <ennewalker@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-03-15 22:36:20 +0000 |
commit | e517615e56766a43008442ebdfe3669c6333710a (patch) | |
tree | 2c39773f92c4c220b9d38ea35e85dffb2cc1c1a7 /crawl-ref/source/rltiles | |
parent | 9bfc46fded3e4c67b73c98bf04380c40fd5a76d4 (diff) | |
download | crawl-ref-e517615e56766a43008442ebdfe3669c6333710a.tar.gz crawl-ref-e517615e56766a43008442ebdfe3669c6333710a.zip |
rltiles now creates tile-dngn.html (and others) when creating tile pages. These should make it easier to figure out which tiles go by which name.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9510 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/rltiles')
-rw-r--r-- | crawl-ref/source/rltiles/.gitignore | 1 | ||||
-rw-r--r-- | crawl-ref/source/rltiles/tool/tile.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/rltiles/tool/tile_list_processor.cc | 59 |
3 files changed, 62 insertions, 0 deletions
diff --git a/crawl-ref/source/rltiles/.gitignore b/crawl-ref/source/rltiles/.gitignore index aee9f511f8..dd5adae1c9 100644 --- a/crawl-ref/source/rltiles/.gitignore +++ b/crawl-ref/source/rltiles/.gitignore @@ -2,3 +2,4 @@ tiledef*.cc tiledef*.h tool/tilegen.elf +tile*.html diff --git a/crawl-ref/source/rltiles/tool/tile.cc b/crawl-ref/source/rltiles/tool/tile.cc index ad45879516..b7690dc456 100644 --- a/crawl-ref/source/rltiles/tool/tile.cc +++ b/crawl-ref/source/rltiles/tool/tile.cc @@ -325,6 +325,8 @@ bool tile::compose(const tile &img) bool tile::load(const std::string &filename) { + m_filename = filename; + if (m_pixels) { unload(); diff --git a/crawl-ref/source/rltiles/tool/tile_list_processor.cc b/crawl-ref/source/rltiles/tool/tile_list_processor.cc index 6d764dd1cf..f57781a29a 100644 --- a/crawl-ref/source/rltiles/tool/tile_list_processor.cc +++ b/crawl-ref/source/rltiles/tool/tile_list_processor.cc @@ -807,6 +807,65 @@ bool tile_list_processor::write_data() " return (idx >= tile && idx < tile + tile_%s_count(tile));\n" "}\n\n", lcname.c_str(), m_start_value.c_str(), max.c_str(), lcname.c_str()); + + fclose(fp); + } + + // write "tile-%name.html" + { + char filename[1024]; + sprintf(filename, "tile-%s.html", lcname.c_str()); + FILE *fp = fopen(filename, "w"); + + if (!fp) + { + fprintf(stderr, "Error: couldn't open '%s' for write.\n", filename); + return false; + } + + fprintf(fp, "<html><table>\n"); + + fprintf(fp, "%s", "<tr><td>Image</td><td>Vault String</td><td>Enum</td><td>Path</td></tr>\n"); + + for (unsigned int i = 0; i < m_page.m_tiles.size(); i++) + { + fprintf(fp, "<tr>"); + + fprintf(fp, "<td><img src=\"%s\"/></td>", + m_page.m_tiles[i]->filename().c_str()); + + std::string lcenum = m_page.m_tiles[i]->enumname(); + for (unsigned int c = 0; c < lcenum.size(); c++) + lcenum[c] = std::tolower(lcenum[c]); + + fprintf(fp, "<td>%s</td>", lcenum.c_str()); + + const std::string &parts_ctg = m_page.m_tiles[i]->parts_ctg(); + if (m_page.m_tiles[i]->enumname().empty()) + { + fprintf(fp, "<td></td>"); + } + else if (parts_ctg.empty()) + { + fprintf(fp, "<td>%s_%s</td>", + m_prefix.c_str(), m_page.m_tiles[i]->enumname().c_str()); + } + else + { + fprintf(fp, "<td>%s_%s_%s</td>", + m_prefix.c_str(), + parts_ctg.c_str(), + m_page.m_tiles[i]->enumname().c_str()); + } + + fprintf(fp, "<td>%s</td>", m_page.m_tiles[i]->filename().c_str()); + + fprintf(fp, "</tr>\n"); + } + + fprintf(fp, "</table></html>\n"); + + fclose(fp); } delete[] part_min; |