战力:修复升级读表错误

This commit is contained in:
luying
2021-05-07 13:48:30 +08:00
parent 0315269387
commit 7b24078953

View File

@@ -281,8 +281,8 @@ function calHeroAddSkin(role: RoleType, skinIds: Array<number>) {
*/
export function calHeroStarIncAttr(originHero: HeroType, update: HeroUpdate, type: number, addSeidList: Array<number>, removeSeidList: Array<number>) {
let isInit = type == HERO_SYSTEM_TYPE.INIT;
let { hid, star: originStar, starStage: originStarStage, quality: originQuality, colorStar: originColorStar, colorStarStage: originColorStarStage, attr: heroAttrs, skins, lv } = originHero;
let { star = originStar, starStage = originStarStage, quality = originQuality, colorStar = originColorStar, colorStarStage = originColorStarStage } = update;
let { hid, star: originStar, starStage: originStarStage, quality: originQuality, colorStar: originColorStar, colorStarStage: originColorStarStage, attr: heroAttrs, skins, lv: oldLv } = originHero;
let { star = originStar, starStage = originStarStage, quality = originQuality, colorStar = originColorStar, colorStarStage = originColorStarStage, lv = oldLv } = update;
const dicHero = gameData.hero.get(hid);
@@ -290,8 +290,11 @@ export function calHeroStarIncAttr(originHero: HeroType, update: HeroUpdate, typ
const isFirstWake = colorStar > 0 && originColorStar <= 0; // 是否是初次觉醒
const isUpStar = originStar != star || originColorStar != colorStar; // 是否有升星
// console.log('*isUpstar', isUpStar, originStar, star, originColorStar, colorStar)
if(starStage == ABI_STAGE.START) star--;
if(colorStarStage == ABI_STAGE.START) colorStar--;
const dicStar = isWake ? getHeroWakeByQuality(dicHero.quality, colorStar) : getHeroStarByQuality(quality, star); // 星级表
const dicStar = isWake ? getHeroWakeByQuality(dicHero.quality, originColorStar) : getHeroStarByQuality(quality, originStar); // 星级表
let stages = new Array<number>(); // 需要升级的阶
if (type == HERO_SYSTEM_TYPE.INIT) {
@@ -318,7 +321,6 @@ export function calHeroStarIncAttr(originHero: HeroType, update: HeroUpdate, typ
if (!!dicStar && !!dicStar.ceAttr) {
starUp = dicStar.ceAttr.get(stage);
}
let newBase = (heroAttr + (lv - 1) * (heroUpAttr + starUp)) * HERO_CE_RATIO;
updateHeroAttr(heroAttrs, targetAttrId, { set: { base: newBase } });
}