Commit 6a6cba0d authored by GuGu's avatar GuGu

Update c22024.lua 强力的4效果

parent 298770c9
Pipeline #19266 passed with stage
in 46 seconds
......@@ -12,7 +12,6 @@ function c22024.initial_effect(c)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetHintTiming(0,0x1e0)
e1:SetCondition(c22024.condition)
e1:SetCost(c22024.cost)
e1:SetTarget(c22024.target)
e1:SetOperation(c22024.operation)
......@@ -55,35 +54,53 @@ function c22024.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.SelectMatchingCard(tp,c22024.costfilter,tp,LOCATION_GRAVE,0,2,2,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function c22024.condition(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetHandler():GetColumnGroup()
g:Remove(c22024.remfilter,nil,tp)
return g:GetCount()>0
end
function c22024.remfilter(c,tp)
return c:IsLocation(LOCATION_SZONE) or (c:IsControler(tp) and c:GetSequence()<5)
return c:IsLocation(LOCATION_SZONE)
end
function c22024.remfilter2(c,tp)
return c:IsLocation(LOCATION_SZONE) or c:IsControler(tp)
end
function c22024.seqfilter(c,tp)
return c:IsLocation(LOCATION_SZONE) and c:IsControler(1-tp)
end
function c22024.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local g=e:GetHandler():GetColumnGroup()
g:Remove(c22024.remfilter,nil,tp)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
local c=e:GetHandler()
local tp=c:GetControler()
local seq=c:GetSequence()
local g=Group.CreateGroup()
if (c:IsLocation(LOCATION_SZONE) or c:IsLocation(LOCATION_MZONE)) and seq<5 then
g=c:GetColumnGroup()
g:Remove(c22024.remfilter,nil,tp)
end
if c:IsLocation(LOCATION_MZONE) and seq>=5 then
g=c:GetColumnGroup()
g:Remove(c22024.remfilter2,nil,tp)
end
if chk==0 then return g:GetCount()>0 end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end
function c22024.operation(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetHandler():GetColumnGroup()
local seqing=g:Filter(c22024.seqfilter,nil,tp)
seqing:Remove(c22024.remfilter,nil,tp)
if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT)
end
if seqing:GetCount()>0 then
Duel.Destroy(seqing,REASON_EFFECT)
else
Duel.Damage(1-tp,1200,REASON_EFFECT)
end
local c=e:GetHandler()
local tp=c:GetControler()
local seq=c:GetSequence()
local g=Group.CreateGroup()
if (c:IsLocation(LOCATION_SZONE) or c:IsLocation(LOCATION_MZONE)) and seq<5 then
g=c:GetColumnGroup()
g:Remove(c22024.remfilter,nil,tp)
end
if c:IsLocation(LOCATION_MZONE) and seq>=5 then
g=c:GetColumnGroup()
g:Remove(c22024.remfilter2,nil,tp)
end
if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT)
local seqing=c:GetColumnGroup():Filter(c22024.seqfilter,nil,tp)
if seqing:GetCount()>0 then
Duel.Destroy(seqing,REASON_EFFECT)
else
Duel.Damage(1-tp,1200,REASON_EFFECT)
end
end
end
function c22024.tdcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetSummonType()==SUMMON_TYPE_SYNCHRO
......
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