--虚拟YouTuber AI Games function c33700386.initial_effect(c) c:EnableReviveLimit() aux.AddLinkProcedure(c,nil,3,3) --check local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_MATERIAL_CHECK) e1:SetValue(c33700386.valcheck) c:RegisterEffect(e1) --disable local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_FIELD) e2:SetRange(LOCATION_MZONE) e2:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e2:SetTarget(function(e,rc) return e:GetHandler():GetLinkedGroup():IsContains(rc) end) e2:SetCondition(function(e) return e:GetLabelObject():GetLabel()==1 end) e2:SetCode(EFFECT_DISABLE) e2:SetLabelObject(e1) c:RegisterEffect(e2) local e3=e2:Clone() e3:SetCode(EFFECT_CANNOT_ATTACK) c:RegisterEffect(e3) --indes local e5=Effect.CreateEffect(c) e5:SetType(EFFECT_TYPE_FIELD) e5:SetRange(LOCATION_MZONE) e5:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e5:SetTarget(function(e,rc) return e:GetHandler():GetLinkedGroup():IsContains(rc) end) e5:SetCondition(function(e) return e:GetLabelObject():GetValue()==1 end) e5:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e5:SetValue(1) e5:SetLabelObject(e1) c:RegisterEffect(e5) local e4=e5:Clone() e4:SetCode(EFFECT_INDESTRUCTABLE_EFFECT) c:RegisterEffect(e4) local e6=e5:Clone() e6:SetCode(EFFECT_UNRELEASABLE_SUM) c:RegisterEffect(e6) local e7=e5:Clone() e7:SetCode(EFFECT_UNRELEASABLE_NONSUM) c:RegisterEffect(e7) local e8=e5:Clone() e8:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL) c:RegisterEffect(e8) local e9=e5:Clone() e9:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL) c:RegisterEffect(e9) local e10=e5:Clone() e10:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL) c:RegisterEffect(e10) local e11=e5:Clone() e11:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL) c:RegisterEffect(e11) --adjust local e12=Effect.CreateEffect(c) e12:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e12:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE) e12:SetCode(EVENT_ADJUST) e12:SetRange(LOCATION_MZONE) e12:SetOperation(c33700386.adjustop) c:RegisterEffect(e12) end function c33700386.adjustop(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() local phase=Duel.GetCurrentPhase() if (phase==PHASE_DAMAGE and not Duel.IsDamageCalculated()) or phase==PHASE_DAMAGE_CAL then return end if c:GetSequence()>=5 then return end local g=c:GetLinkedGroup() if Duel.SendtoGrave(g,REASON_EFFECT)>0 then Duel.Readjust() end end function c33700386.valcheck(e,c) local g=c:GetMaterial() if g:GetClassCount(Card.GetRace)==#g then e:SetValue(1) else e:SetValue(0) end if g:GetClassCount(Card.GetAttribute)==#g then e:SetLabel(1) else e:SetLabel(0) end end