diff --git a/bin/json/game_combatlevel.json b/bin/json/game_combatlevel.json index ecfa969d0..29eae9ea1 100644 --- a/bin/json/game_combatlevel.json +++ b/bin/json/game_combatlevel.json @@ -77,6 +77,8 @@ ], "passformatList": [], "passdroplist": [ + 10401, + 10402, 10403 ], "award": [ @@ -86,5 +88,146 @@ "n": 1650 } ] + }, + { + "id": 10005, + "scene": "LevelDemo_Fcamer_1_5", + "formatList": [ + 101011, + 101012, + 101013 + ], + "droplist": [], + "passformatList": [ + 101011, + 101012, + 101013 + ], + "passdroplist": [], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] + }, + { + "id": 10006, + "scene": "LevelDemo_Fcamer_1_6", + "formatList": [ + 101011, + 101012, + 101013 + ], + "droplist": [], + "passformatList": [ + 101011, + 101012, + 101013 + ], + "passdroplist": [], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] + }, + { + "id": 10007, + "scene": "LevelDemo_Fcamer_1_7", + "formatList": [ + 101011, + 101012, + 101013 + ], + "droplist": [], + "passformatList": [ + 101011, + 101012, + 101013 + ], + "passdroplist": [], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] + }, + { + "id": 10008, + "scene": "LevelDemo_Fcamer_1_8", + "formatList": [ + 101011, + 101021 + ], + "droplist": [ + 10301, + 10302 + ], + "passformatList": [], + "passdroplist": [ + 10301, + 10302 + ], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] + }, + { + "id": 10009, + "scene": "LevelDemo_Fcamer_1_9", + "formatList": [ + 101011, + 101021 + ], + "droplist": [ + 10301, + 10302 + ], + "passformatList": [], + "passdroplist": [ + 10301, + 10302 + ], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] + }, + { + "id": 10010, + "scene": "LevelDemo_Fcamer_1_10", + "formatList": [ + 101011, + 101021 + ], + "droplist": [ + 10301, + 10302 + ], + "passformatList": [], + "passdroplist": [ + 10301, + 10302 + ], + "award": [ + { + "a": "attr", + "t": "gold", + "n": 1650 + } + ] } ] \ No newline at end of file diff --git a/cmd/v2/ui/views/task_list.go b/cmd/v2/ui/views/task_list.go index 3af319888..b0893d6e4 100644 --- a/cmd/v2/ui/views/task_list.go +++ b/cmd/v2/ui/views/task_list.go @@ -37,6 +37,7 @@ func (this *TaskListView) CreateView(t *model.TestCase) fyne.CanvasObject { // task list button taskListBtn := widget.NewButtonWithIcon("任务列表", theme.ConfirmIcon(), func() { + this.itemList.Reset() if err := service.GetPttService().SendToClient(t.MainType, t.SubType, &pb.TaskListReq{ TaskTag: cast.ToInt32(tagSelect.Selected), }); err != nil { @@ -46,13 +47,14 @@ func (this *TaskListView) CreateView(t *model.TestCase) fyne.CanvasObject { // task receive button receiveBtn := widget.NewButtonWithIcon("任务领取", theme.ConfirmIcon(), func() { - if len(this.itemList.SelItemIds) != 1 { + selId := this.itemList.SelItemId + if selId == "" { dialog.ShowError(errors.New("请选择一项"), this.w) return } if err := service.GetPttService().SendToClient( t.MainType, "receive", - &pb.TaskReceiveReq{Id: this.itemList.SelItemIds[0], TaskTag: cast.ToInt32(tagSelect.Selected)}); err != nil { + &pb.TaskReceiveReq{Id: selId, TaskTag: cast.ToInt32(tagSelect.Selected)}); err != nil { logrus.Error(err) return } diff --git a/comm/imodule.go b/comm/imodule.go index 67150dcb0..b44876301 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -114,7 +114,6 @@ type ( CrossSearchUser(nickname string) ([]*pb.DBUser, error) // 搜索远程用户 SearchRmoteUser(nickname string) ([]*pb.DBUser, error) - } //武器模块 IEquipment interface { @@ -163,6 +162,8 @@ type ( RemoteCheckCondi(uid string, condiId int32, rsp *pb.DBRtaskRecord) error // 删除任务条件数据 RemoveCondi(uid string, condiId int32) error + // 更新任务条件数据 + ChangeCondi(uid string, data map[int32]*pb.RtaskData) error //任务触发 SendToRtask(session IUserSession, rtaskType TaskType, params ...int32) (code pb.ErrorCode) // 初始化条件数据 diff --git a/modules/combat/api_challengereceive.go b/modules/combat/api_challengereceive.go index 747ab4962..db62b8ff1 100644 --- a/modules/combat/api_challengereceive.go +++ b/modules/combat/api_challengereceive.go @@ -37,7 +37,7 @@ func (this *apiComp) ChallengeReceive(session comm.IUserSession, req *pb.CombatC return } if level, err = this.module.configure.getCombatLevel(info.Currlevel); err != nil { - code = pb.ErrorCode_DBError + code = pb.ErrorCode_ConfigNoFound return } if manster, err = this.module.configure.getGameCombatManster(req.Manster); err != nil { diff --git a/modules/combat/configure.go b/modules/combat/configure.go index 8dea5224a..60ce38bb8 100644 --- a/modules/combat/configure.go +++ b/modules/combat/configure.go @@ -39,7 +39,7 @@ func (this *configureComp) getCombatLevel(id int32) (result *cfg.GameCombatLevel this.module.Errorln(err) } else { if result, ok = v.(*cfg.GameCombatLevel).GetDataMap()[id]; !ok { - err = fmt.Errorf("on found GameMonster:%d", id) + err = fmt.Errorf("on found getCombatLevel:%d", id) this.module.Errorln(err) } } diff --git a/modules/rtask/model_record.go b/modules/rtask/model_record.go index 46a5fe567..646d57b81 100644 --- a/modules/rtask/model_record.go +++ b/modules/rtask/model_record.go @@ -99,4 +99,4 @@ func (this *ModelRtaskRecord) initCondiData(uid string) error { } } return nil -} +} \ No newline at end of file diff --git a/modules/rtask/module.go b/modules/rtask/module.go index b43def226..6dc8f5bcb 100644 --- a/modules/rtask/module.go +++ b/modules/rtask/module.go @@ -425,6 +425,17 @@ func (this *ModuleRtask) RemoteCheckCondi(uid string, condiId int32, rsp *pb.DBR return nil } +func (this *ModuleRtask) ChangeCondi(uid string, data map[int32]*pb.RtaskData) error { + if len(data) > 0 { + update := map[string]interface{}{ + "vals": data, + } + return this.modelRtaskRecord.Change(uid, update) + } + + return nil +} + //接收区服worker发起的秘境事件 func (this *ModuleRtask) Rpc_ModuleRtaskSendTask(ctx context.Context, args *pb.RPCRTaskReq, reply *pb.EmptyResp) (err error) { this.Debug("Rpc_ModuleRtaskSendTask", log.Fields{"args": args.String()}) diff --git a/modules/task/model_task.go b/modules/task/model_task.go index 99fcad4ef..a335ad27a 100644 --- a/modules/task/model_task.go +++ b/modules/task/model_task.go @@ -224,21 +224,24 @@ func (this *ModelTask) modifyUserTask(uid string, taskId string, data map[string //清空任务 func (this *ModelTask) clearTask(uid string, taskTag ...comm.TaskTag) { if len(taskTag) == 0 { - this.moduleTask.Errorf("least one param for taskTag") + this.moduleTask.Error("TaskTag参数缺失", log.Fields{"uid": uid, "params": taskTag}) return } taskList := this.getTaskListByTag(uid, taskTag[0]) + dr := this.moduleTask.ModuleRtask.GetCondiData(uid) for _, v := range taskList { if err := this.moduleTask.modelTask.DelListlds(uid, v.Id); err != nil { - this.moduleTask.Errorf("uid: %v err:%v", uid, err) + this.moduleTask.Error("清除任务", log.Fields{"uid": uid, "taskId": v.Id}) return } //删除任务条件数据 - dr := this.moduleTask.ModuleRtask.GetCondiData(uid) - if dr != nil && dr.Vals!=nil{ + 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.Fields{"uid": uid}) + } } //进入卡牌攻略