Commit 21ab996b authored by Tachibana's avatar Tachibana

12

parent 8b54f79d
......@@ -46,13 +46,16 @@ end
function cm.mzfilter(g,tp)
return Duel.GetLocationCountFromEx(tp,tp,g)>0
end
function cm.mzfilter1(c,tp)
return c:GetSequence()<5
end
function cm.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-2 and mg:GetCount()>1 and (ft>0 or mg:IsExists(nil,ct,nil))
return ft>-2 and mg:GetCount()>1 and (ft>0 or mg:IsExists(cm.mzfilter1,ct,nil))
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
......@@ -90,17 +93,20 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1)
end
end
function cm.gfilter(c)
return not c:IsRace(RACE_ZOMBIE)
end
function cm.spfilter(c,e,tp)
return ((rk.check(c,"BOW")) or (not Duel.IsExistingMatchingCard(cm.gfilter,tp,LOCATION_GRAVE,0,1,nil) and c:IsRace(RACE_ZOMBIE))) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
end
function cm.spop1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if not g or g:GetCount()<1 then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)<1 then return end
local tc=g:GetFirst()
......
......@@ -51,7 +51,7 @@ function cm.spcon(e,c)
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-1 and mg:GetCount()>0 and (ft>0 or mg:IsExists(nil,ct,nil))
return ft>-1 and mg:GetCount()>0
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
......@@ -89,6 +89,9 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1)
end
end
function cm.gfilter(c)
return not c:IsRace(RACE_ZOMBIE)
end
function cm.spfilter(c,e,tp)
return ((rk.check(c,"BOW")) or (not Duel.IsExistingMatchingCard(cm.gfilter,tp,LOCATION_GRAVE,0,1,nil) and c:IsRace(RACE_ZOMBIE))) and c:IsFaceup()
end
......
......@@ -48,7 +48,7 @@ function cm.ffilter(c,fc,sub,mg,sg)
return not sg or not sg:IsExists(cm.filter1,1,nil)
end
function cm.filter(c)
return c:IsFaceup() and c:IsCode(m-1) and c:IsAbleToExtraAsCost()
return c:IsFaceup() and c:IsCode(m-2) and c:IsAbleToExtraAsCost()
end
function cm.mzfilter(g,tp)
return Duel.GetLocationCountFromEx(tp,tp,g)>0
......@@ -59,7 +59,7 @@ function cm.spcon(e,c)
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1
return ft>-1 and mg:GetCount()>0 and (ft>0 or mg:IsExists(nil,ct,nil))
return ft>-1 and mg:GetCount()>0
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
......
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