This option value is used for 4 different options, and splitting it up into three will allow for languages based on grammatical gender systems to have different endings. Necessary for e.g. Russian in order to sound correctly.
The corresponding strings are already in the language spreadsheet.
The recent localization work has made it apparent that on many images the menu was extremely hard to read because its colors often clash with the background.
The choice of a bright overlay color with extremely low opacity is simply not enough to make the menus comfortable to navigate. Chex Quest was particularly bad but the problem existed in many Doom mods as well.
This also changes the CQ dim color to something a bit more green to better fit with the theme.
- moved language entry up a bit in the menu
- converted the language entry into a proper CVAR string list selection, instead of a separate menu with said list.
Now a localization mod can disable the graphics patches containing text entirely so that it can properly localize the text based menu variant.
If this flag gets set in MAPINFO, it will override all user settings.
In this menu, all languages supported by GZDoom are selectable with one simple click! Credits to @PROPHESSOR for making it!
(This only edits the English and French languages because they are the only languages currently up to date with GZDoom’s development. A Russian translation will follow suit at a later date.)
* added a CVAR that sets how localizable graphics need to be dealt with.
* pass the substitution string to OkForLocalization so that proper checks can be performed.
* increased item spacing on Doom's list menus to 18 from 16 pixels, because otherwise the diacritic letters would not fit. 20 would have been more ideal but 18 was the limit without compromising its visual style
* added a second text-only main menu because here the spacing cannot be changed. Doing so would render any single-patch main menu non-functional. So here the rules are that if substitution takes place, it will swap out the entire menu class.
* fixed some issues with the summary screen's "entering" and "finished" graphics.
Passing something non-constant at compile time here is extremely dangerous, especially when users can replace those strings if they like.
It now uses FString::Substitute in all cases where something needs to be inserted into a template string.