1+ -- ギフトタリスト ~SP MIX~
2+ -- Giftarist - Speedy Mix
3+ -- scripted by YoshiDuels
4+ local s ,id = GetID ()
5+ function s .initial_effect (c )
6+ -- Name becomes "Giftarist" in the Graveyard
7+ local e0 = Effect .CreateEffect (c )
8+ e0 :SetType (EFFECT_TYPE_SINGLE )
9+ e0 :SetCode (EFFECT_CHANGE_CODE )
10+ e0 :SetProperty (EFFECT_FLAG_SINGLE_RANGE )
11+ e0 :SetRange (LOCATION_GRAVE )
12+ e0 :SetValue (160306003 )
13+ c :RegisterEffect (e0 )
14+ -- Send the top 2 cards of your Deck to the GY
15+ local e1 = Effect .CreateEffect (c )
16+ e1 :SetDescription (aux .Stringid (id ,0 ))
17+ e1 :SetCategory (CATEGORY_DECKDES + CATEGORY_DAMAGE )
18+ e1 :SetType (EFFECT_TYPE_IGNITION )
19+ e1 :SetRange (LOCATION_MZONE )
20+ e1 :SetCountLimit (1 )
21+ e1 :SetTarget (s .target )
22+ e1 :SetOperation (s .operation )
23+ c :RegisterEffect (e1 )
24+ end
25+ s .listed_names = {160015059 }
26+ function s .target (e ,tp ,eg ,ep ,ev ,re ,r ,rp ,chk )
27+ if chk == 0 then return Duel .IsPlayerCanDiscardDeck (tp ,2 ) end
28+ Duel .SetOperationInfo (0 ,CATEGORY_DECKDES ,nil ,0 ,tp ,2 )
29+ Duel .SetPossibleOperationInfo (0 ,CATEGORY_DAMAGE ,nil ,0 ,1 - tp ,0 )
30+ end
31+ function s .operation (e ,tp ,eg ,ep ,ev ,re ,r ,rp )
32+ -- Effect
33+ if Duel .DiscardDeck (tp ,2 ,REASON_EFFECT )~= 2 then return end
34+ local g = Duel .GetMatchingGroup (aux .FilterMaximumSideFunctionEx (Card .IsFaceup ),tp ,LOCATION_MZONE ,0 ,nil )
35+ local ct = Duel .GetMatchingGroupCount (Card .IsCode ,tp ,LOCATION_GRAVE ,0 ,nil ,160015059 )
36+ if ct > 0 and # g > 0 and Duel .SelectYesNo (tp ,aux .Stringid (id ,1 )) then
37+ for tc in g :Iter () do
38+ local e1 = Effect .CreateEffect (e :GetHandler ())
39+ e1 :SetType (EFFECT_TYPE_SINGLE )
40+ e1 :SetCode (EFFECT_UPDATE_ATTACK )
41+ e1 :SetValue (ct * 500 )
42+ e1 :SetReset (RESETS_STANDARD_PHASE_END )
43+ tc :RegisterEffect (e1 )
44+ end
45+ end
46+ end
0 commit comments