diff --git a/src/GlobalVar.lua b/src/GlobalVar.lua index d121048..9612328 100644 --- a/src/GlobalVar.lua +++ b/src/GlobalVar.lua @@ -361,6 +361,7 @@ TriggerEventType = { SSRCount = 6, AfterTs = 7, -- 某时间以后 DrawHeroCnt = 8, -- 每日抽卡次数 + Appoint = 0, -- 触发指定id礼包 } DrawCardType = { diff --git a/src/ProtocolCode.lua b/src/ProtocolCode.lua index 7756669..41edaee 100644 --- a/src/ProtocolCode.lua +++ b/src/ProtocolCode.lua @@ -242,6 +242,7 @@ actionCodes = { Activity_newSignRpc = 670, Activity_advLevelRpc = 671, Activity_buyBattleCommandLvlRpc = 672, + Activity_returnerTaskRpc = 673, Radio_startQuestRpc = 700, Radio_finishQuestRpc = 701, diff --git a/src/actions/ActivityAction.lua b/src/actions/ActivityAction.lua index 6f364b0..d0fc317 100644 --- a/src/actions/ActivityAction.lua +++ b/src/actions/ActivityAction.lua @@ -1402,12 +1402,17 @@ function _M.returnerTaskRpc(agent, data) status[taskId] = 1 returner.status = status - local reward, change = role:award(dayData.reward, {log = {desc = "returner", int1 = taskData.day, int2 = taskId}}) + local reward, change = role:award(taskData.reward, {log = {desc = "returner", int1 = taskData.day, int2 = taskId}}) if done then returner = {} end + local pack = globalCsv.returner_pack:toArray(true,"=") + if pack[1] == taskData.id then + role:checkTaskEnter("Appoint", {id = pack[2]}) + end + role:updateProperty({field = "returner", value = returner}) SendPacket(actionCodes.Activity_returnerTaskRpc, MsgPack.pack(role:packReward(reward, change))) return true diff --git a/src/models/RoleTask.lua b/src/models/RoleTask.lua index 067aa70..af11a44 100644 --- a/src/models/RoleTask.lua +++ b/src/models/RoleTask.lua @@ -109,6 +109,7 @@ local TaskType = { CostDiamond = 909, -- 消耗钻石 WeekTask = 910, -- 完成每周活跃任务 ActBattlePass = 911, -- 活动关卡通关 -- chapterId + Appoint = 912, -- 触发限时礼包,指定id --功能未实现 todo AdvShop = 1002, -- 冒险商城 @@ -264,6 +265,7 @@ local StoreListener = { [TaskType.AdvPassFirst] = {{TriggerEventType.AdvPass, f("id")}}, [TaskType.AddHero] = {{TriggerEventType.AddNewHero, f("heroType")}, {TriggerEventType.SSRCount, f("ssrCount")}}, [TaskType.DrawHeroLimitPack] = {{TriggerEventType.DrawHeroCnt, f("count")}}, + [TaskType.Appoint] = {{TriggerEventType.Appoint, f("id")}}, } } -- libgit2 0.21.2