Rainer/src/inc/lib.mjs
2024-01-09 13:14:43 +01:00

35 lines
883 B
JavaScript

import { exec as _exec } from 'node:child_process';
import fetch from 'node-fetch';
export default new class {
exec(cmd) {
return new Promise((resolve, reject) => {
_exec(cmd, { maxBuffer: 5e3 * 1024 }, (err, stdout, stderr) => {
if(err)
return reject(err);
if(stderr)
console.error(stderr);
resolve({ stdout: stdout });
});
});
};
rand(max = 1) {
return ~~(Math.random() * (max - 1) + 1);
};
async getPlayerlist(world, clanid) {
const res = await (await fetch(`https://${world}.freewar.de/freewar/dump_players.php`)).text();
return res.split("\n").map(p => {
const player = p.split("\t");
return {
id: +player[0],
name: player[1],
xp: +player[2],
rasse: player[3],
clanid: +player[4]
};
}).filter(p => p.clanid === clanid)
};
};