- filter out the BIGFONT lump in Chex Quest, now that we have a more complete font internally.

This commit is contained in:
Christoph Oelckers 2019-03-03 07:49:21 +01:00
parent dccdf083a4
commit f3813c036f
5 changed files with 13 additions and 1 deletions

View file

@ -133,6 +133,7 @@ void FIWadManager::ParseIWadInfo(const char *fn, const char *data, int datasize,
{ {
sc.MustGetString(); sc.MustGetString();
if(sc.Compare("NoTextcolor")) iwad->flags |= GI_NOTEXTCOLOR; if(sc.Compare("NoTextcolor")) iwad->flags |= GI_NOTEXTCOLOR;
else if (sc.Compare("NoBigFont")) iwad->flags |= GI_IGNOREBIGFONTLUMP;
else if(sc.Compare("Poly1")) iwad->flags |= GI_COMPATPOLY1; else if(sc.Compare("Poly1")) iwad->flags |= GI_COMPATPOLY1;
else if(sc.Compare("Poly2")) iwad->flags |= GI_COMPATPOLY2; else if(sc.Compare("Poly2")) iwad->flags |= GI_COMPATPOLY2;
else if(sc.Compare("Shareware")) iwad->flags |= GI_SHAREWARE; else if(sc.Compare("Shareware")) iwad->flags |= GI_SHAREWARE;

View file

@ -50,6 +50,7 @@ enum
GI_COMPATPOLY2 = 0x00000080, // so does HEXDD's MAP47 GI_COMPATPOLY2 = 0x00000080, // so does HEXDD's MAP47
GI_NOTEXTCOLOR = 0x00000100, // Chex Quest 3 would have everything green GI_NOTEXTCOLOR = 0x00000100, // Chex Quest 3 would have everything green
GI_IGNORETITLEPATCHES = 0x00000200, // Ignore the map name graphics when not runnning in English language GI_IGNORETITLEPATCHES = 0x00000200, // Ignore the map name graphics when not runnning in English language
GI_IGNOREBIGFONTLUMP = 0x00000400, // Needed for Chex Quest 3, so that the extended internal font can be used instead.
}; };
#include "gametype.h" #include "gametype.h"

View file

@ -897,6 +897,15 @@ void FWadCollection::RenameSprites ()
// Rename the game specific big font lumps so that the font manager does not have to do problematic special checks for them. // Rename the game specific big font lumps so that the font manager does not have to do problematic special checks for them.
if (!strcmp(LumpInfo[i].lump->Name, altbigfont)) if (!strcmp(LumpInfo[i].lump->Name, altbigfont))
strcpy(LumpInfo[i].lump->Name, "BIGFONT"); strcpy(LumpInfo[i].lump->Name, "BIGFONT");
if (LumpInfo[i].wadnum == GetIwadNum() && gameinfo.flags & GI_IGNOREBIGFONTLUMP)
{
if (!strcmp(LumpInfo[i].lump->Name, "BIGFONT"))
{
LumpInfo[i].lump->Name[0] = 0;
}
}
} }
} }
} }

View file

@ -489,6 +489,7 @@ void GLWall::PutPortal(HWDrawInfo *di, int ptype, int plane)
{ {
auto pstate = screen->mPortalState; auto pstate = screen->mPortalState;
HWPortal * portal = nullptr; HWPortal * portal = nullptr;
return;
MakeVertices(di, false); MakeVertices(di, false);
switch (ptype) switch (ptype)

View file

@ -104,7 +104,7 @@ IWad
Config = "Chex" Config = "Chex"
IWADName = "chex3.wad" IWADName = "chex3.wad"
Mapinfo = "mapinfo/chex.txt" Mapinfo = "mapinfo/chex.txt"
Compatibility = "NoTextcolor" Compatibility = "NoTextcolor", "IgnoreBigFontLump"
MustContain = "E1M1", "CYCLA1", "FLMBA1", "MAPINFO" MustContain = "E1M1", "CYCLA1", "FLMBA1", "MAPINFO"
BannerColors = "ff ff 00", "00 c0 00" BannerColors = "ff ff 00", "00 c0 00"
} }