- various engine updates from Raze.

* removed refreshFreq variable and related code. This only got into the backend because of stupid interpolation code in some of the Build games which has long been removed.
* save FixedBitArrays as base64 in savegames.
* allow indirections in the string table - by prefixing the language string with '$$' the remaining text is interpreted as another string label to resolve.
* constexpr in palette code, also replacing #defines with enums.
This commit is contained in:
Christoph Oelckers 2020-09-27 10:17:58 +02:00
commit 96ceb11af0
21 changed files with 209 additions and 51 deletions

View file

@ -575,7 +575,10 @@ const char *FStringTable::GetString(const char *name, uint32_t *langtable, int g
if (item)
{
if (langtable) *langtable = map.first;
return item->strings[gender].GetChars();
auto c = item->strings[gender].GetChars();
if (c && *c == '$' && c[1] == '$')
return GetString(c + 2, langtable, gender);
return c;
}
}
}