寻宝:增加先搜索再招募的测试用例;修复这种情况下的匹配 bug

This commit is contained in:
liangtongchuan
2021-02-19 12:18:24 +08:00
parent 28610f7b88
commit 5cda61fc7c
2 changed files with 72 additions and 30 deletions

View File

@@ -122,12 +122,12 @@ export class ComBattleHandler {
// 检查是否有正在匹配的符合要求的玩家
let teammates = await getTeamSearchByQuality(goodData.quality, comBtlRangeByLv(goodData.lvLimited));
if (teammates) {
if (teammates && teammates.length) {
for (let teammate of teammates) {
const { roleId: teammateRoleId } = teammate;
const st = getValidTeammateRoleSt(teammateRoleId, roleIds, ceLimit, goodData.quality);
const st = await getValidTeammateRoleSt(teammateRoleId, roleIds, ceLimit, goodData.quality);
if (!st) continue;
rmRoleFromQueue(teammateRoleId, sid, COM_BTL_QUALITY, null); // 匹配成功后删除redis中该用户的匹配记录
await rmRoleFromQueue(teammateRoleId, sid, COM_BTL_QUALITY, null); // 匹配成功后删除redis中该用户的匹配记录
roleStatus.push(st);
roleIds.push(teammateRoleId);
}
@@ -152,7 +152,7 @@ export class ComBattleHandler {
}
let uids = [];
uids.push({roleId, sid});
if (teammates) {
if (teammates && teammates.length) {
for (let teammate of teammates) {
let { roleId, sid } = teammate;
uids.push({uid: roleId, sid});