寻宝:清理匹配成功的玩家信息;修复机器人和匹配条件等bug

This commit is contained in:
liangtongchuan
2020-12-01 21:12:09 +08:00
parent b55bfcbcbd
commit 15cf434d73
6 changed files with 42 additions and 17 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ export function getRandBlueprtId(qualityArr: Array<number>, cnt = 1) {
}
export function getRandComBtlRobots(topFiveCe: number, lv: number, cnt: number) {
let robotHeroes = getRandRobot(cnt); // 随机两个阵容
let robotHeroes = getRandRobot(cnt); // 随机几个阵容
// 创建并添加机器人
let robotStArr = [], robotIdArr = [];
for (let robot of robotHeroes) {
+11
View File
@@ -154,6 +154,17 @@ export async function setTeamSearchReq(roleId: string, sid: string, qualityArr:
}
// 取出 0 - 2 个某品质的匹配中玩家,并在其它品质中删除此玩家信息
export async function rmRoleFromQueue(roleId: string, sid: string, qualityArr: Array<number>) {
let cmds = [];
for (let q of qualityArr) {
cmds.push(['srem', `${REDIS_KEY.COM_TEAM_SEARCH_PRE}${q}`, `${roleId}:${sid}`]);
};
const multiClient = client.multi(cmds) as Redis.Multi;
const newMulti = promisifyAll(multiClient) as Redis.Multi;
await newMulti.execAsync();
}
export async function getTeamSearchByQuality(quality: number) {
// TODO: 操作不具有原子性
const userInfos = await client.srandmemberAsync(`${REDIS_KEY.COM_TEAM_SEARCH_PRE}${quality}`, 2);