Remove W_CachePatchName, everything's safe

Menu headerpics, menuitem patches and old-style map thumbnails/minimaps now
support longnames
This commit is contained in:
GenericHeroGuy 2025-06-25 23:42:36 +02:00
parent 5aaa72e10a
commit d37b987acb
7 changed files with 17 additions and 18 deletions

View file

@ -768,7 +768,7 @@ void F_CreditDrawer(void)
sc = FRACUNIT; // quick hack so I don't have to add another field to credits_pics
}
V_DrawFixedPatch(credits_pics[i].x<<FRACBITS, (credits_pics[i].y<<FRACBITS) - 4*(animtimer<<FRACBITS)/5, sc, 0, W_CachePatchName(credits_pics[i].patch, PU_CACHE), colormap);
V_DrawFixedPatch(credits_pics[i].x<<FRACBITS, (credits_pics[i].y<<FRACBITS) - 4*(animtimer<<FRACBITS)/5, sc, 0, W_CachePatchLongName(credits_pics[i].patch, PU_CACHE), colormap);
}
// Dim the background

View file

@ -386,7 +386,7 @@ void K_LoadKartHUDGraphics(void)
for (size_t m = 0; m < sizeof(patchNames) / sizeof(patchNames[0]); ++m)
{
kp_kartzspeedo[m] = W_CachePatchName(patchNames[m], PU_HUDGFX);
kp_kartzspeedo[m] = W_CachePatchLongName(patchNames[m], PU_HUDGFX);
}
}
@ -1541,7 +1541,7 @@ void K_drawKartTimestamp(tic_t drawtime, INT32 TX, INT32 TY, INT16 emblemmap, UI
if (emblem->collected)
{
emblempic[curemb] = W_CachePatchName(M_GetEmblemPatch(emblem, false), PU_CACHE);
emblempic[curemb] = W_CachePatchLongName(M_GetEmblemPatch(emblem, false), PU_CACHE);
emblemcol[curemb] = R_GetTranslationColormap(TC_DEFAULT, M_GetEmblemColor(emblem), GTC_CACHE);
if (++curemb == 3)
break;

View file

@ -2205,7 +2205,7 @@ static void M_DrawMapEmblems(INT32 mapnum, INT32 x, INT32 y)
lasttype = curtype;
if (emblem->collected)
V_DrawSmallMappedPatch(x, y, 0, W_CachePatchName(M_GetEmblemPatch(emblem, false), PU_CACHE),
V_DrawSmallMappedPatch(x, y, 0, W_CachePatchLongName(M_GetEmblemPatch(emblem, false), PU_CACHE),
R_GetTranslationColormap(TC_DEFAULT, M_GetEmblemColor(emblem), GTC_MENUCACHE));
else
V_DrawSmallScaledPatch(x, y, 0, W_CachePatchLongName("NEEDIT", PU_CACHE));
@ -2219,7 +2219,7 @@ static void M_DrawMenuTitle(void)
{
if (currentMenu->headerpic)
{
patch_t *p = W_CachePatchName(currentMenu->headerpic, PU_CACHE);
patch_t *p = W_CachePatchLongName(currentMenu->headerpic, PU_CACHE);
if (p->height > 24) // title is larger than normal
{
@ -2492,7 +2492,7 @@ static INT32 M_DrawMenuItem(menuitem_t *item, INT16 x, INT16 y, INT32 vflags, bo
if (!item->patch)
return 0;
p = W_CachePatchName(item->patch, PU_CACHE);
p = W_CachePatchLongName(item->patch, PU_CACHE);
break;
}
}
@ -4286,14 +4286,14 @@ void MD_DrawPlaybackMenu(void)
inactivemap = R_GetTranslationColormap(players[ply].skin, players[ply].skincolor, GTC_MENUCACHE);
}
else if (currentMenu->menuitems[i].patch && W_CheckNumForName(currentMenu->menuitems[i].patch) != LUMPERROR)
icon = W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE);
icon = W_CachePatchLongName(currentMenu->menuitems[i].patch, PU_CACHE);
else
icon = W_CachePatchLongName("PLAYRANK", PU_CACHE); // temp
}
else if (currentMenu->menuitems[i].status & IT_HIDDEN)
continue;
else if (currentMenu->menuitems[i].patch && W_CheckNumForName(currentMenu->menuitems[i].patch) != LUMPERROR)
icon = W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE);
icon = W_CachePatchLongName(currentMenu->menuitems[i].patch, PU_CACHE);
else
icon = W_CachePatchLongName("PLAYRANK", PU_CACHE); // temp
@ -5305,7 +5305,7 @@ static void M_DrawStatsMaps(void)
exemblem = &extraemblems[i];
if (exemblem->collected)
V_DrawSmallMappedPatch(295, y, 0, W_CachePatchName(M_GetExtraEmblemPatch(exemblem, false), PU_CACHE),
V_DrawSmallMappedPatch(295, y, 0, W_CachePatchLongName(M_GetExtraEmblemPatch(exemblem, false), PU_CACHE),
R_GetTranslationColormap(TC_DEFAULT, M_GetExtraEmblemColor(exemblem), GTC_MENUCACHE));
else
V_DrawSmallScaledPatch(295, y, 0, W_CachePatchLongName("NEEDIT", PU_CACHE));
@ -7804,11 +7804,11 @@ void MD_DrawMonitorToggles(void)
if (drawnum != 0)
{
V_DrawScaledPatch(x, y, 0, W_CachePatchLongName("K_ISMUL", PU_CACHE));
V_DrawScaledPatch(x, y, translucent, W_CachePatchName(K_GetItemPatch(currentMenu->menuitems[thisitem].argument, true), PU_CACHE));
V_DrawScaledPatch(x, y, translucent, W_CachePatchLongName(K_GetItemPatch(currentMenu->menuitems[thisitem].argument, true), PU_CACHE));
V_DrawString(x+24, y+31, V_ALLOWLOWERCASE|translucent, va("x%d", drawnum));
}
else
V_DrawScaledPatch(x, y, translucent, W_CachePatchName(K_GetItemPatch(currentMenu->menuitems[thisitem].argument, true), PU_CACHE));
V_DrawScaledPatch(x, y, translucent, W_CachePatchLongName(K_GetItemPatch(currentMenu->menuitems[thisitem].argument, true), PU_CACHE));
y += spacing;
}
@ -7862,12 +7862,12 @@ void MD_DrawMonitorToggles(void)
if (drawnum != 0)
{
V_DrawScaledPatch(onx-1, ony-2, 0, W_CachePatchLongName("K_ITMUL", PU_CACHE));
V_DrawScaledPatch(onx-1, ony-2, translucent, W_CachePatchName(K_GetItemPatch(currentMenu->menuitems[itemOn].argument, false), PU_CACHE));
V_DrawScaledPatch(onx-1, ony-2, translucent, W_CachePatchLongName(K_GetItemPatch(currentMenu->menuitems[itemOn].argument, false), PU_CACHE));
V_DrawScaledPatch(onx+27, ony+39, translucent, W_CachePatchLongName("K_ITX", PU_CACHE));
V_DrawKartString(onx+37, ony+34, translucent, va("%d", drawnum));
}
else
V_DrawScaledPatch(onx-1, ony-2, translucent, W_CachePatchName(K_GetItemPatch(currentMenu->menuitems[itemOn].argument, false), PU_CACHE));
V_DrawScaledPatch(onx-1, ony-2, translucent, W_CachePatchLongName(K_GetItemPatch(currentMenu->menuitems[itemOn].argument, false), PU_CACHE));
}
}

View file

@ -9191,7 +9191,7 @@ UINT8 P_InitMapData(boolean existingmapheaders)
// okay... try finding them the old-fashioned way
else
{
oldPic = W_CachePatchName(va("%sP", name), PU_STATIC);
oldPic = W_CachePatchLongName(va("%sP", name), PU_STATIC);
if (oldPic != missingpat)
mapheaderinfo[i]->thumbnailPic = oldPic;
}
@ -9202,7 +9202,7 @@ UINT8 P_InitMapData(boolean existingmapheaders)
}
else
{
oldPic = W_CachePatchName(va("%sR", name), PU_STATIC);
oldPic = W_CachePatchLongName(va("%sR", name), PU_STATIC);
if (oldPic != missingpat)
mapheaderinfo[i]->minimapPic = oldPic;
}

View file

@ -1473,7 +1473,7 @@ static void R_ProjectDropShadow(
if (shadowpatch == NULL)
{
shadowpatch = static_cast<patch_t*>(W_CachePatchName("DSHADOW", PU_SPRITE));
shadowpatch = static_cast<patch_t*>(W_CachePatchLongName("DSHADOW", PU_SPRITE));
}
patch = shadowpatch;

View file

@ -185,7 +185,6 @@ boolean W_IsPatchCached(lumpnum_t lump, void *ptr);
boolean W_NeedPaletteRemapPwad(UINT16 wad, UINT16 lump, boolean ignorecache);
boolean W_NeedPaletteRemap(lumpnum_t lump, boolean ignorecache);
#define W_CachePatchName(name, tag) W_CachePatchLongName(W_ShortName(name), tag)
void *W_CachePatchLongName(const char *name, INT32 tag);
// Returns either a Software patch, or an OpenGL patch.

View file

@ -1154,7 +1154,7 @@ static inline void Y_DrawAnimatedVoteScreenPatch(boolean widePatch)
currentAnimFrame = 0;
}
patch_t *background = W_CachePatchName(va("%s%d", tempAnimPrefix, currentAnimFrame + 1), PU_CACHE);
patch_t *background = W_CachePatchLongName(va("%s%d", tempAnimPrefix, currentAnimFrame + 1), PU_CACHE);
V_DrawScaledPatch(((vid.width/2) / vid.dupx) - (SHORT(background->width)/2), // Keep the width/height adjustments, for screens that are less wide than 320(?)
(vid.height / vid.dupy) - SHORT(background->height),
V_SNAPTOTOP|V_SNAPTOLEFT, background);