|
楼主 |
发表于 2020-4-29 09:21:54
|
显示全部楼层
奇怪,还是不行,已更新新公版diemenglou.lua
457
function dmlInfo()
local fn = 'logs\\diemenglou_lost_'..score.id..'.log'
local f = io.open(fn,"r")
if f then
local s = f:read()
local avoid
if string.find(s,'|') then
avoid = utils.split(s,'|')
for n = 1,table.getn(_target) do
for k,v in pairs(avoid) do
if _target[n] ~= nil and _target[n].name == avoid[k] then
if _target[avoid[k]] == nil then
_target[avoid[k]] = 1
ColourNote('white','red','上次挑战目标【'.._target[n].name..'】失败【'.._target[avoid[k]]..'】次!')
else
_target[avoid[k]] = _target[avoid[k]] + 1
ColourNote('white','red','上次挑战目标【'.._target[n].name..'】失败【'.._target[avoid[k]]..'】次!')
end
if _target[avoid[k]] > 1 then
ColourNote('white','red','移除目标【'.._target[n].name..'】')
messageShow('蝶梦楼全自动挑战模块:因与目标【'.._target[n].name..'】对战成功率过低现自动回避该目标!')
table.remove(_target,n)
end
end
end
end
end
f:close()
end
if dmlCheckCnt == 1 then
_t1 = userLvl - GetVariable('dmlDecreaseLvl')
_t2 = userLvl + GetVariable('dmlIncreaseLvl')
else
_t1 = userLvl - (GetVariable('dmlDecreaseLvl') + GetVariable('dmlNewDecreaseLvl'))
_t2 = userLvl + (GetVariable('dmlIncreaseLvl') + GetVariable('dmlNewIncreaseLvl'))
end
table.sort(_target,sortFunc)
if tonumber(GetVariable('dmlMode')) == 1 then
for i = 1,table.getn(_target) do
if _target.lvl <= _t1 and _target.rank < userRank then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
ColourNote('doggerblue','black','挑战目标排名等级为','yellow','black','【'.._t1..'】','doggerblue','black','级之上')
elseif tonumber(GetVariable('dmlMode')) == 2 then
for i = 1,table.getn(_target) do
if _target.lvl > _t1 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
ColourNote('doggerblue','black','挑战目标排名等级为','yellow','black','【'.._t1..'】','doggerblue','black','级之上')
elseif tonumber(GetVariable('dmlMode')) == 3 then
if GetVariable('dmlPerTargetTwice') == 'no' then
if GetVariable('dmlFightOrder') == '上' then
for i = 1,table.getn(_target) do
if _target.rank < userRank then
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
elseif GetVariable('dmlFightOrder') == '下' then
for i = 1,table.getn(_target) do
if _target.rank > userRank then
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') and _target.id ~= score.id then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
elseif GetVariable('dmlFightOrder') == 'both' then
for i = 1,table.getn(_target) do
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') and _target.id ~= score.id then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
elseif GetVariable('dmlPerTargetTwice') == 'yes' then
if GetVariable('dmlFightOrder') == '上' then
for i = 1,table.getn(_target) do
if _target.rank < userRank then
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') and _target.id ~= score.id then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
elseif GetVariable('dmlFightOrder') == '下' then
for i = 1,table.getn(_target) do
if _target.rank > userRank then
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') and _target.id ~= score.id then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
elseif GetVariable('dmlFightOrder') == 'both' then
for i = 1,table.getn(_target) do
if _target.lvl > _t1 and _target.lvl < _t2 and _target.id ~= score.id then
DeleteTimer('dmlWait')
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(target,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
if _target.lvl > _t1 - GetVariable('dmlDecreaseLvl') and _target.lvl < _t2 + GetVariable('dmlIncreaseLvl') and _target.id ~= score.id then
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
table.insert(backupList,{name = _target.name,id = _target.id,rank = _target.rank, lvl = _target.lvl,})
end
end
end
end
ColourNote('doggerblue','black','挑战目标排名等级为','yellow','black','【'.._t1..'】','doggerblue','black','级到','yellow','black','【'.._t2..'】','doggerblue','black','级之间')
end
if table.getn(blackList) > 0 then
for i = 1,table.getn(target) do
for p,q in pairs(blackList) do
if target ~= nil then
if string.find(target.id,blackList[p]) then
table.remove(target,i)
end
end
end
end
for j = 1,table.getn(backupList) do
for m,n in pairs(blackList) do
if backupList[j] ~= nil then
if string.find(backupList[j].id,blackList[m]) then
table.remove(backupList,j)
end
end
end
end
end
return dmlConsider()
end
383
function sortFunc(a,b)
if a.lvl ~= b.lvl then
return a.lvl > b.lvl
else
if a.rank ~= b.rank then
return a.rank < b.rank
end
end
end |
|