删掉购买时装,时装放到商店中

This commit is contained in:
mamengke01
2020-12-10 16:25:33 +08:00
parent a31e292f4b
commit 09d9bbf47f

View File

@@ -275,7 +275,6 @@ export class HeroHandler {
}
//训练
async heroJobTrain (msg: {hid:number}, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
@@ -301,6 +300,7 @@ export class HeroHandler {
let heros = await calPlayerCeAndSave(sid, roleId, [hero]);
return resResult(STATUS.SUCCESS, { hid : heros[0].hid, job : heros[0].job, jobStage : heros[0].jobStage});
}
//进阶
async heroJobStageUp(msg: {hid:number}, session: BackendSession) {
let roleId: string = session.get('roleId');
@@ -333,6 +333,8 @@ export class HeroHandler {
let sid: string = session.get('sid');
let { hid, id } = msg;
let friendShip = getFriendShipById(id);
if (!friendShip)
return resResult(STATUS.HERO_CONECTION_IS_EXIT);
if (friendShip.actorId != hid)
return resResult(STATUS.WRONG_PARMS);
let hero = await HeroModel.findByHidAndRole(hid, roleId);
@@ -371,7 +373,7 @@ export class HeroHandler {
if (!hero)
return resResult(STATUS.HERO_NOT_FIND);
let friendShipLevels = getFriendShipLevels();
if (friendShipLevels[friendShipLevels.lenth - 1].level <= hero.favourLv)
if (friendShipLevels[friendShipLevels.length - 1].level <= hero.favourLv)
return resResult(STATUS.HERO_FAVOUR_LEVEL_REACH_MAXT);
//计算消耗物品转化的经验
let exp:number = 0;
@@ -401,39 +403,6 @@ export class HeroHandler {
return resResult(STATUS.SUCCESS, { hid : heros[0].hid, favour : heros[0].favour, favourLv : heros[0].favourLv});
}
//购买时装
async buyHeroSkin(msg: {id:number}, session: BackendSession) {
let roleId: string = session.get('roleId');
let sid: string = session.get('sid');
let { id } = msg;
let skinInfo = getFashionsById(id);
if (!skinInfo)
resResult(STATUS.HERO_SKIN_NOT_FIND);
let hero = await HeroModel.findByHidAndRole(skinInfo.actorId, roleId);
if (!hero)
resResult(STATUS.HERO_NOT_FIND);
if (!!_.findWhere(hero.skins, {id:id}))
resResult(STATUS.HERO_SKIN_IS_EXIST);
let items;//TODO物品消耗
let result = await handleCost(roleId, sid, items);
if(!result) {
return resResult(STATUS.BATTLE_CONSUMES_NOT_ENOUGH);
}
hero.skins.push({
id:id,
enable:false
});
let heros = await HeroModel.findByRole(roleId);
for (let i = 0; i < heros.length; i++) {
if (heros[i].hid == hero.hid) {
heros[i] = hero;
}
}
//重算战力并下发
await calPlayerCeAndSave(sid, roleId, heros);
return resResult(STATUS.SUCCESS, { hid : hero.hid, skins : hero.skins});
}
//穿带时装
async heroWearSkin(msg: {id:number}, session: BackendSession) {
let roleId: string = session.get('roleId');
@@ -441,10 +410,10 @@ export class HeroHandler {
let { id } = msg;
let skinInfo = getFashionsById(id);
if (!skinInfo)
resResult(STATUS.HERO_SKIN_NOT_FIND);
return resResult(STATUS.HERO_SKIN_NOT_FIND);
let hero = await HeroModel.findByHidAndRole(skinInfo.actorId, roleId);
if (!hero)
resResult(STATUS.HERO_NOT_FIND);
return resResult(STATUS.HERO_NOT_FIND);
let result = false;
for (let skin of hero.skins) {
if (skin.id == id) {
@@ -455,7 +424,7 @@ export class HeroHandler {
}
}
if (!result) {
resResult(STATUS.HERO_SKIN_NOT_FIND);
return resResult(STATUS.HERO_SKIN_NOT_FIND);
}
await calPlayerCeAndSave(sid, roleId, [hero]);
return resResult(STATUS.SUCCESS, { hid : hero.hid, skins : hero.skins});