2023-11-12 12:14:43 +01:00
|
|
|
import Core from './core.js'
|
|
|
|
|
|
|
|
export default class mumbleping extends Core {
|
|
|
|
constructor () {
|
|
|
|
super()
|
|
|
|
this.byteorder = 'be'
|
|
|
|
}
|
|
|
|
|
|
|
|
async run (state) {
|
|
|
|
const data = await this.udpSend('\x00\x00\x00\x00\x01\x02\x03\x04\x05\x06\x07\x08', (buffer) => {
|
|
|
|
if (buffer.length >= 24) return buffer
|
|
|
|
})
|
|
|
|
|
|
|
|
const reader = this.reader(data)
|
|
|
|
reader.skip(1)
|
|
|
|
state.raw.versionMajor = reader.uint(1)
|
|
|
|
state.raw.versionMinor = reader.uint(1)
|
|
|
|
state.raw.versionPatch = reader.uint(1)
|
2024-02-24 19:46:40 +01:00
|
|
|
state.version = state.raw.versionMajor + '.' + state.raw.versionMinor + '.' + state.raw.versionPatch
|
2023-11-12 12:14:43 +01:00
|
|
|
reader.skip(8)
|
|
|
|
state.numplayers = reader.uint(4)
|
|
|
|
state.maxplayers = reader.uint(4)
|
|
|
|
state.raw.allowedbandwidth = reader.uint(4)
|
|
|
|
}
|
|
|
|
}
|