任务:根据test结果修复
This commit is contained in:
@@ -69,7 +69,7 @@ export async function getEnemies(oppPlayers: OppPlayers[], winStreakNum: number)
|
|||||||
for(let oppPlayer of oppPlayers) {
|
for(let oppPlayer of oppPlayers) {
|
||||||
let dicOpponent = dicPvpOpponent.get(oppPlayer.pos);
|
let dicOpponent = dicPvpOpponent.get(oppPlayer.pos);
|
||||||
let oppDef = <PvpHistoryOppType>oppPlayer.oppDef; // select 'oppRoleId pos roleName head frame spine rankLv pLv defCe'
|
let oppDef = <PvpHistoryOppType>oppPlayer.oppDef; // select 'oppRoleId pos roleName head frame spine rankLv pLv defCe'
|
||||||
delete oppDef.heroes;
|
if(oppDef) delete oppDef.heroes;
|
||||||
result.push({
|
result.push({
|
||||||
...oppDef,
|
...oppDef,
|
||||||
roleId: oppDef.oppRoleId,
|
roleId: oppDef.oppRoleId,
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ import { ItemInter } from '../pubUtils/interface';
|
|||||||
|
|
||||||
export async function checkTaskWithRoles(roleId: string, sid: string, funcs: number[], taskType: number, roles: RoleType[]) {
|
export async function checkTaskWithRoles(roleId: string, sid: string, funcs: number[], taskType: number, roles: RoleType[]) {
|
||||||
for(let role of roles) {
|
for(let role of roles) {
|
||||||
await checkTaskWithRole(role.roleId, role.roleId == roleId? sid: null, role.roleId == roleId? funcs: null, taskType, role);
|
if(role) {
|
||||||
|
await checkTaskWithRole(role.roleId, role.roleId == roleId? sid: null, role.roleId == roleId? funcs: null, taskType, role);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -599,19 +599,19 @@ export default class Role extends BaseModel {
|
|||||||
if(max) {
|
if(max) {
|
||||||
condition['friendCnt'] = {$lte: max - inc};
|
condition['friendCnt'] = {$lte: max - inc};
|
||||||
}
|
}
|
||||||
const result: RoleType = await RoleModel.findOneAndUpdate(condition, {$inc: { friendCnt: inc }}, {new: true}).lean();
|
const result: RoleType = await RoleModel.findOneAndUpdate(condition, {$inc: { friendCnt: inc }}, {new: true}).lean({ getters: true, virtuals: true });
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加好友申请数量
|
// 增加好友申请数量
|
||||||
public static async increaseFriendApplyCnt(roleId: string, inc: number, max: number) {
|
public static async increaseFriendApplyCnt(roleId: string, inc: number, max: number) {
|
||||||
const result: RoleType = await RoleModel.findOneAndUpdate({ roleId, recFrdApplyCnt: {$lte: max - inc}}, {$inc: { recFrdApplyCnt: inc }}, {new: true}).lean();
|
const result: RoleType = await RoleModel.findOneAndUpdate({ roleId, recFrdApplyCnt: {$lte: max - inc}}, {$inc: { recFrdApplyCnt: inc }}, {new: true}).lean({ getters: true, virtuals: true });
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加黑名单数量
|
// 增加黑名单数量
|
||||||
public static async increaseBlockCnt(roleId: string, blockCnt: number, friendCnt: number, maxBlockCnt: number) {
|
public static async increaseBlockCnt(roleId: string, blockCnt: number, friendCnt: number, maxBlockCnt: number) {
|
||||||
const result: RoleType = await RoleModel.findOneAndUpdate({ roleId, blockCnt: {$lte: maxBlockCnt - blockCnt}}, {$inc: { blockCnt, friendCnt }}, {new: true}).lean();
|
const result: RoleType = await RoleModel.findOneAndUpdate({ roleId, blockCnt: {$lte: maxBlockCnt - blockCnt}}, {$inc: { blockCnt, friendCnt }}, {new: true}).lean({ getters: true, virtuals: true });
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public static async updatedRoleMailAt(roleId: string, updatedMailAt: number, lean = true) {
|
public static async updatedRoleMailAt(roleId: string, updatedMailAt: number, lean = true) {
|
||||||
|
|||||||
@@ -12,8 +12,10 @@ import { ItemInter } from './interface';
|
|||||||
export async function checkTaskWithRoles(taskType: number, roles: RoleType[], funcs?: number[]) {
|
export async function checkTaskWithRoles(taskType: number, roles: RoleType[], funcs?: number[]) {
|
||||||
let pushMessage = new Array<{type: number, id: number, count: number, received: boolean}>();
|
let pushMessage = new Array<{type: number, id: number, count: number, received: boolean}>();
|
||||||
for(let role of roles) {
|
for(let role of roles) {
|
||||||
let singlePush = await checkTaskWithRole(role.roleId, taskType, role, funcs);
|
if(role) {
|
||||||
pushMessage.concat(singlePush);
|
let singlePush = await checkTaskWithRole(role.roleId, taskType, role, funcs);
|
||||||
|
pushMessage.concat(singlePush);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return pushMessage
|
return pushMessage
|
||||||
}
|
}
|
||||||
@@ -306,7 +308,7 @@ export async function checkTaskWithGoods(roleId: string, taskType: number, goods
|
|||||||
|
|
||||||
// 根据taskType判断有哪些任务需要check的
|
// 根据taskType判断有哪些任务需要check的
|
||||||
export async function checkTask(roleId: string, taskType: number, count: number, isInc: boolean, param: TaskParam, funcs?: number[]) {
|
export async function checkTask(roleId: string, taskType: number, count: number, isInc: boolean, param: TaskParam, funcs?: number[]) {
|
||||||
let tasks = gameData.taskType.get(taskType);
|
let tasks = gameData.taskType.get(taskType)||[];
|
||||||
let pushMessage = new Array<{type: number, id: number, count: number, received: boolean}>();
|
let pushMessage = new Array<{type: number, id: number, count: number, received: boolean}>();
|
||||||
let groups = new Map<number, { task0: DicTask, tasks: DicTask[] }>();
|
let groups = new Map<number, { task0: DicTask, tasks: DicTask[] }>();
|
||||||
for(let dicTask of tasks) {
|
for(let dicTask of tasks) {
|
||||||
|
|||||||
Reference in New Issue
Block a user