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