diff --git a/modules/hero/api_awaken.go b/modules/hero/api_awaken.go index 7bc1e0d1b..ea6d5b71a 100644 --- a/modules/hero/api_awaken.go +++ b/modules/hero/api_awaken.go @@ -113,8 +113,8 @@ func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (c //xx英雄满级、共鸣、觉醒至最高状态 nextAwaken := this.module.configure.GetHeroAwakenConfig(_hero.HeroID, _hero.JuexingLv+1) if nextAwaken == nil { // 达到满级觉醒 - resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, _hero.Star+1) - if resonConfig == nil { // 满星 + resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, cfg.Star) + if resonConfig.Maxnum == _hero.ResonateNum { if _hero.Lv == _hero.Star*comm.HeroStarLvRatio { this.module.ModuleRtask.SendToRtask(session, comm.Rtype37, 1, cfg.Color) this.module.ModuleRtask.SendToRtask(session, comm.Rtype38, 1) diff --git a/modules/hero/api_resonance.go b/modules/hero/api_resonance.go index bc0203ee6..121fb905d 100644 --- a/modules/hero/api_resonance.go +++ b/modules/hero/api_resonance.go @@ -41,8 +41,14 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR if code != pb.ErrorCode_Success { return } + //获取原始星级 + conf := this.module.configure.GetHero(_hero.HeroID) + if conf == nil { + code = pb.ErrorCode_ConfigNoFound + return + } // 共鸣次数判断 - resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, _hero.Star) + resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, conf.Star) if resonConfig == nil { code = pb.ErrorCode_ConfigNoFound return @@ -160,8 +166,8 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR //xx英雄满级、共鸣、觉醒至最高状态 nextAwaken := this.module.configure.GetHeroAwakenConfig(_hero.HeroID, _hero.JuexingLv+1) if nextAwaken == nil { // 达到满级觉醒 - resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, _hero.Star+1) - if resonConfig == nil { // 满星 + resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, cfg.Star) + if resonConfig.Maxnum == _hero.ResonateNum { // 共鸣满 if _hero.Lv == _hero.Star*comm.HeroStarLvRatio { this.module.ModuleRtask.SendToRtask(session, comm.Rtype37, 1, cfg.Color) this.module.ModuleRtask.SendToRtask(session, comm.Rtype38, 1) diff --git a/modules/hero/api_resonanceSelect.go b/modules/hero/api_resonanceSelect.go index 53fe43784..ecfcbb6d9 100644 --- a/modules/hero/api_resonanceSelect.go +++ b/modules/hero/api_resonanceSelect.go @@ -63,8 +63,9 @@ func (this *apiComp) ResonanceUseEnergy(session comm.IUserSession, req *pb.HeroR this.module.Errorf("update hero skill failed:%v", err1) return } + conf := this.module.configure.GetHero(_hero.HeroID) // 计算属性 - this.module.modelHero.setEnergyProperty(_hero) + this.module.modelHero.setEnergyProperty(_hero, conf.Star) session.SendMsg(string(this.module.GetType()), ResonanceUseEnergy, &pb.HeroResonanceUseEnergyResp{Hero: _hero}) return } diff --git a/modules/hero/api_strengthenUplv.go b/modules/hero/api_strengthenUplv.go index 761c9f57e..fe7a428f5 100644 --- a/modules/hero/api_strengthenUplv.go +++ b/modules/hero/api_strengthenUplv.go @@ -201,8 +201,8 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, req *pb.HeroStren //xx英雄满级、共鸣、觉醒至最高状态 nextAwaken := this.module.configure.GetHeroAwakenConfig(_hero.HeroID, _hero.JuexingLv+1) if nextAwaken == nil { // 达到满级觉醒 - resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, _hero.Star+1) - if resonConfig == nil { // 满星 + resonConfig := this.module.configure.GetHeroResonanceConfig(_hero.HeroID, cfg.Star) + if resonConfig.Maxnum == _hero.ResonateNum { // 共鸣满 if _hero.Lv == _hero.Star*comm.HeroStarLvRatio { this.module.ModuleRtask.SendToRtask(session, comm.Rtype37, 1, cfg.Color) this.module.ModuleRtask.SendToRtask(session, comm.Rtype38, 1) diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go index 250051782..9155ba429 100644 --- a/modules/hero/model_hero.go +++ b/modules/hero/model_hero.go @@ -282,8 +282,9 @@ func (this *ModelHero) setJuexingProperty(hero *pb.DBHero, key string, value int } // 设置共鸣能量点数属性 -func (this *ModelHero) setEnergyProperty(hero *pb.DBHero) { - resonConfig := this.moduleHero.configure.GetHeroResonanceConfig(hero.HeroID, hero.Star) +func (this *ModelHero) setEnergyProperty(hero *pb.DBHero, star int32) { + + resonConfig := this.moduleHero.configure.GetHeroResonanceConfig(hero.HeroID, star) if resonConfig == nil { return }