go_dreamfactory/modules/arena/api_setdefformt.go
2022-10-24 10:55:18 +08:00

47 lines
1.1 KiB
Go

package arena
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) SetDefFormtCheck(session comm.IUserSession, req *pb.ArenaSetDefFormtReq) (code pb.ErrorCode) {
return
}
///设置防守阵型
func (this *apiComp) SetDefFormt(session comm.IUserSession, req *pb.ArenaSetDefFormtReq) (code pb.ErrorCode, data proto.Message) {
var (
info *pb.DBArenaUser
heros []*pb.DBHero
err error
)
if code = this.SetDefFormtCheck(session, req); code != pb.ErrorCode_Success {
return
}
if info, err = this.module.modelArena.queryPlayerInfo(session.GetUserId()); err != nil && err != mgo.MongodbNil {
code = pb.ErrorCode_DBError
return
}
if err == mgo.MongodbNil {
info = &pb.DBArenaUser{
Uid: session.GetUserId(),
}
}
if heros, err = this.module.modelArena.queryUserHeros(session.GetUserId(), req.Formt); err != nil {
code = pb.ErrorCode_DBError
return
}
info.Defend = &pb.DBPlayerBattleFormt{
Leadpos: req.Leadpos,
Formt: heros,
}
return
}