package worldtask import ( "go_dreamfactory/comm" "go_dreamfactory/lego/sys/log" "go_dreamfactory/pb" "google.golang.org/protobuf/proto" ) // 我的世界任务 func (this *apiComp) MineCheck(session comm.IUserSession, req *pb.WorldtaskMineReq) (code pb.ErrorCode) { return } func (this *apiComp) Mine(session comm.IUserSession, req *pb.WorldtaskMineReq) (code pb.ErrorCode, data proto.Message) { uid := session.GetUserId() myWorldtask, err := this.module.modelWorldtask.getWorldtask(uid) if err != nil { this.module.Error("获取玩家世界任务失败", log.Fields{"uid": uid, "err": err.Error()}) code = pb.ErrorCode_DBError return } var list []*pb.Worldtask for _, v := range myWorldtask.TaskList { if v.TaskType == 2 { //世界任务 list = append(list, v) } } var wtMp = make(map[int32]*pb.Worldtask) for k, v := range myWorldtask.LastTaskIds { if v.TaskType == 2 { wtMp[k] = v } } myWorldtask.LastTaskIds = wtMp myWorldtask.TaskList = list rsp := &pb.WorldtaskMineResp{ Task: myWorldtask, } if err := session.SendMsg(string(this.module.GetType()), WorldtaskSubtypeMine, rsp); err != nil { code = pb.ErrorCode_SystemError } return }