@@ -7,7 +7,7 @@ function s.initial_effect(c)
77 e1 :SetType (EFFECT_TYPE_ACTIVATE )
88 e1 :SetCode (EVENT_FREE_CHAIN )
99 c :RegisterEffect (e1 )
10- -- remove
10+ -- Each player banished a card from their GY
1111 local e2 = Effect .CreateEffect (c )
1212 e2 :SetDescription (aux .Stringid (id ,0 ))
1313 e2 :SetProperty (EFFECT_FLAG_CARD_TARGET )
@@ -30,15 +30,21 @@ function s.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
3030 if chkc then return false end
3131 if chk == 0 then return Duel .IsExistingTarget (s .rfilter ,tp ,0 ,LOCATION_MZONE |LOCATION_GRAVE ,1 ,nil )
3232 and Duel .IsExistingTarget (s .rfilter ,tp ,LOCATION_MZONE |LOCATION_GRAVE ,0 ,1 ,nil ) end
33+ local sel_player = Duel .GetTurnPlayer ()
3334 Duel .Hint (HINT_SELECTMSG ,tp ,HINTMSG_REMOVE )
34- local g1 = Duel .SelectTarget (tp ,s .rfilter ,tp ,0 ,LOCATION_MZONE |LOCATION_GRAVE ,1 ,1 ,nil )
35+ local g1 = Duel .SelectTarget (sel_player ,s .rfilter ,sel_player ,0 ,LOCATION_MZONE |LOCATION_GRAVE ,1 ,1 ,nil )
3536 Duel .Hint (HINT_SELECTMSG ,1 - tp ,HINTMSG_REMOVE )
36- local g2 = Duel .SelectTarget (1 - tp ,s .rfilter ,1 - tp ,0 ,LOCATION_MZONE |LOCATION_GRAVE ,1 ,1 ,nil )
37+ local g2 = Duel .SelectTarget (1 - sel_player ,s .rfilter ,1 - sel_player ,0 ,LOCATION_MZONE |LOCATION_GRAVE ,1 ,1 ,nil )
3738 g1 :Merge (g2 )
3839 Duel .SetOperationInfo (0 ,CATEGORY_REMOVE ,g1 ,# g1 ,0 ,0 )
3940end
4041function s .rmop (e ,tp ,eg ,ep ,ev ,re ,r ,rp )
41- if not e :GetHandler ():IsRelateToEffect (e ) then return end
4242 local g = Duel .GetTargetCards (e )
43- Duel .Remove (g ,POS_FACEUP ,REASON_EFFECT )
43+ g1 ,g2 = g :Split (Card .IsControler ,nil ,tp )
44+ if # g1 > 0 then
45+ Duel .Remove (g1 ,POS_FACEUP ,REASON_EFFECT ,PLAYER_NONE ,1 - tp )
46+ end
47+ if # g2 > 0 then
48+ Duel .Remove (g2 ,POS_FACEUP ,REASON_EFFECT ,PLAYER_NONE ,tp )
49+ end
4450end
0 commit comments