This was done for two reasons:
1. It forces loading of zd_extra.pk3 for the stock IWADs, eliminating a certain kind of user error.
2. It removes the stock IWAD definitions for custom games that distribute the engine along with their data, so that it doesn't pick up on Steam and GOG installations and shows an inappropriate IWAD picker.
There were two issues blocking this:
* the Doom BigUpper font was loaded for all Doom-based games. It is only valid for original idgames releases and nothing more.
* Hacx.wad defines its BigFont in FONTDEFS which blocks all custom fonts. Since the Hacx font and GZDoom's base BigFont are very similar, the FONTDEFS lump now gets deleted from the WAD directory.
Ò was inverted and therefore had inconsistent shading, which is fixed; Ů had darkened corners to give in to the umlaut, but was found to not be necessary; Љ and Л are both smoothened according to how the letter looks in the console font, and Џ is slightly shortened (to match up with the letter Q in terms of size).
Previously, the characters И, Й, Ѝ and Я had the appearance of inverted versions of their Latin counterparts, N and R. With inverted shading, the letters turned out difficult to read; therefore, this commit reverts them to their old appearance (from the Russian Doom port, made by @JNechaevsky).
Apparently this was copied from the old Umlaut characters which had it wrong. Changed for all affected graphics to use the same color as the IWAD to avoid visible discrepancies with translations that can make this visible.
The episode titles required a workaround because the CQ3 episodes do not contain names in text form: If this is the case, the patch name will be used as a string table identifier to get a matching text for localization.
This covers French, German, Italian, Portugese, Spanish, and Swedish. Also adjusts the offsets of the inverted exclamation and question mark for Doom (so that they are in line with the colon sign).
Chex also has its own colon sign, so I’m adding that too.
There are no longer any spaces between the letters and their respective accents. In the previous state of GZDoom, these letters were forcibly squished by 1px vertically, and it made for a terribly inconsistent look (especially with the Strife E).
The quotation marks were made by combining the < and > signs. Because the back buttons in the menu look quite similar, they were also retouched for all games.
Many existing letters are redone, and support for the following languages is added:
Doom:
• Italian
• Spanish
Raven:
• Italian
• Portugese
Strife:
• French
• German
• Italian
Credits to Jimmy for some of the lowercase glyphs for Doom.
This time with diacritics and full Strife support.
The inverted exclamation mark (¡) may cause problems in the menu because of its positioning, but I see no place where any exclamation mark is used in GZDoom’s Strife menu.
• Ä: fix shading at the top
• Å: reduce height
• Æ: improve blending between the two glyphs
• Ç: shorten cedilla
• Ê: fix outline color
• Ð: thicken lines and conjoin them with the letter
• Ø: recolor the center of the slash in the lowercase glyph
• Þ: improve shading, condense lowercase glyph
• Ђ: round edges slightly
• Љ: improve blending between the two glyphs
• Њ: improve blending between the two glyphs
• Ћ: improve shading
• Ќ: heighten accent position
• Џ: widen tail
Also overhauls the punctuation, which now completely fits both the Bigfont and the BigUpper font! Big thanks to Jimmy for a huge amount of support!
For the Doom IWADs the provided font looks almost identical to the characters used on the title patches. So, for any level name that got replaced in some language, it will now check if the retrieved name comes from the default table, and if not, ignore the title patch and print the name with the specified font.
This also required removing the 'en' label from the default table, because with this present, the text would always be picked from 'en' instead of 'default'. Since 'en' and 'default' had the same contents, in any English locale the 'default' table was never hit, so this won't make any difference for the texts being chosen.
Last but not least, wminfo has been made a local variable in G_DoCompleted. There were two places where this was accessed from outside the summary screen or its setup code, and both were incorrect.