diff --git a/comm/const.go b/comm/const.go index 73391a68a..5a38dac2d 100644 --- a/comm/const.go +++ b/comm/const.go @@ -342,7 +342,7 @@ const ( EventUserOffline core.Event_Key = "Event_UserOffline" //用户离线事件 EventUserChanged core.Event_Key = "event_user_changed" //用户数据变化 - EventTaskChanged core.Event_Key = "event_task_changed" //任务数据变化 + // EventTaskChanged core.Event_Key = "event_task_changed" //任务数据变化 EventUserVipChanged core.Event_Key = "event_uservip_changed" //用户数据变化 EventSociatyRankChanged core.Event_Key = "event_sociatyRank_changed" //公会数据变化 diff --git a/modules/growtask/model_growtask.go b/modules/growtask/model_growtask.go index 1a503d47f..3614aa64c 100644 --- a/modules/growtask/model_growtask.go +++ b/modules/growtask/model_growtask.go @@ -114,7 +114,7 @@ func (this *ModelGrowtask) list(uid string, taskType int32, gt *pb.DBGrowtask) ( } //任务完成 - if code := this.moduleGrowtask.ModuleRtask.CheckCondi(uid, v.Fstask); code == nil { + if _, err := this.moduleGrowtask.ModuleBuried.CheckCondition(uid, v.Fstask); err == nil { if v.PreTask == 0 { v.Status = pb.GrowtaskStatus_Wait //待领奖状态 } else { diff --git a/modules/smithy/model_task.go b/modules/smithy/model_task.go index 784753098..71390084b 100644 --- a/modules/smithy/model_task.go +++ b/modules/smithy/model_task.go @@ -80,8 +80,8 @@ func (this *modelTask) checkTaskStatus(uid string, taskId int32) bool { if conf == nil { return false } - if ec := this.module.ModuleRtask.CheckCondi(uid, conf.TypeId); ec != nil { - return false - } + // if ec := this.module.ModuleRtask.CheckCondi(uid, conf.TypeId); ec != nil { + // return false + // } return true } diff --git a/modules/sociaty/model_sociaty.go b/modules/sociaty/model_sociaty.go index a1ba7c840..b39d070c0 100644 --- a/modules/sociaty/model_sociaty.go +++ b/modules/sociaty/model_sociaty.go @@ -927,26 +927,6 @@ func (this *ModelSociaty) getMemberMax(sociaty *pb.DBSociaty) int32 { return 0 } -// 校验任务完成状态 -func (this *ModelSociaty) validTask(uid string, taskId int32) (err error, ok bool) { - rsp := &pb.DBRtaskRecord{} - if err = this.module.ModuleRtask.RemoteCheckCondi(uid, taskId, rsp); err != nil { - return - } - - // 遍历玩家任务数据 - if data, ok := rsp.Vals[taskId]; ok { - //查找表配置 - conf, ok := this.module.rtaskCondConf.GetDataMap()[taskId] - if ok { - if data.Rtype == conf.Type && data.Data[0] >= conf.Data1 { - return nil, true - } - } - } - return -} - // 成员退出清理 func (this *ModelSociaty) memberClear(sociaty *pb.DBSociaty) error { // 邮件接收人 diff --git a/modules/task/model_task.go b/modules/task/model_task.go index c74fe80c8..8cf6032a5 100644 --- a/modules/task/model_task.go +++ b/modules/task/model_task.go @@ -27,7 +27,7 @@ func (this *ModelTask) Init(service core.IService, module core.IModule, comp cor err = this.MCompModel.Init(service, module, comp, options) this.moduleTask = module.(*ModuleTask) this.EventApp = event_v2.NewApp() - this.EventApp.Listen(comm.EventTaskChanged, this.doTaskHandle) + // this.EventApp.Listen(comm.EventTaskChanged, this.doTaskHandle) this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, }) @@ -387,135 +387,135 @@ func (this *ModelTask) modifyUserTask(uid string, taskId int32, data map[string] } // 清空任务 -func (this *ModelTask) clearTask(uid string, taskTag ...comm.TaskTag) { - if len(taskTag) == 0 { - this.moduleTask.Error("TaskTag参数缺失", - log.Field{Key: "uid", Value: uid}, - log.Field{Key: "params", Value: taskTag}, - ) - return - } - var task *pb.DBTask - if err := this.GetList(uid, &task); err != nil { - this.moduleTask.Errorf("getTaskById err %v", err) - return - } +// func (this *ModelTask) clearTask(uid string, taskTag ...comm.TaskTag) { +// if len(taskTag) == 0 { +// this.moduleTask.Error("TaskTag参数缺失", +// log.Field{Key: "uid", Value: uid}, +// log.Field{Key: "params", Value: taskTag}, +// ) +// return +// } +// var task *pb.DBTask +// if err := this.GetList(uid, &task); err != nil { +// this.moduleTask.Errorf("getTaskById err %v", err) +// return +// } - if task == nil { - this.moduleTask.Error("任务数据空", - log.Field{Key: "uid", Value: uid}, - log.Field{Key: "taskTag", Value: taskTag}, - ) - return - } +// if task == nil { +// this.moduleTask.Error("任务数据空", +// log.Field{Key: "uid", Value: uid}, +// log.Field{Key: "taskTag", Value: taskTag}, +// ) +// return +// } - dr := this.moduleTask.ModuleRtask.GetCondiData(uid) +// dr := this.moduleTask.ModuleRtask.GetCondiData(uid) - update := map[string]interface{}{} - if taskTag[0] == comm.TASK_DAILY { - for _, v := range task.DayList { - //删除任务条件数据 - if dr != nil && dr.Vals != nil { - delete(dr.Vals, v.TypeId) - } - } - if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { - this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) - } - update["dayList"] = make([]*pb.TaskData, 0) - } else if taskTag[0] == comm.TASK_WEEKLY { - for _, v := range task.WeekList { - //删除任务条件数据 - if dr != nil && dr.Vals != nil { - delete(dr.Vals, v.TypeId) - } - } - if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { - this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) - } - update["weekList"] = make([]*pb.TaskData, 0) - } else if taskTag[0] == comm.TASK_ACHIEVE { - for _, v := range task.AchieveList { - //删除任务条件数据 - if dr != nil && dr.Vals != nil { - delete(dr.Vals, v.TypeId) - } - } - if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { - this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) - } - update["weekList"] = make([]*pb.TaskData, 0) - } +// update := map[string]interface{}{} +// if taskTag[0] == comm.TASK_DAILY { +// for _, v := range task.DayList { +// //删除任务条件数据 +// if dr != nil && dr.Vals != nil { +// delete(dr.Vals, v.TypeId) +// } +// } +// if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { +// this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) +// } +// update["dayList"] = make([]*pb.TaskData, 0) +// } else if taskTag[0] == comm.TASK_WEEKLY { +// for _, v := range task.WeekList { +// //删除任务条件数据 +// if dr != nil && dr.Vals != nil { +// delete(dr.Vals, v.TypeId) +// } +// } +// if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { +// this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) +// } +// update["weekList"] = make([]*pb.TaskData, 0) +// } else if taskTag[0] == comm.TASK_ACHIEVE { +// for _, v := range task.AchieveList { +// //删除任务条件数据 +// if dr != nil && dr.Vals != nil { +// delete(dr.Vals, v.TypeId) +// } +// } +// if err := this.moduleTask.ModuleRtask.ChangeCondi(uid, dr.Vals); err != nil { +// this.moduleTask.Error("更新任务条件数据", log.Field{Key: "uid", Value: uid}) +// } +// update["weekList"] = make([]*pb.TaskData, 0) +// } - if err := this.moduleTask.modelTask.Change(uid, update); err != nil { - this.moduleTask.Error("清空任务数据", log.Field{Key: "uid", Value: uid}) - } +// if err := this.moduleTask.modelTask.Change(uid, update); err != nil { +// this.moduleTask.Error("清空任务数据", log.Field{Key: "uid", Value: uid}) +// } -} +// } // 任务处理 -func (this *ModelTask) doTaskHandle(event interface{}, next func(event interface{})) { - tl := event.(*TaskListen) +// func (this *ModelTask) doTaskHandle(event interface{}, next func(event interface{})) { +// tl := event.(*TaskListen) - data, err := this.moduleTask.configure.getTasks(int32(tl.TaskType)) - if err != nil { - this.moduleTask.Errorf("taskHandle err %v", err) - return - } +// data, err := this.moduleTask.configure.getTasks(int32(tl.TaskType)) +// if err != nil { +// this.moduleTask.Errorf("taskHandle err %v", err) +// return +// } - // 获取玩家的任务条件数据 - dr := this.moduleTask.ModuleRtask.GetCondiData(tl.Uid) - if dr == nil { - return - } +// // 获取玩家的任务条件数据 +// dr := this.moduleTask.ModuleRtask.GetCondiData(tl.Uid) +// if dr == nil { +// return +// } - // 遍历事件列表 - for _, conf := range data { - // 从任务条件中查找 - ret, ok := dr.Vals[conf.TypeId] - if !ok { - continue - } +// // 遍历事件列表 +// for _, conf := range data { +// // 从任务条件中查找 +// ret, ok := dr.Vals[conf.TypeId] +// if !ok { +// continue +// } - task, ok := this.checkTask(tl.Uid, conf.Key) - if !ok { - this.moduleTask.Debug("任务已完成", log.Field{Key: "uid", Value: tl.Uid}, log.Field{Key: "任务ID", Value: conf.Key}) - continue - } +// task, ok := this.checkTask(tl.Uid, conf.Key) +// if !ok { +// this.moduleTask.Debug("任务已完成", log.Field{Key: "uid", Value: tl.Uid}, log.Field{Key: "任务ID", Value: conf.Key}) +// continue +// } - var ( - progress int32 - update map[string]interface{} - ) +// var ( +// progress int32 +// update map[string]interface{} +// ) - if code := this.moduleTask.ModuleRtask.CheckCondi(tl.Uid, conf.TypeId); code == nil { - // update data - if ret != nil && len(ret.Data) > 0 { - progress = ret.Data[0] - } - update = map[string]interface{}{ - "progress": progress, - "status": 1, - } - } else { - if ret != nil && len(ret.Data) > 0 { - progress = ret.Data[0] - } - update = map[string]interface{}{ - "progress": progress, - } - } - if err = this.modifyUserTask(tl.Uid, task.TaskId, update); err != nil { - return - } - this.moduleTask.Debug("更新任务", - log.Field{Key: "uid", Value: tl.Uid}, log.Field{Key: "任务ID", Value: conf.Key}, - log.Field{Key: "事件ID", Value: conf.TypeId}, log.Field{Key: "progress", Value: update["progress"]}, - log.Field{Key: "status", Value: update["status"]}, - ) - } - return -} +// if code := this.moduleTask.ModuleRtask.CheckCondi(tl.Uid, conf.TypeId); code == nil { +// // update data +// if ret != nil && len(ret.Data) > 0 { +// progress = ret.Data[0] +// } +// update = map[string]interface{}{ +// "progress": progress, +// "status": 1, +// } +// } else { +// if ret != nil && len(ret.Data) > 0 { +// progress = ret.Data[0] +// } +// update = map[string]interface{}{ +// "progress": progress, +// } +// } +// if err = this.modifyUserTask(tl.Uid, task.TaskId, update); err != nil { +// return +// } +// this.moduleTask.Debug("更新任务", +// log.Field{Key: "uid", Value: tl.Uid}, log.Field{Key: "任务ID", Value: conf.Key}, +// log.Field{Key: "事件ID", Value: conf.TypeId}, log.Field{Key: "progress", Value: update["progress"]}, +// log.Field{Key: "status", Value: update["status"]}, +// ) +// } +// return +// } // 更新活跃度 func (this *ModelTask) updateActive(uid string, cfgId int32) error { diff --git a/modules/task/module.go b/modules/task/module.go index 18a76947f..c305084da 100644 --- a/modules/task/module.go +++ b/modules/task/module.go @@ -119,13 +119,13 @@ func (this *ModuleTask) GetTaskById(uid string, taskTag, taskId int32) *pb.TaskD // 重置任务 func (this *ModuleTask) ResetTask(uid string, taskTag comm.TaskTag) { this.resetActive(uid, taskTag) - this.modelTask.clearTask(uid, taskTag) + // this.modelTask.clearTask(uid, taskTag) this.modelTaskActive.clearTask(uid, taskTag) } // 清理任务数据 func (this *ModuleTask) CleanData(uid string) { - this.modelTask.clearTask(uid) + // this.modelTask.clearTask(uid) this.modelTaskActive.clearTask(uid) }