From 145d5d21ca0d41e2a4956c76047bda65a00f6dd5 Mon Sep 17 00:00:00 2001 From: James R Date: Tue, 26 Mar 2024 00:13:03 -0700 Subject: [PATCH 1/2] Extern kp_unknownminimap --- src/k_hud.cpp | 2 +- src/k_hud.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/k_hud.cpp b/src/k_hud.cpp index 83d3f7640..18eca9556 100644 --- a/src/k_hud.cpp +++ b/src/k_hud.cpp @@ -90,7 +90,7 @@ patch_t *kp_facenum[MAXPLAYERS+1]; static patch_t *kp_facehighlight[8]; static patch_t *kp_nocontestminimap; -static patch_t *kp_unknownminimap; +patch_t *kp_unknownminimap; static patch_t *kp_spbminimap; static patch_t *kp_wouldyoustillcatchmeifiwereaworm; static patch_t *kp_catcherminimap; diff --git a/src/k_hud.h b/src/k_hud.h index 94ee18343..24adfa195 100644 --- a/src/k_hud.h +++ b/src/k_hud.h @@ -95,6 +95,8 @@ extern patch_t *kp_button_left[2]; extern patch_t *kp_eggnum[6]; extern patch_t *kp_facenum[MAXPLAYERS+1]; +extern patch_t *kp_unknownminimap; + void K_AddMessage(const char *msg, boolean interrupt, boolean persist); void K_AddMessageForPlayer(player_t *player, const char *msg, boolean interrupt, boolean persist); void K_ClearPersistentMessages(void); From bd22f756ddad84fa065ed471288e7c251d40f300 Mon Sep 17 00:00:00 2001 From: James R Date: Tue, 26 Mar 2024 00:15:34 -0700 Subject: [PATCH 2/2] Tally, Intermission: mask not-yet-unlocked characters - Name becomes "???" - Use question mark icon - Silhouette A2 sprite --- src/k_tally.cpp | 2 +- src/y_inter.cpp | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/k_tally.cpp b/src/k_tally.cpp index 3c45152a1..54e9fcae8 100644 --- a/src/k_tally.cpp +++ b/src/k_tally.cpp @@ -425,7 +425,7 @@ void level_tally_t::Init(player_t *player) { snprintf( header, sizeof header, - "%s", skins[player->skin].realname + "%s", R_CanShowSkinInDemo(player->skin) ? skins[player->skin].realname : "???" ); } diff --git a/src/y_inter.cpp b/src/y_inter.cpp index 32cc60368..836b62e23 100644 --- a/src/y_inter.cpp +++ b/src/y_inter.cpp @@ -391,7 +391,7 @@ static void Y_CalculateMatchData(UINT8 rankingsmode, void (*comparison)(INT32)) snprintf(data.headerstring, sizeof data.headerstring, "%s", - skins[players[i].skin].realname); + R_CanShowSkinInDemo(players[i].skin) ? skins[players[i].skin].realname : "???"); } data.showroundnum = true; @@ -558,7 +558,11 @@ void Y_PlayerStandingsDrawer(y_data_t *standings, INT32 xoffset) else { UINT8 *charcolormap = NULL; - if (standings->color[i] != SKINCOLOR_NONE) + if (!R_CanShowSkinInDemo(standings->character[i])) + { + charcolormap = R_GetTranslationColormap(TC_BLINK, static_cast(standings->color[i]), GTC_CACHE); + } + else if (standings->color[i] != SKINCOLOR_NONE) { charcolormap = R_GetTranslationColormap(standings->character[i], static_cast(standings->color[i]), GTC_CACHE); } @@ -646,7 +650,10 @@ void Y_PlayerStandingsDrawer(y_data_t *standings, INT32 xoffset) else { charcolormap = R_GetTranslationColormap(standings->character[i], static_cast(standings->color[i]), GTC_CACHE); - V_DrawMappedPatch(x+14, y-5, 0, faceprefix[standings->character[i]][FACE_MINIMAP], charcolormap); + V_DrawMappedPatch(x+14, y-5, 0, + R_CanShowSkinInDemo(standings->character[i]) ? + faceprefix[standings->character[i]][FACE_MINIMAP] : kp_unknownminimap, + charcolormap); } }