Commit 4475ebc1 authored by mercury233's avatar mercury233

update

parent 338a9804
...@@ -75,33 +75,51 @@ function c33541430.cardiansynlevel(c) ...@@ -75,33 +75,51 @@ function c33541430.cardiansynlevel(c)
return 2 return 2
end end
function c33541430.synfilter(c,syncard,tuner,f) function c33541430.synfilter(c,syncard,tuner,f)
return c:IsFaceup() and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return c:IsFaceup() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c33541430.syntg(e,syncard,f,minc,maxc) function c33541430.syncheck(c,g,mg,tp,lv,syncard,minc,maxc)
g:AddCard(c)
local ct=g:GetCount()
local res=c33541430.syngoal(g,tp,lv,syncard,minc,ct)
or (ct<maxc and mg:IsExists(c33541430.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc))
g:RemoveCard(c)
return res
end
function c33541430.syngoal(g,tp,lv,syncard,minc,ct)
return ct>=minc and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0
and (g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard)
or g:CheckWithSumEqual(c33541430.cardiansynlevel,lv,ct,ct,syncard))
end
function c33541430.syntg(e,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local tp=syncard:GetControler()
local lv2=syncard:GetLevel()-c33541430.cardiansynlevel(c) local lv=syncard:GetLevel()
if lv<=0 and lv2<=0 then return false end if lv<=c:GetLevel() and lv<=c33541430.cardiansynlevel(c) then return false end
local g=Duel.GetMatchingGroup(c33541430.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local g=Group.FromCards(c)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) local mg=Duel.GetMatchingGroup(c33541430.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res2=g:CheckWithSumEqual(c33541430.cardiansynlevel,lv2,minc,maxc) return mg:IsExists(c33541430.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)
return res or res2
end end
function c33541430.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,minc,maxc) function c33541430.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local lv=syncard:GetLevel()
local lv2=syncard:GetLevel()-c33541430.cardiansynlevel(c) local g=Group.FromCards(c)
local g=Duel.GetMatchingGroup(c33541430.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local mg=Duel.GetMatchingGroup(c33541430.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) for i=1,maxc do
local res2=g:CheckWithSumEqual(c33541430.cardiansynlevel,lv2,minc,maxc) local cg=mg:Filter(c33541430.syncheck,g,g,mg,tp,lv,syncard,minc,maxc)
local sg=nil if cg:GetCount()==0 then break end
if (res2 and res and Duel.SelectYesNo(tp,aux.Stringid(33541430,2))) local minct=1
or (res2 and not res) then if c33541430.syngoal(g,tp,lv,syncard,minc,i) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) if not Duel.SelectYesNo(tp,210) then break end
sg=g:SelectWithSumEqual(tp,c33541430.cardiansynlevel,lv2,minc,maxc) minct=0
else end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL)
sg=g:SelectWithSumEqual(tp,Card.GetSynchroLevel,lv,minc,maxc,syncard) local sg=cg:Select(tp,minct,1,nil)
if sg:GetCount()==0 then break end
g:Merge(sg)
end end
Duel.SetSynchroMaterial(sg) Duel.SetSynchroMaterial(g)
end end
...@@ -29,20 +29,22 @@ function c55863245.initial_effect(c) ...@@ -29,20 +29,22 @@ function c55863245.initial_effect(c)
e3:SetCode(EFFECT_HAND_SYNCHRO) e3:SetCode(EFFECT_HAND_SYNCHRO)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c55863245.synfilter1(c,syncard,tuner,f) function c55863245.synfilter(c,syncard,tuner,f)
return (c:IsFaceup() or c:IsLocation(LOCATION_HAND)) and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return (c:IsFaceup() or c:IsLocation(LOCATION_HAND)) and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c55863245.syncheck(c,g,mg,tp,lv,syncard,minc,maxc) function c55863245.syncheck(c,g,mg,tp,lv,syncard,minc,maxc)
g:AddCard(c) g:AddCard(c)
local ct=g:GetCount() local ct=g:GetCount()
local res=(ct<maxc and mg:IsExists(c55863245.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)) local res=c55863245.syngoal(g,tp,lv,syncard,minc,ct)
or (ct>=minc and c55863245.syngoal(g,tp,lv,syncard)) or (ct<maxc and mg:IsExists(c55863245.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc))
g:RemoveCard(c) g:RemoveCard(c)
return res return res
end end
function c55863245.syngoal(g,tp,lv,syncard) function c55863245.syngoal(g,tp,lv,syncard,minc,ct)
local ct=g:GetCount() return ct>=minc
return g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard) and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0 and g:FilterCount(Card.IsLocation,nil,LOCATION_HAND)<=1 and g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard)
and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0
and g:FilterCount(Card.IsLocation,nil,LOCATION_HAND)<=1
end end
function c55863245.syncon(e) function c55863245.syncon(e)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO)
...@@ -53,9 +55,9 @@ function c55863245.syntg(e,syncard,f,min,max) ...@@ -53,9 +55,9 @@ function c55863245.syntg(e,syncard,f,min,max)
local c=e:GetHandler() local c=e:GetHandler()
local tp=syncard:GetControler() local tp=syncard:GetControler()
local lv=syncard:GetLevel() local lv=syncard:GetLevel()
if lv<=0 then return false end if lv<=c:GetLevel() then return false end
local g=Group.FromCards(e:GetHandler()) local g=Group.FromCards(c)
local mg=Duel.GetMatchingGroup(c55863245.synfilter1,tp,LOCATION_MZONE+LOCATION_HAND,LOCATION_MZONE,c,syncard,c,f) local mg=Duel.GetMatchingGroup(c55863245.synfilter,tp,LOCATION_MZONE+LOCATION_HAND,LOCATION_MZONE,c,syncard,c,f)
return mg:IsExists(c55863245.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc) return mg:IsExists(c55863245.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)
end end
function c55863245.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max) function c55863245.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
...@@ -63,13 +65,13 @@ function c55863245.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max) ...@@ -63,13 +65,13 @@ function c55863245.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
local maxc=max+1 local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel() local lv=syncard:GetLevel()
local g=Group.FromCards(e:GetHandler()) local g=Group.FromCards(c)
local mg=Duel.GetMatchingGroup(c55863245.synfilter1,tp,LOCATION_MZONE+LOCATION_HAND,LOCATION_MZONE,c,syncard,c,f) local mg=Duel.GetMatchingGroup(c55863245.synfilter,tp,LOCATION_MZONE+LOCATION_HAND,LOCATION_MZONE,c,syncard,c,f)
for i=1,maxc do for i=1,maxc do
local cg=mg:Filter(c55863245.syncheck,g,g,mg,tp,lv,syncard,minc,maxc) local cg=mg:Filter(c55863245.syncheck,g,g,mg,tp,lv,syncard,minc,maxc)
if cg:GetCount()==0 then break end if cg:GetCount()==0 then break end
local minct=1 local minct=1
if c55863245.syngoal(g,tp,lv,syncard) then if c55863245.syngoal(g,tp,lv,syncard,minc,i) then
if not Duel.SelectYesNo(tp,210) then break end if not Duel.SelectYesNo(tp,210) then break end
minct=0 minct=0
end end
......
...@@ -79,33 +79,51 @@ function c57261568.cardiansynlevel(c) ...@@ -79,33 +79,51 @@ function c57261568.cardiansynlevel(c)
return 2 return 2
end end
function c57261568.synfilter(c,syncard,tuner,f) function c57261568.synfilter(c,syncard,tuner,f)
return c:IsFaceup() and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return c:IsFaceup() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c57261568.syntg(e,syncard,f,minc,maxc) function c57261568.syncheck(c,g,mg,tp,lv,syncard,minc,maxc)
g:AddCard(c)
local ct=g:GetCount()
local res=c57261568.syngoal(g,tp,lv,syncard,minc,ct)
or (ct<maxc and mg:IsExists(c57261568.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc))
g:RemoveCard(c)
return res
end
function c57261568.syngoal(g,tp,lv,syncard,minc,ct)
return ct>=minc and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0
and (g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard)
or g:CheckWithSumEqual(c57261568.cardiansynlevel,lv,ct,ct,syncard))
end
function c57261568.syntg(e,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local tp=syncard:GetControler()
local lv2=syncard:GetLevel()-c57261568.cardiansynlevel(c) local lv=syncard:GetLevel()
if lv<=0 and lv2<=0 then return false end if lv<=c:GetLevel() and lv<=c57261568.cardiansynlevel(c) then return false end
local g=Duel.GetMatchingGroup(c57261568.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local g=Group.FromCards(c)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) local mg=Duel.GetMatchingGroup(c57261568.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res2=g:CheckWithSumEqual(c57261568.cardiansynlevel,lv2,minc,maxc) return mg:IsExists(c57261568.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)
return res or res2
end end
function c57261568.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,minc,maxc) function c57261568.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local lv=syncard:GetLevel()
local lv2=syncard:GetLevel()-c57261568.cardiansynlevel(c) local g=Group.FromCards(c)
local g=Duel.GetMatchingGroup(c57261568.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local mg=Duel.GetMatchingGroup(c57261568.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) for i=1,maxc do
local res2=g:CheckWithSumEqual(c57261568.cardiansynlevel,lv2,minc,maxc) local cg=mg:Filter(c57261568.syncheck,g,g,mg,tp,lv,syncard,minc,maxc)
local sg=nil if cg:GetCount()==0 then break end
if (res2 and res and Duel.SelectYesNo(tp,aux.Stringid(57261568,3))) local minct=1
or (res2 and not res) then if c57261568.syngoal(g,tp,lv,syncard,minc,i) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) if not Duel.SelectYesNo(tp,210) then break end
sg=g:SelectWithSumEqual(tp,c57261568.cardiansynlevel,lv2,minc,maxc) minct=0
else end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL)
sg=g:SelectWithSumEqual(tp,Card.GetSynchroLevel,lv,minc,maxc,syncard) local sg=cg:Select(tp,minct,1,nil)
if sg:GetCount()==0 then break end
g:Merge(sg)
end end
Duel.SetSynchroMaterial(sg) Duel.SetSynchroMaterial(g)
end end
...@@ -18,33 +18,64 @@ function c64910482.initial_effect(c) ...@@ -18,33 +18,64 @@ function c64910482.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c64910482.synfilter1(c,syncard,tuner,f) function c64910482.synfilter1(c,syncard,tuner,f)
return c:IsFaceup() and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return c:IsFaceup() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c64910482.synfilter2(c,syncard,tuner,f) function c64910482.synfilter2(c,syncard,tuner,f)
return c:IsSetCard(0x27) and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return c:IsSetCard(0x27) and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c64910482.syntg(e,syncard,f,minc,maxc) function c64910482.syncheck(c,g,mg,tp,lv,syncard,minc,maxc)
g:AddCard(c)
local ct=g:GetCount()
local res=c64910482.syngoal(g,tp,lv,syncard,minc,ct)
or (ct<maxc and mg:IsExists(c64910482.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc))
g:RemoveCard(c)
return res
end
function c64910482.syngoal(g,tp,lv,syncard,minc,ct)
return ct>=minc
and g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard)
and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0
end
function c64910482.syntg(e,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local tp=syncard:GetControler()
if lv<=0 then return false end local lv=syncard:GetLevel()
local g=Duel.GetMatchingGroup(c64910482.synfilter1,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) if lv<=c:GetLevel() then return false end
local g=Group.FromCards(c)
local mg=Duel.GetMatchingGroup(c64910482.synfilter1,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
if syncard:IsSetCard(0x27) then if syncard:IsSetCard(0x27) then
local exg=Duel.GetMatchingGroup(c64910482.synfilter2,syncard:GetControler(),LOCATION_HAND,0,c,syncard,c,f) local exg=Duel.GetMatchingGroup(c64910482.synfilter2,syncard:GetControler(),LOCATION_HAND,0,c,syncard,c,f)
g:Merge(exg) mg:Merge(exg)
end end
return g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) return mg:IsExists(c64910482.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)
end end
function c64910482.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,minc,maxc) function c64910482.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local lv=syncard:GetLevel()
local g=Duel.GetMatchingGroup(c64910482.synfilter1,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local g=Group.FromCards(c)
local mg=Duel.GetMatchingGroup(c64910482.synfilter1,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
if syncard:IsSetCard(0x27) then if syncard:IsSetCard(0x27) then
local exg=Duel.GetMatchingGroup(c64910482.synfilter2,syncard:GetControler(),LOCATION_HAND,0,c,syncard,c,f) local exg=Duel.GetMatchingGroup(c64910482.synfilter2,syncard:GetControler(),LOCATION_HAND,0,c,syncard,c,f)
g:Merge(exg) mg:Merge(exg)
end
for i=1,maxc do
local cg=mg:Filter(c64910482.syncheck,g,g,mg,tp,lv,syncard,minc,maxc)
if cg:GetCount()==0 then break end
local minct=1
if c64910482.syngoal(g,tp,lv,syncard,minc,i) then
if not Duel.SelectYesNo(tp,210) then break end
minct=0
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL)
local sg=cg:Select(tp,minct,1,nil)
if sg:GetCount()==0 then break end
g:Merge(sg)
end end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) Duel.SetSynchroMaterial(g)
local sg=g:SelectWithSumEqual(tp,Card.GetSynchroLevel,lv,minc,maxc,syncard)
Duel.SetSynchroMaterial(sg)
end end
function c64910482.regop(e,tp,eg,ep,ev,re,r,rp) function c64910482.regop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -71,33 +71,51 @@ function c89818984.cardiansynlevel(c) ...@@ -71,33 +71,51 @@ function c89818984.cardiansynlevel(c)
return 2 return 2
end end
function c89818984.synfilter(c,syncard,tuner,f) function c89818984.synfilter(c,syncard,tuner,f)
return c:IsFaceup() and c:IsNotTuner() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c)) return c:IsFaceup() and c:IsCanBeSynchroMaterial(syncard,tuner) and (f==nil or f(c))
end end
function c89818984.syntg(e,syncard,f,minc,maxc) function c89818984.syncheck(c,g,mg,tp,lv,syncard,minc,maxc)
g:AddCard(c)
local ct=g:GetCount()
local res=c89818984.syngoal(g,tp,lv,syncard,minc,ct)
or (ct<maxc and mg:IsExists(c89818984.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc))
g:RemoveCard(c)
return res
end
function c89818984.syngoal(g,tp,lv,syncard,minc,ct)
return ct>=minc and Duel.GetLocationCountFromEx(tp,tp,g,syncard)>0
and (g:CheckWithSumEqual(Card.GetSynchroLevel,lv,ct,ct,syncard)
or g:CheckWithSumEqual(c89818984.cardiansynlevel,lv,ct,ct,syncard))
end
function c89818984.syntg(e,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local tp=syncard:GetControler()
local lv2=syncard:GetLevel()-c89818984.cardiansynlevel(c) local lv=syncard:GetLevel()
if lv<=0 and lv2<=0 then return false end if lv<=c:GetLevel() and lv<=c89818984.cardiansynlevel(c) then return false end
local g=Duel.GetMatchingGroup(c89818984.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local g=Group.FromCards(c)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) local mg=Duel.GetMatchingGroup(c89818984.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res2=g:CheckWithSumEqual(c89818984.cardiansynlevel,lv2,minc,maxc) return mg:IsExists(c89818984.syncheck,1,g,g,mg,tp,lv,syncard,minc,maxc)
return res or res2
end end
function c89818984.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,minc,maxc) function c89818984.synop(e,tp,eg,ep,ev,re,r,rp,syncard,f,min,max)
local minc=min+1
local maxc=max+1
local c=e:GetHandler() local c=e:GetHandler()
local lv=syncard:GetLevel()-c:GetLevel() local lv=syncard:GetLevel()
local lv2=syncard:GetLevel()-c89818984.cardiansynlevel(c) local g=Group.FromCards(c)
local g=Duel.GetMatchingGroup(c89818984.synfilter,syncard:GetControler(),LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f) local mg=Duel.GetMatchingGroup(c89818984.synfilter,tp,LOCATION_MZONE,LOCATION_MZONE,c,syncard,c,f)
local res=g:CheckWithSumEqual(Card.GetSynchroLevel,lv,minc,maxc,syncard) for i=1,maxc do
local res2=g:CheckWithSumEqual(c89818984.cardiansynlevel,lv2,minc,maxc) local cg=mg:Filter(c89818984.syncheck,g,g,mg,tp,lv,syncard,minc,maxc)
local sg=nil if cg:GetCount()==0 then break end
if (res2 and res and Duel.SelectYesNo(tp,aux.Stringid(89818984,2))) local minct=1
or (res2 and not res) then if c89818984.syngoal(g,tp,lv,syncard,minc,i) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) if not Duel.SelectYesNo(tp,210) then break end
sg=g:SelectWithSumEqual(tp,c89818984.cardiansynlevel,lv2,minc,maxc) minct=0
else end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SMATERIAL)
sg=g:SelectWithSumEqual(tp,Card.GetSynchroLevel,lv,minc,maxc,syncard) local sg=cg:Select(tp,minct,1,nil)
if sg:GetCount()==0 then break end
g:Merge(sg)
end end
Duel.SetSynchroMaterial(sg) Duel.SetSynchroMaterial(g)
end end
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