Merge branch 'master' of https://gitlab.trgame.cn/zyztech/zyz_server
# Conflicts: # shared/resource/jsons/dic_goods.json
This commit is contained in:
@@ -205,7 +205,7 @@ export class ExpeditionBattleHandler {
|
||||
}
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid, funcs); // 扣除体力
|
||||
let apJson = await setAp(roleId, role.lv, isSuccess?-1 * warInfo.cost: 0, sid, funcs); // 扣除体力
|
||||
if (!apJson) {
|
||||
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ export class NormalBattleHandler {
|
||||
}
|
||||
|
||||
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid, funcs); // 扣除体力
|
||||
let apJson = await setAp(roleId, role.lv, isSuccess? -1 * warInfo.cost: 0, sid, funcs); // 扣除体力
|
||||
if (!apJson) {
|
||||
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
||||
}
|
||||
|
||||
@@ -203,7 +203,7 @@ export class GmHandler {
|
||||
const uid = session.get('uid');
|
||||
const maintenance = await MaintenanceModel.updateStatusByCode(code, false, uid);
|
||||
if(!maintenance) return resResult(STATUS.WRONG_PARMS);
|
||||
await stopMaintenance(maintenance);
|
||||
await stopMaintenance(maintenance, uid);
|
||||
|
||||
return resResult(STATUS.SUCCESS,);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,8 @@ import { pinus } from "pinus";
|
||||
import { getWorldChannelSid } from "./chatChannelService";
|
||||
import { ServerlistModel } from "../db/Serverlist";
|
||||
import { NoticeModel, NoticeType } from "../db/Notice";
|
||||
import { SendMailFun } from "./mailService";
|
||||
import { GMMailType } from '../db/GMMail';
|
||||
|
||||
// —————————————— 跑马灯 —————————————— //
|
||||
// 初始
|
||||
@@ -146,8 +148,8 @@ async function startMaintenance(maintenance: MaintenanceType, startJob?: Job) {
|
||||
}
|
||||
|
||||
// 停止维护
|
||||
export async function stopMaintenance(maintenance: MaintenanceType) {
|
||||
let { serverIds, notice, marquee } = maintenance;
|
||||
export async function stopMaintenance(maintenance: MaintenanceType, uid: number) {
|
||||
let { serverIds, notice, marquee, mail } = maintenance;
|
||||
// 更新serverlist上的status
|
||||
await ServerlistModel.updateByServerIds(serverIds, { serverStatus: SERVER_STATUS.HOT });
|
||||
// 更新notice的isEnable
|
||||
@@ -164,4 +166,11 @@ export async function stopMaintenance(maintenance: MaintenanceType) {
|
||||
if(marquee) {
|
||||
await cancelMarquee((<MarqueeType>marquee).code);
|
||||
}
|
||||
console.log('*****', JSON.stringify(mail));
|
||||
if(mail) {
|
||||
let f = new SendMailFun();
|
||||
await f.setWithGmMail((<GMMailType>mail)._id);
|
||||
await f.sendToServer(serverIds);
|
||||
await f.saveRecord(uid);
|
||||
}
|
||||
}
|
||||
@@ -156,10 +156,10 @@ describe('活动测试', function () {
|
||||
|
||||
it('大富翁-移动', function (done) {
|
||||
if (activityId) {
|
||||
requestActivity(pinusClient, 'role.heroHandler.addItem', { id: CURRENCY_BY_TYPE.get(CURRENCY_TYPE.SPECIAL_DICE), count: 1 })
|
||||
requestActivity(pinusClient, 'role.heroHandler.addItem', { id: CURRENCY_BY_TYPE.get(CURRENCY_TYPE.NORMAL_DICE), count: 1 })
|
||||
.then((data: any) => {
|
||||
checkSuccessResponse(data);
|
||||
return requestActivity(pinusClient, 'activity.activityMonopolyHandler.move', { activityId: activityId, step: 1 })
|
||||
return requestActivity(pinusClient, 'activity.activityMonopolyHandler.move', { activityId: activityId, step: 0 })
|
||||
})
|
||||
.then((data: any) => {
|
||||
checkSuccessResponse(data);
|
||||
|
||||
@@ -255,8 +255,6 @@ describe('聊天测试', function () {
|
||||
pinusClient.request('role.heroHandler.starUp', { hid: XIAHOUQINGYI_HID, star: i, starStage: j }, (starUpRes) => {
|
||||
if (starUpRes.code === STATUS.ROLE_STAR_REACH_MAX.code) {
|
||||
expect(msgReceiveCnt).to.be.equal(2);
|
||||
pinusClientT.off(ON_GROUP_MSG_ROUTE);
|
||||
pinusClient.off(ON_GROUP_MSG_ROUTE);
|
||||
done();
|
||||
} else {
|
||||
checkSuccessResponse(starUpRes);
|
||||
@@ -299,8 +297,6 @@ describe('聊天测试', function () {
|
||||
checkSuccessResponse(qualityUpRes);
|
||||
setTimeout(() => {
|
||||
expect(msgReceiveCnt).to.be.equal(2);
|
||||
pinusClientT.off(ON_GROUP_MSG_ROUTE);
|
||||
pinusClient.off(ON_GROUP_MSG_ROUTE);
|
||||
done();
|
||||
}, 1000);
|
||||
});
|
||||
|
||||
@@ -42,7 +42,6 @@ export default class GameController extends Controller {
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.GM_JSON_FORMAT_ERR);
|
||||
return
|
||||
}
|
||||
console.log(goods)
|
||||
|
||||
ctx.body = await ctx.service.game.updateMaintenance(
|
||||
{...values, startTime: new Date(values.startTime)},
|
||||
|
||||
@@ -86,6 +86,18 @@ export default class UserController extends Controller {
|
||||
ctx.body = await ctx.service.users.setHeroLv(roleIdAndHids, lv);
|
||||
}
|
||||
|
||||
public async setHeroParam() {
|
||||
const { ctx } = this;
|
||||
const { selectedRowKeys: roleIdAndHids, star, colorStar, quality } = ctx.request.body;
|
||||
ctx.body = await ctx.service.users.setHeroParam(roleIdAndHids, star, colorStar, quality);
|
||||
}
|
||||
|
||||
public async setHeroJob() {
|
||||
const { ctx } = this;
|
||||
const { selectedRowKeys: roleIdAndHids, job } = ctx.request.body;
|
||||
ctx.body = await ctx.service.users.setHeroJob(roleIdAndHids, job);
|
||||
}
|
||||
|
||||
public async saveHeroToDefense() {
|
||||
const { ctx } = this;
|
||||
const { roleId, roleName, hid } = ctx.request.body;
|
||||
|
||||
@@ -35,6 +35,8 @@ export default (app: Application) => {
|
||||
router.post('/api/users/getherolist',tokenParser, controller.users.getHeroList);
|
||||
router.post('/api/users/deletehero', tokenParser, controller.users.deleteHero);
|
||||
router.post('/api/users/setherolv', tokenParser, controller.users.setHeroLv);
|
||||
router.post('/api/users/setheroparam', controller.users.setHeroParam);
|
||||
router.post('/api/users/setherojob', controller.users.setHeroJob);
|
||||
router.post('/api/users/saveherotodefense',tokenParser, controller.users.saveHeroToDefense);
|
||||
router.post('/api/users/removeherofromdefense',tokenParser, controller.users.removeHeroFromDefense);
|
||||
router.post('/api/users/getequiplist', tokenParser, controller.users.getEquipList);
|
||||
|
||||
@@ -81,7 +81,7 @@ export default class Game extends Service {
|
||||
let curEnv = serverEnv.find(cur => cur.env == this.app.config.env);
|
||||
|
||||
let marqueeResult = await MarqueeModel.createData({ ...marquee, serverIds: values.serverIds, type: MARQUEE_TYPE.SCHEDULE, isRunning: false }, ctx.user?.uid);
|
||||
let noticeResult = await NoticeModel.updateNotice('new', { ...notice, type: 1, sort: 1000, serverType: curEnv?.serverType, isEnable: true }, ctx.user?.uid);
|
||||
let noticeResult = await NoticeModel.updateNotice('new', { ...notice, type: 1, sort: 1000, serverType: curEnv?.serverType, isEnable: false }, ctx.user?.uid);
|
||||
let mailResult = await GMMailModel.addMail({ ...mail, useTempTime: true }, ctx.user?.uid);
|
||||
await MaintenanceModel.createData(values, marqueeResult, noticeResult, mailResult);
|
||||
} else {
|
||||
|
||||
@@ -35,6 +35,7 @@ import { FriendRelationModel } from '@db/FriendRelation';
|
||||
import { createHero as pubCreateHero, addSkin } from '@pubUtils/itemUtils';
|
||||
import { GiftCodeModel } from '@db/GiftCode';
|
||||
import { GiftCodeDetailModel } from '@db/GiftCodeDetail';
|
||||
// import { resResult } from '@pubUtils/util';
|
||||
|
||||
// import * as fs from 'fs';
|
||||
|
||||
@@ -627,6 +628,53 @@ export default class GMUsers extends Service {
|
||||
}
|
||||
}
|
||||
|
||||
public async setHeroParam(roleIdAndHids: string[], star: number, colorStar: number, quality: number) {
|
||||
try {
|
||||
const ctx = this.ctx;
|
||||
if (typeof star != 'number'||typeof colorStar != 'number'||typeof quality != 'number') return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
for (let roleIdAndHid of roleIdAndHids) {
|
||||
let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let hid = parseInt(hidStr);
|
||||
|
||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
console.log(hid, roleId, !!hero);
|
||||
if (!hero) continue;
|
||||
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, roleId, hero, { star, colorStar, quality });
|
||||
}
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} catch (e) {
|
||||
console.error(e.stack)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public async setHeroJob(roleIdAndHids: string[], job: number) {
|
||||
try {
|
||||
const ctx = this.ctx;
|
||||
if(!gameData.job.has(job)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
for (let roleIdAndHid of roleIdAndHids) {
|
||||
let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let hid = parseInt(hidStr);
|
||||
|
||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
console.log(hid, roleId, !!hero);
|
||||
if (!hero) continue;
|
||||
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.STAGEUP, roleId, hero, { job });
|
||||
}
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} catch (e) {
|
||||
console.error(e.stack)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据类型等搜索装备
|
||||
*/
|
||||
|
||||
@@ -12,11 +12,12 @@ export default class GameController extends Controller {
|
||||
public async checkVersion() {
|
||||
const { ctx } = this;
|
||||
const { version } = ctx.request.body;
|
||||
if (version < CLIENT_VERSION) {//版本号太低
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.VERSION_ERR, { version: CLIENT_VERSION });
|
||||
if (version >= CLIENT_VERSION) {
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
return;
|
||||
}
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
//版本号太低
|
||||
ctx.body = ctx.service.utils.resResult(STATUS.VERSION_ERR, { version: CLIENT_VERSION });
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user