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 { 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 { gameData, getJobByGradeAndClass, getHeroWakeByQuality, getHeroStarByQuality, getFriendShipById } from '../pubUtils/data';
|
||||||
import { Attributes } from '../pubUtils/interface';
|
import { Attributes } from '../pubUtils/interface';
|
||||||
|
import { DicSe } from '../pubUtils/dictionary/DicSe';
|
||||||
const HERO_CE_RATIO = 100;
|
const HERO_CE_RATIO = 100;
|
||||||
const _ = require('underscore');
|
const _ = require('underscore');
|
||||||
//战力计算TODO
|
//战力计算TODO
|
||||||
@@ -249,7 +250,7 @@ function addSeidEffect(reIncAttr: CeAttr, addSeidList: Array<number>, removeSeid
|
|||||||
{list: removeSeidList, multi: -1}
|
{list: removeSeidList, multi: -1}
|
||||||
];
|
];
|
||||||
for(let {list, multi} of otiginalSeidList) {
|
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) {
|
for(let seid of list) {
|
||||||
let dicSeid = gameData.se.get(seid);
|
let dicSeid = gameData.se.get(seid);
|
||||||
if(dicSeid && dicSeid.id > 0){
|
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) {
|
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(type == SEID_TYPE.TYPE101) { // 加值
|
||||||
|
if(!reIncAttr[HERO_ATTR[ability]]) {
|
||||||
|
reIncAttr[HERO_ATTR[ability]] = new CeAttrData();
|
||||||
|
}
|
||||||
reIncAttr[HERO_ATTR[ability]].ratioUp += value * multi;
|
reIncAttr[HERO_ATTR[ability]].ratioUp += value * multi;
|
||||||
} else if (type == SEID_TYPE.TYPE102) { // 加百分比
|
} else if (type == SEID_TYPE.TYPE102) { // 加百分比
|
||||||
|
if(!reIncAttr[HERO_ATTR[ability]]) {
|
||||||
|
reIncAttr[HERO_ATTR[ability]] = new CeAttrData();
|
||||||
|
}
|
||||||
reIncAttr[HERO_ATTR[ability]].fixUp += value * multi;
|
reIncAttr[HERO_ATTR[ability]].fixUp += value * multi;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user