diff --git a/lua/c56158657.lua b/lua/c56158657.lua index 3171f2b..93aa964 100644 --- a/lua/c56158657.lua +++ b/lua/c56158657.lua @@ -33,7 +33,18 @@ function s.initial_effect(c) e3:SetTarget(s.sptg) e3:SetOperation(s.spop) c:RegisterEffect(e3) - + --ATK 0 + local e4=Effect.CreateEffect(c) + e4:SetDescription(aux.Stringid(id,1)) + e4:SetCategory(CATEGORY_ATKCHANGE) + e4:SetType(EFFECT_TYPE_IGNITION) + e4:SetProperty(EFFECT_FLAG_CARD_TARGET) + e4:SetRange(LOCATION_MZONE) + e4:SetCountLimit(1,id+1) + e4:SetCondition(s.con) + e4:SetTarget(s.destg) + e4:SetOperation(s.desop) + c:RegisterEffect(e4) end function s.efilter(e,c) return c:IsSetCard(0x25e) and c:IsFaceup() @@ -56,4 +67,33 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp) if #g==2 then Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP_DEFENSE) end +end + +--atk 0 +--condition +function s.filter(c) + return c:IsFaceup() and c:IsCode(56158657) +end +function s.con(e,tp,eg,ep,ev,re,r,rp) + return Duel.GetMatchingGroupCount(s.filter,0,LOCATION_MZONE,LOCATION_MZONE,nil) +end +--change +function s.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) + if chkc then return false end + if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end + local g2=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil) + Duel.SetOperationInfo(0,CATEGORY_ATKCHANGE,g2,1,0,0) +end +function s.desop(e,tp,eg,ep,ev,re,r,rp) + local g2=Duel.GetFirstTarget() + local ex,g2=Duel.GetOperationInfo(0,CATEGORY_ATKCHANGE) + local tc=g2:GetFirst() + if tc:IsFaceup() and tc:IsRelateToEffect(e) then + local e1=Effect.CreateEffect(e:GetHandler()) + e1:SetType(EFFECT_TYPE_SINGLE) + e1:SetCode(EFFECT_SET_ATTACK_FINAL) + e1:SetValue(0) + e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) + tc:RegisterEffect(e1) + end end \ No newline at end of file