package hero import ( "go_dreamfactory/comm" "go_dreamfactory/lego/sys/log" "go_dreamfactory/pb" "google.golang.org/protobuf/proto" ) //参数校验 func (this *apiComp) LockCheck(session comm.IUserSession, req *pb.HeroLockReq) (code pb.ErrorCode) { if req.Heroid == "" { code = pb.ErrorCode_ReqParameterError return } return } /// 英雄锁定 func (this *apiComp) Lock(session comm.IUserSession, req *pb.HeroLockReq) (code pb.ErrorCode, data proto.Message) { var ( _hero *pb.DBHero ) code = this.LockCheck(session, req) // check if code != pb.ErrorCode_Success { return } _hero, code = this.module.GetHeroByObjID(session.GetUserId(), req.Heroid) if code != pb.ErrorCode_Success { return } _hero.Block = !_hero.Block // 修改是否锁定状态 _heroMap := map[string]interface{}{ "block": _hero.Block, } // 保存数据 err := this.module.modelHero.ChangeList(session.GetUserId(), _hero.Id, _heroMap) if err != nil { code = pb.ErrorCode_DBError log.Errorf("update hero skill failed:%v", err) return } session.SendMsg(string(this.module.GetType()), HeroLock, &pb.HeroAwakenResp{Hero: _hero}) return }