fix 添加被动计算bug
This commit is contained in:
@@ -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<number>, removeSeid
|
||||
{list: removeSeidList, multi: -1}
|
||||
];
|
||||
for(let {list, multi} of otiginalSeidList) {
|
||||
let effectList = new Array<any>(); // any: dic_zyz_se表内容
|
||||
let effectList = new Array<DicSe>(); // 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<number>, 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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user