Refactor to not use array

370bd9a3a88efa13604f178689f1ea74eda15821

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +8 -8Showing whitespace changes
public/scripts/group-chats.js+8 -8
@@ -1031,7 +1031,9 @@ function activateListOrder(members) {
1031 * @returns {number[]} List of character ids1031 * @returns {number[]} List of character ids
1032 */1032 */
1033function activatePooledOrder(members, lastMessage) {1033function activatePooledOrder(members, lastMessage) {
1034 const activatedMembers = [];1034 /** @type {string} */
1035 let activatedMember = null;
1036 /** @type {string[]} */
1035 const spokenSinceUser = [];1037 const spokenSinceUser = [];
10361038
1037 for (const message of chat.slice().reverse()) {1039 for (const message of chat.slice().reverse()) {
@@ -1051,19 +1053,17 @@ function activatePooledOrder(members, lastMessage) {
1051 const haveNotSpoken = members.filter(x => !spokenSinceUser.includes(x));1053 const haveNotSpoken = members.filter(x => !spokenSinceUser.includes(x));
10521054
1053 if (haveNotSpoken.length) {1055 if (haveNotSpoken.length) {
1054 activatedMembers.push(haveNotSpoken[Math.floor(Math.random() * haveNotSpoken.length)]);1056 activatedMember = haveNotSpoken[Math.floor(Math.random() * haveNotSpoken.length)];
1055 }1057 }
10561058
1057 if (activatedMembers.length === 0) {1059 if (activatedMember === null) {
1058 const lastMessageAvatar = members.length > 1 && lastMessage && !lastMessage.is_user && lastMessage.original_avatar;1060 const lastMessageAvatar = members.length > 1 && lastMessage && !lastMessage.is_user && lastMessage.original_avatar;
1059 const randomPool = lastMessageAvatar ? members.filter(x => x !== lastMessage.original_avatar) : members;1061 const randomPool = lastMessageAvatar ? members.filter(x => x !== lastMessage.original_avatar) : members;
1060 activatedMembers.push(randomPool[Math.floor(Math.random() * randomPool.length)]);1062 activatedMember = randomPool[Math.floor(Math.random() * randomPool.length)];
1061 }1063 }
10621064
1063 const memberIds = activatedMembers1065 const memberId = characters.findIndex(y => y.avatar === activatedMember);
1064 .map((x) => characters.findIndex((y) => y.avatar === x))1066 return memberId !== -1 ? [memberId] : [];
1065 .filter((x) => x !== -1);
1066 return memberIds;
1067}1067}
10681068
1069function activateNaturalOrder(members, input, lastMessage, allowSelfResponses, isUserInput) {1069function activateNaturalOrder(members, input, lastMessage, allowSelfResponses, isUserInput) {