ilvlfilter

This commit is contained in:
ArcaneDisgea 2021-08-21 17:42:56 -04:00
parent 3481ef2307
commit 40d65ad35a
2 changed files with 42 additions and 1 deletions

View file

@ -1,6 +1,14 @@
const fetch = require("node-fetch"); const fetch = require("node-fetch");
const path = require("path"); const path = require("path");
const { createCanvas, loadImage, registerFont } = require("canvas"); const { createCanvas, loadImage, registerFont } = require("canvas");
const createilvlfilter = require('./createilvlfilter')
let ilvlarray;
console.log('Generating ilvl filter')
createilvlfilter().then((ilvlfilter) => {
ilvlarray = ilvlfilter;
console.log("ilvl filter generated!")
})
function absolute(relativePath) { function absolute(relativePath) {
return path.join(__dirname, relativePath); return path.join(__dirname, relativePath);
@ -241,6 +249,7 @@ class CardCreator {
var mainHandLvl = 0; var mainHandLvl = 0;
var hasOffHand = false; var hasOffHand = false;
console.log(ilvlarray)
for (var key in gearset) { for (var key in gearset) {
var piece = gearset[key]; var piece = gearset[key];
@ -253,7 +262,12 @@ class CardCreator {
if (key == 'OffHand') if (key == 'OffHand')
hasOffHand = true; hasOffHand = true;
ilvl += piece.Item.LevelItem; if(ilvlarray.includes(piece.Item.ID) == true) {
ilvl += 1;
} else {
ilvl += piece.Item.LevelItem;
}
cnt++; cnt++;
} }

27
createilvlfilter.js Normal file
View file

@ -0,0 +1,27 @@
const fetch = require("node-fetch");
const itemUICategory = [
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 84, 87, 88, 89, 96, 97, 98, 99,
105, 106, 107,
];
async function createilvlfilter() {
let results = [];
for (const category of itemUICategory) {
let url = `https://xivapi.com/search?indexes=item&filters=IsIndisposable=1,ItemUICategoryTargetID=${category}`;
const response = await fetch(url);
const data = response.json();
data.then((payload) => {
if (payload.Pagination.Results === 0) {
return;
}
for (const item of payload.Results) {
let part = item.ID
results.push(part);
}
});
}
return results;
}
module.exports = createilvlfilter