Commit 1b7ef0dd authored by VanillaSalt's avatar VanillaSalt

fix

parent 6b54b47e
......@@ -12,41 +12,74 @@ function c54306223.initial_effect(c)
e2:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_FIELD)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_SZONE)
e2:SetRange(LOCATION_FZONE)
e2:SetOperation(c54306223.acop)
c:RegisterEffect(e2)
--atk down
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_UPDATE_ATTACK)
e3:SetRange(LOCATION_SZONE)
e3:SetRange(LOCATION_FZONE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetValue(c54306223.atkval)
c:RegisterEffect(e3)
--destroy
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_SELF_DESTROY)
e4:SetRange(LOCATION_SZONE)
e4:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e4:SetTarget(Duel.VenomSwampCheck)
e4:SetDescription(aux.Stringid(54306223,1))
e4:SetCategory(CATEGORY_DESTROY)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e4:SetRange(LOCATION_FZONE)
e4:SetCode(54306223)
e4:SetTarget(c54306223.destg)
e4:SetOperation(c54306223.desop)
c:RegisterEffect(e4)
local g=Group.CreateGroup()
g:KeepAlive()
e2:SetLabelObject(g)
e4:SetLabelObject(g)
end
function c54306223.atkval(e,c)
return c:GetCounter(0x9)*-500
end
function c54306223.acop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=e:GetLabelObject()
g:Clear()
for i=0,4 do
local tc=Duel.GetFieldCard(tp,LOCATION_MZONE,i)
if tc and tc:IsCanAddCounter(0x9,1) and not tc:IsSetCard(0x50) then
local atk=tc:GetAttack()
tc:AddCounter(0x9,1)
if atk>0 and tc:GetAttack()==0 then
g:AddCard(tc)
end
end
end
for i=0,4 do
local tc=Duel.GetFieldCard(1-tp,LOCATION_MZONE,i)
if tc and tc:IsCanAddCounter(0x9,1) and not tc:IsSetCard(0x50) then
local atk=tc:GetAttack()
tc:AddCounter(0x9,1)
if atk>0 and tc:GetAttack()==0 then
g:AddCard(tc)
end
end
end
if g:GetCount()>0 then
Duel.RaiseEvent(e:GetHandler(),54306223,e,0,0,0,0)
end
end
function c54306223.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local g=e:GetLabelObject()
Duel.SetTargetCard(g)
local sg=g:Filter(Card.IsDestructable,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,sg,sg:GetCount(),0,0)
end
function c54306223.desop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=e:GetLabelObject():Filter(Card.IsRelateToEffect,nil,e)
if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT)
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