diff --git a/src/g_level.cpp b/src/g_level.cpp index 4fcd544ea..2de1b6543 100644 --- a/src/g_level.cpp +++ b/src/g_level.cpp @@ -762,7 +762,7 @@ void G_DoCompleted (void) // [RH] Mark this level as having been visited if (!(level.flags & LEVEL_CHANGEMAPCHEAT)) - FindLevelInfo (level.MapName)->flags |= LEVEL_VISITED; + level.info->flags |= LEVEL_VISITED; if (automapactive) AM_Stop (); @@ -772,7 +772,7 @@ void G_DoCompleted (void) wminfo.finished_ep = level.cluster - 1; wminfo.LName0 = TexMan.CheckForTexture(level.info->PName, ETextureType::MiscPatch); wminfo.thisname = level.info->LookupLevelName(&langtable[0]); // re-get the name so we have more info about its origin. - wminfo.thisauthor = level.info->AuthorName; + if (!(level.info->flags3 & LEVEL3_HIDEAUTHORNAME)) wminfo.thisauthor = level.info->AuthorName; wminfo.current = level.MapName; if (deathmatch && @@ -799,7 +799,7 @@ void G_DoCompleted (void) wminfo.next = nextinfo->MapName; wminfo.LName1 = TexMan.CheckForTexture(nextinfo->PName, ETextureType::MiscPatch); wminfo.nextname = nextinfo->LookupLevelName(&langtable[1]); - wminfo.nextauthor = nextinfo->AuthorName; + if (!(nextinfo->flags3 & LEVEL3_HIDEAUTHORNAME)) wminfo.nextauthor = nextinfo->AuthorName; } } diff --git a/src/g_level.h b/src/g_level.h index 1b541ebd5..437a7c340 100644 --- a/src/g_level.h +++ b/src/g_level.h @@ -247,6 +247,7 @@ enum ELevelFlags : unsigned int LEVEL3_EXITNORMALUSED = 0x00000020, LEVEL3_EXITSECRETUSED = 0x00000040, LEVEL3_FORCEWORLDPANNING = 0x00000080, // Forces the world panning flag for all textures, even those without it explicitly set. + LEVEL3_HIDEAUTHORNAME = 0x00000100, }; diff --git a/src/g_mapinfo.cpp b/src/g_mapinfo.cpp index e70414fe8..1d3bb2adc 100644 --- a/src/g_mapinfo.cpp +++ b/src/g_mapinfo.cpp @@ -996,6 +996,15 @@ DEFINE_MAP_OPTION(titlepatch, true) { parse.ParseAssign(); parse.ParseLumpOrTextureName(info->PName); + if (parse.format_type == FMapInfoParser::FMT_New) + { + if (parse.sc.CheckString(",")) + { + parse.sc.MustGetNumber(); + if (parse.sc.Number) info->flags3 |= LEVEL3_HIDEAUTHORNAME; + else info->flags3 &= ~LEVEL3_HIDEAUTHORNAME; + } + } } DEFINE_MAP_OPTION(partime, true)