Skip to content

Commit

Permalink
Merge pull request #9 from Owstin/develop
Browse files Browse the repository at this point in the history
3x3 subset scramblers with args!
  • Loading branch information
Owstin authored Apr 18, 2020
2 parents a223da6 + fc01359 commit e20198c
Show file tree
Hide file tree
Showing 37 changed files with 3,099 additions and 2,597 deletions.
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"name": "scrambow",
"version": "1.1.0",
"version": "1.2.0",
"description": "Javascript Rubik's Cube Scramble Generator ",
"repository": {
"type": "git",
"url": "git://github.com/Owstin/scrambo.git"
"url": "git://github.com/Owstin/scrambow.git"
},
"keywords": [
"scramble",
Expand All @@ -16,7 +16,7 @@
"author": "Austin Moore <[email protected]>",
"license": "MIT",
"bugs": {
"url": "https://github.com/Owstin/scrambo/issues"
"url": "https://github.com/Owstin/scrambow/issues"
},
"main": "./dist/scrambow.js",
"bin": {
Expand Down
3 changes: 2 additions & 1 deletion src/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,11 @@ cli
.parse(process.argv);

const out = new Scrambow();
let scrambles: Array<Scramble>;
let scrambles: Scramble[];

try {
out.setType(cli.type.toLowerCase());
out.setArgs(cli.args);
if (cli.seed) {
out.setSeed(cli.seed);
}
Expand Down
35 changes: 10 additions & 25 deletions src/scramblers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,32 +11,17 @@ interface Scrambler {
version?: string;
initialize: (randomSource: Seed) => Function | void;
setRandomSource: (randomSource: Seed) => void;
getRandomScramble: () => Scramble;
getRandomScramble: (args?: string[]) => Scramble;
setScrambleLength: (length: number) => void;
}

interface Scramblers {
[key: string]: Scrambler
}
type Scramblers = Record<string, Scrambler>;

export const scramblers: Scramblers = {};

const register = (scramblers: Scramblers) =>
(name: string, scrambler: Scrambler) => {
scramblers[name] = scrambler;
};

export let scramblers: Scramblers = {};
scramblers = require('./scramblers/NNN.js');
scramblers['222'] = require('./scramblers/222.js');
scramblers['333'] = require('./scramblers/333/standard.js');
scramblers.edges = require('./scramblers/333/edges.js');
scramblers.ll = require('./scramblers/333/ll.js');
scramblers.lsll = require('./scramblers/333/lsll.js');
scramblers.zzlsll = require('./scramblers/333/zzlsll.js');
scramblers.nls = require('./scramblers/333/nls.js');
scramblers.pll = require('./scramblers/333/pll.js');
scramblers.zzll = require('./scramblers/333/zzll.js');
scramblers.cmll = require('./scramblers/333/cmll.js');
scramblers.cmllsune = require('./scramblers/333/cmllsune.js');
scramblers.ble = require('./scramblers/333/ble.js');
scramblers.lccp = require('./scramblers/333/lccp.js');
scramblers.wv = require('./scramblers/333/wv.js');
scramblers.clock = require('./scramblers/clock.js');
scramblers.minx = require('./scramblers/minx.js');
scramblers.pyram = require('./scramblers/pyram.js');
scramblers.sq1 = require('./scramblers/sq1.js');
scramblers.skewb = require('./scramblers/skewb.js');
require('./scramblers/index.js')(register(scramblers));
Loading

0 comments on commit e20198c

Please sign in to comment.