addItem goodType修改
This commit is contained in:
@@ -13,7 +13,7 @@ import { Application, BackendSession } from 'pinus';
|
||||
import { resResult, getRandomByLen, calculateNum, getRandValue, ratioReward } from '../../../pubUtils/util';
|
||||
import { RoleStatus } from '../../../db/ComBattleTeam';
|
||||
import { ItemModel } from '../../../db/Item';
|
||||
import { handleFixedReward, handleReward } from '../../../services/rewardService';
|
||||
import { handleFixedReward, addItems } from '../../../services/rewardService';
|
||||
import { checkRoleInQueue, getTeamSearchByQuality, rmRoleFromQueue, setTeamSearchReq } from '../../../services/redisService';
|
||||
import { transBossHpArr } from '../../../services/battleService';
|
||||
import { getRandBlueprtId, getRandComBtlRobots, checkComBattleResult, clearComBtlTimer, getRealReward, getAssistTimesByQuality, getFrd } from '../../../services/comBattleService';
|
||||
@@ -692,7 +692,8 @@ export class ComBattleHandler {
|
||||
*/
|
||||
async comBattleEnd(msg: {teamCode: string}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
let { teamCode } = msg;
|
||||
let team = await ComBattleTeamModel.getTeamByCode(teamCode);
|
||||
if (!team || team.status !== COM_TEAM_STATUS.WIN) return resResult(STATUS.COM_BATTLE_REWARD_ERR);
|
||||
@@ -718,10 +719,10 @@ export class ComBattleHandler {
|
||||
}
|
||||
|
||||
await ComBattleTeamModel.updateRewardSt(teamCode, roleId, true);
|
||||
const goods = await handleFixedReward(roleId, roleName, roleSt.fixReward, 1);
|
||||
const goods = await handleFixedReward(roleId, roleName, sid, roleSt.fixReward, 1);
|
||||
let actordata = await roleLevelup(roleId, warInfo.kingExp, this.app, session);// 主公升级经验
|
||||
|
||||
return resResult(STATUS.SUCCESS, { ...goods, ...actordata, teamInfo: {status, teamCode, roleStatus, bossHpArr} });
|
||||
return resResult(STATUS.SUCCESS, { goods, ...actordata, teamInfo: {status, teamCode, roleStatus, bossHpArr} });
|
||||
}
|
||||
|
||||
async getComBtlStatus(msg: {teamCode: string}, session: BackendSession) {
|
||||
@@ -780,6 +781,8 @@ export class ComBattleHandler {
|
||||
async composeBlueprt(msg: {original: Array<{id: number, count: number}>}, session: BackendSession) {
|
||||
const roleId = session.get('roleId');
|
||||
const roleName = session.get('roleName');
|
||||
const sid = session.get('sid');
|
||||
|
||||
const { original } = msg;
|
||||
|
||||
// 原材料检查
|
||||
@@ -817,9 +820,9 @@ export class ComBattleHandler {
|
||||
const targetList = getBluePrtByQuality(dicCompose.targetQuality);
|
||||
const target = getRandomByLen(targetList);
|
||||
const reward = [{gid: target, count: 1}];
|
||||
const goods = await handleReward(roleId, roleName, reward);
|
||||
const goods = await addItems(roleId, roleName, sid, reward);
|
||||
|
||||
|
||||
return resResult(STATUS.SUCCESS, { ...goods, costGold: 0 });
|
||||
return resResult(STATUS.SUCCESS, { goods, costGold: 0 });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,6 +78,7 @@ export class EventBattleHandler {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let eventStatus = session.get('eventStatus');
|
||||
let sid = session.get('sid');
|
||||
|
||||
let event = await EventRecordModel.getEventRecordByCode(roleId, eventCode);
|
||||
if(!event) {
|
||||
@@ -109,7 +110,7 @@ export class EventBattleHandler {
|
||||
let result = await EventRecordModel.setStatusByCode(roleId, eventCode, isSuccess?EVENT_RECORD_STATUS.SUCCESS_RECEIVED:EVENT_RECORD_STATUS.FAIL_RECEIVED);
|
||||
// 保存奖励
|
||||
let rewardStr = isSuccess?curEvent.winReward:curEvent.loseReward;
|
||||
let goods = await handleFixedReward(roleId, roleName, rewardStr, 1);
|
||||
let goods = await handleFixedReward(roleId, roleName, sid, rewardStr, 1);
|
||||
if(eventStatus == EVENT_STATUS.STARTING) { // 如果是第一次开启的挑战,保存成开启状态
|
||||
await RoleModel.setEventStatus(roleId, EVENT_STATUS.OPEN);
|
||||
// 第一场时间挑战完,开始正常刷新事件,所以刷新时间也重置起来
|
||||
@@ -123,7 +124,7 @@ export class EventBattleHandler {
|
||||
eventCode: result.eventCode,
|
||||
eventId: result.eventId,
|
||||
status: result.status,
|
||||
...goods
|
||||
goods
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -210,6 +210,7 @@ export class ExpeditionBattleHandler {
|
||||
const { expeditionCode, battleCode, battleId, expeditionId, isSuccess, heroes, star, enemies } = msg;
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
|
||||
let warInfo = getWarById(battleId);
|
||||
if(!warInfo) {
|
||||
@@ -259,7 +260,7 @@ export class ExpeditionBattleHandler {
|
||||
let { expeditionPoint = 0 } = role;
|
||||
|
||||
// 关卡奖励
|
||||
let warReward = new WarReward(roleId, roleName, battleId, isSuccess);
|
||||
let warReward = new WarReward(roleId, roleName, sid, battleId, isSuccess);
|
||||
let reward = await warReward.saveReward(1);
|
||||
|
||||
let actordata = await roleLevelup(roleId, isSuccess?warInfo.kingExp:0, this.app, session);// 主公升级经验
|
||||
@@ -272,7 +273,7 @@ export class ExpeditionBattleHandler {
|
||||
expeditionCode, expeditionId,
|
||||
battleCode, battleId,
|
||||
battleStatus: expeditionWarRecord.battleStatus,
|
||||
...reward,
|
||||
goods: reward,
|
||||
apJson,
|
||||
expeditionPoint,
|
||||
...actordata
|
||||
@@ -288,6 +289,7 @@ export class ExpeditionBattleHandler {
|
||||
const { point } = msg;
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId);
|
||||
let {expeditionPoint} = role;
|
||||
@@ -325,12 +327,12 @@ export class ExpeditionBattleHandler {
|
||||
}
|
||||
let pointRewards = await getPointRewardStatus(roleId);
|
||||
|
||||
let goods = await handleFixedReward(roleId, roleName, curDicExpeditionPoint.reward, 1);
|
||||
let goods = await handleFixedReward(roleId, roleName, sid, curDicExpeditionPoint.reward, 1);
|
||||
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
costPoint: hasReceivedAll?maxPoint: 0,
|
||||
pointRewards,
|
||||
...goods
|
||||
goods
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -191,7 +191,7 @@ export class NormalBattleHandler {
|
||||
|
||||
let channelService = this.app.get('channelService');
|
||||
|
||||
let warReward = new WarReward(roleId, roleName, battleId, isSuccess);
|
||||
let warReward = new WarReward(roleId, roleName, sid, battleId, isSuccess);
|
||||
|
||||
let dailyNum = {};
|
||||
let towerStatus = null;
|
||||
@@ -254,7 +254,7 @@ export class NormalBattleHandler {
|
||||
// towerStatus: false-本层未通过, true-本层已通过
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
battleCode, battleId, status,
|
||||
...reward,
|
||||
goods: reward,
|
||||
apJson,
|
||||
towerStatus, dailyNum, dungeonNum,
|
||||
...actordata
|
||||
@@ -266,6 +266,7 @@ export class NormalBattleHandler {
|
||||
const { battleId, count } = msg;
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
let warInfo = getWarById(battleId);
|
||||
if(!warInfo) {
|
||||
return resResult(STATUS.BATTLE_MISS_INFO);
|
||||
@@ -305,7 +306,7 @@ export class NormalBattleHandler {
|
||||
}
|
||||
|
||||
// 发奖励
|
||||
let warReward = new WarReward(roleId, roleName, battleId, true);
|
||||
let warReward = new WarReward(roleId, roleName, sid, battleId, true);
|
||||
let result = await warReward.saveReward(count);
|
||||
|
||||
let actordata = await roleLevelup(roleId, warInfo.kingExp * count, this.app, session)// 主公升级经验
|
||||
@@ -322,7 +323,7 @@ export class NormalBattleHandler {
|
||||
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
battleId, count,
|
||||
...result,
|
||||
goods: result,
|
||||
apJson,
|
||||
dailyNum, dungeonNum,
|
||||
...actordata
|
||||
|
||||
@@ -9,7 +9,7 @@ import { Application, BackendSession } from 'pinus';
|
||||
import { getTaskById, getTowerDataByLv } from '../../../pubUtils/gamedata';
|
||||
import { decodeArrayStr, resResult, shouldRefresh, calculateNum, getRefTime, genCode } from '../../../pubUtils/util';
|
||||
import { calcuHangUpReward, checkTaskConditions, checkHangUpSpdUpCnt, createCurTasks, treatTask, getRemainTime, getTasksReward, getTaskStatus, getDoingOrWaitingTasks } from '../../../services/battleService';
|
||||
import { handleFixedReward, handleReward } from '../../../services/rewardService';
|
||||
import { handleFixedReward, addItems } from '../../../services/rewardService';
|
||||
import { checkBattleHeroes } from '../../../services/normalBattleService';
|
||||
import { getRank, setRank, initRank, existsRank } from '../../../services/redisService';
|
||||
|
||||
@@ -97,21 +97,23 @@ export class TowerBattleHandler {
|
||||
async recHangUpRewards(msg: {}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
const result = await calcuHangUpReward(roleId);
|
||||
if(result.status == -1) {
|
||||
return result.resResult
|
||||
}
|
||||
let { timeReward, endLv, endTime, deltaTime, needReceiveGoods } = result.data;
|
||||
|
||||
const goods = await handleReward(roleId, roleName, timeReward);
|
||||
const goods = await addItems(roleId, roleName, sid, timeReward);
|
||||
await HangUpRecordModel.updateRec(roleId, roleName, endLv, endTime, needReceiveGoods);
|
||||
|
||||
return resResult(STATUS.SUCCESS, { endTime, hangUpPassTime: Math.floor((deltaTime%HANG_UP_CONSTS.UNIT_TIME)/1000), ...goods });
|
||||
return resResult(STATUS.SUCCESS, { endTime, hangUpPassTime: Math.floor((deltaTime%HANG_UP_CONSTS.UNIT_TIME)/1000), goods });
|
||||
}
|
||||
|
||||
async hangUpSpeedUp(msg: {speedUpCnt: number}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
if (msg.speedUpCnt <= 0) {
|
||||
return resResult(STATUS.WRONG_PARMS);
|
||||
}
|
||||
@@ -137,12 +139,12 @@ export class TowerBattleHandler {
|
||||
return resResult(STATUS.TOWER_HANG_UP_FAILED);
|
||||
}
|
||||
const spdUpRec = await HangUpSpdUpRecModel.updateRec(roleId, roleName, msg.speedUpCnt, endLv, needReceiveGoods);
|
||||
const goods = await handleReward(roleId, roleName, timeReward);
|
||||
const goods = await addItems(roleId, roleName, sid, timeReward);
|
||||
hangUpSpdUpCnt -= msg.speedUpCnt;
|
||||
let num = HANG_UP_CONSTS.MAX_SPD_UP_CNT - hangUpSpdUpCnt + 1;
|
||||
let nextCostGold = calculateNum(GOLD_COST_RATIO.TOWER_HANG_SPDUP, {num}, 50);
|
||||
|
||||
return resResult(STATUS.SUCCESS, { ...goods, hangUpSpdUpCnt, nextCostGold, hangUpPassTime: Math.floor(deltaTime/1000), rewardLv: endLv, costGold });
|
||||
return resResult(STATUS.SUCCESS, { goods, hangUpSpdUpCnt, nextCostGold, hangUpPassTime: Math.floor(deltaTime/1000), rewardLv: endLv, costGold });
|
||||
}
|
||||
|
||||
getHangUpCost(originCnt: number, count: number) {
|
||||
@@ -267,6 +269,7 @@ export class TowerBattleHandler {
|
||||
async settleTask(msg: {batchCode: string, taskCode: string}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let sid = session.get('sid');
|
||||
|
||||
let allFlag = !msg.taskCode;
|
||||
|
||||
@@ -285,12 +288,12 @@ export class TowerBattleHandler {
|
||||
let {completeTime, reward, termsForAdd, additionalReward} = getTaskById(task.taskId);
|
||||
if (task.sendTime && task.sendTime.getTime() + completeTime * 1000 < curTime.getTime()) {
|
||||
compTasks.push(task.taskCode);
|
||||
const rewardGoods = await handleFixedReward(roleId, roleName, reward, 1);
|
||||
goods = goods.concat(rewardGoods.goods);
|
||||
const rewardGoods = await handleFixedReward(roleId, roleName, sid, reward, 1);
|
||||
goods = goods.concat(rewardGoods);
|
||||
if(termsForAdd) {
|
||||
const result = await checkTaskConditions(roleId, task.heroes, termsForAdd);
|
||||
const bonusGoods = await handleFixedReward(roleId, roleName, result?additionalReward:'', 1);
|
||||
goods = goods.concat(bonusGoods.goods);
|
||||
const bonusGoods = await handleFixedReward(roleId, roleName, sid, result?additionalReward:'', 1);
|
||||
goods = goods.concat(bonusGoods);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user