Commit 4bd3095fd64333da15a48b603a76764a4b50848c
1 parent
ce42bb03
英雄帖任务bug
Showing
4 changed files
with
15 additions
and
13 deletions
Show diff stats
src/actions/ActivityAction.lua
| @@ -222,11 +222,11 @@ function _M.actPaySignRpc(agent, data) | @@ -222,11 +222,11 @@ function _M.actPaySignRpc(agent, data) | ||
| 222 | return true | 222 | return true |
| 223 | end | 223 | end |
| 224 | 224 | ||
| 225 | -function _M.actCalendaActRpc(agent, data) | 225 | +function _M.actCalendaTaskRpc(agent, data) |
| 226 | local role = agent.role | 226 | local role = agent.role |
| 227 | local msg = MsgPack.unpack(data) | 227 | local msg = MsgPack.unpack(data) |
| 228 | local taskId = msg.id | 228 | local taskId = msg.id |
| 229 | - local calTask = role:getProperty("CalTask") | 229 | + local calTask = role:getProperty("calTask") or {} |
| 230 | local record = calTask["r"] or {} | 230 | local record = calTask["r"] or {} |
| 231 | local flag = record[taskId] or 0 | 231 | local flag = record[taskId] or 0 |
| 232 | if flag == 1 then return 1 end | 232 | if flag == 1 then return 1 end |
| @@ -235,18 +235,20 @@ function _M.actCalendaActRpc(agent, data) | @@ -235,18 +235,20 @@ function _M.actCalendaActRpc(agent, data) | ||
| 235 | if not open then return 2 end | 235 | if not open then return 2 end |
| 236 | if not actData then return 3 end | 236 | if not actData then return 3 end |
| 237 | 237 | ||
| 238 | - local taskCfg = csvdb["activity_taskCsv"][taskId] | ||
| 239 | - if not taskCfg then return 4 end | ||
| 240 | - if taskCfg.key ~= actData.condition then return 5 end | 238 | + local taskList = csvdb["activity_taskCsv"][actData.condition] |
| 239 | + if not taskList then return 4 end | ||
| 240 | + local taskCfg = taskList[taskId] | ||
| 241 | + if not taskCfg then return 5 end | ||
| 242 | + if taskCfg.key ~= actData.condition then return 6 end | ||
| 241 | 243 | ||
| 242 | - if (calTask[taskId] or 0) < taskCfg.condition1 then return 6 end | 244 | + if (calTask[taskId] or 0) < taskCfg.condition1 then return 7 end |
| 243 | 245 | ||
| 244 | record[taskId] = 1 | 246 | record[taskId] = 1 |
| 245 | calTask["r"] = record | 247 | calTask["r"] = record |
| 246 | 248 | ||
| 247 | - role:updateProperty({field = "CalTask", value = calTask}) | 249 | + role:updateProperty({field = "calTask", value = calTask}) |
| 248 | 250 | ||
| 249 | - local reward, change = role:award(taskCfg.reward, {log = {desc = "CalendaTask"}}) | 251 | + local reward, change = role:award(taskCfg.reward, {log = {desc = "calendaTask"}}) |
| 250 | 252 | ||
| 251 | role:log("activity", { | 253 | role:log("activity", { |
| 252 | activity_id = taskId, -- 活动ID(或活动指定任务的ID) | 254 | activity_id = taskId, -- 活动ID(或活动指定任务的ID) |
| @@ -255,6 +257,7 @@ function _M.actCalendaActRpc(agent, data) | @@ -255,6 +257,7 @@ function _M.actCalendaActRpc(agent, data) | ||
| 255 | }) | 257 | }) |
| 256 | 258 | ||
| 257 | SendPacket(actionCodes.Activity_actCalendaTaskRpc, MsgPack.pack(role:packReward(reward, change))) | 259 | SendPacket(actionCodes.Activity_actCalendaTaskRpc, MsgPack.pack(role:packReward(reward, change))) |
| 260 | + return true | ||
| 258 | end | 261 | end |
| 259 | 262 | ||
| 260 | return _M | 263 | return _M |
| 261 | \ No newline at end of file | 264 | \ No newline at end of file |
src/models/RoleLog.lua
| @@ -81,6 +81,7 @@ local ItemReason = { | @@ -81,6 +81,7 @@ local ItemReason = { | ||
| 81 | birth = 1006, -- 出生奖励 | 81 | birth = 1006, -- 出生奖励 |
| 82 | actSign = 1007, -- 活动签到 | 82 | actSign = 1007, -- 活动签到 |
| 83 | actPaySign = 1008, -- 活动付费签到 | 83 | actPaySign = 1008, -- 活动付费签到 |
| 84 | + calendaTask = 1009, -- 英雄帖 | ||
| 84 | 85 | ||
| 85 | -- 餐厅 | 86 | -- 餐厅 |
| 86 | greenHourse = 1101, -- 食材获得 | 87 | greenHourse = 1101, -- 食材获得 |
src/models/RoleTask.lua
| @@ -604,7 +604,6 @@ function RoleTask.bind(Role) | @@ -604,7 +604,6 @@ function RoleTask.bind(Role) | ||
| 604 | if k == cid then | 604 | if k == cid then |
| 605 | for id, cfg in pairs(taskList) do | 605 | for id, cfg in pairs(taskList) do |
| 606 | if cfg.type == mainType then | 606 | if cfg.type == mainType then |
| 607 | - dump(cfg) | ||
| 608 | if subType == 1 then -- 增加数值 | 607 | if subType == 1 then -- 增加数值 |
| 609 | calTask[id] = (calTask[id] or 0) + param1 | 608 | calTask[id] = (calTask[id] or 0) + param1 |
| 610 | elseif subType == 2 then -- 直接赋值 | 609 | elseif subType == 2 then -- 直接赋值 |
| @@ -620,7 +619,7 @@ function RoleTask.bind(Role) | @@ -620,7 +619,7 @@ function RoleTask.bind(Role) | ||
| 620 | end | 619 | end |
| 621 | end | 620 | end |
| 622 | end | 621 | end |
| 623 | - if calTask[id] < count then | 622 | + if (calTask[id] or 0) < count then |
| 624 | calTask[id] = count | 623 | calTask[id] = count |
| 625 | end | 624 | end |
| 626 | elseif cfg.type == 5 then -- 英雄等级收集进度 | 625 | elseif cfg.type == 5 then -- 英雄等级收集进度 |
| @@ -644,7 +643,6 @@ function RoleTask.bind(Role) | @@ -644,7 +643,6 @@ function RoleTask.bind(Role) | ||
| 644 | calTask[id] = count | 643 | calTask[id] = count |
| 645 | end | 644 | end |
| 646 | elseif cfg.type == 18 then -- 挂机累计收获id,y个 | 645 | elseif cfg.type == 18 then -- 挂机累计收获id,y个 |
| 647 | - dump(param1) | ||
| 648 | for rid, v in pairs(param1) do | 646 | for rid, v in pairs(param1) do |
| 649 | if cfg.condition2 == rid then | 647 | if cfg.condition2 == rid then |
| 650 | calTask[id] = (calTask[id] or 0) + v | 648 | calTask[id] = (calTask[id] or 0) + v |
| @@ -656,7 +654,7 @@ function RoleTask.bind(Role) | @@ -656,7 +654,7 @@ function RoleTask.bind(Role) | ||
| 656 | local rcount = 0 | 654 | local rcount = 0 |
| 657 | for _,uid in pairs(hero:getRunes()) do | 655 | for _,uid in pairs(hero:getRunes()) do |
| 658 | if uid > 0 then | 656 | if uid > 0 then |
| 659 | - local runeData = self.owner.runeBag[uid] | 657 | + local runeData = self.runeBag[uid] |
| 660 | if runeData then | 658 | if runeData then |
| 661 | local csvData = csvdb["runeCsv"][runeData:getProperty("type")][runeData:getProperty("id")] | 659 | local csvData = csvdb["runeCsv"][runeData:getProperty("type")][runeData:getProperty("id")] |
| 662 | 660 |
-
mentioned in commit 52f8c5f05d0a531232a7dd7887becd2a77986aa1
-
mentioned in commit 52f8c5f05d0a531232a7dd7887becd2a77986aa1
-
mentioned in commit ba6d85edc65900830c7e168102d70671881b5808
-
mentioned in commit ba6d85edc65900830c7e168102d70671881b5808