11 -- 黒の過程-ニグレド
2+ -- Black Process - Negledo
23local s ,id = GetID ()
34function s .initial_effect (c )
45 -- Activate
@@ -11,38 +12,36 @@ function s.initial_effect(c)
1112 e1 :SetOperation (s .activate )
1213 c :RegisterEffect (e1 )
1314end
14- s .listed_names = {100000650 }
15- function s .filter (c )
15+ s .listed_series = {0x501 } -- "Alchemy Beast" archetype
16+ s .listed_names = {6500778 } -- "Chaos Distill"
17+ function s .rmfilter (c )
1618 return c :IsFaceup () and c :IsSetCard (0x501 ) and c :IsAbleToRemove ()
1719end
18- function s .cfilter (c )
19- return c :IsFaceup () and c :IsCode (100000650 )
20- end
2120function s .condition (e ,tp ,eg ,ep ,ev ,re ,r ,rp )
2221 local c = e :GetHandler ()
2322 if c == nil then return true end
24- return Duel .IsExistingMatchingCard (s . cfilter ,tp ,LOCATION_ONFIELD ,LOCATION_ONFIELD ,1 ,nil )
25- and Duel .IsExistingMatchingCard (s .filter ,tp ,LOCATION_MZONE ,0 ,1 ,nil )
23+ return Duel .IsExistingMatchingCard (aux . FaceupFilter ( Card . IsCode , 6500778 ) ,tp ,LOCATION_ONFIELD ,LOCATION_ONFIELD ,1 ,nil )
24+ and Duel .IsExistingMatchingCard (s .rmfilter ,tp ,LOCATION_MZONE ,0 ,1 ,nil )
2625 and (Duel .GetFieldGroupCount (c :GetControler (),LOCATION_HAND ,0 )== 1 and not Duel .IsExistingMatchingCard (nil ,tp ,LOCATION_HAND ,0 ,1 ,c ))
2726 or Duel .GetFieldGroupCount (c :GetControler (),LOCATION_HAND ,0 )== 0
2827end
2928function s .target (e ,tp ,eg ,ep ,ev ,re ,r ,rp ,chk )
3029 if chk == 0 then return Duel .IsPlayerCanDraw (tp ,2 ) end
31- local g = Duel .GetMatchingGroup (s .filter ,tp ,LOCATION_MZONE ,0 ,nil )
30+ local g = Duel .GetMatchingGroup (s .rmfilter ,tp ,LOCATION_MZONE ,0 ,nil )
3231 Duel .SetTargetPlayer (tp )
33- Duel .SetOperationInfo (0 ,CATEGORY_DRAW ,nil ,0 ,tp ,# g )
32+ Duel .SetOperationInfo (0 ,CATEGORY_DRAW ,nil ,0 ,tp ,# g * 2 )
3433end
35- function s .filter1 (c )
34+ function s .rmchkfilter (c )
3635 return c :IsFaceup () and c :IsSetCard (0x501 ) and c :IsLocation (LOCATION_REMOVED )
3736end
3837function s .activate (e ,tp ,eg ,ep ,ev ,re ,r ,rp )
3938 local p = Duel .GetChainInfo (0 ,CHAININFO_TARGET_PLAYER )
40- local g = Duel .GetMatchingGroup (s .filter ,tp ,LOCATION_MZONE ,0 ,nil )
39+ local g = Duel .GetMatchingGroup (s .rmfilter ,tp ,LOCATION_MZONE ,0 ,nil )
4140 if Duel .Remove (g ,POS_FACEUP ,REASON_EFFECT )> 0 then
4241 local og = Duel .GetOperatedGroup ()
43- local dc = og :FilterCount (s .filter1 ,nil )
42+ local dc = og :FilterCount (s .rmchkfilter ,nil )
4443 if dc > 0 then
4544 Duel .Draw (p ,dc * 2 ,REASON_EFFECT )
4645 end
4746 end
48- end
47+ end
0 commit comments