From f16246f93923b33774fb667e19bded081b9c8107 Mon Sep 17 00:00:00 2001 From: omuretsu <84951833+Snarling@users.noreply.github.com> Date: Tue, 28 Feb 2023 09:14:12 -0500 Subject: [PATCH] Fix Math Expressions contract Previously player could submit as many wrong answers in the solution as they wanted, as long as all correct answers were included. Fixed by ensuring length matches actual answer. --- src/data/codingcontracttypes.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/data/codingcontracttypes.ts b/src/data/codingcontracttypes.ts index 9342614d6..e6450ad21 100644 --- a/src/data/codingcontracttypes.ts +++ b/src/data/codingcontracttypes.ts @@ -1271,6 +1271,8 @@ export const codingContractTypesMetadata: ICodingContractTypeMetadata[] = [ const result: string[] = []; helper(result, "", num, target, 0, 0, 0); + // Prevent player from providing extra wrong answers and still receiving credit + if (result.length !== sanitizedPlayerAnsArr.length) return false; for (const expr of result) { if (!sanitizedPlayerAnsArr.includes(expr)) {