远征:一键碾压
This commit is contained in:
@@ -224,4 +224,8 @@ export function getVipRegretCnt(vipStartTime: number) {
|
||||
export function vipCanSkipTower(recommendCeSum: number, heroesCeSum: number, vipStartTime: number) {
|
||||
let ratio = vipStartTime > 0? VIP.VIP_TOWER_SKIP_CE_RATIO_WITH_VIP: VIP.VIP_TOWER_SKIP_CE_RATIO_WITHOUT_VIP;
|
||||
return heroesCeSum > recommendCeSum * ratio;
|
||||
}
|
||||
|
||||
export function vipCanSkipExpedition(recommendCe: number, topLineupCe: number, vipStartTime: number) {
|
||||
return vipStartTime > 0 && topLineupCe > recommendCe;
|
||||
}
|
||||
@@ -353,7 +353,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve
|
||||
|
||||
let { topLineup, topLineupCe, hasTopCeChange } = calCe.getTopLineup();
|
||||
let roleCeUpdate: RoleCeUpdate = calCe.getRoleCeTable();
|
||||
if(topLineupCe > roleCe?.historyLineupCe??0) {
|
||||
if(topLineupCe > (roleCe?.historyLineupCe||0)) {
|
||||
roleCeUpdate = { ...roleCeUpdate, historyLineupCe: topLineupCe };
|
||||
}
|
||||
|
||||
@@ -416,7 +416,10 @@ async function updateRank(roleId: string, serverId: number, topLineupCe: number,
|
||||
|
||||
export async function getSumCe(roleId: string) {
|
||||
let roleCe = await RoleCeModel.findByRoleId(roleId);
|
||||
return roleCe.historyLineupCe;
|
||||
if(roleCe && roleCe.historyLineupCe) return roleCe.historyLineupCe;
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId);
|
||||
return role.topLineupCe||0;
|
||||
}
|
||||
|
||||
export async function getHeroesAttributes(roleId: string) {
|
||||
|
||||
@@ -267,8 +267,11 @@ export function checkSystemIsOpen(role: RoleType, id: SYSTEM_OPEN_ID) {
|
||||
let dicSystemOpenTime = gameData.sysOpenTime.get(id);
|
||||
if(!dicSystemOpenTime) return false;
|
||||
|
||||
let guideId = dicSystemOpenTime.warId > 0? GuideUnloadNum.GkNewFuncNum + dicSystemOpenTime.warId: GuideUnloadNum.LvUpNum + dicSystemOpenTime.lv;
|
||||
return role.guide.indexOf(guideId) != -1;
|
||||
if(dicSystemOpenTime.warId) {
|
||||
return role.warStar.findIndex(cur => cur.id == dicSystemOpenTime.warId) != -1;
|
||||
} else {
|
||||
return role.lv >= dicSystemOpenTime.lv
|
||||
}
|
||||
}
|
||||
|
||||
function calSchoolPoint(quality: number, star: number, colorStar: number) {
|
||||
|
||||
@@ -143,6 +143,13 @@ export async function checkTaskInBattleStart(serverId: number, roleId: string, s
|
||||
}
|
||||
}
|
||||
|
||||
export async function checkTaskInSkipExpedition(serverId: number, roleId: string, sid: string, warId: number) {
|
||||
let task = new CheckTask(serverId, roleId);
|
||||
task.setParam(TASK_TYPE.BATTLE_EXPEDITION_START, { warId, count: 1 });
|
||||
task.setParam(TASK_TYPE.BATTLE_EXPEDITION, { warId, count: 1 });
|
||||
await task.saveAndPush(sid);
|
||||
}
|
||||
|
||||
export async function checkTaskInSkipTower(serverId: number, roleId: string, sid: string, towerLv: number) {
|
||||
let task = new CheckTask(serverId, roleId);
|
||||
task.setParam(TASK_TYPE.BATTLE_TOWER_LV, { towerLv: towerLv - 1 });
|
||||
|
||||
Reference in New Issue
Block a user