From db4fb9bcae2a80a90bb0bf08bd131a05ec335f0c Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Fri, 2 Jun 2023 20:00:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E6=B6=88=E6=81=AF=E9=A1=BA?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/worldtask/api_accept.go | 18 +++++++++++------- modules/worldtask/api_finish.go | 5 ++--- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/modules/worldtask/api_accept.go b/modules/worldtask/api_accept.go index 45b645847..da3d302d0 100644 --- a/modules/worldtask/api_accept.go +++ b/modules/worldtask/api_accept.go @@ -84,13 +84,14 @@ func (a *apiComp) Accept(session comm.IUserSession, req *pb.WorldtaskAcceptReq) //判断是否要结束任务 if ((len(curTaskConf.Completetask) == 1 && curTaskConf.Completetask[0] == 0) || len(curTaskConf.Completetask) == 0) && curTaskConf.DeliverNpc == 0 { + a.sendMsg(session, WorldtaskSubtypeAccept, rsp) //结束任务 a.module.modelWorldtask.taskFinish(session, req.GroupId, req.TaskId, myWorldtask, curTaskConf) a.module.modelWorldtask.taskFinishPush(session, req.GroupId, myWorldtask, curTaskConf) } else if curTaskConf.DeliverNpc == 0 && len(curTaskConf.Completetask) > 0 { + var flag bool conds, err := a.module.ModuleBuried.CheckCondition(uid, curTaskConf.Completetask...) if err == nil { - var flag bool for _, cond := range conds { if cond.State == pb.BuriedItemFinishState_buried_finish { flag = true @@ -100,11 +101,15 @@ func (a *apiComp) Accept(session comm.IUserSession, req *pb.WorldtaskAcceptReq) break } } - if flag { - a.module.modelWorldtask.taskFinish(session, req.GroupId, req.TaskId, myWorldtask, curTaskConf) - a.module.modelWorldtask.taskFinishPush(session, req.GroupId, myWorldtask, curTaskConf) - } } + + if flag { + a.sendMsg(session, WorldtaskSubtypeAccept, rsp) + a.module.modelWorldtask.taskFinish(session, req.GroupId, req.TaskId, myWorldtask, curTaskConf) + a.module.modelWorldtask.taskFinishPush(session, req.GroupId, myWorldtask, curTaskConf) + return + } + a.sendMsg(session, WorldtaskSubtypeAccept, rsp) } else { // 已完成的任务条件 conds, err := a.module.ModuleBuried.CheckCondition(uid, curTaskConf.Completetask...) @@ -119,9 +124,8 @@ func (a *apiComp) Accept(session comm.IUserSession, req *pb.WorldtaskAcceptReq) } a.module.ModuleBuried.ActiveCondition(uid, unfinishCondIds...) } + a.sendMsg(session, WorldtaskSubtypeAccept, rsp) } - a.sendMsg(session, WorldtaskSubtypeAccept, rsp) - return } diff --git a/modules/worldtask/api_finish.go b/modules/worldtask/api_finish.go index 0c03cd279..3c37cbf45 100644 --- a/modules/worldtask/api_finish.go +++ b/modules/worldtask/api_finish.go @@ -93,8 +93,8 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe log.Field{Key: "uid", Value: uid}, log.Field{Key: "taskId", Value: req.TaskId}, ) - this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) this.sendMsg(session, WorldtaskSubtypeFinish, rsp) + this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) return } } @@ -160,9 +160,8 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe ic.TaskComplete(session, req.TaskId) } } - - this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) this.sendMsg(session, WorldtaskSubtypeFinish, rsp) + this.module.modelWorldtask.taskFinishPush(session, req.GroupId, userTask, curTaskConf) return }