Commit c9b66dbe authored by nekrozar's avatar nekrozar Committed by VanillaSalt

fix (#867)

parent 42ffded1
......@@ -33,13 +33,16 @@ end
function c16886617.rfilter(c)
return c:IsFaceup() and c:GetAttack()==0 and c:IsReleasable()
end
function c16886617.mzfilter(c)
return c:IsFaceup() and c:GetAttack()==0 and c:IsReleasable() and c:GetSequence()<5
end
function c16886617.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if ct>2 then return false end
if ct>0 and not Duel.IsExistingMatchingCard(c16886617.rfilter,tp,LOCATION_MZONE,0,ct,nil) then return false end
if ct>0 and not Duel.IsExistingMatchingCard(c16886617.mzfilter,tp,LOCATION_MZONE,0,ct,nil) then return false end
return Duel.IsExistingMatchingCard(c16886617.rfilter,tp,LOCATION_MZONE,LOCATION_MZONE,2,nil)
end
function c16886617.spop(e,tp,eg,ep,ev,re,r,rp,c)
......@@ -49,7 +52,7 @@ function c16886617.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup()
if ct>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local sg=Duel.SelectMatchingCard(tp,c16886617.rfilter,tp,LOCATION_MZONE,0,ct,ct,nil)
local sg=Duel.SelectMatchingCard(tp,c16886617.mzfilter,tp,LOCATION_MZONE,0,ct,ct,nil)
g:Merge(sg)
end
if ct<2 then
......
......@@ -52,15 +52,35 @@ end
function c38369349.cfilter(c)
return c:IsFaceup() and c:IsCode(15259703)
end
function c38369349.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c38369349.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(c38369349.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>-2 and Duel.CheckReleaseGroup(tp,nil,2,nil)
local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return Duel.IsExistingMatchingCard(c38369349.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
and ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c38369349.mzfilter,ct,nil,tp))
end
function c38369349.spop(e,tp,eg,ep,ev,re,r,rp,c)
local tp=c:GetControler()
local g=Duel.SelectReleaseGroup(tp,nil,2,2,nil)
local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c38369349.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c38369349.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c38369349.sfilter(c)
......
......@@ -38,14 +38,35 @@ end
function c41329458.indcon(e)
return Duel.IsExistingMatchingCard(Card.IsType,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil,TYPE_TOKEN)
end
function c41329458.rfilter(c,tp)
return c:IsSetCard(0x101b) and (c:IsControler(tp) or c:IsFaceup())
end
function c41329458.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c41329458.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsSetCard,2,nil,0x101b) end
local g=Duel.SelectReleaseGroup(tp,Card.IsSetCard,2,2,nil,0x101b)
local rg=Duel.GetReleaseGroup(tp):Filter(c41329458.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c41329458.mzfilter,ct,nil,tp)) end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c41329458.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c41329458.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c41329458.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-2
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c41329458.spop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -22,11 +22,30 @@ function c47826112.initial_effect(c)
c:RegisterEffect(e2)
end
function c47826112.cfilter(c)
return c:IsLevelBelow(3) and c:IsAttribute(ATTRIBUTE_WATER)
return c:IsLevelBelow(3) and c:IsAttribute(ATTRIBUTE_WATER) and (c:IsControler(tp) or c:IsFaceup())
end
function c47826112.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c47826112.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c47826112.cfilter,3,nil) end
local g=Duel.SelectReleaseGroup(tp,c47826112.cfilter,3,3,nil)
local rg=Duel.GetReleaseGroup(tp):Filter(c47826112.cfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then return ft>-3 and rg:GetCount()>2 and (ft>0 or rg:IsExists(c47826112.mzfilter,ct,nil,tp)) end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,3,3,nil)
elseif ft>-2 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c47826112.mzfilter,ct,ct,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,3-ct,3-ct,g)
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c47826112.mzfilter,3,3,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c47826112.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
......@@ -39,16 +39,35 @@ end
function c52085072.spcfilter(c)
return c:IsFaceup() and c:GetLevel()==1 and c:IsAbleToGraveAsCost()
end
function c52085072.mzfilter(c,tp)
return c:GetSequence()<5
end
function c52085072.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(c52085072.spcfilter,tp,LOCATION_MZONE,0,4,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>-4
local sg=Duel.GetMatchingGroup(c52085072.spcfilter,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-4 and sg:GetCount()>3 and (ft>0 or sg:IsExists(c93717133.mzfilter,ct,nil,tp))
end
function c52085072.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c52085072.spcfilter,tp,LOCATION_MZONE,0,4,4,nil)
Duel.SendtoGrave(g,REASON_COST)
local sg=Duel.GetMatchingGroup(c52085072.spcfilter,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=sg:Select(tp,4,4,nil)
elseif ft>-3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
g=rg:FilterSelect(tp,c52085072.mzfilter,ct,ct,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=rg:Select(tp,4-ct,4-ct,g)
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
g=sg:FilterSelect(tp,c52085072.mzfilter,4,4,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c52085072.antarget(e,c)
return c~=e:GetHandler()
......
......@@ -52,15 +52,35 @@ end
function c53183600.cfilter(c)
return c:IsFaceup() and c:IsCode(15259703)
end
function c53183600.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c53183600.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(c53183600.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>-2 and Duel.CheckReleaseGroup(tp,nil,2,nil)
local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return Duel.IsExistingMatchingCard(c38369349.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
and ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c53183600.mzfilter,ct,nil,tp))
end
function c53183600.spop(e,tp,eg,ep,ev,re,r,rp,c)
local tp=c:GetControler()
local g=Duel.SelectReleaseGroup(tp,nil,2,2,nil)
local rg=Duel.GetReleaseGroup(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c53183600.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c53183600.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c53183600.sfilter(c)
......
......@@ -11,11 +11,29 @@ function c54297661.initial_effect(c)
e1:SetOperation(c54297661.activate)
c:RegisterEffect(e1)
end
function c54297661.mzfilter(c,tp)
return c:GetSequence()<5
end
function c54297661.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemoveAsCost,tp,LOCATION_MZONE,0,2,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemoveAsCost,tp,LOCATION_MZONE,0,2,2,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
local rg=Duel.GetMatchingGroup(Card.IsAbleToRemoveAsCost,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c54297661.mzfilter,ct,nil,tp)) end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
g=rg:FilterSelect(tp,c54297661.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
g=rg:FilterSelect(tp,c54297661.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c54297661.filter(c,tp)
return c:IsFaceup()
......
......@@ -13,9 +13,28 @@ end
function c54913680.costfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3d)
end
function c54913680.mzfilter(c,tp)
return c:GetSequence()<5
end
function c54913680.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c54913680.costfilter,2,nil) end
local g=Duel.SelectReleaseGroup(tp,c54913680.costfilter,2,2,nil)
local rg=Duel.GetReleaseGroup(tp):Filter(c54913680.costfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c54913680.mzfilter,ct,nil,tp)) end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c54913680.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c54913680.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c54913680.filter(c,e,tp)
......
......@@ -10,9 +10,31 @@ function c66607691.initial_effect(c)
e1:SetOperation(c66607691.activate)
c:RegisterEffect(e1)
end
function c66607691.rfilter(c,tp)
return c:IsCode(70095154) and (c:IsControler(tp) or c:IsFaceup())
end
function c66607691.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c66607691.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsCode,2,nil,70095154) end
local g=Duel.SelectReleaseGroup(tp,Card.IsCode,2,2,nil,70095154)
local rg=Duel.GetReleaseGroup(tp):Filter(c66607691.costfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c66607691.mzfilter,ct,nil,tp)) end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c66607691.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c66607691.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c66607691.spfilter(c,e,tp)
......
......@@ -14,19 +14,41 @@ function c72549351.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(1)
return true
end
function c72549351.rfilter(c,tp)
return c:IsRace(RACE_DRAGON) and (c:IsControler(tp) or c:IsFaceup())
end
function c72549351.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c72549351.spfilter(c,e,tp)
return c:IsRace(RACE_DRAGON) and c:GetLevel()==8 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c72549351.target(e,tp,eg,ep,ev,re,r,rp,chk)
local rg=Duel.GetReleaseGroup(tp):Filter(c72549351.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
if chk==0 then
if e:GetLabel()==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
if e:GetLabel()==0 then return ft>0
and Duel.IsExistingMatchingCard(c72549351.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
e:SetLabel(0)
return Duel.CheckReleaseGroup(tp,Card.IsRace,2,nil,RACE_DRAGON)
return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c72549351.mzfilter,ct,nil,tp))
end
if e:GetLabel()~=0 then
local rg=Duel.SelectReleaseGroup(tp,Card.IsRace,2,2,nil,RACE_DRAGON)
Duel.Release(rg,REASON_COST)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c72549351.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c72549351.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
e:SetLabel(0)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
......
......@@ -30,15 +30,37 @@ function c88619463.initial_effect(c)
e3:SetOperation(c88619463.disop)
c:RegisterEffect(e3)
end
function c88619463.rfilter(c)
return c:IsRace(RACE_SPELLCASTER) and c:IsLevelAbove(6)
function c88619463.rfilter(c,tp)
return c:IsRace(RACE_SPELLCASTER) and c:IsLevelAbove(6) and (c:IsControler(tp) or c:IsFaceup())
end
function c88619463.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c88619463.spcon(e,c)
if c==nil then return true end
return Duel.CheckReleaseGroup(c:GetControler(),c88619463.rfilter,2,nil)
local tp=c:GetControler()
local rg=Duel.GetReleaseGroup(tp):Filter(c88619463.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c88619463.mzfilter,ct,nil,tp))
end
function c88619463.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectReleaseGroup(c:GetControler(),c88619463.rfilter,2,2,nil)
local rg=Duel.GetReleaseGroup(tp):Filter(c88619463.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c88619463.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c88619463.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
end
function c88619463.discon(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -23,12 +23,37 @@ function c93717133.initial_effect(c)
e2:SetOperation(c93717133.rmop)
c:RegisterEffect(e2)
end
function c93717133.rfilter(c,tp)
return c:IsAttackAbove(2000) and (c:IsControler(tp) or c:IsFaceup())
end
function c93717133.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5
end
function c93717133.spcon(e,c)
if c==nil then return true end
return Duel.CheckReleaseGroup(c:GetControler(),Card.IsAttackAbove,2,nil,2000)
local tp=c:GetControler()
local rg=Duel.GetReleaseGroup(tp):Filter(c93717133.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-2 and rg:GetCount()>1 and (ft>0 or rg:IsExists(c93717133.mzfilter,ct,nil,tp))
end
function c93717133.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectReleaseGroup(c:GetControler(),Card.IsAttackAbove,2,2,nil,2000)
local rg=Duel.GetReleaseGroup(tp):Filter(c93717133.rfilter,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:Select(tp,2,2,nil)
elseif ft==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c93717133.mzfilter,1,1,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
g=rg:FilterSelect(tp,c93717133.mzfilter,2,2,nil,tp)
end
Duel.Release(g,REASON_COST)
c:RegisterFlagEffect(0,RESET_EVENT+0x4fc0000,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(93717133,1))
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