Merge pull request #236 from podrivo/dayz-updates

Parse additional dayz tags: first person, dlc enabled and time
This commit is contained in:
Michael Morrison 2022-02-05 19:28:30 -06:00 committed by GitHub
commit 685a955233
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -261,10 +261,11 @@ class Valve extends Core {
}
}
// DayZ embeds some of the server information inside the tags attribute
if (appId === AppId.DayZ) {
state.raw.dayzMods = this.readDayzMods(Buffer.from(dayZPayload));
if (state.raw.tags) {
state.raw.dlcEnabled = false
state.raw.firstPerson = false
for (const tag of state.raw.tags) {
if (tag.startsWith('lqs')) {
const value = parseInt(tag.replace('lqs', ''));
@ -272,6 +273,15 @@ class Valve extends Core {
state.raw.queue = value;
}
}
if (tag.includes('no3rd')) {
state.raw.firstPerson = true;
}
if (tag.includes('isDLC')) {
state.raw.dlcEnabled = true;
}
if (tag.includes(':')) {
state.raw.time = tag;
}
if (tag.startsWith('etm')) {
const value = parseInt(tag.replace('etm', ''));
if (!isNaN(value)) {
@ -286,6 +296,8 @@ class Valve extends Core {
}
}
}
state.raw.dayzMods = this.readDayzMods(Buffer.from(dayZPayload));
}
}