package plunder import ( "go_dreamfactory/comm" "go_dreamfactory/pb" "go_dreamfactory/sys/configure" cfg "go_dreamfactory/sys/configure/structs" ) func (this *apiComp) UnlockCheck(session comm.IUserSession, req *pb.PlunderUnlockReq) (errdata *pb.ErrorData) { return } // 获取基本信息 func (this *apiComp) Unlock(session comm.IUserSession, req *pb.PlunderUnlockReq) (errdata *pb.ErrorData) { var ( err error list *pb.DBPlunder ) if errdata = this.UnlockCheck(session, req); errdata != nil { return } if list, err = this.module.modelPlunder.getPlunderData(session); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Message: err.Error(), } return } if int32(len(list.Line)) <= req.Pos { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Title: pb.ErrorCode_ReqParameterError.ToString(), } return } if list.Line[req.Pos].Closetime != -1 { errdata = &pb.ErrorData{ Code: pb.ErrorCode_PlundeUnlock, Title: pb.ErrorCode_PlundeUnlock.ToString(), } return } // 校验数据够不够 globalConf := this.module.ModuleTools.GetGlobalConf() if errdata = this.module.ConsumeRes(session, []*cfg.Gameatn{globalConf.PlunderPvpCollegeNum}, true); errdata != nil { return } list.Line[req.Pos].Closetime = configure.Now().Unix() + int64(globalConf.PlunderPvpCollegeTime)*24*3600 this.module.modelPlunder.changePlunderData(session.GetUserId(), map[string]interface{}{ "line": list.Line, }) session.SendMsg(string(this.module.GetType()), "unlock", &pb.PlunderUnlockResp{ Line: list.Line, }) return }