pvp:战力fix

This commit is contained in:
luying
2021-02-26 11:55:54 +08:00
parent 56efab8cb7
commit e80818e660
3 changed files with 6 additions and 5 deletions

View File

@@ -50,7 +50,7 @@ export async function initPvpInfo(role: RoleType) {
}
export async function checkPvp(role: RoleType) {
let result = await PvpDefenseModel.findByRoleId(role.roleId);
let result = await PvpDefenseModel.findByRoleId(role.roleId, true);
if (!!result)
return result;
result = await initPvpInfo(role);
@@ -495,7 +495,7 @@ export function getRobotAttribute(attribute: Attributes, ce: number, enemyCe: nu
let newAttribute = new CeAttrNumber();
for(let attrName in newAttribute) {
newAttribute[attrName] = Math.floor(attribute[attrName] * reduceCe(ce) / enemyCe * ratio);
newAttribute[attrName] = Math.floor(attribute[attrName] * ce / enemyCe * ratio);
}
newAttribute['speed'] = 0;
newAttribute['ap'] = 0;

View File

@@ -100,8 +100,8 @@ export default class PvpDefense extends BaseModel {
seasonNum: number;
@prop({ required: true, default: true })
isFirstEntry: boolean;
public static async findByRoleId(roleId: string, lean = true) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean);
public static async findByRoleId(roleId: string, getters = false) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean({ getters});
return result;
}

View File

@@ -166,12 +166,13 @@ export function decodeIdCntArrayStr(str: string, multi: number) {
// 计算当前武将战力
export async function calculateSumCE(roleId: string, type: number, param: { num?: number, heroes?: Array<number> }) {
let sum;
let sum: number;
if (type == 1) { // 最高num人历史最高战力和
sum = await HeroModel.sumTopHeroCe(roleId, param.num || 0);
} else if (type == 2) { // 所有人战力和
sum = await HeroModel.sumHeroCe(roleId);
}
sum = reduceCe(sum);
return sum;
}