check
This commit is contained in:
parent
447800b886
commit
7cba00531a
@ -24,19 +24,13 @@ func (this *apiComp) AwakenCheck(session comm.IUserSession, req *pb.HeroAwakenRe
|
|||||||
func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (code pb.ErrorCode, data proto.Message) {
|
func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (code pb.ErrorCode, data proto.Message) {
|
||||||
var (
|
var (
|
||||||
awakenData *cfg.Game_heroAwakenData
|
awakenData *cfg.Game_heroAwakenData
|
||||||
|
_hero *pb.DBHero
|
||||||
)
|
)
|
||||||
_hero, err := this.module.GetHero(session.GetUserId(), req.HeroObjID)
|
code = this.AwakenCheck(session, req) // check
|
||||||
defer func() {
|
if code != pb.ErrorCode_Success {
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), StrengthenUplv, &pb.HeroAwakenResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
if err != pb.ErrorCode_Success {
|
|
||||||
code = pb.ErrorCode_HeroNoExist
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID)
|
||||||
code = this.AwakenCheck(session, req) // check
|
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -84,6 +78,7 @@ func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (c
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
code = pb.ErrorCode_DBError
|
code = pb.ErrorCode_DBError
|
||||||
log.Errorf("update hero skill failed:%v", err1)
|
log.Errorf("update hero skill failed:%v", err1)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
} else { // 加属性
|
} else { // 加属性
|
||||||
property := make(map[string]int32, 0)
|
property := make(map[string]int32, 0)
|
||||||
@ -98,6 +93,6 @@ func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (c
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), StrengthenUplv, &pb.HeroAwakenResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -20,18 +20,14 @@ func (this *apiComp) LockCheck(session comm.IUserSession, req *pb.HeroLockReq) (
|
|||||||
|
|
||||||
/// 英雄锁定
|
/// 英雄锁定
|
||||||
func (this *apiComp) Lock(session comm.IUserSession, req *pb.HeroLockReq) (code pb.ErrorCode, data proto.Message) {
|
func (this *apiComp) Lock(session comm.IUserSession, req *pb.HeroLockReq) (code pb.ErrorCode, data proto.Message) {
|
||||||
|
var (
|
||||||
_hero, err := this.module.GetHero(session.GetUserId(), req.Heroid)
|
_hero *pb.DBHero
|
||||||
defer func() {
|
)
|
||||||
if code == pb.ErrorCode_Success {
|
code = this.LockCheck(session, req) // check
|
||||||
session.SendMsg(string(this.module.GetType()), HeroLock, &pb.HeroAwakenResp{Hero: _hero})
|
if code != pb.ErrorCode_Success {
|
||||||
}
|
|
||||||
}()
|
|
||||||
if err != pb.ErrorCode_Success {
|
|
||||||
code = pb.ErrorCode_HeroNoExist
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
code = this.LockCheck(session, req) // check
|
_hero, code = this.module.GetHero(session.GetUserId(), req.Heroid)
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -40,11 +36,12 @@ func (this *apiComp) Lock(session comm.IUserSession, req *pb.HeroLockReq) (code
|
|||||||
"block": _hero.Block,
|
"block": _hero.Block,
|
||||||
}
|
}
|
||||||
// 保存数据
|
// 保存数据
|
||||||
err1 := this.module.modelHero.modifyHeroData(session.GetUserId(), _hero.Id, _heroMap)
|
err := this.module.modelHero.modifyHeroData(session.GetUserId(), _hero.Id, _heroMap)
|
||||||
if err1 != nil {
|
if err != nil {
|
||||||
code = pb.ErrorCode_DBError
|
code = pb.ErrorCode_DBError
|
||||||
log.Errorf("update hero skill failed:%v", err1)
|
log.Errorf("update hero skill failed:%v", err)
|
||||||
}
|
return
|
||||||
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), HeroLock, &pb.HeroAwakenResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@ func (this *apiComp) ResonanceCheck(session comm.IUserSession, req *pb.HeroReson
|
|||||||
code = pb.ErrorCode_ReqParameterError
|
code = pb.ErrorCode_ReqParameterError
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -23,19 +24,16 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
var (
|
var (
|
||||||
szCostHero map[string]int32 // k 消耗卡牌对象 v 数量
|
szCostHero map[string]int32 // k 消耗卡牌对象 v 数量
|
||||||
totalCostCard int32 //消耗卡总数量
|
totalCostCard int32 //消耗卡总数量
|
||||||
|
_hero *pb.DBHero
|
||||||
|
_costHero *pb.DBHero
|
||||||
)
|
)
|
||||||
szCostHero = make(map[string]int32, 0)
|
szCostHero = make(map[string]int32, 0)
|
||||||
_hero, code := this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
code = this.ResonanceCheck(session, req) // check
|
||||||
defer func() {
|
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), Resonance, &pb.HeroResonanceResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
code = this.ResonanceCheck(session, req) // check
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -53,7 +51,7 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
code = pb.ErrorCode_HeroMaxResonate // 共鸣次数已满
|
code = pb.ErrorCode_HeroMaxResonate // 共鸣次数已满
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
var _costHero *pb.DBHero
|
|
||||||
for k, v := range szCostHero {
|
for k, v := range szCostHero {
|
||||||
for _, v1 := range resonConfig.Heroneed {
|
for _, v1 := range resonConfig.Heroneed {
|
||||||
|
|
||||||
@ -67,7 +65,6 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
}
|
}
|
||||||
_costHero, code = this.module.GetHero(session.GetUserId(), k) // 查询消耗卡是否存在
|
_costHero, code = this.module.GetHero(session.GetUserId(), k) // 查询消耗卡是否存在
|
||||||
if code != pb.ErrorCode_Success { // 英雄被锁不能消耗
|
if code != pb.ErrorCode_Success { // 英雄被锁不能消耗
|
||||||
code = pb.ErrorCode_HeroNoEnough
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if _costHero.Block {
|
if _costHero.Block {
|
||||||
@ -87,7 +84,6 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
for _, v := range req.CostObjID {
|
for _, v := range req.CostObjID {
|
||||||
code = this.module.DelCard(session.GetUserId(), v, 1) // 删除材料卡
|
code = this.module.DelCard(session.GetUserId(), v, 1) // 删除材料卡
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
code = pb.ErrorCode_DBError
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -110,6 +106,8 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("update hero skill failed:%v", err1)
|
log.Errorf("update hero skill failed:%v", err1)
|
||||||
|
code = pb.ErrorCode_DBError
|
||||||
|
return
|
||||||
}
|
}
|
||||||
// 返还对应初始星级的卡
|
// 返还对应初始星级的卡
|
||||||
for _, v := range resonConfig.Prize {
|
for _, v := range resonConfig.Prize {
|
||||||
@ -128,5 +126,6 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), Resonance, &pb.HeroResonanceResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -20,18 +20,20 @@ func (this *apiComp) ResonanceResetCheck(session comm.IUserSession, req *pb.Hero
|
|||||||
|
|
||||||
/// 英雄共鸣
|
/// 英雄共鸣
|
||||||
func (this *apiComp) ResonanceReset(session comm.IUserSession, req *pb.HeroResonanceResetReq) (code pb.ErrorCode, data proto.Message) {
|
func (this *apiComp) ResonanceReset(session comm.IUserSession, req *pb.HeroResonanceResetReq) (code pb.ErrorCode, data proto.Message) {
|
||||||
|
var (
|
||||||
_hero, code := this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
_hero *pb.DBHero
|
||||||
defer func() {
|
)
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), ResonanceReset, &pb.HeroResonanceResetResp{Hero: _hero, Energy: _hero.ResonateNum})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
code = this.ResonanceResetCheck(session, req) // check
|
code = this.ResonanceResetCheck(session, req) // check
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
||||||
|
if code != pb.ErrorCode_Success {
|
||||||
|
code = pb.ErrorCode_HeroNoExist
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if _hero.ResonateNum <= 0 { // 没有共鸣 不允许重置
|
if _hero.ResonateNum <= 0 { // 没有共鸣 不允许重置
|
||||||
code = pb.ErrorCode_HeroNoResonate
|
code = pb.ErrorCode_HeroNoResonate
|
||||||
return
|
return
|
||||||
@ -75,11 +77,13 @@ func (this *apiComp) ResonanceReset(session comm.IUserSession, req *pb.HeroReson
|
|||||||
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("update hero skill failed:%v", err1)
|
log.Errorf("update hero skill failed:%v", err1)
|
||||||
|
code = pb.ErrorCode_DBError
|
||||||
|
return
|
||||||
}
|
}
|
||||||
err1 = this.module.modelHero.PushHeroProperty(session, _hero.Id) // 推送属性变化
|
err1 = this.module.modelHero.PushHeroProperty(session, _hero.Id) // 推送属性变化
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), ResonanceReset, &pb.HeroResonanceResetResp{Hero: _hero, Energy: _hero.ResonateNum})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -14,22 +14,23 @@ func (this *apiComp) ResonanceUseEnergyCheck(session comm.IUserSession, req *pb.
|
|||||||
if len(req.HeroObjID) == 0 || req.UseEnergy <= 0 || req.UseType < 0 || req.UseType > 3 {
|
if len(req.HeroObjID) == 0 || req.UseEnergy <= 0 || req.UseType < 0 || req.UseType > 3 {
|
||||||
code = pb.ErrorCode_ReqParameterError
|
code = pb.ErrorCode_ReqParameterError
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *apiComp) ResonanceUseEnergy(session comm.IUserSession, req *pb.HeroResonanceUseEnergyReq) (code pb.ErrorCode, data proto.Message) {
|
func (this *apiComp) ResonanceUseEnergy(session comm.IUserSession, req *pb.HeroResonanceUseEnergyReq) (code pb.ErrorCode, data proto.Message) {
|
||||||
|
var (
|
||||||
_hero, code := this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
_hero *pb.DBHero
|
||||||
defer func() {
|
)
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), ResonanceUseEnergy, &pb.HeroResonanceUseEnergyResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
code = this.ResonanceUseEnergyCheck(session, req) // check
|
code = this.ResonanceUseEnergyCheck(session, req) // check
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
||||||
|
if code != pb.ErrorCode_Success {
|
||||||
|
return
|
||||||
|
}
|
||||||
if _hero.DistributionResonate < req.UseEnergy { // 能量点数不够
|
if _hero.DistributionResonate < req.UseEnergy { // 能量点数不够
|
||||||
code = pb.ErrorCode_HeroNoEnergy
|
code = pb.ErrorCode_HeroNoEnergy
|
||||||
return
|
return
|
||||||
@ -46,6 +47,7 @@ func (this *apiComp) ResonanceUseEnergy(session comm.IUserSession, req *pb.HeroR
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
code = pb.ErrorCode_DBError
|
code = pb.ErrorCode_DBError
|
||||||
log.Errorf("update hero skill failed:%v", err1)
|
log.Errorf("update hero skill failed:%v", err1)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
// 计算属性
|
// 计算属性
|
||||||
resonConfig, errr := this.module.configure.GetHeroResonanceConfig(_hero.HeroID)
|
resonConfig, errr := this.module.configure.GetHeroResonanceConfig(_hero.HeroID)
|
||||||
@ -69,5 +71,6 @@ func (this *apiComp) ResonanceUseEnergy(session comm.IUserSession, req *pb.HeroR
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), ResonanceUseEnergy, &pb.HeroResonanceUseEnergyResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,7 @@ func (this *apiComp) StrengthenUpSkillCheck(session comm.IUserSession, req *pb.H
|
|||||||
code = pb.ErrorCode_ReqParameterError
|
code = pb.ErrorCode_ReqParameterError
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -29,27 +30,22 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
|
|||||||
tmpValue int32 // 临时对象 存放累加权重
|
tmpValue int32 // 临时对象 存放累加权重
|
||||||
tagColor int32 // 目标卡品质
|
tagColor int32 // 目标卡品质
|
||||||
costColor int32 // 消耗卡品质
|
costColor int32 // 消耗卡品质
|
||||||
|
_hero *pb.DBHero // 操作的英雄
|
||||||
|
_costHero *pb.DBHero // 消耗的英雄
|
||||||
)
|
)
|
||||||
tmpUpSkillID = make(map[int32]*pb.SkillData, 0)
|
tmpUpSkillID = make(map[int32]*pb.SkillData, 0)
|
||||||
probability = make(map[int32]int32, 0)
|
probability = make(map[int32]int32, 0)
|
||||||
_hero, err := this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
|
||||||
defer func() {
|
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), StrengthenUpSkill, &pb.HeroStrengthenUpSkillResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
code = this.StrengthenUpSkillCheck(session, req) // check
|
code = this.StrengthenUpSkillCheck(session, req) // check
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if err != pb.ErrorCode_Success {
|
|
||||||
code = pb.ErrorCode_HeroNoExist
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID) // 查询目标卡是否存在
|
||||||
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
_costHero, code = this.module.GetHero(session.GetUserId(), req.CostCardObj) // 查询消耗卡是否存在
|
||||||
_costHero, err := this.module.GetHero(session.GetUserId(), req.CostCardObj) // 查询消耗卡是否存在
|
if code != pb.ErrorCode_Success {
|
||||||
if err != pb.ErrorCode_Success {
|
|
||||||
code = pb.ErrorCode_HeroNoExist
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if _costHero.Block { // 锁定的卡不允许被消耗
|
if _costHero.Block { // 锁定的卡不允许被消耗
|
||||||
@ -76,12 +72,9 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
|
|||||||
|
|
||||||
config, err1 := this.module.configure.GetHeroSkillUpConfig()
|
config, err1 := this.module.configure.GetHeroSkillUpConfig()
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
|
code = pb.ErrorCode_ConfigNoFound
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
// 先随机一个没有升满
|
|
||||||
for _, value := range config.GetDataList() {
|
|
||||||
log.Debugf("%d", value.Hid)
|
|
||||||
}
|
|
||||||
|
|
||||||
for index, skill := range _hero.NormalSkill {
|
for index, skill := range _hero.NormalSkill {
|
||||||
skillMaxLv := this.module.configure.GetHeroSkillMaxLvConfig(uint32(skill.SkillID))
|
skillMaxLv := this.module.configure.GetHeroSkillMaxLvConfig(uint32(skill.SkillID))
|
||||||
@ -127,7 +120,9 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
|
|||||||
}
|
}
|
||||||
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
err1 = this.module.modelHero.modifyHeroData(session.GetUserId(), req.HeroObjID, _heroMap) // 修改英雄信息
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("update hero skill failed:%v", err)
|
log.Errorf("update hero skill failed:%v", err1)
|
||||||
|
code = pb.ErrorCode_DBError
|
||||||
|
return
|
||||||
}
|
}
|
||||||
// 扣除材料
|
// 扣除材料
|
||||||
code = this.module.DelCard(session.GetUserId(), req.CostCardObj, 1)
|
code = this.module.DelCard(session.GetUserId(), req.CostCardObj, 1)
|
||||||
@ -139,5 +134,7 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
session.SendMsg(string(this.module.GetType()), StrengthenUpSkill, &pb.HeroStrengthenUpSkillResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -14,6 +14,7 @@ func (this *apiComp) StrengthenUpStarCheck(session comm.IUserSession, req *pb.He
|
|||||||
if req.HeroObjID == "" || len(req.Hero) == 0 || len(req.HeroRace) == 0 {
|
if req.HeroObjID == "" || len(req.Hero) == 0 || len(req.HeroRace) == 0 {
|
||||||
code = pb.ErrorCode_ReqParameterError
|
code = pb.ErrorCode_ReqParameterError
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -22,21 +23,19 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr
|
|||||||
var (
|
var (
|
||||||
target *cfg.Game_heroStarupData // 配置表目标升星英雄信息
|
target *cfg.Game_heroStarupData // 配置表目标升星英雄信息
|
||||||
costRaceCount int32
|
costRaceCount int32
|
||||||
|
_hero *pb.DBHero // 目标英雄
|
||||||
|
raceHero *pb.DBHero // 消耗阵容的英雄
|
||||||
|
tagHero *pb.DBHero // 消耗指定英雄
|
||||||
)
|
)
|
||||||
_hero, err := this.module.GetHero(session.GetUserId(), req.HeroObjID)
|
|
||||||
defer func() {
|
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), StrengthenUpStar, &pb.HeroStrengthenUpStarResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
code = this.StrengthenUpStarCheck(session, req) // check
|
code = this.StrengthenUpStarCheck(session, req) // check
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if err != pb.ErrorCode_Success {
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID)
|
||||||
code = pb.ErrorCode_HeroNoExist
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验指定英雄
|
// 校验指定英雄
|
||||||
tagHeroConfig, err1 := this.module.configure.GetHeroStarupConfig()
|
tagHeroConfig, err1 := this.module.configure.GetHeroStarupConfig()
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
@ -56,8 +55,7 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr
|
|||||||
}
|
}
|
||||||
// 指定英雄消耗校验
|
// 指定英雄消耗校验
|
||||||
for _, v := range req.Hero {
|
for _, v := range req.Hero {
|
||||||
if tagHero, err := this.module.GetHero(session.GetUserId(), v.CostCardObj); err != pb.ErrorCode_Success {
|
if tagHero, code = this.module.GetHero(session.GetUserId(), v.CostCardObj); code != pb.ErrorCode_Success {
|
||||||
code = pb.ErrorCode_ReqParameterError
|
|
||||||
return
|
return
|
||||||
} else {
|
} else {
|
||||||
if tagHero.Block { // 锁定的卡不允许被消耗
|
if tagHero.Block { // 锁定的卡不允许被消耗
|
||||||
@ -77,8 +75,7 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr
|
|||||||
}
|
}
|
||||||
// 校验阵容英雄消耗
|
// 校验阵容英雄消耗
|
||||||
for _, v := range req.HeroRace {
|
for _, v := range req.HeroRace {
|
||||||
if raceHero, err := this.module.GetHero(session.GetUserId(), v.CostCardObj); err != pb.ErrorCode_Success {
|
if raceHero, code = this.module.GetHero(session.GetUserId(), v.CostCardObj); code != pb.ErrorCode_Success {
|
||||||
code = pb.ErrorCode_ReqParameterError
|
|
||||||
return
|
return
|
||||||
} else {
|
} else {
|
||||||
if raceHero.Block { // 锁定的卡不允许被消耗
|
if raceHero.Block { // 锁定的卡不允许被消耗
|
||||||
@ -142,5 +139,9 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
code = this.module.modelHero.HeroStarUp(session, _hero) // 执行升星操作
|
code = this.module.modelHero.HeroStarUp(session, _hero) // 执行升星操作
|
||||||
|
if code != pb.ErrorCode_Success {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
session.SendMsg(string(this.module.GetType()), StrengthenUpStar, &pb.HeroStrengthenUpStarResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@ func (this *apiComp) StrengthenUplvCheck(session comm.IUserSession, req *pb.Hero
|
|||||||
code = pb.ErrorCode_ReqParameterError
|
code = pb.ErrorCode_ReqParameterError
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -26,27 +27,21 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, req *pb.HeroStren
|
|||||||
curExp int32 // 当前英雄的经验
|
curExp int32 // 当前英雄的经验
|
||||||
addExp int32 // 需要增加的经验
|
addExp int32 // 需要增加的经验
|
||||||
costRes map[string][]*cfg.Game_atn // 需要消耗的资源
|
costRes map[string][]*cfg.Game_atn // 需要消耗的资源
|
||||||
|
_hero *pb.DBHero // 目标英雄
|
||||||
|
_expHero *pb.DBHero // 消耗英雄
|
||||||
)
|
)
|
||||||
costRes = make(map[string][]*cfg.Game_atn, 0)
|
costRes = make(map[string][]*cfg.Game_atn, 0)
|
||||||
_hero, err := this.module.GetHero(session.GetUserId(), req.HeroObjID) // 校验升级的对象是否存在
|
|
||||||
defer func() {
|
|
||||||
if code == pb.ErrorCode_Success {
|
|
||||||
session.SendMsg(string(this.module.GetType()), StrengthenUplv, &pb.HeroStrengthenUplvResp{Hero: _hero})
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
code = this.StrengthenUplvCheck(session, req) // check
|
code = this.StrengthenUplvCheck(session, req) // check
|
||||||
if code != pb.ErrorCode_Success {
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if err != pb.ErrorCode_Success {
|
_hero, code = this.module.GetHero(session.GetUserId(), req.HeroObjID)
|
||||||
code = pb.ErrorCode_HeroNoExist
|
if code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
_expHero, err := this.module.GetHero(session.GetUserId(), req.ExpCardID) // 校验需要消耗经验卡牌的对象是否存在
|
_expHero, code = this.module.GetHero(session.GetUserId(), req.ExpCardID) // 校验需要消耗经验卡牌的对象是否存在
|
||||||
|
if code != pb.ErrorCode_Success {
|
||||||
if err != pb.ErrorCode_Success {
|
|
||||||
code = pb.ErrorCode_HeroNoExist
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if req.Amount <= 0 { // 消耗数量校验
|
if req.Amount <= 0 { // 消耗数量校验
|
||||||
@ -144,7 +139,8 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, req *pb.HeroStren
|
|||||||
// 删除经验卡
|
// 删除经验卡
|
||||||
err1 := this.module.modelHero.consumeOneHeroCard(session.GetUserId(), req.ExpCardID, req.Amount)
|
err1 := this.module.modelHero.consumeOneHeroCard(session.GetUserId(), req.ExpCardID, req.Amount)
|
||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("delete err failed err:%T!", err)
|
code = pb.ErrorCode_HeroNoEnough
|
||||||
|
log.Errorf("delete err failed err:%T!", err1)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -152,5 +148,7 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, req *pb.HeroStren
|
|||||||
if err1 != nil {
|
if err1 != nil {
|
||||||
log.Errorf("PushHeroProperty err!")
|
log.Errorf("PushHeroProperty err!")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
session.SendMsg(string(this.module.GetType()), StrengthenUplv, &pb.HeroStrengthenUplvResp{Hero: _hero})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -282,6 +282,7 @@ func (this *ModelHero) PushHeroProperty(session comm.IUserSession, heroId string
|
|||||||
}
|
}
|
||||||
|
|
||||||
if err = this.ChangeList(session.GetUserId(), heroId, update); err != nil {
|
if err = this.ChangeList(session.GetUserId(), heroId, update); err != nil {
|
||||||
|
log.Errorf("PushHeroProperty err:%v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
return session.SendMsg("push", "property", &pb.HeroProperty{Property: m})
|
return session.SendMsg("push", "property", &pb.HeroProperty{Property: m})
|
||||||
|
@ -37,3 +37,8 @@ message MailDelMailReq {
|
|||||||
message MailDelMailResp {
|
message MailDelMailResp {
|
||||||
repeated DBMailData Mail = 1;
|
repeated DBMailData Mail = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 推送邮件
|
||||||
|
message MailGetNewMailPush{
|
||||||
|
DBMailData Mail = 1; // 推送新的邮件信息
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user