修正rnd出块算法的一点问题

This commit is contained in:
MrZ626
2021-05-13 00:15:28 +08:00
parent bd4c7880e9
commit 64122b61fc

View File

@@ -125,21 +125,22 @@ local seqGenerators={
end end
end, end,
rnd=function(P,seq0) rnd=function(P,seq0)
P:getNext(seq0[P:RND(#seq0)]) if #seq0==1 then
local i=seq0[1]
while true do P:getNext(i) yield() end
else
local len=#seq0
local last=0
while true do while true do
while #P.nextQueue<6 do while #P.nextQueue<6 do
local len=#seq0 local r=P:RND(len-1)
for i=1,4 do if r>=last then r=r+1 end
local count=0 P:getNext(seq0[r])
repeat last=r
i=seq0[P:RND(len)]
count=count+1
until i~=P.nextQueue[#P.nextQueue].id or count>=len
P:getNext(i)
end
end end
yield() yield()
end end
end
end, end,
mess=function(P,seq0) mess=function(P,seq0)
while true do while true do