名将擂台:奖励及扫荡

This commit is contained in:
luying
2022-07-19 17:14:11 +08:00
parent df8032cb06
commit c66001ed8e
7 changed files with 97 additions and 31 deletions
+14 -2
View File
@@ -1,4 +1,4 @@
import { LADDER_OPP_STATUS, LADDER_STATUS, PUSH_ROUTE, REDIS_KEY } from "../consts";
import { ITEM_CHANGE_REASON, LADDER_OPP_STATUS, LADDER_STATUS, PUSH_ROUTE, REDIS_KEY } from "../consts";
import { HeroType } from "../db/Hero";
import { LadderMatchModel, LadderMatchType, LadderUpdateInter } from "../db/LadderMatch";
import { LadderMatchRecModel } from "../db/LadderMatchRec";
@@ -10,7 +10,9 @@ import { ItemInter } from "../pubUtils/interface";
import { getRandValueByMinMax, shouldRefresh } from "../pubUtils/util";
import { sendMessageToUserWithSuc } from "./pushService";
import { Rank } from "./rankService";
import { addItems } from "./role/rewardService";
import { combineItems } from "./role/util";
import { WarReward } from "./warRewardService";
export function refreshLadderDaily(ladderData: LadderMatchType) {
@@ -272,7 +274,6 @@ export async function battleEndWhenChange(ladderMatch: LadderMatchType) {
// 更新redis
let r = new Rank(REDIS_KEY.LADDER, { serverId: ladderMatch.serverId });
console.log('##### ladderMatch.roleId', ladderMatch.roleId)
r.setRankWithRoleInfo(ladderMatch.roleId, ladderMatch.rank, 0);
// 刷新对手
@@ -283,4 +284,15 @@ export async function battleEndWhenChange(ladderMatch: LadderMatchType) {
oppPlayers
});
return oppPlayers
}
export async function ladderBattleEndReward(roleId: string, roleName: string, sid: string, rank: number, isSuccess: boolean, isBreak: boolean, num: number) {
let dicLadderDifficultRatio = gameData.ladderDifficultRatio.get(rank);
if(!dicLadderDifficultRatio) return null;
let warReward = new WarReward(roleId, roleName, sid, dicLadderDifficultRatio.gkId, isSuccess);
warReward.setLadderReward(dicLadderDifficultRatio.randomFailReward, true);
warReward.setLadderReward(dicLadderDifficultRatio.randomWinReward, false);
let battleGoods = await warReward.saveReward(num);
let breakGoods = isBreak? await addItems(roleId, roleName, sid, dicLadderDifficultRatio?.onceReward||[], ITEM_CHANGE_REASON.LADDER_BATTLE_REWARD): [];
return { battleGoods, breakGoods };
}