@@ -24,11 +24,11 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
2424 e1 :SetType (EFFECT_TYPE_FIELD )
2525 e1 :SetCode (EFFECT_SUMMON_PROC )
2626 e1 :SetRange (0x5f )
27+ e1 :SetCountLimit (1 )
2728 e1 :SetTargetRange (LOCATION_HAND ,0 )
2829 e1 :SetCondition (s .otcon )
2930 e1 :SetTarget (aux .FieldSummonProcTg (s .ottg ,s .sumtg ))
3031 e1 :SetOperation (s .otop )
31- e1 :SetCountLimit (1 )
3232 e1 :SetValue (SUMMON_TYPE_TRIBUTE )
3333 Duel .RegisterEffect (e1 ,tp )
3434 local e2 = e1 :Clone ()
@@ -39,7 +39,7 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
3939 e3 :SetTargetRange (LOCATION_HAND |LOCATION_MZONE ,0 )
4040 e3 :SetCode (EFFECT_EXTRA_SUMMON_COUNT )
4141 e3 :SetRange (0x5f )
42- e3 :SetCondition (s . extrasumcon )
42+ e3 :SetCondition (function ( e ) return Duel . IsExistingMatchingCard ( aux . AND ( Card . IsTributeSummoned , Card . IsReleasable ), e : GetHandlerPlayer (), LOCATION_MZONE , 0 , 1 , nil ) end )
4343 e3 :SetTarget (aux .TargetBoolFunction (Card .IsCode ,CARD_BLUEEYES_W_DRAGON ))
4444 e3 :SetValue (0x1 )
4545 Duel .RegisterEffect (e3 ,tp )
@@ -53,24 +53,18 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
5353 e4 :SetOperation (s .effop )
5454 Duel .RegisterEffect (e4 ,tp )
5555end
56- function s .relrepfilter (c )
57- return c :IsTributeSummoned () and c :IsReleasable ()
58- end
59- function s .extrasumcon (e )
60- return Duel .IsExistingMatchingCard (s .relrepfilter ,e :GetHandlerPlayer (),LOCATION_MZONE ,0 ,1 ,nil )
61- end
6256function s .otcon (e ,c ,minc )
6357 if c == nil then return true end
6458 local tp = c :GetControler ()
65- return minc <= 2 and Duel .IsExistingMatchingCard (s . relrepfilter ,tp ,LOCATION_MZONE ,0 ,1 ,nil )
59+ return minc <= 2 and Duel .IsExistingMatchingCard (aux . AND ( Card . IsTributeSummoned , Card . IsReleasable ) ,tp ,LOCATION_MZONE ,0 ,1 ,nil )
6660end
6761function s .ottg (e ,c )
6862 local mi ,ma = c :GetTributeRequirement ()
6963 return mi <= 2 and ma >= 2 and c :IsCode (CARD_BLUEEYES_W_DRAGON )
7064end
7165function s .sumtg (e ,tp ,eg ,ep ,ev ,re ,r ,rp ,c )
7266 Duel .Hint (HINT_SELECTMSG ,tp ,HINTMSG_RELEASE )
73- local g = Duel .SelectMatchingCard (tp ,s . relrepfilter ,tp ,LOCATION_MZONE ,0 ,1 ,1 ,true ,nil )
67+ local g = Duel .SelectMatchingCard (tp ,aux . AND ( Card . IsTributeSummoned , Card . IsReleasable ) ,tp ,LOCATION_MZONE ,0 ,1 ,1 ,true ,nil )
7468 if g then
7569 g :KeepAlive ()
7670 e :SetLabelObject (g )
8175function s .otop (e ,tp ,eg ,ep ,ev ,re ,r ,rp ,c )
8276 local sg = e :GetLabelObject ()
8377 if not sg then return end
78+ c :SetMaterial (sg )
8479 Duel .Release (sg ,REASON_SUMMON |REASON_MATERIAL ,tp )
8580 sg :DeleteGroup ()
8681end
0 commit comments