--The Eternal Bigbang Lord local s,id,o=GetID() function s.initial_effect(c) c:EnableReviveLimit() aux.AddOrigBigbangType(c) aux.AddBigbangProc(c,s.matfilter,2,s.matgroup) aux.AddCodeList(c,77222580) aux.AddMaterialCodeList(c,77222580) --You can only control 1 "The Eternal Bigbang Lord". c:SetUniqueOnField(1,0,id) --If this card is Special Summoned: You can destroy 1 card on the field. local e1=Effect.CreateEffect(c) e1:SetCategory(CATEGORY_DESTROY) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetCountLimit(1,{id,0}) e1:SetTarget(s.destg) e1:SetOperation(s.desop) c:RegisterEffect(e1) --If a card(s) on the field is destroyed while this card is in your GY: You can Special Summon this card, but its original ATK/DEF become halved, then you can make 1 monster on the field lose 1000 ATK or DEF (your choice). local e2=Effect.CreateEffect(c) e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetCode(EVENT_DESTROYED) e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetRange(LOCATION_GRAVE) e2:SetCountLimit(1,{id,1}) e2:SetCondition(s.spcon) e2:SetTarget(s.sptg) e2:SetOperation(s.spop) c:RegisterEffect(e2) end s.material_setcode=0xbba function s.matfilter(c) return c:IsCode(77222580) or c:IsPositive() or c:IsNegative() end function s.matfilter2(c) return c:IsCode(77222580) and c:IsNeutral() end function s.matgroup(g,c,tp) return not g:IsExists(s.matfilter2,2,nil) and g:IsExists(Card.IsCode,1,nil,77222580) end function s.destg(e,tp,eg,ep,ev,re,r,rp,chk) local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) if chk==0 then return g:GetCount()>0 end Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) end function s.desop(e,tp,eg,ep,ev,re,r,rp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil) if g:GetCount()>0 then Duel.HintSelection(g) Duel.Destroy(g,REASON_EFFECT) end end function s.cfilter(c) return c:IsPreviousLocation(LOCATION_ONFIELD) end function s.spcon(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() return eg:IsExists(s.cfilter,1,nil) and not eg:IsContains(c) end function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,true) end Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) end function s.atkfilter(c) return c:IsFaceup() end function s.spop(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP)~=0 then local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_SET_BASE_ATTACK) e1:SetValue(2000) e1:SetReset(RESET_EVENT+0xff0000) c:RegisterEffect(e1) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCode(EFFECT_SET_BASE_DEFENSE) e2:SetValue(2000) e2:SetReset(RESET_EVENT+0xff0000) c:RegisterEffect(e2) c:CompleteProcedure() if Duel.IsExistingMatchingCard(s.atkfilter,tp,LOCATION_MZONE,0,1,c) and Duel.SelectYesNo(tp,1113) then Duel.BreakEffect() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) local g=Duel.SelectMatchingCard(tp,s.atkfilter,tp,LOCATION_MZONE,0,1,1,nil) local tc=g:GetFirst() Duel.HintSelection(g) if tc:IsType(TYPE_LINK) then local e1=Effect.CreateEffect(e:GetHandler()) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetValue(-1000) tc:RegisterEffect(e1) else if Duel.SelectOption(tp,746,747)==1 then local e1=Effect.CreateEffect(e:GetHandler()) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_UPDATE_DEFENSE) e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetValue(-1000) tc:RegisterEffect(e1) else local e1=Effect.CreateEffect(e:GetHandler()) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetValue(-1000) tc:RegisterEffect(e1) end end end end end