UC_EMBLEM: Require emblem to be valid before reading collected

This commit is contained in:
toaster 2025-08-17 13:10:26 +01:00
parent 2f6d7230f0
commit 2033c75500

View file

@ -1655,7 +1655,12 @@ boolean M_CheckCondition(condition_t *cn, player_t *player)
case UC_TOTALMEDALS: // Requires number of emblems >= x
return (M_GotEnoughMedals(cn->requirement));
case UC_EMBLEM: // Requires emblem x to be obtained
return gamedata->collected[cn->requirement-1];
{
INT32 i = cn->requirement-1;
if (i >= 0 && i < numemblems && emblemlocations[i].type != ET_NONE)
return gamedata->collected[cn->requirement-1];
return false;
}
case UC_UNLOCKABLE: // Requires unlockable x to be obtained
return gamedata->unlocked[cn->requirement-1];
case UC_CONDITIONSET: // requires condition set x to already be achieved