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.
# Conflicts:
# src/g_hub.cpp
# src/g_level.cpp
# src/gamedata/g_mapinfo.h
# src/gi.h
# src/p_setup.cpp
# src/stringtable.cpp
# src/stringtable.h
# wadsrc/static/zscript/ui/statscreen/statscreen.zs
# wadsrc_extra/static/iwadinfo.txt
# Conflicts:
# src/gi.h
# wadsrc_extra/static/iwadinfo.txt
With extended fonts much of the old code did not work anymore, this needed more precise checks for the sources of the printed texts.
Without the adjustments, just added GetMaxAscender for compatibility. (drfrag)
# Conflicts:
# src/gamedata/fonts/font.cpp
# src/scripting/vmthunks.cpp
# wadsrc/static/zscript/ui/statscreen/statscreen.zs
Duration of sound playback and subtitles display will be synchronized if sound id is specified
For existing Strife messages this works out of the box
https://forum.zdoom.org/viewtopic.php?t=65379
- Note: Because sound channels are not in zscript, there's no way to modify a sound made by S_Sound.
# Conflicts:
# src/s_sound.cpp
# wadsrc/static/zscript/base.zs
Rearranged conditions to avoid accessing player from obsolete morphed pawn
Unmorphing upon death resets player in morphed actor, so player alive state should be tested first
Removed duplicate health check as well
https://forum.zdoom.org/viewtopic.php?t=65429
* sprite offset definitions, which are IWAD dependent
* Freedoom's decal overrides
* conversation ID definitions for the Strife teasers
* the fallback BigFont now can also be loaded by IWADs which declare themselves as GAME_Heretic or GAME_Hexen.
# Conflicts:
# src/gamedata/fonts/v_font.cpp
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.
As a low level feature, the CVAR management should not access game structures like actors, just to retrieve a player index. The index should be calculated by the calling code instead and passed into the function.
# Conflicts:
# src/win32/i_specialpaths.cpp
# Conflicts:
# src/p_acs.cpp