UNPKG

scramby

Version:

Generates scrambles for twisty puzzles.

37 lines (28 loc) 1.24 kB
#!/usr/bin/env node 'use strict'; var scramby = require('.'); var meow = require('meow'); var _require = require('chalk'), red = _require.red; var template = '\n Usage\n $ scramby\n\n Options\n --puzzle, -p Specify which puzzle you want a scramble for (222 - 777).\n --count, -c The amount of scrambles you want.\n\n Examples\n $ scramby\n F L2 B\' D2 F\' R2 U2 F\' L2 B2 F\' R\' F\' R\' D R\' D R U F\' R\n\n $ scramby -c 2\n F\' D2 B L2 F D2 U2 B F2 U2 F L F U2 R D2 U\' R B L2 F\'\n U2 R\' D2 L\' F2 D2 L D2 F2 D2 L B\' D U2 B2 L F L B R U\'\n\n $ scramby -p 222 -c 2\n F U F\' U2 R U F R\' F\n U\' R\' U R F R\' F2 R\'\n'; var options = { alias: { p: 'puzzle', c: 'count' } }; var cli = meow(template, options); var _cli$flags = cli.flags, puzzle = _cli$flags.puzzle, _cli$flags$count = _cli$flags.count, count = _cli$flags$count === undefined ? 1 : _cli$flags$count; try { var scrambler = scramby(puzzle); var scrambles = []; for (var i = 0; i < count; i++) { scrambles.push(scrambler.getRandomScramble().scrambleString); } console.log(scrambles.join('\n')); } catch (err) { console.error(red(err.message)); }