Commit 21c09fa267684a5e1b46046b9e2f4be4584a89e0
1 parent
963598f6
fix: 活动派遣 同时只能有一个存在
Showing
1 changed file
with
13 additions
and
7 deletions
Show diff stats
src/actions/RadioAction.lua
@@ -120,20 +120,26 @@ function _M.startQuestRpc(agent, data) | @@ -120,20 +120,26 @@ function _M.startQuestRpc(agent, data) | ||
120 | 120 | ||
121 | local radioTask = role:getProperty("radioTask") | 121 | local radioTask = role:getProperty("radioTask") |
122 | 122 | ||
123 | - local getTaskNum = function () | ||
124 | - local num = 0 | 123 | + local getActIDs = function () |
124 | + local actids = {} | ||
125 | for _, v in pairs(radioTask or {}) do | 125 | for _, v in pairs(radioTask or {}) do |
126 | - if (v.actid or 0) == 0 then | ||
127 | - num = num + 1 | ||
128 | - end | 126 | + actids[v.actid] = (actids[v.actid] or 0) + 1 |
129 | end | 127 | end |
130 | - return num | 128 | + return actids |
131 | end | 129 | end |
132 | 130 | ||
131 | + local actids = getActIDs() | ||
133 | if config.activity_ctrl_id == 0 then | 132 | if config.activity_ctrl_id == 0 then |
134 | - if getTaskNum() >= getQuestMax(role) then | 133 | + --非活动 判断数量 |
134 | + if (actids[config.activity_ctrl_id] or 0) >= getQuestMax(role) then | ||
135 | return 2 | 135 | return 2 |
136 | end | 136 | end |
137 | + | ||
138 | + else | ||
139 | + --活动 同时只能有一个存在 | ||
140 | + if actids[config.activity_ctrl_id] >= 1 then | ||
141 | + return 5 | ||
142 | + end | ||
137 | end | 143 | end |
138 | 144 | ||
139 | if not role:checkHangPass(config.unlock) then return 3 end | 145 | if not role:checkHangPass(config.unlock) then return 3 end |