刷事件debug接口
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
import { Application, BackendSession, HandlerService, } from 'pinus';
|
||||
import { EventRecordModel } from '../../../db/EventRecord';
|
||||
import { RoleModel } from '../../../db/Role';
|
||||
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE, DEBUG_MAGIC_WORD, ITEM_CHANGE_REASON } from '../../../consts';
|
||||
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent, refreshEvent, getEventTime } from '../../../services/eventSercive';
|
||||
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE, DEBUG_MAGIC_WORD, ITEM_CHANGE_REASON, EVENT_TYPE, EVENT_QUIZ_NUM } from '../../../consts';
|
||||
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent, refreshEvent, getEventTime, randomPosition, randomQuestion } from '../../../services/eventSercive';
|
||||
import { addItems } from '../../../services/role/rewardService';
|
||||
import { STATUS } from '../../../consts/statusCode';
|
||||
import { resResult } from '../../../pubUtils/util';
|
||||
import { genCode, resResult } from '../../../pubUtils/util';
|
||||
import { checkTask } from '../../../services/task/taskService';
|
||||
import { gameData } from '../../../pubUtils/data';
|
||||
|
||||
@@ -133,8 +133,8 @@ export class EventBattleHandler {
|
||||
});
|
||||
}
|
||||
|
||||
async debugRefEvent(msg: { magicWord: string }, session: BackendSession) {
|
||||
const { magicWord } = msg;
|
||||
async debugRefEvent(msg: { magicWord: string, eventId: number }, session: BackendSession) {
|
||||
const { magicWord, eventId } = msg;
|
||||
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||
return resResult(STATUS.TOKEN_ERR);
|
||||
}
|
||||
@@ -142,7 +142,20 @@ export class EventBattleHandler {
|
||||
let roleName = session.get('roleName');
|
||||
let now = new Date();
|
||||
let curTime = getEventTime(now); // 这次的时间节点 0-12:前一天的18 12-18:12 18-24: 18
|
||||
let result = await refreshEvent(3, roleId, roleName, curTime, [])
|
||||
return resResult(STATUS.SUCCESS, { list: result });
|
||||
await EventRecordModel.updateMany({ roleId }, { $set: {status: -1} });
|
||||
let dic = gameData.event.get(eventId);
|
||||
let point = randomPosition(dic.movePointArray, [], []);
|
||||
if(!point) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||
|
||||
let question = dic.eventType == EVENT_TYPE.QUIZ?randomQuestion(EVENT_QUIZ_NUM): undefined;
|
||||
let eventCode = genCode(8);
|
||||
await EventRecordModel.saveEventRecord(eventCode, {
|
||||
roleId, refTime: curTime, eventId: dic.eventID,
|
||||
roleName, turn: 1, type: dic.eventType, battleId: dic.warId||0, quality: dic.quality,
|
||||
status: EVENT_RECORD_STATUS.WAITING,
|
||||
point, question
|
||||
});
|
||||
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
}
|
||||
@@ -1626,6 +1626,7 @@ export function checkRouteParam(route: string, msg: any) {
|
||||
case "battle.ladderHandler.setMyOpp":
|
||||
case "guild.raceActivityHandler.debugAddHorse":
|
||||
case "activity.gachaHandler.debugClearGachaRecord":
|
||||
case "battle.eventBattleHandler.debugRefEvent":
|
||||
{
|
||||
if (msg.magicWord !== DEBUG_MAGIC_WORD) return false;
|
||||
break;
|
||||
|
||||
@@ -254,7 +254,7 @@ export function checkPreviousGk(previousGk: number, warStar: WarStar[]) {
|
||||
*
|
||||
* @param positionStr
|
||||
*/
|
||||
function randomPosition(positionArr: number[], prePoint: Array<number>, curPoint: Array<number>) {
|
||||
export function randomPosition(positionArr: number[], prePoint: Array<number>, curPoint: Array<number>) {
|
||||
let range = positionArr.filter(point => {return !prePoint.includes(point) && !curPoint.includes(point)});
|
||||
if(range.length == 0) { // 如果位置总数不够,就不管prePoint里的
|
||||
range = positionArr.filter(point => {return !curPoint.includes(point)});
|
||||
@@ -357,7 +357,7 @@ export function checkQuizParam(param: Array<number>, database?: Array<{id: numb
|
||||
*
|
||||
* @param num 题目数量
|
||||
*/
|
||||
function randomQuestion(num: number) {
|
||||
export function randomQuestion(num: number) {
|
||||
let questions = new Array<DicQuestion>();
|
||||
gameData.question.forEach(cur => {
|
||||
questions.push(cur);
|
||||
|
||||
Reference in New Issue
Block a user