- addressed incorrect ACS printbold implementation: For native Hexen maps it will now be correct, but all others will have to set a flag in MAPINFO's 'gameinfo' section to avoid problems with numerous ZDoom maps depending on the incorrect implementation.

This commit is contained in:
Christoph Oelckers 2017-08-12 10:20:34 +02:00
parent b4fa95ab15
commit c1de32896c
3 changed files with 6 additions and 1 deletions

View file

@ -376,6 +376,7 @@ void FMapInfoParser::ParseGameInfo()
GAMEINFOKEY_BOOL(drawreadthis, "drawreadthis") GAMEINFOKEY_BOOL(drawreadthis, "drawreadthis")
GAMEINFOKEY_BOOL(swapmenu, "swapmenu") GAMEINFOKEY_BOOL(swapmenu, "swapmenu")
GAMEINFOKEY_BOOL(dontcrunchcorpses, "dontcrunchcorpses") GAMEINFOKEY_BOOL(dontcrunchcorpses, "dontcrunchcorpses")
GAMEINFOKEY_BOOL(correctprintbold, "correctprintbold")
GAMEINFOKEY_BOOL(intermissioncounter, "intermissioncounter") GAMEINFOKEY_BOOL(intermissioncounter, "intermissioncounter")
GAMEINFOKEY_BOOL(nightmarefast, "nightmarefast") GAMEINFOKEY_BOOL(nightmarefast, "nightmarefast")
GAMEINFOKEY_COLOR(dimcolor, "dimcolor") GAMEINFOKEY_COLOR(dimcolor, "dimcolor")

View file

@ -114,6 +114,7 @@ struct gameinfo_t
bool nightmarefast; bool nightmarefast;
bool swapmenu; bool swapmenu;
bool dontcrunchcorpses; bool dontcrunchcorpses;
bool correctprintbold;
TArray<FName> creditPages; TArray<FName> creditPages;
TArray<FName> finalePages; TArray<FName> finalePages;
TArray<FName> infoPages; TArray<FName> infoPages;

View file

@ -8765,6 +8765,9 @@ scriptwait:
if (pcd == PCD_ENDPRINTBOLD || screen == NULL || if (pcd == PCD_ENDPRINTBOLD || screen == NULL ||
screen->CheckLocalView (consoleplayer)) screen->CheckLocalView (consoleplayer))
{ {
if (pcd == PCD_ENDPRINTBOLD && (gameinfo.correctprintbold || (level.flags2 & LEVEL2_HEXENHACK)))
C_MidPrintBold(activefont, work);
else
C_MidPrint (activefont, work); C_MidPrint (activefont, work);
} }
STRINGBUILDER_FINISH(work); STRINGBUILDER_FINISH(work);