Browse Source

增加修改时间的记录

tags/v8.0
枫谷剑仙 6 years ago
parent
commit
af97d27e05
2 changed files with 34 additions and 16 deletions
  1. +1
    -1
      monsters-info/ckey.json
  2. +33
    -15
      monsters-info/extractByNode.js

+ 1
- 1
monsters-info/ckey.json View File

@@ -1 +1 @@
[{"code":"ja","ckey":{"card":"d446b5fec86071f60f2dab2603e25924","skill":"736a1e42905a7548a6a1810e20a2ffd7"}},{"code":"en","ckey":{"card":"2dd8f556c7fdef278cd8642632551caa","skill":"06d6b0d185fd62626a7e2d122a263c8d"}},{"code":"ko","ckey":{"card":"52a20a4065bf9fa8189e6106b677356d","skill":"3159dbdf10a8939d9c98f714464d5a85"}}]
[{"code":"ja","ckey":{"card":"d446b5fec86071f60f2dab2603e25924","skill":"736a1e42905a7548a6a1810e20a2ffd7"},"updateTime":1584110808161},{"code":"en","ckey":{"card":"2dd8f556c7fdef278cd8642632551caa","skill":"06d6b0d185fd62626a7e2d122a263c8d"},"updateTime":1584110808161},{"code":"ko","ckey":{"card":"52a20a4065bf9fa8189e6106b677356d","skill":"3159dbdf10a8939d9c98f714464d5a85"},"updateTime":1584110808161}]

+ 33
- 15
monsters-info/extractByNode.js View File

@@ -2,21 +2,19 @@
const crypto = require('crypto');
const Card = require('./official-API/parseCard');
const Skill = require('./official-API/parseSkill');
const runDate = new Date();
var officialAPI = [ //来源于官方API
{
code:"ja",
customName:["cht","chs"],
ckey:{card:null,skill:null}
customName:["cht","chs"]
},
{
code:"en",
customName:[],
ckey:{card:null,skill:null}
customName:[]
},
{
code:"ko",
customName:[],
ckey:{card:null,skill:null}
customName:[]
}
];
@@ -37,8 +35,8 @@ function sameCard(m1,m2)
/*
* 正式流程
*/
officialAPI.forEach(function(lang){
console.log("正在读取官方 " + lang.code + " 信息");
officialAPI.forEach(function(lang) {
console.log("正在读取官方 %s 信息",lang.code);
const cardJson = fs.readFileSync("official-API/" + lang.code +".json", 'utf-8'); //使用同步读取怪物
const cardJsonObj = JSON.parse(cardJson);
const oCards = lang.cardOriginal = cardJsonObj.card;//将字符串转换为json对象
@@ -149,7 +147,7 @@ for (let li = 0;li < officialAPI.length; li++)
}
}
var ckeyObj = officialAPI.map(lang=>{
var newCkeyObjs = officialAPI.map(lang=>{
const lcode = lang.code;
const cardStr = JSON.stringify(lang.cards);
const skillStr = JSON.stringify(lang.skills);
@@ -180,12 +178,32 @@ var ckeyObj = officialAPI.map(lang=>{
card: cardHash.digest('hex'),
skill: skillHash.digest('hex'),
},
updateTime: runDate.getTime(),
};
return ckeyOutObj;
})
fs.writeFile('./ckey.json',JSON.stringify(ckeyObj),function(err){
if(err){
console.error(err);
}
console.log('ckey.json 导出成功');
});
//读取旧的ckeyObj
var ckeyObjs;
fs.readFile('./ckey.json','utf-8',function(err,data){
if(err)
{ //如果读取错误,直接使用全新ckey
ckeyObjs = newCkeyObjs;
} else
{ //如果读取正确,则读入JSON,并判断是否和旧有的一致
ckeyObjs = JSON.parse(data);
ckeyObjs.forEach(ockey=>{
const newCkey = newCkeyObjs.find(nckey=>nckey.code === ockey.code);
if (newCkey && (ockey.ckey.card != newCkey.ckey.card || ockey.ckey.skill != newCkey.ckey.skill))
{
ockey = newCkey;
}
})
}
fs.writeFile('./ckey.json',JSON.stringify(ckeyObjs),function(err){
if(err){
console.error(err);
}
console.log('ckey.json 导出成功');
});
});

Loading…
Cancel
Save