diff options
Diffstat (limited to '')
| -rw-r--r-- | web/worker.mjs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/web/worker.mjs b/web/worker.mjs index 0cb618b..12de1dc 100644 --- a/web/worker.mjs +++ b/web/worker.mjs | |||
| @@ -8,6 +8,7 @@ const commands = [ | |||
| 8 | { name: "load solver data", exec: loadSolverDataFromStorage }, | 8 | { name: "load solver data", exec: loadSolverDataFromStorage }, |
| 9 | { name: "download solver data", exec: downloadSolverData }, | 9 | { name: "download solver data", exec: downloadSolverData }, |
| 10 | { name: "generate solver data", exec: generateSolverData }, | 10 | { name: "generate solver data", exec: generateSolverData }, |
| 11 | { name: "validate scramble", exec: validateScramble }, | ||
| 11 | { name: "solve", exec: solve }, | 12 | { name: "solve", exec: solve }, |
| 12 | ]; | 13 | ]; |
| 13 | 14 | ||
| @@ -45,7 +46,7 @@ async function loadSolverDataFromStorage(id, solver) { | |||
| 45 | }); | 46 | }); |
| 46 | 47 | ||
| 47 | if (!(await nissy.isSolverAvailable(solver))) { | 48 | if (!(await nissy.isSolverAvailable(solver))) { |
| 48 | async_return(false, "Error: solver " + arg.solver + | 49 | async_return(false, "Error: solver " + solver + |
| 49 | " is not available in this version of nissy."); | 50 | " is not available in this version of nissy."); |
| 50 | return; | 51 | return; |
| 51 | } | 52 | } |
| @@ -113,6 +114,19 @@ async function generateSolverData(id, solver) { | |||
| 113 | } | 114 | } |
| 114 | } | 115 | } |
| 115 | 116 | ||
| 117 | // Check if the scramble is valid. | ||
| 118 | // Argument: string (the scramble). | ||
| 119 | async function validateScramble(id, arg) { | ||
| 120 | const async_return = (success) => postMessage({ | ||
| 121 | command: "validate scramble", | ||
| 122 | id: id, | ||
| 123 | arg: success | ||
| 124 | }); | ||
| 125 | |||
| 126 | var cube = new nissy.Cube(); | ||
| 127 | async_return(cube.move(arg).ok()); | ||
| 128 | } | ||
| 129 | |||
| 116 | // Solve the cube with the given options. | 130 | // Solve the cube with the given options. |
| 117 | // Argument: { | 131 | // Argument: { |
| 118 | // solver: string | 132 | // solver: string |
