Skip to content

Commit 489e14d

Browse files
committed
Modernize and cleanup some cards changed by previous commit
Halfway to Forever Gazer Shark Galaxy Tyranno Geargia Change Artifacts Unleashed Advanced Heraldry Art Shining Hope Road Destiny overlay Dimension Xyz The Phantom Knights' Twin Medals D/D/D Xyz Salamangreat Zebroid X (Anime)
1 parent 313b7fb commit 489e14d

File tree

12 files changed

+186
-274
lines changed

12 files changed

+186
-274
lines changed

official/c20285786.lua

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
--Halfway to Forever
33
local s,id=GetID()
44
function s.initial_effect(c)
5-
--Activate
5+
--Special Summon 2 monsters from your GY then Xyz Summon 1 Utopic monster using those monsters as materials
66
local e1=Effect.CreateEffect(c)
77
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
88
e1:SetType(EFFECT_TYPE_ACTIVATE)
@@ -20,39 +20,32 @@ end
2020
function s.xyzfilter(c,mg)
2121
return c:IsSetCard(SET_UTOPIC) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsXyzSummonable(nil,mg,2,2)
2222
end
23-
function s.mfilter1(c,mg,exg)
24-
return mg:IsExists(s.mfilter2,1,c,c,exg)
25-
end
26-
function s.mfilter2(c,mc,exg)
27-
return exg:IsExists(Card.IsXyzSummonable,1,nil,nil,Group.FromCards(c,mc))
23+
function s.rescon(exg)
24+
return function(sg)
25+
return #sg==2 and exg:IsExists(Card.IsXyzSummonable,1,nil,nil,sg,2,2)
26+
end
2827
end
2928
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
3029
if chkc then return false end
3130
local mg=Duel.GetMatchingGroup(s.filter,tp,LOCATION_GRAVE,0,nil,e,tp)
3231
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
33-
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
32+
if chk==0 then return #exg>0
33+
and Duel.IsPlayerCanSpecialSummonCount(tp,2)
3434
and not Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT)
35-
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
36-
and #exg>0 end
37-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
38-
local sg1=mg:FilterSelect(tp,s.mfilter1,1,1,nil,mg,exg)
39-
local tc1=sg1:GetFirst()
40-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
41-
local sg2=mg:FilterSelect(tp,s.mfilter2,1,1,tc1,tc1,exg)
42-
sg1:Merge(sg2)
43-
Duel.SetTargetCard(sg1)
44-
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg1,2,0,0)
35+
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 end
36+
local sg=aux.SelectUnselectGroup(mg,e,tp,2,2,s.rescon(exg),1,tp,HINTMSG_SPSUMMON)
37+
Duel.SetTargetCard(sg)
38+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg,2,0,0)
4539
end
4640
function s.filter2(c,e,tp)
47-
return c:IsRelateToEffect(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
41+
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
4842
end
4943
function s.activate(e,tp,eg,ep,ev,re,r,rp)
5044
if Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT) then return end
5145
if Duel.GetLocationCount(tp,LOCATION_MZONE)<2 then return end
52-
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(s.filter2,nil,e,tp)
53-
if #g<2 then return end
54-
local tc=g:GetFirst()
55-
for tc in aux.Next(g) do
46+
local g=Duel.GetTargetCards(e):Match(s.filter2,nil,e,tp)
47+
if #g~=2 then return end
48+
for tc in g:Iter() do
5649
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)
5750
local e1=Effect.CreateEffect(e:GetHandler())
5851
e1:SetType(EFFECT_TYPE_SINGLE)

official/c23536866.lua

Lines changed: 31 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
--Gazer Shark
33
local s,id=GetID()
44
function s.initial_effect(c)
5-
--Xyz Summon
5+
--Banish itself, Special Summon 2 level 5 WATER monsters from your GY then Xyz Summon 1 WATER monster using those monsters as materials
66
local e1=Effect.CreateEffect(c)
77
e1:SetDescription(aux.Stringid(id,0))
88
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
@@ -17,67 +17,54 @@ function s.initial_effect(c)
1717
end
1818
s.listed_names={id}
1919
function s.filter(c,e,tp)
20-
return c:GetLevel()==5 and c:IsAttribute(ATTRIBUTE_WATER) and not c:IsCode(id)
20+
return c:IsLevel(5) and c:IsAttribute(ATTRIBUTE_WATER) and not c:IsCode(id)
2121
and c:IsCanBeEffectTarget(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
2222
end
23-
function s.xyzfilter(c,tp,mg)
24-
return c:IsAttribute(ATTRIBUTE_WATER) and Duel.GetLocationCountFromEx(tp,tp,mg,c)>0 and c:IsXyzSummonable(nil,mg,2,2)
23+
function s.xyzfilter(c,mg)
24+
return c:IsAttribute(ATTRIBUTE_WATER) and c:IsXyzSummonable(nil,mg,2,2)
2525
end
26-
function s.mfilter1(c,mg,exg)
27-
return mg:IsExists(s.mfilter2,1,c,c,exg)
28-
end
29-
function s.mfilter2(c,mc,exg)
30-
return exg:IsExists(Card.IsXyzSummonable,1,nil,nil,Group.FromCards(c,mc))
26+
function s.rescon(exg)
27+
return function(sg)
28+
return #sg==2 and exg:IsExists(Card.IsXyzSummonable,1,nil,nil,sg,2,2)
29+
end
3130
end
3231
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
3332
if chkc then return false end
3433
local mg=Duel.GetMatchingGroup(s.filter,tp,LOCATION_GRAVE,0,nil,e,tp)
35-
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,tp,mg)
36-
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
34+
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
35+
if chk==0 then return #exg>0
36+
and Duel.IsPlayerCanSpecialSummonCount(tp,2)
3737
and not Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT)
38-
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
39-
and #exg>0 end
40-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
41-
local sg1=mg:FilterSelect(tp,s.mfilter1,1,1,nil,mg,exg)
42-
local tc1=sg1:GetFirst()
43-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
44-
local sg2=mg:FilterSelect(tp,s.mfilter2,1,1,tc1,tc1,exg)
45-
sg1:Merge(sg2)
46-
Duel.SetTargetCard(sg1)
47-
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg1,2,0,0)
38+
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 end
39+
local sg=aux.SelectUnselectGroup(mg,e,tp,2,2,s.rescon(exg),1,tp,HINTMSG_SPSUMMON)
40+
Duel.SetTargetCard(sg)
41+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg,2,0,0)
4842
end
4943
function s.filter2(c,e,tp)
50-
return c:IsRelateToEffect(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
44+
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
5145
end
5246
function s.operation(e,tp,eg,ep,ev,re,r,rp)
5347
if Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT) then return end
5448
if Duel.GetLocationCount(tp,LOCATION_MZONE)<2 then return end
55-
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(s.filter2,nil,e,tp)
56-
if #g<2 then return end
57-
local tc1=g:GetFirst()
58-
local tc2=g:GetNext()
59-
Duel.SpecialSummonStep(tc1,0,tp,tp,false,false,POS_FACEUP)
60-
Duel.SpecialSummonStep(tc2,0,tp,tp,false,false,POS_FACEUP)
61-
local e1=Effect.CreateEffect(e:GetHandler())
62-
e1:SetType(EFFECT_TYPE_SINGLE)
63-
e1:SetCode(EFFECT_DISABLE)
64-
e1:SetReset(RESET_EVENT|RESETS_STANDARD)
65-
tc1:RegisterEffect(e1)
66-
local e2=e1:Clone()
67-
tc2:RegisterEffect(e2)
68-
local e3=Effect.CreateEffect(e:GetHandler())
69-
e3:SetType(EFFECT_TYPE_SINGLE)
70-
e3:SetCode(EFFECT_DISABLE_EFFECT)
71-
e3:SetReset(RESET_EVENT|RESETS_STANDARD)
72-
tc1:RegisterEffect(e3)
73-
local e4=e3:Clone()
74-
tc2:RegisterEffect(e4)
49+
local g=Duel.GetTargetCards(e):Match(s.filter2,nil,e,tp)
50+
if #g~=2 then return end
51+
for tc in g:Iter() do
52+
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)
53+
local e1=Effect.CreateEffect(e:GetHandler())
54+
e1:SetType(EFFECT_TYPE_SINGLE)
55+
e1:SetCode(EFFECT_DISABLE)
56+
e1:SetReset(RESET_EVENT|RESETS_STANDARD)
57+
tc:RegisterEffect(e1)
58+
local e2=e1:Clone()
59+
e2:SetCode(EFFECT_DISABLE_EFFECT)
60+
tc:RegisterEffect(e2)
61+
end
7562
Duel.SpecialSummonComplete()
7663
Duel.BreakEffect()
77-
local xyzg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,tp,g)
64+
local xyzg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,g)
7865
if #xyzg>0 then
7966
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
8067
local xyz=xyzg:Select(tp,1,1,nil):GetFirst()
8168
Duel.XyzSummon(tp,xyz,g,nil,2,2)
8269
end
83-
end
70+
end

official/c24658418.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
--Galaxy Tyranno
33
local s,id=GetID()
44
function s.initial_effect(c)
5-
--special summon itself
5+
--When a "Galaxy" monster you control is targeted by an attack, Special Summon itself
66
local e1=Effect.CreateEffect(c)
77
e1:SetDescription(aux.Stringid(id,0))
88
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
@@ -13,7 +13,7 @@ function s.initial_effect(c)
1313
e1:SetTarget(s.target)
1414
e1:SetOperation(s.operation)
1515
c:RegisterEffect(e1)
16-
--xyz summon
16+
--If Summoned by its own effect, Xyz Summon 1 "Galaxy" monster using "Galaxy" monsters you control
1717
local e2=Effect.CreateEffect(c)
1818
e2:SetDescription(aux.Stringid(id,1))
1919
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)

official/c29087919.lua

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,26 +18,29 @@ s.listed_series={SET_GEARGIANO}
1818
function s.gyspfilter(c,e,tp)
1919
return c:IsSetCard(SET_GEARGIANO) and c:IsCanBeEffectTarget(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
2020
end
21-
function s.extraspfilter(c,mg)
22-
return c:IsXyzSummonable(nil,mg,2,#mg)
21+
function s.xyzfilter(c,mg,ct)
22+
return c:IsXyzSummonable(nil,mg,ct,ct)
2323
end
24-
function s.rescon(sg,e,tp,mg)
25-
return sg:GetClassCount(Card.GetCode)==#sg and Duel.IsExistingMatchingCard(s.extraspfilter,tp,LOCATION_EXTRA,0,1,nil,sg)
24+
function s.rescon(exg)
25+
return function(sg)
26+
if #sg<2 then return false end
27+
if not sg:CheckDifferentProperty(Card.GetCode) then return false,false end
28+
return sg:GetClassCount(Card.GetCode)==#sg and exg:IsExists(s.xyzfilter,tp,LOCATION_EXTRA,1,nil,sg,#sg)
29+
end
2630
end
2731
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
2832
if chkc then return false end
29-
local mg=Duel.GetMatchingGroup(s.gyspfilter,tp,LOCATION_GRAVE,0,nil,e,tp)
30-
local maxct=math.min(Duel.GetLocationCount(tp,LOCATION_MZONE),mg:GetClassCount(Card.GetCode))
33+
local mg=Duel.GetMatchingGroup(s.filter,tp,LOCATION_GRAVE,0,nil,e,tp)
34+
local ct=Duel.GetLocationCount(tp,LOCATION_MZONE)
35+
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg,ct)
36+
local rescon=s.rescon(exg)
3137
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
3238
and not Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT)
33-
and maxct>=2 and aux.SelectUnselectGroup(mg,e,tp,2,maxct,s.rescon,0) end
34-
local sg=aux.SelectUnselectGroup(mg,e,tp,2,maxct,s.rescon,1,tp,HINTMSG_SPSUMMON)
39+
and ct>1 and aux.SelectUnselectGroup(mg,e,tp,2,math.min(#mg,ct),rescon,0) end
40+
local sg=aux.SelectUnselectGroup(mg,e,tp,2,math.min(#mg,ct),rescon,1,tp,HINTMSG_SPSUMMON,rescon)
3541
Duel.SetTargetCard(sg)
3642
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg,#sg,tp,0)
3743
end
38-
function s.xyzfilter(c,mg,ct)
39-
return c:IsXyzSummonable(nil,mg,ct,ct)
40-
end
4144
function s.activate(e,tp,eg,ep,ev,re,r,rp)
4245
local sg=Duel.GetTargetCards(e):Filter(Card.IsCanBeSpecialSummoned,nil,e,0,tp,false,false)
4346
if #sg>=2 and Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT) then return end
@@ -47,8 +50,9 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
4750
sg=sg:Select(tp,ft,ft,nil)
4851
end
4952
local ct=Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
53+
if ct<1 then return end
5054
local xyzg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,sg,ct)
51-
if ct>=2 and #xyzg>0 then
55+
if #xyzg>0 then
5256
Duel.BreakEffect()
5357
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
5458
local xyzc=xyzg:Select(tp,1,1,nil):GetFirst()

official/c56611470.lua

Lines changed: 21 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -27,47 +27,36 @@ s.listed_series={SET_ARTIFACT}
2727
function s.filter(c,e)
2828
return c:IsFaceup() and c:IsSetCard(SET_ARTIFACT) and c:IsCanBeEffectTarget(e)
2929
end
30-
function s.xyzfilter(c,mg,tp,chk)
31-
return c:IsXyzSummonable(nil,mg,2,2) and (not chk or Duel.GetLocationCountFromEx(tp,tp,mg,c)>0)
30+
function s.xyzfilter(c,mg,tp)
31+
return c:IsXyzSummonable(nil,mg,2,2)
3232
end
33-
function s.mfilter1(c,mg,exg,tp)
34-
return mg:IsExists(s.mfilter2,1,c,c,exg,tp)
35-
end
36-
function s.zonecheck(c,tp,g)
37-
return Duel.GetLocationCountFromEx(tp,tp,g,c)>0 and c:IsXyzSummonable(nil,g)
38-
end
39-
function s.mfilter2(c,mc,exg,tp)
40-
local g=Group.FromCards(c,mc)
41-
return exg:IsExists(s.zonecheck,1,nil,tp,g)
33+
function s.rescon(exg)
34+
return function(sg)
35+
return #sg==2 and exg:IsExists(Card.IsXyzSummonable,1,nil,nil,sg,2,2)
36+
end
4237
end
4338
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
4439
if chkc then return false end
4540
local mg=Duel.GetMatchingGroup(s.filter,tp,LOCATION_MZONE,0,nil,e)
4641
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
47-
if chk==0 then return mg:IsExists(s.mfilter1,1,nil,mg,exg,tp) end
48-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
49-
local sg1=mg:FilterSelect(tp,s.mfilter1,1,1,nil,mg,exg,tp)
50-
local tc1=sg1:GetFirst()
51-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
52-
local sg2=mg:FilterSelect(tp,s.mfilter2,1,1,tc1,tc1,exg,tp)
53-
sg1:Merge(sg2)
54-
Duel.SetTargetCard(sg1)
42+
if chk==0 then return #exg>0 end
43+
local sg=aux.SelectUnselectGroup(mg,e,tp,2,2,s.rescon(exg),1,tp,HINTMSG_XMATERIAL)
44+
Duel.SetTargetCard(sg)
5545
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
5646
end
57-
function s.tfilter(c,e)
58-
return c:IsRelateToEffect(e) and c:IsFaceup()
59-
end
6047
function s.activate(e,tp,eg,ep,ev,re,r,rp)
61-
local e1=Effect.CreateEffect(e:GetHandler())
62-
e1:SetType(EFFECT_TYPE_FIELD)
63-
e1:SetCode(EFFECT_CANNOT_ATTACK)
64-
e1:SetTargetRange(LOCATION_MZONE,0)
65-
e1:SetTarget(s.attg)
66-
e1:SetReset(RESET_PHASE|PHASE_END)
67-
Duel.RegisterEffect(e1,tp)
68-
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(s.tfilter,nil,e)
48+
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
49+
local e1=Effect.CreateEffect(e:GetHandler())
50+
e1:SetType(EFFECT_TYPE_FIELD)
51+
e1:SetCode(EFFECT_CANNOT_ATTACK)
52+
e1:SetTargetRange(LOCATION_MZONE,0)
53+
e1:SetTarget(s.attg)
54+
e1:SetReset(RESET_PHASE|PHASE_END)
55+
Duel.RegisterEffect(e1,tp)
56+
end
57+
local g=Duel.GetTargetCards(e):Match(Card.IsFaceup,nil)
6958
if #g<2 then return end
70-
local xyzg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,g,tp,true)
59+
local xyzg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,g,tp)
7160
if #xyzg>0 then
7261
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
7362
local xyz=xyzg:Select(tp,1,1,nil):GetFirst()
@@ -81,7 +70,7 @@ function s.drcon(e,tp,eg,ep,ev,re,r,rp)
8170
return rp==1-tp and e:GetHandler():IsPreviousControler(tp)
8271
end
8372
function s.cffilter(c)
84-
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:GetLevel()==5 and not c:IsPublic()
73+
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsLevel(5) and not c:IsPublic()
8574
end
8675
function s.drcost(e,tp,eg,ep,ev,re,r,rp,chk)
8776
if chk==0 then return Duel.IsExistingMatchingCard(s.cffilter,tp,LOCATION_HAND,0,1,nil) end

official/c61314842.lua

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ end
2525
function s.mfilter2(c,mc,exg,tp)
2626
return exg:IsExists(s.xyzfilter,1,nil,Group.FromCards(c,mc),tp,true)
2727
end
28+
function s.rescon(exg)
29+
return function(sg)
30+
return #sg==2 and exg:IsExists(Card.IsXyzSummonable,1,nil,nil,sg,2,2)
31+
end
32+
end
2833
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
2934
if chkc then return false end
3035
local mg=Duel.GetMatchingGroup(s.filter,tp,LOCATION_GRAVE,0,nil,e,tp)
@@ -34,22 +39,17 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
3439
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
3540
and Duel.IsExistingMatchingCard(s.xyzfilter,tp,LOCATION_EXTRA,0,1,nil,mg) end
3641
local exg=Duel.GetMatchingGroup(s.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
37-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
38-
local sg1=mg:FilterSelect(tp,s.mfilter1,1,1,nil,mg,exg,tp)
39-
local tc1=sg1:GetFirst()
40-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
41-
local sg2=mg:FilterSelect(tp,s.mfilter2,1,1,tc1,tc1,exg,tp)
42-
sg1:Merge(sg2)
43-
Duel.SetTargetCard(sg1)
44-
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg1,2,0,0)
42+
local sg=aux.SelectUnselectGroup(mg,e,tp,2,2,s.rescon(exg),1,tp,HINTMSG_SPSUMMON)
43+
Duel.SetTargetCard(sg)
44+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,sg,2,0,0)
4545
end
4646
function s.filter2(c,e,tp)
47-
return c:IsRelateToEffect(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
47+
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
4848
end
4949
function s.activate(e,tp,eg,ep,ev,re,r,rp)
5050
if Duel.IsPlayerAffectedByEffect(tp,CARD_BLUEEYES_SPIRIT) then return end
5151
if Duel.GetLocationCount(tp,LOCATION_MZONE)<2 then return end
52-
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(s.filter2,nil,e,tp)
52+
local g=Duel.GetTargetCards(e):Match(s.filter2,nil,e,tp)
5353
if #g~=2 then return end
5454
if Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE)~=2 then return end
5555
Duel.BreakEffect()

0 commit comments

Comments
 (0)