Merge pull request #3137 from TaxiService/patch-6

fix masterwork/exceptional/decorated symbols
develop
Myk 2023-04-01 22:13:55 -07:00 committed by GitHub
commit 58d8d887f2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 2 deletions

@ -40,6 +40,7 @@ changelog.txt uses a syntax similar to RST, with a few special sequences:
- `blueprint`: interpret saplings, shrubs, and twigs as floors instead of walls
## Misc Improvements
- `buildingplan`: items in the item selection dialog should now use the same item quality symbols as the base game
## Documentation

@ -720,7 +720,13 @@ df::coord Items::getPosition(df::item *item)
return item->pos;
}
static char quality_table[] = { 0, '-', '+', '*', '=', '@' };
// These '\xFF' chars refer to quality markers from curses.png, namely: 250 (≡), 15 (☼), 174 («) and 175 (»).
static const char MARKER_EXCEPTIONAL = '\xF0';
static const char MARKER_MASTERWORK = '\x0F';
static const char MARKER_IMPROVED_LEFT = '\xAE';
static const char MARKER_IMPROVED_RIGHT = '\xAF';
static char quality_table[] = { 0, '-', '+', '*', MARKER_EXCEPTIONAL, MARKER_MASTERWORK };
static void addQuality(std::string &tmp, int quality)
{
@ -825,7 +831,7 @@ std::string Items::getDescription(df::item *item, int type, bool decorate)
addQuality(tmp, item->getQuality());
if (item->isImproved()) {
tmp = "<" + tmp + ">";
tmp = MARKER_IMPROVED_LEFT + tmp + MARKER_IMPROVED_RIGHT;
addQuality(tmp, item->getImprovementQuality());
}
}