--Meteor Gladiator local s,id,o=GetID() function s.initial_effect(c) c:EnableReviveLimit() aux.AddOrigBigbangType(c) --aux.AddBigbangProc(c,aux.FilterBoolFunction(Card.IsCode,111455790),1,1,aux.NOT(aux.FilterEqualFunction(Card.GetVibe,0)),1) aux.AddBigbangProc(c,s.matfilter,2,s.matgroup) aux.AddCodeList(c,111455790) aux.AddMaterialCodeList(c,111455790) --The first time this card would be destroyed by your opponent's card effects each turn, it is not destroyed local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e1:SetCode(EFFECT_INDESTRUCTABLE_COUNT) e1:SetRange(LOCATION_MZONE) e1:SetCountLimit(1) e1:SetValue(function(e,_,r,rp) return r&REASON_EFFECT==REASON_EFFECT and rp==1-e:GetHandlerPlayer() end) c:RegisterEffect(e1) --Gains 300 ATK/DEF for each Equip Card you control. local e3=Effect.CreateEffect(c) e3:SetType(EFFECT_TYPE_SINGLE) e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e3:SetCode(EFFECT_UPDATE_ATTACK) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e3:SetValue(s.atkval) c:RegisterEffect(e3) local e4=e3:Clone() e4:SetCode(EFFECT_UPDATE_DEFENSE) c:RegisterEffect(e4) --When a monster effect is activated (Quick Effect): You can negate the activation, and if you do, equip it to this card. local e5=Effect.CreateEffect(c) e5:SetCategory(CATEGORY_NEGATE+CATEGORY_EQUIP) e5:SetType(EFFECT_TYPE_QUICK_O) e5:SetCode(EVENT_CHAINING) e5:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e5:SetRange(LOCATION_MZONE) e5:SetCountLimit(1,id) e5:SetCondition(s.negcon) e5:SetTarget(s.negtg) e5:SetOperation(s.negop) c:RegisterEffect(e5) --If exactly 1 Bigbang Monster is Special Summoned to your field: You can double that monster's ATK, then switch this card's ATK/DEF. local e6=Effect.CreateEffect(c) e6:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE) e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e6:SetProperty(EFFECT_FLAG_DELAY) e6:SetCode(EVENT_SPSUMMON_SUCCESS) e6:SetRange(LOCATION_MZONE) e6:SetCountLimit(1,{id,1}) e6:SetCondition(s.condition) e6:SetOperation(s.operation) c:RegisterEffect(e6) end s.material_setcode=0xcf11 function s.matfilter(c) return c:IsCode(111455790) or c:IsPositive() or c:IsNegative() end function s.matfilter2(c) return c:IsCode(111455790) 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,111455790) end function s.atkval(e,c) local tp=c:GetControler() return Duel.GetMatchingGroupCount(aux.FaceupFilter(Card.IsType,TYPE_EQUIP),tp,LOCATION_SZONE,0,nil)*300 end function s.negcon(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() local rc=re:GetHandler() local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION) return re:IsActiveType(TYPE_MONSTER) and rc~=c and not c:IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) end function s.negtg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 end Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription()) Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) if re:GetHandler():IsRelateToEffect(re) then Duel.SetOperationInfo(0,CATEGORY_EQUIP,eg,1,0,0) end end function s.eqlimit(e,c) return e:GetOwner()==c end function s.negop(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() local tp=c:GetControler() local tc=re:GetHandler() if Duel.NegateActivation(ev) and tc:IsRelateToEffect(re) and tc:IsAbleToChangeControler() then if not Duel.Equip(tp,tc,c,false) then return end --Add Equip limit tc:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD,0,0) local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_COPY_INHERIT+EFFECT_FLAG_OWNER_RELATE) e1:SetCode(EFFECT_EQUIP_LIMIT) e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetValue(s.eqlimit) tc:RegisterEffect(e1) end end function s.filter(c,tp) return c:IsType(TYPE_BIGBANG) and c:IsControler(tp) end function s.condition(e,tp,eg,ep,ev,re,r,rp) return eg:IsExists(s.filter,1,e:GetHandler(),tp) and #eg==1 end function s.operation(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() local tc=eg:GetFirst() if c:IsFaceup() and c:IsRelateToEffect(e) then local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetValue(tc:GetAttack()) e1:SetReset(RESET_EVENT+RESETS_STANDARD_DISABLE) tc:RegisterEffect(e1) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCode(EFFECT_UPDATE_DEFENSE) e2:SetValue(tc:GetDefense()) e2:SetReset(RESET_EVENT+RESETS_STANDARD_DISABLE) tc:RegisterEffect(e2) Duel.BreakEffect() local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetCode(EFFECT_SWAP_AD) e1:SetReset(RESET_EVENT+RESETS_STANDARD) c:RegisterEffect(e1) end end