From 1c6ef84d3fa2eff498c72400c9c695d54b47819a Mon Sep 17 00:00:00 2001 From: Shaun Date: Wed, 24 May 2023 08:29:52 +0200 Subject: [PATCH] bug #1994 --- src/server/security/connections.js | 15 +++++++++++---- src/server/world/atlas.js | 4 ---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/server/security/connections.js b/src/server/security/connections.js index 8aa53771..ad70bd70 100644 --- a/src/server/security/connections.js +++ b/src/server/security/connections.js @@ -44,9 +44,13 @@ module.exports = { }] }); - await new Promise(res => { - atlas.removeObject(player, false, res); - }); + //If the player doesn't have a 'social' component, they are no longer in a threat + // Likely due to unzoning (character select screen) + if (player.components.some(c => c.type === 'social')) { + await new Promise(res => { + atlas.removeObject(player, false, res); + }); + } } if (player.name) { @@ -93,8 +97,11 @@ module.exports = { keys.forEach(function (k) { let val = player[k]; if (val && val.type) { - if (['player', 'auth', 'syncer'].indexOf(val.type) === -1) + if (['player', 'auth', 'syncer'].indexOf(val.type) === -1) { delete player[k]; + + player.components.spliceWhere(c => c.type === val.type); + } } }); diff --git a/src/server/world/atlas.js b/src/server/world/atlas.js index 50603e9b..dcd1389f 100644 --- a/src/server/world/atlas.js +++ b/src/server/world/atlas.js @@ -103,10 +103,6 @@ module.exports = { if (callback) callbackId = this.registerCallback(callback); - const simple = obj.getSimple(true); - if (!simple.name) - console.log(`Object has no name: ${JSON.stringify(simple, null, '\t')}`); - sendMessageToThread({ threadId: obj.zoneId, msg: {