diff --git a/squad-server/factory.js b/squad-server/factory.js index f3a46e6b..21a2e703 100644 --- a/squad-server/factory.js +++ b/squad-server/factory.js @@ -80,9 +80,9 @@ export default class SquadServerFactory { for (const pluginConfig of config.plugins) { if (!pluginConfig.enabled) continue; - - //ignore non JS files - if (!pluginConfig.plugin.endsWith('.js')){ + + // ignore non JS files + if (!pluginConfig.plugin.endsWith('.js')) { continue; } diff --git a/squad-server/index.js b/squad-server/index.js index 840df26e..46eaf471 100644 --- a/squad-server/index.js +++ b/squad-server/index.js @@ -28,6 +28,7 @@ export default class SquadServer extends EventEmitter { this.layerHistoryMaxLength = options.layerHistoryMaxLength || 20; this.players = []; + this.oldplayers = []; this.squads = []; @@ -226,8 +227,10 @@ export default class SquadServer extends EventEmitter { this.logParser.on('PLAYER_DISCONNECTED', async (data) => { data.player = await this.getPlayerByEOSID(data.eosID); - - delete data.steamID; + if (!data.player) { + const foundoldplayers = this.oldplayers.filter((player) => player.eosID === data.eosID); + data.player = foundoldplayers[0] ? foundoldplayers[0] : null; + } this.emit('PLAYER_DISCONNECTED', data); }); @@ -392,6 +395,7 @@ export default class SquadServer extends EventEmitter { }); this.players = players; + this.oldplayers = oldPlayerInfo; for (const player of this.players) { if (typeof oldPlayerInfo[player.steamID] === 'undefined') continue;