pvp初次挑战次数不增加、镇念塔加速
This commit is contained in:
@@ -344,7 +344,9 @@ export class PvpHandler {
|
||||
if(refOppObj.setAttackCnt >= PVP.PVP_SET_ATTACK_FREE_CNT + refOppObj.buyAttackCnt) {
|
||||
return resResult(STATUS.PVP_SET_ATTACK_CNT_NOT_ENOUGH);
|
||||
}
|
||||
refOppObj.setAttackCnt ++;
|
||||
if(!!pvpDefense.attack) {
|
||||
refOppObj.setAttackCnt ++;
|
||||
}
|
||||
|
||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||
let seasonEndTime: number = this.app.get('pvpSeasonEndTime');
|
||||
|
||||
@@ -186,6 +186,12 @@ export class RaceActivityHandler {
|
||||
await UserGuildActivityRecModel.updateInfo(code, { hasShow: true });
|
||||
}
|
||||
|
||||
let obj = getRaceActivityObj();
|
||||
let woodenHorse = await obj.getWoodenHorse(guildCode, serverId);
|
||||
if(!woodenHorse) { // 已被结算
|
||||
woodenHorse = guildActivityRec.woodenHorse;
|
||||
}
|
||||
|
||||
// 返回当前军团总军功
|
||||
let r = new Rank(REDIS_KEY.RACE_ACTIVITY, { serverId });
|
||||
let myGuildRank = await r.getMyRank({ guildCode });
|
||||
@@ -193,7 +199,7 @@ export class RaceActivityHandler {
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
timestamp: Date.now(),
|
||||
hasShow,
|
||||
woodenHorse: guildActivityRec.woodenHorse,
|
||||
woodenHorse,
|
||||
myGuildRank
|
||||
})
|
||||
}
|
||||
|
||||
@@ -301,7 +301,7 @@ export async function calcuHangUpReward(roleId: string, speedUp = false, speedUp
|
||||
}
|
||||
|
||||
if (speedUp) { // 加速,直接收取6小时收益,小数的累积和普通收取独立
|
||||
if (hangUpSpdUpCnt + speedUpCnt < dicParam.TOWER_BOOST.TOWER_BOOSTTIME || !lastSpdUpTime || shouldRefresh(lastSpdUpTime, new Date)) { // 可加速
|
||||
if (hangUpSpdUpCnt + speedUpCnt <= dicParam.TOWER_BOOST.TOWER_BOOSTTIME || !lastSpdUpTime || shouldRefresh(lastSpdUpTime, new Date)) { // 可加速
|
||||
let multi = Math.floor(HANG_UP_CONSTS.SPD_UP_REC_TIME / HANG_UP_CONSTS.UNIT_TIME);
|
||||
let spdUpRec = await HangUpSpdUpRecModel.getSpdUpRec(roleId, towerLv - 1);
|
||||
let goods = [];
|
||||
|
||||
@@ -215,6 +215,7 @@ export class RaceActivityObject {
|
||||
private woodenHorses: Map<string, WoodenHorse> = new Map(); // 每个军团的木牛流马 guildCode => WoodenHorse
|
||||
private events: Map<string, Event[]> = new Map(); // 每个军团遇到的事件
|
||||
private items: Map<string, RewardInter[]> = new Map(); // 每个玩家的道具 roleId => [{id, count}]
|
||||
private hasSentGuild: string[] = [];
|
||||
|
||||
public getItem(roleId: string) {
|
||||
return this.items.get(roleId)||[]
|
||||
@@ -400,7 +401,10 @@ export class RaceActivityObject {
|
||||
}
|
||||
|
||||
public deleteFromList(guildCode: string) {
|
||||
let index = this.guildList.findIndex(cur => cur.guildCode == guildCode);
|
||||
this.guildList.splice(index, 1);
|
||||
this.hasSentGuild.push(guildCode);
|
||||
}
|
||||
|
||||
public hasSend(guildCode: string) {
|
||||
return this.hasSentGuild.indexOf(guildCode) != -1;
|
||||
}
|
||||
}
|
||||
@@ -323,7 +323,7 @@ export async function sendGuildActEndMsg(aid: number) {
|
||||
|
||||
for (let { guildCode, serverId } of obj.guildList) {
|
||||
let woodenHorse = await obj.getWoodenHorse(guildCode, serverId);
|
||||
if (woodenHorse && woodenHorse.status != 0) {
|
||||
if (woodenHorse && woodenHorse.status != 0 && !obj.hasSend(guildCode)) {
|
||||
await raceActivitySettleReward(guildCode, woodenHorse);
|
||||
}
|
||||
}
|
||||
@@ -618,9 +618,15 @@ export async function calWoodenHorseAndSend(serverId: number) {
|
||||
console.log('calWoodenHorseAndSend');
|
||||
let guildKey = REDIS_KEY.RACE_ACTIVITY;
|
||||
let obj = getRaceActivityObj();
|
||||
let calResult = new Map<string, WoodenHorse>();
|
||||
for(let [code] of obj.getAllWoodenHorses()) {
|
||||
let _obj = await obj.getWoodenHorse(code, serverId);
|
||||
if(_obj) calResult.set(code, _obj);
|
||||
}
|
||||
|
||||
let fun = async function (param: GuildRankInfo) {
|
||||
let { rank, code, name } = param;
|
||||
let _obj = await obj.getWoodenHorse(code, serverId);
|
||||
let _obj = calResult.get(code);
|
||||
return new SimpleGuildRankWithTimeParam(rank, code, name, _obj);
|
||||
}
|
||||
let r = new Rank(REDIS_KEY.RACE_ACTIVITY, { serverId }, true);
|
||||
@@ -672,7 +678,7 @@ export async function calWoodenHorseAndSend(serverId: number) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
calResult.clear();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user