From 2a7506ce34b554a20da4ea8b61a2fe5cec7655ab Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 15 Sep 2022 15:26:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A3=85=E5=A4=87=E9=99=84=E5=8A=A0=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hero/api_strengthenUpSkill.go | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/modules/hero/api_strengthenUpSkill.go b/modules/hero/api_strengthenUpSkill.go index 7f4761da1..65be36d90 100644 --- a/modules/hero/api_strengthenUpSkill.go +++ b/modules/hero/api_strengthenUpSkill.go @@ -92,35 +92,27 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt } for i := 0; i < int(lvUpCount); i++ { // 升级技能 - + szIndex := make([]int32, 0) sz := make([]int32, 0) - for _, skill := range _hero.NormalSkill { + for index, skill := range _hero.NormalSkill { skillMaxLv := this.module.configure.GetHeroSkillMaxLvConfig(uint32(skill.SkillID)) if skill.SkillLv < skillMaxLv { // 找到没有满级的技能id - skillData := this.module.configure.GetHeroSkillUpConfig(skill.SkillID) if skillData == nil { code = pb.ErrorCode_ConfigNoFound return } sz = append(sz, skillData.Probability[skill.SkillLv]) + szIndex = append(szIndex, int32(index)) } } if len(sz) == 0 { code = pb.ErrorCode_HeroMaxSkillLv + this.module.Errorf("技能升级失败:uid:%s,oid:%s", session.GetUserId(), _hero.Id) return } upSkillPos = comm.GetRandW(sz) - if upSkillPos > 0 { - for index, skill := range _hero.NormalSkill { - if int32(index) == upSkillPos { // 找到指定位置技能并升级 - skill.SkillLv += 1 - break - } - } - } else { - this.module.Errorf("技能升级失败:uid:%s,oid:%s", session.GetUserId(), _hero.Id) - } + _hero.NormalSkill[szIndex[upSkillPos]].SkillLv += 1 } code = this.module.ModuleUser.AddAttributeValue(session, comm.ResGold, -costGold, true)