Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-2pick
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
ygopro-2pick
Commits
fdd6be87
Commit
fdd6be87
authored
Apr 27, 2015
by
VanillaSalt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
7abe2778
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
102 additions
and
204 deletions
+102
-204
script/c29087919.lua
script/c29087919.lua
+2
-1
script/c45627618.lua
script/c45627618.lua
+2
-2
script/c82734805.lua
script/c82734805.lua
+98
-201
No files found.
script/c29087919.lua
View file @
fdd6be87
...
...
@@ -35,7 +35,8 @@ function c29087919.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local
maxg
,
maxc
=
exg
:
GetMaxGroup
(
c29087919
.
xyzct
)
if
ct
>
mct
then
ct
=
mct
end
if
ct
>
maxc
then
ct
=
maxc
end
if
chk
==
0
then
return
ct
>
1
and
Duel
.
IsExistingMatchingCard
(
c29087919
.
xyzfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
mg
,
ct
)
end
if
chk
==
0
then
return
Duel
.
IsPlayerCanSpecialSummonCount
(
tp
,
2
)
and
ct
>
1
and
Duel
.
IsExistingMatchingCard
(
c29087919
.
xyzfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
mg
,
ct
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg1
=
mg
:
FilterSelect
(
tp
,
c29087919
.
mfilter1
,
1
,
1
,
nil
,
exg
)
local
tc1
=
sg1
:
GetFirst
()
...
...
script/c45627618.lua
View file @
fdd6be87
...
...
@@ -51,13 +51,13 @@ end
c45627618
.
pendulum_level
=
7
function
c45627618
.
pctg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
seq
=
e
:
GetHandler
():
GetSequence
()
if
chk
==
0
then
return
Duel
.
CheckLocation
(
tp
,
LOCATION_SZONE
,
13
-
seq
)
==
true
if
chk
==
0
then
return
Duel
.
CheckLocation
(
tp
,
LOCATION_SZONE
,
13
-
seq
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
TYPE_PENDULUM
)
end
end
function
c45627618
.
pcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
local
seq
=
e
:
GetHandler
():
GetSequence
()
if
Duel
.
CheckLocation
(
tp
,
LOCATION_SZONE
,
13
-
seq
)
==
false
then
return
end
if
not
Duel
.
CheckLocation
(
tp
,
LOCATION_SZONE
,
13
-
seq
)
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsType
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
TYPE_PENDULUM
)
if
g
:
GetCount
()
>
0
then
...
...
script/c82734805.lua
View file @
fdd6be87
...
...
@@ -96,68 +96,6 @@ function c82734805.op(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoGrave
(
g1
,
REASON_EFFECT
)
end
end
--[[function c82734805.extg(tp)
return Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,LOCATION_EXTRA,0,3,nil)
and Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,0,LOCATION_EXTRA,3,nil)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,6,PLAYER_ALL,LOCATION_EXTRA)
end
function c82734805.exop(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetMatchingGroup(Card.IsAbleToGrave,tp,LOCATION_EXTRA,0,nil)
local sg1=nil
if g1:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
sg1=g1:Select(tp,3,3,nil)
else sg1=g1 end
local g2=Duel.GetMatchingGroup(Card.IsAbleToGrave,tp,0,LOCATION_EXTRA,nil)
local sg2=nil
if g2:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_TOGRAVE)
sg2=g2:Select(1-tp,3,3,nil)
else sg2=g2 end
sg1:Merge(sg2)
if sg1:GetCount()>0 then
Duel.SendtoGrave(sg1,REASON_EFFECT)
end
end
function c82734805.decktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDiscardDeck(tp,3) and Duel.IsPlayerCanDiscardDeck(1-tp,3) end
Duel.SetOperationInfo(0,CATEGORY_DECKDES,nil,0,PLAYER_ALL,6)
end
function c82734805.deckop(e,tp,eg,ep,ev,re,r,rp)
Duel.DiscardDeck(tp,3,REASON_EFFECT)
Duel.DiscardDeck(1-tp,3,REASON_EFFECT)
end
function c82734805.rettg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsFaceup,tp,LOCATION_REMOVED,0,1,nil) and Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_REMOVED,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,2,PLAYER_ALL,LOCATION_REMOVED)
end
function c82734805.retop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g1=Duel.SelectMatchingCard(tp,Card.IsFaceup,tp,LOCATION_REMOVED,0,1,3,nil)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_TOGRAVE)
local g2=Duel.SelectMatchingCard(1-tp,Card.IsFaceup,1-tp,LOCATION_REMOVED,0,1,3,nil)
g1:Merge(g2)
if g1:GetCount()>0 then
Duel.SendtoGrave(g1,REASON_EFFECT+REASON_RETURN)
end
end
function c82734805.handtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_HAND,LOCATION_HAND)>0 end
if Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)==0 then
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,1-tp,0)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,1-tp,LOCATION_HAND)
elseif Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)==0 then
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,tp,0)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_HAND)
else
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,PLAYER_ALL,0)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,PLAYER_ALL,LOCATION_HAND)
end
end
function c82734805.handop(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetFieldGroup(tp,LOCATION_HAND,LOCATION_HAND)
Duel.SendtoGrave(g1,REASON_EFFECT)
end--]]
function
c82734805
.
fcfilter1
(
c
,
code1
,
code2
,
g
)
local
code
=
c
:
GetCode
()
return
(
code
==
code1
or
code
==
code2
)
and
g
:
IsExists
(
Card
.
IsSetCard
,
1
,
c
,
0xbb
)
...
...
@@ -169,183 +107,142 @@ function c82734805.fcfilter3(c,g)
return
((
c
:
IsCode
(
14799437
)
or
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
))
and
g
:
IsExists
(
Card
.
IsCode
,
1
,
c
,
23440231
))
or
((
c
:
IsCode
(
23440231
)
or
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
))
and
g
:
IsExists
(
Card
.
IsCode
,
1
,
c
,
14799437
))
end
function
c82734805
.
fcfilter4
(
c
,
code
)
return
c
:
IsCode
(
code
)
or
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
end
function
c82734805
.
fcfilter5
(
c
,
g
,
ct
)
if
c
:
IsSetCard
(
0xbb
)
then
ct
=
ct
-
1
end
if
c
:
IsCode
(
14799437
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter6
,
1
,
c
,
g
,
ct
,
true
)
elseif
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter6
,
1
,
c
,
g
,
ct
,
false
)
else
return
false
end
end
function
c82734805
.
fcfilter6
(
c
,
g
,
ct
,
sub
)
if
c
:
IsSetCard
(
0xbb
)
then
ct
=
ct
-
1
end
return
ct
>
0
and
(
c
:
IsCode
(
23440231
)
or
(
sub
and
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)))
end
function
c82734805
.
fcfilter7
(
c
,
chkf
)
return
aux
.
FConditionCheckF
(
tc
,
chkf
)
and
(
c
:
IsSetCard
(
0xbb
)
or
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
))
end
function
c82734805
.
fscon
(
e
,
g
,
gc
,
chkf
)
if
g
==
nil
then
return
true
end
if
gc
then
local
mg
=
g
:
Clone
()
mg
:
RemoveCard
(
gc
)
if
gc
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter1
,
1
,
gc
,
14799437
,
23440231
,
g
)
return
mg
:
IsExists
(
c82734805
.
fcfilter1
,
1
,
nil
,
14799437
,
23440231
,
m
g
)
elseif
gc
:
IsCode
(
14799437
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter2
,
1
,
gc
,
23440231
,
g
)
return
mg
:
IsExists
(
c82734805
.
fcfilter2
,
1
,
nil
,
23440231
,
m
g
)
elseif
gc
:
IsCode
(
23440231
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter2
,
1
,
gc
,
14799437
,
g
)
return
mg
:
IsExists
(
c82734805
.
fcfilter2
,
1
,
nil
,
14799437
,
m
g
)
elseif
gc
:
IsSetCard
(
0xbb
)
then
return
g
:
IsExists
(
c82734805
.
fcfilter3
,
1
,
gc
,
g
)
return
mg
:
IsExists
(
c82734805
.
fcfilter3
,
1
,
nil
,
mg
)
else
return
false
end
end
local
b1
=
0
local
b2
=
0
local
bs
=
0
local
g1
=
Group
.
CreateGroup
()
local
g2
=
Group
.
CreateGroup
()
local
fs
=
false
local
b1
=
0
local
b2
=
0
local
b
3
=
0
local
b
s
=
0
local
fs
=
false
local
tc
=
g
:
GetFirst
()
while
tc
do
if
tc
:
IsCode
(
14799437
)
then
b1
=
1
g1
:
AddCard
(
tc
)
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
if
tc
:
IsCode
(
23440231
)
then
b2
=
1
g1
:
AddCard
(
tc
)
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
if
tc
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
bs
=
1
g1
:
AddCard
(
tc
)
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
if
tc
:
IsSetCard
(
0xbb
)
then
g2
:
AddCard
(
tc
)
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
bs
=
1
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
elseif
tc
:
IsCode
(
14799437
)
then
if
b1
==
0
then
b1
=
1
else
b3
=
1
end
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
elseif
tc
:
IsCode
(
23440231
)
then
if
b2
==
0
then
b2
=
1
else
b3
=
1
end
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
elseif
tc
:
IsSetCard
(
0xbb
)
then
b3
=
1
if
aux
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
tc
=
g
:
GetNext
()
end
if
chkf
~=
PLAYER_NONE
then
return
fs
and
b1
+
b2
+
bs
>=
2
and
g2
:
GetCount
()
>=
3
-
bs
return
fs
and
b1
+
b2
+
bs
>=
2
and
b3
>=
1
else
return
b1
+
b2
+
bs
>=
2
and
g2
:
GetCount
()
>=
3
-
bs
return
b1
+
b2
+
bs
>=
2
and
b3
>=
1
end
end
function
c82734805
.
fsop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
gc
,
chkf
)
local
g1
=
Group
.
CreateGroup
()
if
not
gc
and
chkf
~=
PLAYER_NONE
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
gc
=
eg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter7
,
1
,
1
,
nil
,
chkf
):
GetFirst
()
g1
:
AddCard
(
gc
)
end
local
mg
=
eg
:
Clone
()
mg
:
RemoveCard
(
gc
)
local
ok
=
false
if
gc
then
local
sg
=
eg
local
g1
=
nil
local
g2
=
nil
local
g3
=
nil
if
gc
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g1
=
eg
:
FilterSelect
(
tp
,
aux
.
FConditionFilter21
,
1
,
1
,
gc
,
14799437
,
23440231
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
eg
:
FilterSelect
(
tp
,
Card
.
IsSetCard
,
1
,
99
,
g1
:
GetFirst
(),
0xbb
)
g1
:
Merge
(
g2
)
Duel
.
SetFusionMaterial
(
g1
)
return
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter1
,
1
,
1
,
nil
,
14799437
,
23440231
,
mg
)
g1
:
Merge
(
sg
)
elseif
gc
:
IsCode
(
14799437
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g1
=
eg
:
FilterSelect
(
tp
,
Card
.
IsCode
,
1
,
1
,
gc
,
23440231
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
eg
:
FilterSelect
(
tp
,
Card
.
IsSetCard
,
1
,
99
,
g1
:
GetFirst
(),
0xbb
)
g1
:
Merge
(
g2
)
Duel
.
SetFusionMaterial
(
g1
)
return
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter2
,
1
,
1
,
nil
,
23440231
,
mg
)
g1
:
Merge
(
sg
)
elseif
gc
:
IsCode
(
23440231
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g1
=
eg
:
FilterSelect
(
tp
,
Card
.
IsCode
,
1
,
1
,
gc
,
14799437
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
eg
:
FilterSelect
(
tp
,
Card
.
IsSetCard
,
1
,
99
,
g1
:
GetFirst
(),
0xbb
)
g1
:
Merge
(
g2
)
Duel
.
SetFusionMaterial
(
g1
)
return
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter2
,
1
,
1
,
nil
,
14799437
,
mg
)
g1
:
Merge
(
sg
)
elseif
gc
:
IsSetCard
(
0xbb
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g1
=
sg
:
FilterSelect
(
tp
,
aux
.
FConditionFilter21
,
1
,
1
,
gc
,
14799437
,
23440231
)
local
code1
=
g1
:
GetCode
()
local
code2
=
nil
if
code1
==
14799437
then
code2
=
23440231
else
code2
=
14799437
end
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter3
,
1
,
1
,
nil
,
14799437
,
23440231
,
mg
)
g1
:
Merge
(
sg
)
local
tc1
=
sg
:
GetFirst
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
sg
:
FilterSelect
(
tp
,
Card
.
IsCode
,
1
,
1
,
gc
,
code2
)
g1
:
Merge
(
g2
)
sg
:
Sub
(
g1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
sg
:
FilterSelect
(
tp
,
Card
.
IsSetCard
,
1
,
99
,
nil
,
0xbb
)
g1
:
Merge
(
g3
)
Duel
.
SetFusionMaterial
(
g1
)
return
end
end
local
sg1
=
Group
.
CreateGroup
()
local
sg2
=
Group
.
CreateGroup
()
local
fs
=
false
local
tc
=
eg
:
GetFirst
()
while
tc
do
if
tc
:
IsCode
(
14799437
)
or
tc
:
IsCode
(
23440231
)
or
tc
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
sg1
:
AddCard
(
tc
)
end
if
tc
:
IsSetCard
(
0xbb
)
then
sg2
:
AddCard
(
tc
)
if
Auxiliary
.
FConditionCheckF
(
tc
,
chkf
)
then
fs
=
true
end
end
tc
=
eg
:
GetNext
()
end
local
g1
=
nil
local
g2
=
nil
local
g3
=
nil
local
g4
=
nil
if
chkf
~=
PLAYER_NONE
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
if
fs
then
g1
=
sg1
:
Select
(
tp
,
1
,
1
,
nil
)
else
g1
=
sg1
:
FilterSelect
(
tp
,
Auxiliary
.
FConditionCheckF
,
1
,
1
,
nil
,
chkf
)
end
local
tc1
=
g1
:
GetFirst
()
if
tc1
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
sg1
:
Remove
(
Card
.
IsHasEffect
,
nil
,
EFFECT_FUSION_SUBSTITUTE
)
else
sg1
:
Remove
(
Card
.
IsCode
,
nil
,
tc1
:
GetCode
())
end
sg2
:
RemoveCard
(
tc1
)
if
Auxiliary
.
FConditionCheckF
(
tc1
,
chkf
)
or
fs
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
sg1
:
Select
(
tp
,
1
,
1
,
nil
)
else
g2
=
sg1
:
FilterSelect
(
tp
,
Auxiliary
.
FConditionCheckF
,
1
,
1
,
nil
,
chkf
)
end
g1
:
Merge
(
g2
)
local
tc2
=
g2
:
GetFirst
()
sg2
:
RemoveCard
(
tc2
)
if
aux
.
FConditionCheckF
(
tc1
,
chkf
)
or
aux
.
FConditionCheckF
(
tc2
,
chkf
)
then
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
0
))
then
local
dsg2
=
sg2
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
sg2
:
Sub
(
dsg2
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
dsg2
:
Select
(
tp
,
1
,
6
-
g1
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
),
nil
)
g1
:
Merge
(
g3
)
if
sg2
:
GetCount
()
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
1
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g4
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g4
)
end
if
tc1
:
IsCode
(
14799437
)
then
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter4
,
1
,
1
,
nil
,
23440231
)
g1
:
Merge
(
sg
)
elseif
tc1
:
IsCode
(
23440231
)
then
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter4
,
1
,
1
,
nil
,
14799437
)
g1
:
Merge
(
sg
)
else
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
then
sg2
:
Remove
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g3
)
end
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
sg2
:
FilterSelect
(
tp
,
aux
.
FConditionCheckF
,
1
,
1
,
nil
,
chkf
)
g1
:
Merge
(
g3
)
sg2
:
RemoveCard
(
g3
:
GetFirst
())
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
0
))
then
local
dsg2
=
sg2
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
sg2
:
Sub
(
dsg2
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g4
=
dsg2
:
Select
(
tp
,
1
,
6
-
g1
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
),
nil
)
g1
:
Merge
(
g4
)
if
sg2
:
GetCount
()
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
1
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
local
g5
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g5
)
end
else
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
then
sg2
:
Remove
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g4
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g4
)
local
sg
=
mg
:
FilterSelect
(
tp
,
aux
.
FConditionFilter21
,
1
,
1
,
nil
,
14799437
,
23440231
)
g1
:
Merge
(
sg
)
end
ok
=
true
end
Duel
.
SetFusionMaterial
(
g1
)
else
local
ct
=
mg
:
FilterCount
(
Card
.
IsSetCard
,
nil
,
0xbb
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g1
=
sg1
:
Select
(
tp
,
1
,
1
,
nil
)
g1
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter5
,
1
,
1
,
nil
,
mg
,
ct
)
local
tc1
=
g1
:
GetFirst
()
if
tc1
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
sg1
:
Remove
(
Card
.
IsHasEffect
,
nil
,
EFFECT_FUSION_SUBSTITUTE
)
else
sg1
:
Remove
(
Card
.
IsCode
,
nil
,
tc1
:
GetCode
())
end
sg2
:
RemoveCard
(
tc1
)
if
tc1
:
IsSetCard
(
0xbb
)
then
ct
=
ct
-
1
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g2
=
sg1
:
Select
(
tp
,
1
,
1
,
nil
)
sg2
:
RemoveCard
(
g2
:
GetFirst
())
g1
:
Merge
(
g2
)
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
0
))
then
local
dsg2
=
sg2
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
sg2
:
Sub
(
dsg2
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
dsg2
:
Select
(
tp
,
1
,
6
-
g1
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
),
nil
)
g1
:
Merge
(
g3
)
if
sg2
:
GetCount
()
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
1
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g4
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g4
)
end
if
tc1
:
IsCode
(
14799437
)
then
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter6
,
1
,
1
,
tc1
,
mg
,
ct
,
true
)
g1
:
Merge
(
sg
)
else
if
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
then
sg2
:
Remove
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g3
=
sg2
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
g3
)
local
sg
=
mg
:
FilterSelect
(
tp
,
c82734805
.
fcfilter6
,
1
,
1
,
tc1
,
mg
,
ct
,
false
)
g1
:
Merge
(
sg
)
end
end
mg
:
Sub
(
g1
)
mg
=
mg
:
Filter
(
Card
.
IsSetCard
,
nil
,
0xbb
)
if
mg
:
GetCount
()
==
0
or
(
ok
and
not
Duel
.
SelectYesNo
(
tp
,
93
))
then
Duel
.
SetFusionMaterial
(
g1
)
return
end
ok
=
false
local
dmg
=
mg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
if
dmg
:
GetCount
()
>
0
and
e
:
GetHandler
():
GetFlagEffect
(
31444249
)
~=
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
31444249
,
0
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
local
sg
=
dmg
:
Select
(
tp
,
1
,
6
-
g1
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
),
nil
)
g1
:
Merge
(
sg
)
ok
=
true
end
mg
:
Remove
(
Card
.
IsLocation
,
nil
,
LOCATION_DECK
)
if
mg
:
GetCount
()
==
0
or
(
ok
and
not
Duel
.
SelectYesNo
(
tp
,
93
))
then
Duel
.
SetFusionMaterial
(
g1
)
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
local
sg
=
mg
:
Select
(
tp
,
1
,
99
,
nil
)
g1
:
Merge
(
sg
)
Duel
.
SetFusionMaterial
(
g1
)
return
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment