This isn't really a bug, more of just a question on how to do something.
Let's say I'm making a little roguelike. I'd like to start by just loading a font and using unicode characters for everything, so I do something like this:
(blt:set "tile font: ./assets/ProggySquare/ProggySquare.ttf, size=16x16, align=dead-center;")
Later I want to add support for tiles, but I don't want to have to make every single tile before I try them out. Ideally what I want is to load a
png of tiles into certain character slots, and have the original font used as a fallback for characters that don't have a tile. So I do something like:
(blt:set "tile font: ./assets/ProggySquare/ProggySquare.ttf, size=16x16, align=dead-center;") (when *enable-tiles* (blt:set "tile 0x0000: ./assets/tiles.png, size=16x16, resize=16x16, align=dead-center, codepage=./assets/codepage.txt;"))
This works great, except when I want to add color. When drawing a character that has a tile, I'd like to just use the pixels from the tile untinted. But when drawing a fallback character from the font, I want to use a specific color. E.g. I want to draw goblins as a brown g if they have no tile, but as the untinted tile if they do. But when I call
terminal_color it tints the tile.
What's the proper way to go about doing this?