mirror of
https://github.com/gamedig/node-gamedig.git
synced 2024-11-18 01:30:39 +01:00
32 lines
861 B
JavaScript
32 lines
861 B
JavaScript
|
const Core = require('./core');
|
||
|
|
||
|
class Savage2 extends Core {
|
||
|
constructor() {
|
||
|
super();
|
||
|
}
|
||
|
|
||
|
async run(state) {
|
||
|
const buffer = await this.udpSend('\x01',b => b);
|
||
|
const reader = this.reader(buffer);
|
||
|
|
||
|
reader.skip(12);
|
||
|
state.name = this.stripColorCodes(reader.string());
|
||
|
state.players = reader.uint(1);
|
||
|
state.maxplayers = reader.uint(1);
|
||
|
state.raw.time = reader.string();
|
||
|
state.map = reader.string();
|
||
|
state.raw.nextmap = reader.string();
|
||
|
state.raw.location = reader.string();
|
||
|
state.raw.minplayers = reader.uint(1);
|
||
|
state.raw.gametype = reader.string();
|
||
|
state.raw.version = reader.string();
|
||
|
state.raw.minlevel = reader.uint(1);
|
||
|
}
|
||
|
|
||
|
stripColorCodes(str) {
|
||
|
return str.replace(/\^./g,'');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
module.exports = Savage2;
|