Commit 288bc2f6 authored by wind2009's avatar wind2009

Update pick rule & pool

parent 4ce1e99c
Pipeline #23729 failed with stages
in 2 minutes and 52 seconds
......@@ -295,60 +295,176 @@ function Auxiliary.StartPick(e)
end
end
]]--
for i=1,5 do
local lists={[1]=main_monster,[3]=main_spell,[4]=main_trap}
local lists_count={[1]=4,[3]=2,[4]=2}
if i==1 or i==2 then
lists[1]=main_plain
lists_count[1]=2
lists[2]=main_adv
lists_count[2]=2
-- 50% chance reverse pick
local playerReversePick=Duel.TossCoin(p,1)
if playerReversePick~=0 then
-- main deck
for i=1,5 do
local lists={[1]=main_monster,[3]=main_spell,[4]=main_trap}
local lists_count={[1]=4,[3]=2,[4]=2}
if i==1 or i==2 then
lists[1]=main_plain
lists_count[1]=2
lists[2]=main_adv
lists_count[2]=2
end
for p=0,1 do
Auxiliary.ArbitraryPick(p,4,lists,lists_count)
end
end
for p=0,1 do
Auxiliary.ArbitraryPick(p,4,lists,lists_count)
-- combo pick
for t=2,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(0,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
end
end
end
-- combo pick
for t=2,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(0,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
for t=1,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(1,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
end
end
end
for t=1,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(1,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
-- extra pick
for tp,list in pairs(extra_sp) do
if tp~=TYPE_FUSION then
for p=0,1 do
lists ={[1]=list}
counts={[1]=8}
lv_diff=false
if tp==TYPE_XYZ then
lists[1]=xyz_plain
counts[1]=6
lists[2]=xyz_adv
counts[2]=2
elseif tp==TYPE_SYNCHRO then
counts[1]=4
lists[2]=list
counts[2]=4
lv_diff=true
end
Auxiliary.ArbitraryPick(p,4,lists,counts,false,lv_diff)
end
end
end
end
for tp,list in pairs(extra_sp) do
if tp~=TYPE_FUSION then
for p=0,1 do
lists ={[1]=list}
counts={[1]=8}
lv_diff=false
if tp==TYPE_XYZ then
lists[1]=xyz_plain
counts[1]=6
lists[2]=xyz_adv
counts[2]=2
elseif tp==TYPE_SYNCHRO then
counts[1]=4
lists[2]=list
counts[2]=4
lv_diff=true
for p=0,1 do
lists ={[1]=extra}
counts={[1]=6}
Auxiliary.ArbitraryPick(p,4,lists,counts,false,false,extra_fixed)
end
else
-- extra pick
for tp,list in pairs(extra_sp) do
if tp~=TYPE_FUSION then
for p=0,1 do
lists ={[1]=list}
counts={[1]=8}
lv_diff=false
if tp==TYPE_XYZ then
lists[1]=xyz_plain
counts[1]=6
lists[2]=xyz_adv
counts[2]=2
elseif tp==TYPE_SYNCHRO then
counts[1]=4
lists[2]=list
counts[2]=4
lv_diff=true
end
Auxiliary.ArbitraryPick(p,4,lists,counts,false,lv_diff)
end
Auxiliary.ArbitraryPick(p,4,lists,counts,false,lv_diff)
end
end
for p=0,1 do
lists ={[1]=extra}
counts={[1]=6}
Auxiliary.ArbitraryPick(p,4,lists,counts,false,false,extra_fixed)
end
-- combo pick
for t=2,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(0,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
end
end
for t=1,0,-1 do
local reroll=t>0
if Auxiliary.SinglePick(1,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
break
end
end
-- main deck
for i=1,5 do
local lists={[1]=main_monster,[3]=main_spell,[4]=main_trap}
local lists_count={[1]=4,[3]=2,[4]=2}
if i==1 or i==2 then
lists[1]=main_plain
lists_count[1]=2
lists[2]=main_adv
lists_count[2]=2
end
for p=0,1 do
Auxiliary.ArbitraryPick(p,4,lists,lists_count)
end
end
end
for p=0,1 do
lists ={[1]=extra}
counts={[1]=6}
Auxiliary.ArbitraryPick(p,4,lists,counts,false,false,extra_fixed)
end
-- for i=1,5 do
-- local lists={[1]=main_monster,[3]=main_spell,[4]=main_trap}
-- local lists_count={[1]=4,[3]=2,[4]=2}
-- if i==1 or i==2 then
-- lists[1]=main_plain
-- lists_count[1]=2
-- lists[2]=main_adv
-- lists_count[2]=2
-- end
-- for p=0,1 do
-- Auxiliary.ArbitraryPick(p,4,lists,lists_count)
-- end
-- end
-- -- combo pick
-- for t=2,0,-1 do
-- local reroll=t>0
-- if Auxiliary.SinglePick(0,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
-- break
-- end
-- end
-- for t=1,0,-1 do
-- local reroll=t>0
-- if Auxiliary.SinglePick(1,main,0,nil,nil,false,false,nil,combo_pack.pack,reroll) then
-- break
-- end
-- end
-- for tp,list in pairs(extra_sp) do
-- if tp~=TYPE_FUSION then
-- for p=0,1 do
-- lists ={[1]=list}
-- counts={[1]=8}
-- lv_diff=false
-- if tp==TYPE_XYZ then
-- lists[1]=xyz_plain
-- counts[1]=6
-- lists[2]=xyz_adv
-- counts[2]=2
-- elseif tp==TYPE_SYNCHRO then
-- counts[1]=4
-- lists[2]=list
-- counts[2]=4
-- lv_diff=true
-- end
-- Auxiliary.ArbitraryPick(p,4,lists,counts,false,lv_diff)
-- end
-- end
-- end
-- for p=0,1 do
-- lists ={[1]=extra}
-- counts={[1]=6}
-- Auxiliary.ArbitraryPick(p,4,lists,counts,false,false,extra_fixed)
-- end
-- -- XXYYZZ Additional Picks
-- xyz_list={91998119,91998120,91998121}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment