diff --git a/game-server/app/services/playerCeService.ts b/game-server/app/services/playerCeService.ts index c306daf1e..bffb00756 100644 --- a/game-server/app/services/playerCeService.ts +++ b/game-server/app/services/playerCeService.ts @@ -13,6 +13,7 @@ import { CeAttrData, CeAttr } from '../db/generalField'; import { getAttrNameByJobStage, getAttrCeRatio, getAtrrNameById, ABI_TYPE_TO_STAGE, ABI_STAGE, SEID_TYPE, HERO_ATTR} from '../consts'; import { gameData, getJobByGradeAndClass, getHeroWakeByQuality, getHeroStarByQuality, getFriendShipById } from '../pubUtils/data'; import { Attributes } from '../pubUtils/interface'; +import { DicSe } from '../pubUtils/dictionary/DicSe'; const HERO_CE_RATIO = 100; const _ = require('underscore'); //战力计算TODO @@ -249,7 +250,7 @@ function addSeidEffect(reIncAttr: CeAttr, addSeidList: Array, removeSeid {list: removeSeidList, multi: -1} ]; for(let {list, multi} of otiginalSeidList) { - let effectList = new Array(); // any: dic_zyz_se表内容 + let effectList = new Array(); // any: dic_zyz_se表内容 for(let seid of list) { let dicSeid = gameData.se.get(seid); if(dicSeid && dicSeid.id > 0){ @@ -258,12 +259,15 @@ function addSeidEffect(reIncAttr: CeAttr, addSeidList: Array, removeSeid } for(let {type, gainValueArr: [ability, value]} of effectList) { - if(!reIncAttr[HERO_ATTR[ability]]) { - reIncAttr[HERO_ATTR[ability]] = new CeAttrData(); - } if(type == SEID_TYPE.TYPE101) { // 加值 + if(!reIncAttr[HERO_ATTR[ability]]) { + reIncAttr[HERO_ATTR[ability]] = new CeAttrData(); + } reIncAttr[HERO_ATTR[ability]].ratioUp += value * multi; } else if (type == SEID_TYPE.TYPE102) { // 加百分比 + if(!reIncAttr[HERO_ATTR[ability]]) { + reIncAttr[HERO_ATTR[ability]] = new CeAttrData(); + } reIncAttr[HERO_ATTR[ability]].fixUp += value * multi; } }