UNPKG

@derin-n/provablyfair

Version:
64 lines (39 loc) 1.78 kB
const fs = require('fs'); const seededFair = require('./seededprovablyfair'); //check if first command line argument is "random" if (process.argv.length == 3 && process.argv[2] == "seed") { //generate random seed seededFair.generateRandomSeed(function (resultSeed) { console.log(resultSeed); //create a line to write to the file let seedLine = "seed: " + resultSeed + "\n"; //save the seed to the seeds.txt file fs.appendFile('seeds.txt', seedLine, 'utf8', function (err) { if (err) return console.log(err); console.log("saved the seed to seeds.txt"); }); }); } //check if the argument is "games" if so generate games as many as the fourth argument, fifth argument will be a predetermined seed, ideally generated by the function above else if (process.argv.length == 5 && process.argv[2] == "games" && !(isNaN(process.argv[3]))) { seededFair.generateChainSeeds(process.argv[4], process.argv[3], function (counter) { fs.writeFile('games.json', JSON.stringify(counter), 'utf8', function (err) { if (err) return console.log(err); console.log("saved the games to games.json"); }); }); } //convert games.json into results.json, fourth argument is host seed else if (process.argv.length == 4 && process.argv[2] == "results") { fs.readFile('games.json', function(err, data){ if(err) throw err; let loadedGames = JSON.parse(data); for(let i = 0; i <= loadedGames['total']; i++){ seededFair.generateResult(process.argv[3], loadedGames[i].gameSeed, function (result) { console.log(result); }); } }); }