寻宝掉落
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* @Author: 梁桐川
|
||||
* @Date: 2020-11-30 15:05:48
|
||||
* @Last Modified by: 梁桐川
|
||||
* @Last Modified time: 2020-12-01 21:11:33
|
||||
* @Last Modified time: 2020-12-02 00:13:35
|
||||
*/
|
||||
import { COM_BATTLE_ASSIST_TIME, COM_BATTLE_ROBOT_ROUND_LMT, COM_BATTLE_ROBOT_HURT_RATIO, COM_BATTLE_ROBOT_HURT_CH_RATIO, COM_TEAM_STATUS } from './../../../consts/consts';
|
||||
import { IT_TYPE, GOLD_COST_RATIO, CURRENCY_BY_TYPE, CURRENCY_TYPE, COM_BATTLE_CAP_TIME, COM_BATTLE_TIME_LMT } from './../../../consts/consts';
|
||||
@@ -267,7 +267,7 @@ export class ComBattleHandler {
|
||||
return resResult(STATUS.COM_BATTLE_CE_LIMIT);
|
||||
}
|
||||
|
||||
let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, [teamStatus.quality], new Date(new Date().setHours(0, 0, 0, 0)), true);
|
||||
let teams = await ComBattleTeamModel.getAssistTeamsByTime(roleId, [teamStatus.quality], new Date(new Date().setHours(0, 0, 0, 0)), true);
|
||||
if (teams.length >= assistanceTime) resResult(STATUS.COM_BATTLE_ASSIST_NOT_ENOUGH);
|
||||
|
||||
// 加入队伍
|
||||
@@ -314,7 +314,7 @@ export class ComBattleHandler {
|
||||
*/
|
||||
async getAssistCnt(msg: {}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let teams = await ComBattleTeamModel.getTeamByRoleAndTime(roleId, null, new Date(new Date().setHours(0, 0, 0, 0)), true);
|
||||
let teams = await ComBattleTeamModel.getAssistTeamsByTime(roleId, null, new Date(new Date().setHours(0, 0, 0, 0)), true);
|
||||
let cnt = [0, 0, 0, 0, 0];
|
||||
teams.forEach(team => {
|
||||
if (team && team.quality) {
|
||||
@@ -359,18 +359,19 @@ export class ComBattleHandler {
|
||||
* @returns
|
||||
* @memberof ComBattleHandler
|
||||
*/
|
||||
async setupHeroes(msg: {teamCode: string, heroes: Array<number>}, session: BackendSession) {
|
||||
async setupHeroes(msg: {teamCode: string, heroes: Array<number>, battleCode: string}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let { teamCode, heroes } = msg;
|
||||
let { teamCode, heroes, battleCode } = msg;
|
||||
let teamStatus = this.teamMap.get(teamCode);
|
||||
if (!teamStatus || !teamStatus.roleIds || teamStatus.roleIds.indexOf(roleId) === -1) return resResult(STATUS.COM_BATTLE_TEAM_INVALID);
|
||||
|
||||
let team = await ComBattleTeamModel.updateHeroes(teamCode, roleId, heroes);
|
||||
let team = await ComBattleTeamModel.setupBattleInfo(teamCode, roleId, heroes, battleCode);
|
||||
if (!team) return resResult(STATUS.COM_BATTLE_UPDATE_HEROES_ERR);
|
||||
|
||||
teamStatus.roleStatus.forEach(st => {
|
||||
if (st && st.roleId === roleId) {
|
||||
st.heroes = heroes;
|
||||
st.battleCode = battleCode;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -562,7 +563,18 @@ export class ComBattleHandler {
|
||||
let result = battleSt === COM_TEAM_STATUS.WIN;
|
||||
let team = await ComBattleTeamModel.syncTeamData({teamCode, status: battleSt, roleStatus: teamStatus.roleStatus});
|
||||
if (!team) return resResult(STATUS.COM_BATTLE_RESULT_ERR);
|
||||
channel.pushMessage('onTeamComplete', {teamCode, result});
|
||||
let battleCode = 'default';
|
||||
teamStatus.roleStatus.forEach(st => {
|
||||
if (st.roleId === roleId) {
|
||||
battleCode = st.battleCode;
|
||||
}
|
||||
});
|
||||
// 战斗胜利扣减藏宝图
|
||||
if (result) {
|
||||
let res = await ItemModel.decreaseItems(roleId, [{id: teamStatus.blueprtId, count: 1}]);
|
||||
if (!res) return resResult(STATUS.COM_BATTLE_BLUEPRT_NOT_ENOUGH);
|
||||
}
|
||||
channel.pushMessage('onTeamComplete', {teamCode, battleCode, result});
|
||||
}
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user