node-gamedig/protocols/fivem.js
Michael Morrison fec5a1fac6 Fix raw player subobject in fivem, assettocorsa, gamespy2 Fixes #222
Clarify nodejs 12 requirement for gamedig 3 Fixes #220
Release 3.0.1
2021-04-10 22:27:33 -05:00

36 lines
956 B
JavaScript

const Quake2 = require('./quake2');
class FiveM extends Quake2 {
constructor() {
super();
this.sendHeader = 'getinfo xxx';
this.responseHeader = 'infoResponse';
this.encoding = 'utf8';
}
async run(state) {
await super.run(state);
{
const json = await this.request({
url: 'http://' + this.options.address + ':' + this.options.port + '/info.json',
responseType: 'json'
});
state.raw.info = json;
}
{
const json = await this.request({
url: 'http://' + this.options.address + ':' + this.options.port + '/players.json',
responseType: 'json'
});
state.raw.players = json;
for (const player of json) {
state.players.push({name: player.name, ping: player.ping});
}
}
}
}
module.exports = FiveM;