From 370bd9a3a88efa13604f178689f1ea74eda15821 Mon Sep 17 00:00:00 2001 From: Cohee <18619528+Cohee1207@users.noreply.github.com> Date: Tue, 11 Mar 2025 22:16:26 +0200 Subject: [PATCH] Refactor to not use array --- public/scripts/group-chats.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/public/scripts/group-chats.js b/public/scripts/group-chats.js index 601432741..691c0b7d1 100644 --- a/public/scripts/group-chats.js +++ b/public/scripts/group-chats.js @@ -1031,7 +1031,9 @@ function activateListOrder(members) { * @returns {number[]} List of character ids */ function activatePooledOrder(members, lastMessage) { - const activatedMembers = []; + /** @type {string} */ + let activatedMember = null; + /** @type {string[]} */ const spokenSinceUser = []; for (const message of chat.slice().reverse()) { @@ -1051,19 +1053,17 @@ function activatePooledOrder(members, lastMessage) { const haveNotSpoken = members.filter(x => !spokenSinceUser.includes(x)); if (haveNotSpoken.length) { - activatedMembers.push(haveNotSpoken[Math.floor(Math.random() * haveNotSpoken.length)]); + activatedMember = haveNotSpoken[Math.floor(Math.random() * haveNotSpoken.length)]; } - if (activatedMembers.length === 0) { + if (activatedMember === null) { const lastMessageAvatar = members.length > 1 && lastMessage && !lastMessage.is_user && lastMessage.original_avatar; const randomPool = lastMessageAvatar ? members.filter(x => x !== lastMessage.original_avatar) : members; - activatedMembers.push(randomPool[Math.floor(Math.random() * randomPool.length)]); + activatedMember = randomPool[Math.floor(Math.random() * randomPool.length)]; } - const memberIds = activatedMembers - .map((x) => characters.findIndex((y) => y.avatar === x)) - .filter((x) => x !== -1); - return memberIds; + const memberId = characters.findIndex(y => y.avatar === activatedMember); + return memberId !== -1 ? [memberId] : []; } function activateNaturalOrder(members, input, lastMessage, allowSelfResponses, isUserInput) {