Completed
Push — master ( a67404...e0fab0 )
by Andres
31s
created

build_scripts/generate_upgrade_functions.js   A

Complexity

Total Complexity 4
Complexity/F 0

Size

Lines of Code 46
Function Count 0

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 4
wmc 4
c 1
b 0
f 0
nc 8
mnd 3
bc 4
fnc 0
dl 0
loc 46
rs 10
bpm 0
cpm 0
noi 3
1
/* eslint-env node */
2
/*jslint node: true */
3
'use strict';
4
5
const jsonfile = require('jsonfile');
6
const template = require('lodash.template');
7
const crypto = require('crypto');
0 ignored issues
show
Unused Code introduced by
The constant crypto seems to be never used. Consider removing it.
Loading history...
8
const fs = require('fs');
9
10
const args = process.argv.slice(2);
11
12
let upgrades = jsonfile.readFileSync(args[0]+'/data/upgrades.json');
13
let generators = jsonfile.readFileSync(args[0]+'/data/generators.json');
14
let upgradeComponent = fs.readFileSync(args[0]+'/scripts/component/nova.js').toString();
15
16
for(let key in upgrades){
17
  let upgrade = upgrades[key];
18
  for(let generator of upgrade.tiers){
19
    if(!generators[generator].upgrades){
20
      generators[generator].upgrades = [];
21
    }
22
    generators[generator].upgrades.push(key);
23
  }
24
}
25
26
const FUNCTION_TEMPLATE = `this.<%= name %> = function (player){
27
  return <%= progress %>;
28
};`;
29
30
let functionTemplate = template(FUNCTION_TEMPLATE);
0 ignored issues
show
Unused Code introduced by
The variable functionTemplate seems to be never used. Consider removing it.
Loading history...
31
32
let functions = {};
33
34
let concatFunctions = '';
35
for(let i in functions){
36
  concatFunctions += functions[i]+'\n';
37
}
38
39
let componentTemplate = template(upgradeComponent);
0 ignored issues
show
Unused Code introduced by
The variable componentTemplate seems to be never used. Consider removing it.
Loading history...
40
41
//fs.writeFileSync(args[0]+'/scripts/component/nova.js', componentTemplate({'functions': concatFunctions}));
42
43
jsonfile.writeFileSync(args[0] + '/data/upgrades.json', upgrades, {
44
  spaces: 2
45
});
46
jsonfile.writeFileSync(args[0] + '/data/generators.json', generators, {
47
  spaces: 2
48
});
49