测试:添加测试用debug接口
This commit is contained in:
@@ -26,77 +26,6 @@ export class HeroHandler {
|
|||||||
constructor(private app: Application) {
|
constructor(private app: Application) {
|
||||||
}
|
}
|
||||||
|
|
||||||
public async test(msg: {}, session: BackendSession) {
|
|
||||||
let sid = session.get('sid');
|
|
||||||
|
|
||||||
for (let i = 0; i < 3; i++) {
|
|
||||||
let heroes = await HeroModel.find({}).sort({ createdAt: 1 }).limit(1000).skip(i * 1000).lean();
|
|
||||||
for (let { hid, roleId, roleName, skins } of heroes) {
|
|
||||||
await HeroModel.updateHeroInfo(roleId, hid, { skins: [] });
|
|
||||||
for (let { id, enable } of skins) {
|
|
||||||
console.log(i, roleId, roleName, id);
|
|
||||||
await addSkin(roleId, roleName, id, enable);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 'OK'
|
|
||||||
}
|
|
||||||
|
|
||||||
// ! 测试接口,用来测试前清理并初始化某个武将;代码抄自:gm-server/app/service/users.ts deleteHero
|
|
||||||
public async testCleanUp(msg: { magicWord: string, hid: number }, session: BackendSession) {
|
|
||||||
let roleId: string = session.get('roleId');
|
|
||||||
let roleName: string = session.get('roleName');
|
|
||||||
let sid: string = session.get('sid');
|
|
||||||
|
|
||||||
const { magicWord, hid } = msg;
|
|
||||||
if (magicWord !== DEBUG_MAGIC_WORD) {
|
|
||||||
return resResult(STATUS.TOKEN_ERR);
|
|
||||||
}
|
|
||||||
|
|
||||||
let dicHero = gameData.hero.get(hid);
|
|
||||||
if (!dicHero) return resResult(STATUS.HERO_NOT_FIND);
|
|
||||||
await addItems(roleId, roleName, sid, [{
|
|
||||||
id: dicHero.pieceId, count: dicHero.pieceCount * HERO_GROW_MAX.STAR * ABI_STAGE.END
|
|
||||||
}]);
|
|
||||||
|
|
||||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
|
||||||
if (!hero) return resResult(STATUS.HERO_NOT_FIND);
|
|
||||||
|
|
||||||
await HeroModel.deleteHero(roleId, hid);
|
|
||||||
let role = await RoleModel.findByRoleId(roleId);
|
|
||||||
await calculatetopLineup(role, hid, 0, null);
|
|
||||||
await PvpDefenseModel.deleteHero(roleId, hid);
|
|
||||||
await RoleModel.updateRoleInfo(roleId, { topLineup: role.topLineup, topLineupCe: role.topLineupCe, ce: role.ce - hero.ce });
|
|
||||||
return resResult(STATUS.SUCCESS);
|
|
||||||
}
|
|
||||||
|
|
||||||
public async addItem(msg: { id: number, count: number }, session: BackendSession) {
|
|
||||||
let roleId: string = session.get('roleId');
|
|
||||||
let roleName: string = session.get('roleName');
|
|
||||||
let sid: string = session.get('sid');
|
|
||||||
|
|
||||||
let { id, count } = msg;
|
|
||||||
|
|
||||||
//let result = await handleCost(roleId, sid, [{id, count}] );
|
|
||||||
let items = [{ id, count }];
|
|
||||||
let role = await RoleModel.findByRoleId(roleId);
|
|
||||||
if (id == 999999) {
|
|
||||||
items = getDropItems();
|
|
||||||
if (role.lv < 60) {
|
|
||||||
role.lv = 60;
|
|
||||||
let roleLvInfo = gameData.kingexp.get(role.lv - 1);
|
|
||||||
role.exp = roleLvInfo.sum;
|
|
||||||
await RoleModel.updateRoleInfo(roleId, role);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let result = await addItems(roleId, roleName, sid, items);
|
|
||||||
if (!result) {
|
|
||||||
return resResult(STATUS.BATTLE_CONSUMES_NOT_ENOUGH);
|
|
||||||
}
|
|
||||||
return resResult(STATUS.SUCCESS, { goods: result, lv: role.lv, exp: role.exp });
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// 武将碎片合成
|
// 武将碎片合成
|
||||||
public async compose(msg: { hid: number }, session: BackendSession) {
|
public async compose(msg: { hid: number }, session: BackendSession) {
|
||||||
|
|
||||||
@@ -685,4 +614,60 @@ export class HeroHandler {
|
|||||||
|
|
||||||
return resResult(STATUS.SUCCESS, resultHeroes);
|
return resResult(STATUS.SUCCESS, resultHeroes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ! 测试接口,用来测试前清理并初始化某个武将;代码抄自:gm-server/app/service/users.ts deleteHero
|
||||||
|
public async testCleanUp(msg: { magicWord: string, hid: number }, session: BackendSession) {
|
||||||
|
let roleId: string = session.get('roleId');
|
||||||
|
let roleName: string = session.get('roleName');
|
||||||
|
let sid: string = session.get('sid');
|
||||||
|
|
||||||
|
const { magicWord, hid } = msg;
|
||||||
|
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||||
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
|
}
|
||||||
|
|
||||||
|
let dicHero = gameData.hero.get(hid);
|
||||||
|
if (!dicHero) return resResult(STATUS.HERO_NOT_FIND);
|
||||||
|
await addItems(roleId, roleName, sid, [{
|
||||||
|
id: dicHero.pieceId, count: dicHero.pieceCount * HERO_GROW_MAX.STAR * ABI_STAGE.END
|
||||||
|
}]);
|
||||||
|
|
||||||
|
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||||
|
if (!hero) return resResult(STATUS.HERO_NOT_FIND);
|
||||||
|
|
||||||
|
await HeroModel.deleteHero(roleId, hid);
|
||||||
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
|
await calculatetopLineup(role, hid, 0, null);
|
||||||
|
await PvpDefenseModel.deleteHero(roleId, hid);
|
||||||
|
await RoleModel.updateRoleInfo(roleId, { topLineup: role.topLineup, topLineupCe: role.topLineupCe, ce: role.ce - hero.ce });
|
||||||
|
return resResult(STATUS.SUCCESS);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async addItem(msg: { id: number, count: number }, session: BackendSession) {
|
||||||
|
let roleId: string = session.get('roleId');
|
||||||
|
let roleName: string = session.get('roleName');
|
||||||
|
let sid: string = session.get('sid');
|
||||||
|
|
||||||
|
let { id, count } = msg;
|
||||||
|
|
||||||
|
//let result = await handleCost(roleId, sid, [{id, count}] );
|
||||||
|
let items = [{ id, count }];
|
||||||
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
|
if (id == 999999) {
|
||||||
|
items = getDropItems();
|
||||||
|
if (role.lv < 60) {
|
||||||
|
role.lv = 60;
|
||||||
|
let roleLvInfo = gameData.kingexp.get(role.lv - 1);
|
||||||
|
role.exp = roleLvInfo.sum;
|
||||||
|
await RoleModel.updateRoleInfo(roleId, role);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let result = await addItems(roleId, roleName, sid, items);
|
||||||
|
if (!result) {
|
||||||
|
return resResult(STATUS.BATTLE_CONSUMES_NOT_ENOUGH);
|
||||||
|
}
|
||||||
|
return resResult(STATUS.SUCCESS, { goods: result, lv: role.lv, exp: role.exp });
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import { SchoolModel } from '../../../db/School';
|
|||||||
import { getTeraphStrengthenResult, getSchoolList } from '../../../services/roleService'
|
import { getTeraphStrengthenResult, getSchoolList } from '../../../services/roleService'
|
||||||
import { calPlayerCeAndSave, calAllHeroCe } from '../../../services/playerCeService';
|
import { calPlayerCeAndSave, calAllHeroCe } from '../../../services/playerCeService';
|
||||||
import { HERO_SYSTEM_TYPE, LINEUP_NUM, ROLE_SELECT, REDIS_KEY, TASK_TYPE, DEFAULT_HEROES, DEFAULT_HERO_LV, DEFAULT_ITEMS, DEFAULT_EQUIPS, DEFAULT_GOLD, DEFAULT_COIN, DEBUG_MAGIC_WORD } from '../../../consts';
|
import { HERO_SYSTEM_TYPE, LINEUP_NUM, ROLE_SELECT, REDIS_KEY, TASK_TYPE, DEFAULT_HEROES, DEFAULT_HERO_LV, DEFAULT_ITEMS, DEFAULT_EQUIPS, DEFAULT_GOLD, DEFAULT_COIN, DEBUG_MAGIC_WORD } from '../../../consts';
|
||||||
import { checkBattleHeroesByHid } from '../../../services/normalBattleService';
|
import { checkBattleHeroesByHid, roleLevelup } from '../../../services/normalBattleService';
|
||||||
import { Rank } from '../../../services/rankService';
|
import { Rank } from '../../../services/rankService';
|
||||||
import { updateUserInfo } from '../../../services/redisService';
|
import { updateUserInfo } from '../../../services/redisService';
|
||||||
import { checkTaskWithHero, checkTask, checkTaskWithArgs, checkActivityTask } from '../../../services/taskService';
|
import { checkTaskWithHero, checkTask, checkTaskWithArgs, checkActivityTask } from '../../../services/taskService';
|
||||||
@@ -558,4 +558,17 @@ export class RoleHandler {
|
|||||||
|
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async debugRoleLvUp(msg: { magicWord: string, lv: number }, session: BackendSession) {
|
||||||
|
const { magicWord, lv } = msg;
|
||||||
|
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||||
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
|
}
|
||||||
|
|
||||||
|
let roleId = session.get('roleId');
|
||||||
|
let roleLvInfo = gameData.kingexp.get(lv - 1);
|
||||||
|
let role = await RoleModel.updateRoleInfo(roleId, { lv, exp: roleLvInfo.sum });
|
||||||
|
|
||||||
|
return resResult(STATUS.SUCCESS, { lv: role.lv });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user