寻宝自动选择逻辑修改
parent
d405d09c05
commit
51e88c5f34
|
@ -303,7 +303,6 @@ end
|
|||
--一键派遣
|
||||
function FindTreasureDispatchPanel:AutoSelectHero()
|
||||
--思路 按条件顺序选择 没选择一个英雄检测其他条件是否有满足的 满足跳过 不管能不能派遣都显示
|
||||
--allHeroData
|
||||
curSelectHeroList = {}
|
||||
local conditionTabs = {}
|
||||
for i = 1, #conFigData.Condition do
|
||||
|
@ -315,9 +314,8 @@ function FindTreasureDispatchPanel:AutoSelectHero()
|
|||
if jixu <= 0 then needState = conditionTabs return end
|
||||
if i > jixu then jixu = i end
|
||||
if #conditionHeros[jixu] <= 0 then return end
|
||||
--Log("conditionHeros[i][1].dynamicId "..conditionHeros[i][1].dynamicId.." "..conditionHeros[i][1].heroConfig.ReadingName)
|
||||
--curSelectHeroList[conditionHeros[i][1].dynamicId] = conditionHeros[i][1]
|
||||
local curSelectSingleHero = self:AutoSelectHeroId(conditionHeros[jixu])
|
||||
local num = self:AutoSelectState2(conditionTabs) - 1
|
||||
local curSelectSingleHero = self:AutoSelectHeroId(conditionHeros[jixu],num)
|
||||
curSelectSingleHero.sortId = curPanelHerosSortNum--排序
|
||||
curPanelHerosSortNum = curPanelHerosSortNum + 1--排序
|
||||
curSelectHeroList[curSelectSingleHero.dynamicId] = curSelectSingleHero
|
||||
|
@ -325,13 +323,13 @@ function FindTreasureDispatchPanel:AutoSelectHero()
|
|||
if conFigData.Condition[k][1] == FindTreasureNeedType.Star then
|
||||
for j, v in pairs(curSelectHeroList) do
|
||||
if v.star >= conFigData.Condition[k][2] then
|
||||
conditionTabs[i] = 1
|
||||
conditionTabs[k] = 1
|
||||
end
|
||||
end
|
||||
elseif conFigData.Condition[k][1] == FindTreasureNeedType.Pro then
|
||||
for j, v in pairs(curSelectHeroList) do
|
||||
if v.heroConfig.PropertyName == conFigData.Condition[k][2] then
|
||||
conditionTabs[i] = 1
|
||||
conditionTabs[k] = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -352,8 +350,16 @@ function FindTreasureDispatchPanel:AutoSelectState(conditionTabs)
|
|||
end
|
||||
return 0
|
||||
end
|
||||
|
||||
function FindTreasureDispatchPanel:AutoSelectHeroId(conditionSingleHeros)
|
||||
function FindTreasureDispatchPanel:AutoSelectState2(conditionTabs)
|
||||
local needNum = 0
|
||||
for i = 1, #conditionTabs do
|
||||
if conditionTabs[i] < 1 then
|
||||
needNum = needNum + 1
|
||||
end
|
||||
end
|
||||
return needNum
|
||||
end
|
||||
function FindTreasureDispatchPanel:AutoSelectHeroId(conditionSingleHeros,num)
|
||||
local heroData = conditionSingleHeros[1]
|
||||
local endfeheNeedNum = 0
|
||||
for i = 1, #conditionSingleHeros do
|
||||
|
@ -369,9 +375,15 @@ function FindTreasureDispatchPanel:AutoSelectHeroId(conditionSingleHeros)
|
|||
end
|
||||
end
|
||||
end
|
||||
if endfeheNeedNum < feheNeedNum then
|
||||
endfeheNeedNum = feheNeedNum
|
||||
heroData = conditionSingleHeros[i]
|
||||
if num <= 1 then
|
||||
if endfeheNeedNum < feheNeedNum then
|
||||
return conditionSingleHeros[i]
|
||||
end
|
||||
elseif num > 1 then
|
||||
if endfeheNeedNum < feheNeedNum then
|
||||
endfeheNeedNum = feheNeedNum
|
||||
heroData = conditionSingleHeros[i]
|
||||
end
|
||||
end
|
||||
end
|
||||
return heroData
|
||||
|
|
Loading…
Reference in New Issue