Commit b2835ebe authored by mercury233's avatar mercury233 Committed by nekrozar

more update to use SelectSubGroup (#1252)

* update

* update

* update

* update
parent 9f429dbc
......@@ -17,8 +17,8 @@ function c15083304.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetTargetParam(3)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,3)
end
function c15083304.filter(c)
return not c:IsSetCard(0x11e)
function c15083304.gselect(g)
return g:IsExists(Card.IsSetCard,1,nil,0x11e)
end
function c15083304.activate(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
......@@ -26,17 +26,9 @@ function c15083304.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.ShuffleHand(p)
Duel.BreakEffect()
local g=Duel.GetFieldGroup(p,LOCATION_HAND,0)
if g:IsExists(Card.IsSetCard,1,nil,0x11e) then
if #g>=2 and g:IsExists(Card.IsSetCard,1,nil,0x11e) then
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_DISCARD)
local g1=g:Select(p,1,1,nil)
if g1:GetFirst():IsSetCard(0x11e) then
g:RemoveCard(g1:GetFirst())
else
g:Remove(c15083304.filter,nil)
end
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_DISCARD)
local g2=g:Select(p,1,1,nil)
g1:Merge(g2)
local g1=g:SelectSubGroup(tp,c15083304.gselect,false,2,2)
Duel.SendtoGrave(g1,REASON_DISCARD+REASON_EFFECT)
else
Duel.ConfirmCards(1-p,g)
......
......@@ -55,10 +55,9 @@ function c23187256.operation(e,tp,eg,ep,ev,re,r,rp)
local ct=c:GetOverlayGroup():GetClassCount(Card.GetCode)
if ct>ft then ct=ft end
if g1:GetCount()>0 and ct>0 then
repeat
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g2=g1:Select(tp,1,1,nil)
local tc=g2:GetFirst()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g2=g1:SelectSubGroup(tp,aux.drkcheck,false,1,ct)
for tc in aux.Next(g2) do
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......@@ -70,9 +69,7 @@ function c23187256.operation(e,tp,eg,ep,ev,re,r,rp)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e2)
g1:Remove(c23187256.gfilter,nil,tc:GetRank())
ct=ct-1
until g1:GetCount()==0 or ct==0 or not Duel.SelectYesNo(tp,aux.Stringid(23187256,1))
end
Duel.SpecialSummonComplete()
Duel.BreakEffect()
c:RemoveOverlayCard(tp,1,1,REASON_EFFECT)
......
......@@ -96,38 +96,18 @@ function c24010609.settg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return ct and ct>0 and Duel.IsExistingMatchingCard(c24010609.setfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,0)
end
function c24010609.gselect(g,ft)
local fc=g:FilterCount(Card.IsType,nil,TYPE_FIELD)
return fc<=1 and aux.dncheck(g) and #g-fc<ft
end
function c24010609.setop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(c24010609.setfilter),tp,LOCATION_GRAVE,0,nil)
local ct=e:GetHandler():GetFlagEffectLabel(24010609) or 0
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
local tg=Group.CreateGroup()
local tg1=Group.CreateGroup()
local field=false
local init=1
if g:IsExists(Card.IsType,1,nil,TYPE_FIELD) then field=true end
while ct>0 and (ft>0 or field) and g:GetCount()>0 do
if ft==0 then g=g:Filter(Card.IsType,nil,TYPE_FIELD) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local sg=g:Select(tp,init,1,nil)
if sg:GetCount()>0 then
if sg:GetFirst():IsType(TYPE_FIELD) then
tg:Merge(sg)
g:Remove(Card.IsType,nil,TYPE_FIELD)
field=false
else
tg1:Merge(sg)
g:Remove(Card.IsCode,nil,sg:GetFirst():GetCode())
ft=ft-1
end
init=0
ct=ct-1
else
break
end
end
tg:Merge(tg1)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local tg=g:SelectSubGroup(tp,c24010609.gselect,false,1,math.min(ct,ft+1),ft)
Duel.SSet(tp,tg)
local tc=tg:GetFirst()
while tc do
......
......@@ -73,19 +73,15 @@ function c28265983.destg2(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(c28265983.desfilter2,tp,0,LOCATION_MZONE,nil,e:GetLabel())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function c28265983.gselect(g,num)
return g:GetSum(Card.GetAttack)<=num
end
function c28265983.desop2(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local num=e:GetLabel()
local g=Duel.GetMatchingGroup(c28265983.desfilter2,tp,0,LOCATION_MZONE,nil,num)
if g:GetCount()==0 then return end
local dg=Group.CreateGroup()
repeat
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local tg=g:FilterSelect(tp,c28265983.desfilter2,1,1,nil,num)
local tc=tg:GetFirst()
num=num-tc:GetAttack()
g:RemoveCard(tc)
dg:AddCard(tc)
until not g:IsExists(c28265983.desfilter2,1,nil,num) or not Duel.SelectYesNo(tp,aux.Stringid(28265983,3))
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local dg=g:SelectSubGroup(tp,c28265983.gselect,false,1,#g,num)
Duel.Destroy(dg,REASON_EFFECT)
end
......@@ -30,24 +30,21 @@ function c28577986.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function c28577986.gselect(g,slv)
return g:GetSum(Card.GetLevel)<=slv
end
function c28577986.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<=0 then return end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local slv=tc:GetLevel()
local sg=Duel.GetMatchingGroup(c28577986.spfilter,tp,LOCATION_DECK,0,nil,slv,e,tp)
if sg:GetCount()==0 then return end
repeat
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=sg:Select(tp,1,1,nil):GetFirst()
sg:RemoveCard(tc)
slv=slv-tc:GetLevel()
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)
sg:Remove(Card.IsLevelAbove,nil,slv+1)
ft=ft-1
until ft<=0 or sg:GetCount()==0 or not Duel.SelectYesNo(tp,aux.Stringid(28577986,1))
Duel.SpecialSummonComplete()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:SelectSubGroup(tp,c28577986.gselect,false,1,ft,slv)
Duel.SpecialSummon(tg,0,tp,tp,false,false,POS_FACEUP)
Duel.BreakEffect()
Duel.SendtoGrave(tc,REASON_EFFECT)
end
......@@ -34,26 +34,15 @@ end
function c36328300.exfilter(c,tp)
return Duel.GetLocationCountFromEx(tp,tp,Group.FromCards(c))>0
end
function c36328300.gselect(g,tp)
return aux.dncheck(g) and Duel.GetLocationCountFromEx(tp,tp,g)>0
end
function c36328300.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(c36328300.cfilter,tp,LOCATION_ONFIELD+LOCATION_HAND+LOCATION_DECK,0,nil)
if chk==0 then return g:GetClassCount(Card.GetCode)>=7
and (Duel.GetLocationCountFromEx(tp)>0 or g:IsExists(c36328300.exfilter,1,nil,tp)) end
local rg=Group.CreateGroup()
local ft=Duel.GetLocationCountFromEx(tp)
for i=1,7 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local tc=nil
if ft<1 then
tc=g:FilterSelect(tp,c36328300.exfilter,1,1,nil,tp):GetFirst()
ft=1
else
tc=g:Select(tp,1,1,nil):GetFirst()
end
if tc then
rg:AddCard(tc)
g:Remove(Card.IsCode,nil,tc:GetCode())
end
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local rg=g:SelectSubGroup(tp,c36328300.gselect,false,7,7,tp)
Duel.SendtoGrave(rg,REASON_COST)
end
function c36328300.filter(c,e,tp)
......
......@@ -54,23 +54,13 @@ function c45148985.sprcon(e,c)
local ct=-ft+1
return ft>-5 and g:GetClassCount(Card.GetCode)>=5 and (ft>0 or g:IsExists(c45148985.mzfilter,ct,nil))
end
function c45148985.gselect(g,tp)
return aux.dncheck(g) and Duel.GetMZoneCount(tp,g)>0
end
function c45148985.sprop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c45148985.sprfilter,tp,LOCATION_ONFIELD+LOCATION_GRAVE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
local rg=Group.CreateGroup()
for i=1,5 do
local sc=nil
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
if ct>0 then
sc=g:FilterSelect(tp,c45148985.mzfilter,1,1,nil):GetFirst()
else
sc=g:Select(tp,1,1,nil):GetFirst()
end
rg:AddCard(sc)
g:Remove(Card.IsCode,nil,sc:GetCode())
ct=ct-1
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local rg=g:SelectSubGroup(tp,c45148985.gselect,false,5,5,tp)
Duel.Remove(rg,POS_FACEUP,REASON_COST)
end
function c45148985.spcon(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -34,34 +34,29 @@ function c50766506.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Release(rg,REASON_COST)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function c50766506.spfilter2(c,e,tp)
return c:IsSetCard(0x2b) and
(c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) or c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE))
function c50766506.gselect(g,slv)
return g:GetSum(Card.GetLevel)<=slv
end
function c50766506.operation(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<=0 then return end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local c=e:GetHandler()
local slv=e:GetLabel()
local sg=Duel.GetMatchingGroup(c50766506.spfilter2,tp,LOCATION_DECK,0,nil,e,tp)
sg:Remove(Card.IsLevelAbove,nil,slv+1)
local sg=Duel.GetMatchingGroup(c50766506.spfilter,tp,LOCATION_DECK,0,nil,slv,e,tp)
if sg:GetCount()==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:SelectSubGroup(tp,c50766506.gselect,false,1,ft,slv)
local cg=Group.CreateGroup()
repeat
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=sg:Select(tp,1,1,nil):GetFirst()
sg:RemoveCard(tc)
slv=slv-tc:GetLevel()
for tc in aux.Next(tg) do
local spos=0
if tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) then spos=spos+POS_FACEUP_ATTACK end
if tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE) then spos=spos+POS_FACEDOWN_DEFENSE end
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,spos)
if tc:IsFacedown() then cg:AddCard(tc) end
c:SetCardTarget(tc)
sg:Remove(Card.IsLevelAbove,nil,slv+1)
ft=ft-1
until ft<=0 or sg:GetCount()==0 or not Duel.SelectYesNo(tp,aux.Stringid(50766506,0))
end
Duel.SpecialSummonComplete()
Duel.ConfirmCards(1-tp,cg)
end
......
......@@ -87,34 +87,16 @@ function c72883039.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
and Duel.IsExistingMatchingCard(c72883039.spfilter,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE)
end
function c72883039.gselect(g)
return aux.dncheck(g) and g:GetClassCount(Card.GetLocation)==#g
end
function c72883039.spop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft==0 then return end
if ft<=0 then return end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local g1=Duel.GetMatchingGroup(c72883039.spfilter,tp,LOCATION_HAND,0,nil,e,tp)
local g2=Duel.GetMatchingGroup(c72883039.spfilter,tp,LOCATION_DECK,0,nil,e,tp)
local g3=Duel.GetMatchingGroup(aux.NecroValleyFilter(c72883039.spfilter),tp,LOCATION_GRAVE,0,nil,e,tp)
local sg=Group.CreateGroup()
if g1:GetCount()>0 and ((g2:GetCount()==0 and g3:GetCount()==0) or Duel.SelectYesNo(tp,aux.Stringid(72883039,1))) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg1=g1:Select(tp,1,1,nil)
sg:Merge(sg1)
g2:Remove(Card.IsCode,nil,sg1:GetFirst():GetCode())
g3:Remove(Card.IsCode,nil,sg1:GetFirst():GetCode())
ft=ft-1
end
if g2:GetCount()>0 and ft>0 and ((sg:GetCount()==0 and g3:GetCount()==0) or Duel.SelectYesNo(tp,aux.Stringid(72883039,2))) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg2=g2:Select(tp,1,1,nil)
sg:Merge(sg2)
g3:Remove(Card.IsCode,nil,sg2:GetFirst():GetCode())
ft=ft-1
end
if g3:GetCount()>0 and ft>0 and (sg:GetCount()==0 or Duel.SelectYesNo(tp,aux.Stringid(72883039,3))) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg3=g3:Select(tp,1,1,nil)
sg:Merge(sg3)
end
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(c72883039.spfilter),tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,nil,e,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=g:SelectSubGroup(tp,c72883039.gselect,false,1,math.min(ft,3))
Duel.SpecialSummon(sg,0,tp,tp,true,false,POS_FACEUP)
end
......@@ -29,9 +29,6 @@ end
function c84869738.desfilter(c)
return not c84869738.cfilter(c)
end
function c84869738.mzfilter(c)
return c:GetSequence()<5
end
function c84869738.spfilter(c,e,tp)
return c:IsSetCard(0x20f8) and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end
......@@ -39,7 +36,7 @@ function c84869738.target(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(c84869738.desfilter,tp,LOCATION_MZONE,0,nil)
if chk==0 then
local loc=0
if Duel.GetLocationCount(tp,LOCATION_MZONE)>-g:FilterCount(c84869738.mzfilter,nil) then loc=loc+LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE end
if Duel.GetMZoneCount(tp,g)>0 then loc=loc+LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE end
if Duel.GetLocationCountFromEx(tp,tp,g)>0 then loc=loc+LOCATION_EXTRA end
return g:GetCount()>0 and loc~=0
and Duel.IsExistingMatchingCard(c84869738.spfilter,tp,loc,0,1,nil,e,tp)
......@@ -47,6 +44,11 @@ function c84869738.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE+LOCATION_EXTRA)
end
function c84869738.gcheck(g,ft1,ft2,ft)
return aux.dncheck(g) and #g<=ft
and g:FilterCount(Card.IsLocation,nil,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE)<=ft1
and g:FilterCount(Card.IsLocation,nil,LOCATION_EXTRA)<=ft2
end
function c84869738.activate(e,tp,eg,ep,ev,re,r,rp)
local dg=Duel.GetMatchingGroup(c84869738.desfilter,tp,LOCATION_MZONE,0,nil)
if Duel.Destroy(dg,REASON_EFFECT)==0 then return end
......@@ -64,22 +66,10 @@ function c84869738.activate(e,tp,eg,ep,ev,re,r,rp)
if loc==0 then return end
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(tp,29724053) and c29724053[tp]
if ect and ect<ft2 then ft2=ect end
local ct=4
local sg=Duel.GetMatchingGroup(aux.NecroValleyFilter(c84869738.spfilter),tp,loc,0,nil,e,tp)
if sg:GetCount()==0 then return end
local rg=Group.CreateGroup()
repeat
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=sg:Select(tp,1,1,nil):GetFirst()
rg:AddCard(tc)
sg:Remove(Card.IsCode,nil,tc:GetCode())
if tc:IsLocation(LOCATION_EXTRA) then ft2=ft2-1
else ft1=ft1-1 end
if ft1<=0 then sg:Remove(Card.IsLocation,nil,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE) end
if ft2<=0 then sg:Remove(Card.IsLocation,nil,LOCATION_EXTRA) end
ft=ft-1
ct=ct-1
until ct==0 or sg:GetCount()==0 or ft==0 or not Duel.SelectYesNo(tp,aux.Stringid(84869738,0))
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local rg=sg:SelectSubGroup(tp,c84869738.gcheck,false,1,4,ft1,ft2,ft)
Duel.SpecialSummon(rg,0,tp,tp,true,false,POS_FACEUP)
end
function c84869738.xyzfilter(c)
......
......@@ -39,25 +39,13 @@ function c91588074.spcon(e,c)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeckOrExtraAsCost,c:GetControler(),LOCATION_HAND+LOCATION_ONFIELD,0,c)
return g:GetClassCount(Card.GetCode)>=10 and (ft>0 or g:IsExists(Card.IsLocation,ct,nil,LOCATION_MZONE))
end
function c91588074.gselect(g,tp)
return aux.dncheck(g) and Duel.GetMZoneCount(tp,g)>0
end
function c91588074.spop(e,tp,eg,ep,ev,re,r,rp,c)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
local g=Duel.GetMatchingGroup(Card.IsAbleToDeckOrExtraAsCost,tp,LOCATION_HAND+LOCATION_ONFIELD,0,c)
local rg=Group.CreateGroup()
for i=1,10 do
local tc=nil
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ct>0 then
tc=g:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else
tc=g:Select(tp,1,1,nil):GetFirst()
end
if tc then
rg:AddCard(tc)
g:Remove(Card.IsCode,nil,tc:GetCode())
end
ct=ct-1
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local rg=g:SelectSubGroup(tp,c91588074.gselect,false,10,10,tp)
local cg=rg:Filter(Card.IsFacedown,nil)
if cg:GetCount()>0 then
Duel.ConfirmCards(1-tp,cg)
......
......@@ -62,23 +62,13 @@ function c95403418.spcon(e,c)
local ct=-ft+1
return mg:GetCount()>0 and (ft>0 or mg:IsExists(c95403418.mzfilter,ct,nil))
end
function c95403418.gselect(g,tp)
return Duel.GetMZoneCount(tp,g)>0
end
function c95403418.spop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(c95403418.filter,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
g=mg:Select(tp,1,7,nil)
else
local ct=-ft+1
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
g=mg:FilterSelect(tp,c95403418.mzfilter,ct,ct,nil)
if mg:GetCount()>ct and Duel.SelectYesNo(tp,210) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=mg:Select(tp,1,7,g)
g:Merge(g2)
end
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=mg:SelectSubGroup(tp,c95403418.gselect,false,1,#mg,tp)
local ct=Duel.SendtoGrave(g,REASON_COST)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......
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