I had to insert floors in the wall tilesets because of some... complexity problems.
For the most of the tiles things are simple, I can just write the tile symbol/drawing over a floor tile texture and presto, it works.
But walls have engravings, so if I just write walls over a floor tile texture, the floor will be visible in the walls' engravings. Not good.
So I need a way to tell where to draw or not the floor texture under the wall.
The simplest way I can think of would be to add a color code to the wall tilesets to flag where to draw the floor texture.
But even that won't be so simple as some wall tileset (the round one for example) have semi-transparent edges, and I need to both have wall ARGB color information and the 'draw the floor' flag in the same pixel. So it would require either an extra PNGs (or an extra layer if I knew how to read those) to hold the information of where to draw the floor under the each specific wall tilesets.
But even then, there are still complications. Some walls have engravings outside of the boundaries of the wall itself.
Thus, to be able to switch the floor engraving to the wall engraving on the part where the floor is being draw, I need to split both the wall and floor engravings in separate tileset, then have an extra tileset to indentify where the floor engravings should be used.
So I would need to merge the wall and floor engravings using the wall specific engraving filter, and draw that. Then draw the floor where the wall specific floor filter allows. And finally draw the wall.
And that is why floors are currently integrated into the wall tilesets.
If someone has a less insane solution, I'm all ears.
----
For those that wish to add options to the assembler, the file absolutely need to be 256x256 32bit ARGB PNGs with an appropriate prefix (like "Ground_" or "Wall_".)
If the file is not 256x256 32bit ARGB PNGs named like "CAT_NAME.png" the Tileset Assembler will ignore it.
I'm also thinking about adding a way to include tile 'patches'.
The tile patch files would need to be 16x16 32bit ARGB PNGs named "Tile_X_NAME.png", where X is a number from 0 to 255.
The assembler would then list all of the individual tile replacements. Once a tile is toggled, that tile would be drawn at the numbered location in the place (deleting) the tile generated by the selected tilesets.
Edit.: Also, I forgot to write about it anywhere, but clicking on the tileset display will cycle through different background colors. ... DISCO! *cough*