装备洗练问题

This commit is contained in:
liwei 2023-07-12 16:13:52 +08:00
parent 7af53cf7ff
commit fa8e950733

View File

@ -1,13 +1,14 @@
package equipment
import (
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
//参数校验
// 参数校验
func (this *apiComp) WashConfirmCheck(session comm.IUserSession, req *pb.EquipmentWashConfirmReq) (errdata *pb.ErrorData) {
if req.Eid == "" || req.Pids == nil || len(req.Pids) == 0 {
errdata = &pb.ErrorData{
@ -18,11 +19,13 @@ func (this *apiComp) WashConfirmCheck(session comm.IUserSession, req *pb.Equipme
return
}
//锻造
// 锻造
func (this *apiComp) WashConfirm(session comm.IUserSession, req *pb.EquipmentWashConfirmReq) (errdata *pb.ErrorData) {
var (
equip *pb.DB_Equipment
attrlibrary *cfg.GameEquipAttrlibrarySData
hero *pb.DBHero
equipments []*pb.DB_Equipment
err error
)
if errdata = this.WashConfirmCheck(session, req); errdata != nil {
@ -74,6 +77,33 @@ func (this *apiComp) WashConfirm(session comm.IUserSession, req *pb.EquipmentWas
}
return
}
if equip.HeroId != "" {
equipments = make([]*pb.DB_Equipment, 8)
if hero, errdata = this.module.ModuleHero.GetHeroByObjID(session.GetUserId(), equip.HeroId); errdata != nil {
return
}
for i, v := range hero.EquipID {
if v != "" {
if v != equip.Id {
if equipments[i], err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), v); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_EquipmentOnFoundEquipment,
Title: pb.ErrorCode_EquipmentOnFoundEquipment.ToString(),
Message: fmt.Sprintf("装备唯一 id:%s", v),
}
return
}
} else {
equipments[i] = equip
}
}
}
if errdata = this.module.ModuleHero.UpdateEquipment(session, hero, equipments); errdata != nil {
return
}
}
session.SendMsg(string(this.module.GetType()), "washconfirm", &pb.EquipmentWashConfirmResp{Issucc: true})
return
}