diff --git a/src/m_menu.c b/src/m_menu.c index 8be4b7ec3..ee97e9b00 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -4789,17 +4789,17 @@ UINT8 skyRoomMenuTranslations[MAXUNLOCKABLES]; static void M_DrawChecklist(void) { - INT32 i, j = 0, y = currentMenu->y; + INT32 i = 0, j = 0, y = currentMenu->y; UINT32 condnum, previd, maxcond; condition_t *cond; - for (i = 0; i < MAXUNLOCKABLES;) + while (i < MAXUNLOCKABLES) { if (unlockables[i].name[0] == 0 //|| unlockables[i].nochecklist || !unlockables[i].conditionset || unlockables[i].conditionset > MAXCONDITIONSETS) continue; - V_DrawString(currentMenu->x, y, ((unlockables[i].unlocked) ? V_GREENMAP : V_TRANSLUCENT), ((unlockables[i].unlocked) ? unlockables[i].name : M_CreateSecretMenuOption(unlockables[i].name))); + V_DrawString(currentMenu->x, y, ((unlockables[i].unlocked) ? V_GREENMAP : V_TRANSLUCENT), ((unlockables[i].unlocked || !unlockables[i].nochecklist) ? unlockables[i].name : M_CreateSecretMenuOption(unlockables[i].name))); for (j = i+1; j < MAXUNLOCKABLES; j++) { @@ -4834,9 +4834,9 @@ static void M_DrawChecklist(void) char *title = G_BuildMapTitle(cond[condnum].requirement); if (title) { - V_DrawString(currentMenu->x + 8, y, V_ALLOWLOWERCASE, va("%s %s", + V_DrawString(currentMenu->x, y, V_ALLOWLOWERCASE, va("\x1E %s %s", ((cond[condnum].type == UC_MAPPERFECT) ? "Get every ring in" : "Complete"), - ((M_MapLocked(cond[condnum].requirement) || (!(mapheaderinfo[cond[condnum].requirement-1]->menuflags & LF2_NOVISITNEEDED) || mapvisited[cond[condnum].requirement-1])) ? M_CreateSecretMenuOption(title) : title))); + ((M_MapLocked(cond[condnum].requirement) || !((mapheaderinfo[cond[condnum].requirement-1]->menuflags & LF2_NOVISITNEEDED) || mapvisited[cond[condnum].requirement-1])) ? M_CreateSecretMenuOption(title) : title))); Z_Free(title); } } @@ -4846,24 +4846,24 @@ static void M_DrawChecklist(void) { const char *emeraldtext = ((cond[condnum].type == UC_ALLEMERALDS) ? " with all emeralds" : ""); if (cond[condnum].requirement != 1) - V_DrawString(currentMenu->x + 8, y, - V_ALLOWLOWERCASE,va("Complete the game %d times%s", + V_DrawString(currentMenu->x, y, + V_ALLOWLOWERCASE,va("\x1E Complete the game %d times%s", cond[condnum].requirement, emeraldtext)); else - V_DrawString(currentMenu->x + 8, y, + V_DrawString(currentMenu->x, y, V_ALLOWLOWERCASE, - va("Complete the game%s", emeraldtext)); + va("\x1E Complete the game%s", emeraldtext)); } break; case UC_TOTALEMBLEMS: - V_DrawString(currentMenu->x + 8, y, + V_DrawString(currentMenu->x, y, V_ALLOWLOWERCASE, - va("Collect %s%d emblems", ((M_CountEmblems() == cond[condnum].requirement) ? "all " : ""), cond[condnum].requirement)); + va("\x1E Collect %s%d emblems", ((M_CountEmblems() == cond[condnum].requirement) ? "all " : ""), cond[condnum].requirement)); break; default: - V_DrawString(currentMenu->x + 8, y, + V_DrawString(currentMenu->x, y, V_ALLOWLOWERCASE, - va("id %d, type %d, req %d", cond[condnum].id, cond[condnum].type, cond[condnum].requirement)); + va("\x1E id %d, type %d, req %d", cond[condnum].id, cond[condnum].type, cond[condnum].requirement)); break; } previd = cond[condnum].id;