--Ascesa di Colei che Ciascuna Cosa Consuma --Scripted by: XGlitchy30 local s,id=GetID() function s.initial_effect(c) aux.AddCodeList(c,CARD_LIMIERRE) --activate local e1=Effect.CreateEffect(c) e1:SetDescription(aux.Stringid(id,0)) e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetCode(EVENT_FREE_CHAIN) e1:SetCountLimit(1,id+EFFECT_COUNT_CODE_OATH) e1:SetTarget(s.target) e1:SetOperation(s.activate) c:RegisterEffect(e1) end function s.lv(c) return 8 end function s.filter(c,e,tp) return c:IsCode(CARD_LIMIERRE) end function s.mfilter(c,e) return c:IsLevelAbove(0) and c:IsDestructable(e) end function s.target(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then local mg1=Duel.GetMatchingGroup(s.mfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,nil,e) return Duel.IsExistingMatchingCard(aux.RitualUltimateFilter,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,s.filter,e,tp,Group.CreateGroup(),mg1,s.lv,"Greater") end Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,0,tp,LOCATION_HAND+LOCATION_MZONE) end function s.activate(e,tp,eg,ep,ev,re,r,rp) local mg=Duel.GetMatchingGroup(s.mfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,nil,e) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(aux.RitualUltimateFilter),tp,LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,s.filter,e,tp,Group.CreateGroup(),mg,s.lv,"Greater") local tc=g:GetFirst() if tc then if tc.mat_filter then mg=mg:Filter(tc.mat_filter,tc,tp) else mg:RemoveCard(tc) end Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(20071842,1)) aux.GCheckAdditional=aux.RitualCheckAdditional(tc,8,"Greater") local mat=mg:SelectSubGroup(tp,aux.RitualCheck,false,1,8,tp,tc,8,"Greater") aux.GCheckAdditional=nil if not mat or mat:GetCount()==0 then return end tc:SetMaterial(mat) if mat then Duel.HintSelection(mat:Filter(Card.IsOnField,nil)) Duel.ConfirmCards(1-tp,mat:Filter(Card.IsLocation,nil,LOCATION_HAND)) for rc in aux.Next(mat) do rc:RegisterFlagEffect(CARD_LIMIERRE,RESET_CHAIN,0,1) end Duel.Destroy(mat,REASON_EFFECT+REASON_MATERIAL+REASON_RITUAL) for rc in aux.Next(mat) do rc:ResetFlagEffect(CARD_LIMIERRE) end end Duel.BreakEffect() Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP) tc:CompleteProcedure() end end