diff --git a/src/actions/AdvAction.lua b/src/actions/AdvAction.lua index 009b34c..de46e2e 100644 --- a/src/actions/AdvAction.lua +++ b/src/actions/AdvAction.lua @@ -102,6 +102,8 @@ function _M.startAdvRpc( agent, data ) local advPass = role:getProperty("advPass") + if not checkFormat(role) then return 7 end + if AdvCommon.isEndless(chapterId) then -- 无尽模式判断 if chapterId ~= role.advElChapter then return end -- 不是当前进行的章节 @@ -118,37 +120,23 @@ function _M.startAdvRpc( agent, data ) if not relayData then return 14 end -- 不是中继层 if advElM < relayData.unlockfloor then return 15 end --未解锁 end + + role.dailyData:updateProperty({field = "advElC", delta = 1}) else -- 普通模式判断 - if not role:checkAdvCount(chapterData.limitlevel) then return 2 end -- 是否有体力 if layer >= chapterData.limitlevel then return 4 end - -- 关卡开放判断 - if not role:advChapterIsOpen(chapterId) then return 5 end + local relayData = role:getAdvData():isHaveRelay(layer, chapterId) + if not relayData then return 6 end -- 不是中继层 if layer ~= 1 then - local relayData = role:getAdvData():isHaveRelay(layer, chapterId) - if not relayData then return 6 end -- 不是中继层 if (advPass[chapterId] or 0) < relayData.floor then return 21 end end - end - - if not checkFormat(role) then return 7 end - - --local advTeam = role:getProperty("advTeam") - --table.clear(advTeam) + if not role:checkAdvCount(relayData.supply) then return 2 end -- 是否有体力 + -- 关卡开放判断 + if not role:advChapterIsOpen(chapterId) then return 5 end - --advTeam.heros = {} - --for slot, heroId in pairs(format.heros) do - -- advTeam.heros[slot] = heroId - --end - --advTeam.leader = format.leader - --advTeam.leader2 = format.leader2 - --role:updateProperty({field = "advTeam", value = advTeam}) - if AdvCommon.isEndless(chapterId) then - role.dailyData:updateProperty({field = "advElC", delta = 1}) - else - role:changeAdvCount(chapterData.limitlevel) + role:changeAdvCount(relayData.supply) end - + local support = {} -- 支援效果 if AdvCommon.isEndless(chapterId) then -- 选择的支援效果 @@ -168,6 +156,7 @@ function _M.startAdvRpc( agent, data ) end end end + role:getAdvData():initByChapter({ chapterId = chapterId, level = layer, @@ -175,6 +164,7 @@ function _M.startAdvRpc( agent, data ) isEnter = true, support = support, }) + role:checkTaskEnter("AdvStart", {id = chapterId}) role:checkTaskEnter("AdvStartSelf", {id = chapterId}) role:getAdvData():popBackEvents() -- 清一下事件 -- libgit2 0.21.2