From edb52d8be26521f211945bf519a786ee46d4723e Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Mon, 29 May 2023 10:47:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E5=AE=8C?= =?UTF-8?q?=E6=88=90=E5=90=8E=E6=96=B9=E6=B3=95=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/worldtask/api_accept.go | 1 + modules/worldtask/api_finish.go | 54 ++------------------------------- 2 files changed, 4 insertions(+), 51 deletions(-) diff --git a/modules/worldtask/api_accept.go b/modules/worldtask/api_accept.go index 13129e926..6ddabed81 100644 --- a/modules/worldtask/api_accept.go +++ b/modules/worldtask/api_accept.go @@ -95,6 +95,7 @@ func (a *apiComp) Accept(session comm.IUserSession, req *pb.WorldtaskAcceptReq) // 检查当前任务的完成条件 func (this *apiComp) checkCurrentCompleteCond(uid string, completeCondIds []int32, userTask *pb.DBWorldtask) (condIds []int32) { + for _, condId := range completeCondIds { if condId == 0 { continue diff --git a/modules/worldtask/api_finish.go b/modules/worldtask/api_finish.go index f2a8fa037..4997db0c2 100644 --- a/modules/worldtask/api_finish.go +++ b/modules/worldtask/api_finish.go @@ -77,55 +77,6 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe return } - finishRsp := func() { - this.module.modelWorldtask.updateRandomTask(session.GetUserId(), userTask) - - nextTaskIds := this.module.modelWorldtask.findNextTasks(curTaskConf.Key) - this.module.Debug("nextTaskIds", log.Field{Key: "nextTaskIds", Value: nextTaskIds}) - - nextTask := make(map[int32]*pb.Worldtask) - for _, next := range nextTaskIds { - ut := this.updateCheckCond(uid, userTask, next) - if ut != nil { - for k, v := range ut.CurrentTask { - nextTask[k] = &pb.Worldtask{ - TaskId: v.TaskId, - } - } - } - } - - if err := session.SendMsg(string(this.module.GetType()), WorldtaskSubtypeFinish, rsp); err != nil { - code = pb.ErrorCode_SystemError - return - } - - if curTaskConf.IdAfter != 0 { - // 任务完成推送 - if err := session.SendMsg(string(this.module.GetType()), WorldtaskNexttaskPush, &pb.WorldtaskNexttaskPush{ - NextTask: nextTask, - FinishedTaskIds: []int32{curTaskConf.Key}, - }); err != nil { - code = pb.ErrorCode_SystemError - return - } - } else { - // 章节完成 - if _, ok := userTask.Chapters[req.GroupId]; !ok { - delete(userTask.CurrentTask, req.GroupId) - if userTask.Chapters == nil { - userTask.Chapters = make(map[int32]int32) - } - userTask.Chapters[req.GroupId] = 1 //已解锁待领取 - update := map[string]interface{}{ - "chapters": userTask.Chapters, - "currentTask": userTask.CurrentTask, - } - this.module.modelWorldtask.Change(uid, update) - } - } - } - //判断任务是否已完成 for _, v := range userTask.TaskList { if v == req.TaskId { @@ -133,7 +84,8 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe log.Field{Key: "uid", Value: uid}, log.Field{Key: "taskId", Value: req.TaskId}, ) - finishRsp() + // finishRsp() + this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) return } } @@ -194,7 +146,7 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe } } - finishRsp() + this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) return }