逻辑优化

This commit is contained in:
meixiongfeng 2022-06-30 13:39:28 +08:00
parent 449dd5ed05
commit 65560dfa5c
7 changed files with 25 additions and 20 deletions

View File

@ -17,12 +17,12 @@ func (this *apiComp) ResonanceCheck(session comm.IUserSession, req *pb.HeroReson
bCheckOk bool
)
bCheckOk = false
_hero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
_hero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return
}
_costHero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.CostObjID) // 查询消耗卡是否存在
_costHero, err := this.moduleHero.GetHero(session.GetUserId(), req.CostObjID) // 查询消耗卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return

View File

@ -13,7 +13,7 @@ func (this *apiComp) ResonanceResetCheck(session comm.IUserSession, req *pb.Hero
code.Code = pb.ErrorCode_ReqParameterError
return
}
_hero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
_hero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return

View File

@ -12,7 +12,7 @@ func (this *apiComp) ResonanceUseEnergyCheck(session comm.IUserSession, req *pb.
code.Code = pb.ErrorCode_ReqParameterError
return
}
_hero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
_hero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return

View File

@ -19,12 +19,12 @@ func (this *apiComp) StrengthenUpSkillCheck(session comm.IUserSession, req *pb.H
tagColor int32
costColor int32
)
_hero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
_hero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return
}
_costHero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.CostCardObj) // 查询消耗卡是否存在
_costHero, err := this.moduleHero.GetHero(session.GetUserId(), req.CostCardObj) // 查询消耗卡是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return

View File

@ -20,7 +20,7 @@ func (this *apiComp) StrengthenUpStarCheck(session comm.IUserSession, req *pb.He
costRaceCount int32
curGold int32
)
tagHero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID)
tagHero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID)
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return
@ -42,7 +42,7 @@ func (this *apiComp) StrengthenUpStarCheck(session comm.IUserSession, req *pb.He
}
// 指定英雄消耗校验
for _, v := range req.Hero {
if tagHero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), v.CostCardObj); err != 0 {
if tagHero, err := this.moduleHero.GetHero(session.GetUserId(), v.CostCardObj); err != 0 {
code.Code = pb.ErrorCode_ReqParameterError
return
} else {
@ -59,7 +59,7 @@ func (this *apiComp) StrengthenUpStarCheck(session comm.IUserSession, req *pb.He
}
// 校验阵容英雄消耗
for _, v := range req.HeroRace {
if raceHero, err = this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), v.CostCardObj); err != 0 {
if raceHero, err = this.moduleHero.GetHero(session.GetUserId(), v.CostCardObj); err != 0 {
code.Code = pb.ErrorCode_ReqParameterError
return
} else {

View File

@ -21,13 +21,13 @@ func (this *apiComp) StrengthenUplvCheck(session comm.IUserSession, req *pb.Hero
//atn = map[string]interface{}{}
)
_hero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 校验升级的对象是否存在
_hero, err := this.moduleHero.GetHero(session.GetUserId(), req.HeroObjID) // 校验升级的对象是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
return
}
_expHero, err := this.moduleHero.modelHero.moduleHero.GetHero(session.GetUserId(), req.ExpCardID) // 校验需要消耗经验卡牌的对象是否存在
_expHero, err := this.moduleHero.GetHero(session.GetUserId(), req.ExpCardID) // 校验需要消耗经验卡牌的对象是否存在
if err != 0 {
code.Code = pb.ErrorCode_HeroNoExist
@ -45,7 +45,7 @@ func (this *apiComp) StrengthenUplvCheck(session comm.IUserSession, req *pb.Hero
if expConf != nil {
addExp = expConf.Heroexp * req.Amount
}
if _expHero.SameCount <= req.Amount { // 消耗经验卡片数量不足
if _expHero.SameCount < req.Amount { // 消耗经验卡片数量不足
code.Code = pb.ErrorCode_HeroNoEnough
return
}
@ -60,14 +60,14 @@ func (this *apiComp) StrengthenUplvCheck(session comm.IUserSession, req *pb.Hero
maxLv = _hero.Star * comm.HeroStarLvRatio
_data := this.moduleHero.configure.GetHeroLv(curLv)
if _data != nil {
if maxLv >= _hero.Lv && curExp >= _data.Heroexp[0].N { // 加经验之前校验是否达到最大等级
if maxLv <= _hero.Lv && curExp >= _data.Heroexp[0].N { // 加经验之前校验是否达到最大等级
code.Code = pb.ErrorCode_HeroMaxLv
return
}
curExp += addExp // 先把经验加上
for { // 死循环判断一键升级
if maxLv >= _hero.Lv && curExp >= _data.Heroexp[0].N { // 设置最大经验和等级
if maxLv <= _hero.Lv && curExp >= _data.Heroexp[0].N { // 设置最大经验和等级
curLv = maxLv
curExp = _data.Heroexp[0].N
break
@ -88,7 +88,7 @@ func (this *apiComp) StrengthenUplvCheck(session comm.IUserSession, req *pb.Hero
// 金币消耗判断
curGold = this.user.QueryAttributeValue(session.GetUserId(), "gold")
if curGold < costGold {
code.Code = pb.ErrorCode_GoldNoEnough
// code.Code = pb.ErrorCode_GoldNoEnough
}
} else {
code.Code = pb.ErrorCode_HeroNoExist
@ -133,7 +133,7 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, agrs map[string]i
}()
log.Debugf("升级后当前等级: %d,经验: %d,需要消耗的金币: %d,增加的经验: %d", curLv, curExp, costGold, addExp)
// 执行升级逻辑
code = this.moduleHero.modelHero.moduleHero.AddCardExp(session.GetUserId(), req.HeroObjID, addExp) // 加经验
code = this.moduleHero.AddCardExp(session.GetUserId(), req.HeroObjID, addExp) // 加经验
if code != pb.ErrorCode_Success {
return
}
@ -143,11 +143,16 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, agrs map[string]i
return
}
// 删除经验卡
code = this.moduleHero.modelHero.moduleHero.DelCard(req.ExpCardID, req.Amount)
err := this.moduleHero.modelHero.DelListlds(session.GetUserId(), req.ExpCardID)
if err != nil {
log.Errorf("delete err failed err:%T!", err)
return
}
//code = this.moduleHero.modelHero.moduleHero.DelCard(req.ExpCardID, req.Amount)
if code != pb.ErrorCode_Success {
return
}
err := this.moduleHero.modelHero.PushHeroProperty(session, _hero.Id) // 推送属性变化
err = this.moduleHero.modelHero.PushHeroProperty(session, _hero.Id) // 推送属性变化
if err != nil {
log.Errorf("PushHeroProperty err!")
}

View File

@ -124,14 +124,14 @@ func (this *Hero) AddCardExp(uid string, heroId string, exp int32) (code pb.Erro
maxLv = _hero.Star * comm.HeroStarLvRatio
_data := this.configure.GetHeroLv(curLv)
if _data != nil {
if maxLv >= _hero.Lv && curExp >= _data.Heroexp[0].N { // 加经验之前校验是否达到最大等级
if maxLv <= _hero.Lv && curExp >= _data.Heroexp[0].N { // 加经验之前校验是否达到最大等级
code = pb.ErrorCode_HeroMaxLv
return
}
curExp += exp // 先把经验加上
for { // 死循环判断一键升级
if maxLv >= _hero.Lv && curExp >= _data.Heroexp[0].N { // 设置最大经验和等级
if maxLv <= _hero.Lv && curExp >= _data.Heroexp[0].N { // 设置最大经验和等级
curLv = maxLv
curExp = _data.Heroexp[0].N
break