1+ -- 妖魔ヌリカベ
2+ -- Nurikabe
3+ local s ,id = GetID ()
4+ function s .initial_effect (c )
5+ -- Special Summon both 1 other Zombie monster from your GY and this card, but their effects are negated, also banish them when they leave the field
6+ local e1 = Effect .CreateEffect (c )
7+ e1 :SetDescription (aux .Stringid (id ,0 ))
8+ e1 :SetCategory (CATEGORY_SPECIAL_SUMMON )
9+ e1 :SetType (EFFECT_TYPE_IGNITION )
10+ e1 :SetProperty (EFFECT_FLAG_CARD_TARGET )
11+ e1 :SetRange (LOCATION_GRAVE )
12+ e1 :SetCountLimit (1 ,id )
13+ e1 :SetCondition (aux .exccon )
14+ e1 :SetCost (Cost .PayLP (1000 ))
15+ e1 :SetTarget (s .sptg )
16+ e1 :SetOperation (s .spop )
17+ c :RegisterEffect (e1 )
18+ end
19+ function s .spfilter (c ,e ,tp )
20+ return c :IsRace (RACE_ZOMBIE ) and c :IsCanBeSpecialSummoned (e ,0 ,tp ,false ,false )
21+ end
22+ function s .sptg (e ,tp ,eg ,ep ,ev ,re ,r ,rp ,chk ,chkc )
23+ local c = e :GetHandler ()
24+ if chkc then return chkc :IsControler (tp ) and chkc :IsLocation (LOCATION_GRAVE ) and chkc ~= c and s .spfilter (chkc ,e ,tp ) end
25+ if chk == 0 then return Duel .GetLocationCount (tp ,LOCATION_MZONE ,0 )>= 2
26+ and c :IsCanBeSpecialSummoned (e ,0 ,tp ,false ,false )
27+ and not Duel .IsPlayerAffectedByEffect (tp ,CARD_BLUEEYES_SPIRIT )
28+ and Duel .IsExistingTarget (s .spfilter ,tp ,LOCATION_GRAVE ,0 ,1 ,c ,e ,tp ) end
29+ Duel .Hint (HINT_SELECTMSG ,tp ,HINTMSG_SPSUMMON )
30+ local g = Duel .SelectTarget (tp ,s .spfilter ,tp ,LOCATION_GRAVE ,0 ,1 ,1 ,c ,e ,tp )
31+ Duel .SetOperationInfo (0 ,CATEGORY_SPECIAL_SUMMON ,g + c ,2 ,tp ,0 )
32+ end
33+ function s .spop (e ,tp ,eg ,ep ,ev ,re ,r ,rp )
34+ if Duel .GetLocationCount (tp ,LOCATION_MZONE ,0 )<= 2 or Duel .IsPlayerAffectedByEffect (tp ,CARD_BLUEEYES_SPIRIT ) then return end
35+ local c = e :GetHandler ()
36+ local tc = Duel .GetFirstTarget ()
37+ if c :IsRelateToEffect (e ) and tc :IsRelateToEffect (e ) and c :IsCanBeSpecialSummoned (e ,0 ,tp ,false ,false )
38+ and tc :IsCanBeSpecialSummoned (e ,0 ,tp ,false ,false ) then
39+ for sc in Group .FromCards (c ,tc ):Iter () do
40+ if Duel .SpecialSummonStep (sc ,0 ,tp ,tp ,false ,false ,POS_FACEUP ) then
41+ -- Negate its effects
42+ sc :NegateEffects (c )
43+ -- Banish it when it leaves the field
44+ local e1 = Effect .CreateEffect (c )
45+ e1 :SetDescription (3300 )
46+ e1 :SetType (EFFECT_TYPE_SINGLE )
47+ e1 :SetProperty (EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_CLIENT_HINT )
48+ e1 :SetCode (EFFECT_LEAVE_FIELD_REDIRECT )
49+ e1 :SetValue (LOCATION_REMOVED )
50+ e1 :SetReset (RESET_EVENT |RESETS_REDIRECT )
51+ sc :RegisterEffect (e1 ,true )
52+ end
53+ end
54+ end
55+ Duel .SpecialSummonComplete ()
56+ end
0 commit comments