Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
P
pre-release-database-cdb
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
List
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
pre-release-database-cdb
Commits
b39b94dc
Commit
b39b94dc
authored
Nov 18, 2023
by
fallenstardust
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update QCDB-JP005\006
parent
142401d5
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
110 additions
and
116 deletions
+110
-116
script/c100212005.lua
script/c100212005.lua
+62
-53
script/c100212006.lua
script/c100212006.lua
+48
-63
No files found.
script/c100212005.lua
View file @
b39b94dc
--覇王龍ズァーク-シンクロ・ユニバース
--覇王龍ズァーク-シンクロ・ユニバース
local
s
,
id
,
o
=
GetID
()
function
c100212005
.
initial_effect
(
c
)
function
s
.
initial_effect
(
c
)
aux
.
AddCodeList
(
c
,
13331639
)
aux
.
EnableChangeCode
(
c
,
13331639
,
LOCATION_MZONE
)
aux
.
EnablePendulumAttribute
(
c
)
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
s
.
matfilter
),
1
)
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
c100212005
.
matfilter
),
1
)
--change code
aux
.
EnableChangeCode
(
c
,
13331639
,
LOCATION_ONFIELD
)
--special summon from pendulum zone
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
100212005
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetCountLimit
(
1
,
id
)
e1
:
SetCountLimit
(
1
,
100212005
)
e1
:
SetCost
(
s
.
pend
spcost
)
e1
:
SetCost
(
c100212005
.
p
spcost
)
e1
:
SetTarget
(
s
.
pend
sptg
)
e1
:
SetTarget
(
c100212005
.
p
sptg
)
e1
:
SetOperation
(
s
.
pend
spop
)
e1
:
SetOperation
(
c100212005
.
p
spop
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
--special summon
local
e2
=
Effect
.
CreateEffect
(
c
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e2
:
SetDescription
(
aux
.
Stringid
(
100212005
,
1
))
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetCategory
(
CATEGORY_POSITION
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_BATTLED
)
e2
:
SetCode
(
EVENT_BATTLED
)
e2
:
SetCondition
(
s
.
spcon
)
e2
:
SetCondition
(
c100212005
.
spcon1
)
e2
:
SetTarget
(
s
.
sptg
)
e2
:
SetTarget
(
c100212005
.
sptg
)
e2
:
SetOperation
(
s
.
spop
)
e2
:
SetOperation
(
c100212005
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--pendulum
e3
=
e2
:
Clone
()
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetCode
(
EVENT_BATTLED
)
e3
:
SetDescription
(
aux
.
Stringid
(
id
,
2
))
e3
:
SetCondition
(
c100212005
.
spcon2
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_DESTROYED
)
e3
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e3
:
SetCondition
(
s
.
pencon
)
e3
:
SetTarget
(
s
.
pentg
)
e3
:
SetOperation
(
s
.
penop
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
100212005
,
2
))
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e4
:
SetCode
(
EVENT_DESTROYED
)
e4
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e4
:
SetCondition
(
c100212005
.
pencon
)
e4
:
SetTarget
(
c100212005
.
pentg
)
e4
:
SetOperation
(
c100212005
.
penop
)
c
:
RegisterEffect
(
e4
)
end
end
function
s
.
matfilter
(
c
)
function
c100212005
.
matfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
c
:
IsType
(
TYPE_PENDULUM
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
end
function
s
.
cfilter
(
c
,
tp
)
function
c100212005
.
cfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x10f8
,
0x20f8
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
return
c
:
IsSetCard
(
0x10f8
,
0x20f8
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
and
(
c
:
IsFaceup
()
or
c
:
IsControler
(
tp
))
end
end
function
s
.
pend
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212005
.
p
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
nil
,
tp
)
end
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
c100212005
.
cfilter
,
1
,
nil
,
tp
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
1
,
nil
,
tp
)
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
c100212005
.
cfilter
,
1
,
1
,
nil
,
tp
)
Duel
.
Release
(
g
,
REASON_COST
)
Duel
.
Release
(
g
,
REASON_COST
)
end
end
function
s
.
pend
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212005
.
p
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
end
function
s
.
pend
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212005
.
p
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
then
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212005
.
spcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
bc
=
e
:
GetHandler
():
GetBattleTarget
()
local
c
=
e
:
GetHandler
()
return
(
bc
and
bc
:
IsStatus
(
STATUS_BATTLE_DESTROYED
))
or
ep
~=
tp
local
bc
=
c
:
GetBattleTarget
()
return
bc
and
bc
:
IsStatus
(
STATUS_BATTLE_DESTROYED
)
end
function
c100212005
.
spcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
bc
=
c
:
GetBattleTarget
()
return
ep
~=
tp
and
not
(
bc
and
bc
:
IsStatus
(
STATUS_BATTLE_DESTROYED
))
end
end
function
s
.
spfilter
(
c
,
e
,
tp
)
function
c100212005
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x20f8
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
return
c
:
IsSetCard
(
0x20f8
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
(
c
:
IsLocation
(
LOCATION_DECK
)
and
Duel
.
GetMZoneCount
(
tp
)
>
0
or
c
:
IsLocation
(
LOCATION_EXTRA
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
nil
,
c
)
>
0
)
end
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212005
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c100212005
.
spfilter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
and
Duel
.
IsExistingMatchingCard
(
s
.
spfilter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
1
,
e
:
GetHandler
(),
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_GRAVE
)
end
end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212005
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ct
=
2
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
ct
=
1
end
if
ft
<=
0
then
return
end
ct
=
math.min
(
ct
,(
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)))
if
ft
>=
2
then
ft
=
2
end
if
ct
<=
0
then
return
end
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
ft
=
1
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
s
.
spfilter
),
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
1
,
ct
,
e
:
GetHandler
()
,
e
,
tp
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c100212005
.
spfilter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
1
,
ft
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
if
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
_DEFENSE
)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
end
function
s
.
pencon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212005
.
pencon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsFaceup
()
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsFaceup
()
end
end
function
s
.
pentg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212005
.
pentg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
0
)
or
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
1
)
end
if
chk
==
0
then
return
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
0
)
or
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
1
)
end
end
end
function
s
.
penop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212005
.
penop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
then
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
...
...
script/c100212006.lua
View file @
b39b94dc
--コード・オブ・ソウル
--コード・オブ・ソウル
local
s
,
id
,
o
=
GetID
()
function
c100212006
.
initial_effect
(
c
)
function
s
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
100212006
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
id
)
e1
:
SetCountLimit
(
1
,
100212006
)
e1
:
SetCondition
(
s
.
spcon
)
e1
:
SetCondition
(
c100212006
.
spcon
)
e1
:
SetTarget
(
s
.
sptg
)
e1
:
SetTarget
(
c100212006
.
sptg
)
e1
:
SetOperation
(
s
.
spop
)
e1
:
SetOperation
(
c100212006
.
spop
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
--extra material
local
e2
=
Effect
.
CreateEffect
(
c
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
100212006
,
1
))
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
id
+
o
)
e2
:
SetCountLimit
(
1
,
100212106
)
e2
:
SetOperation
(
s
.
sum
op
)
e2
:
SetOperation
(
c100212006
.
ef
op
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--link summon
local
e3
=
Effect
.
CreateEffect
(
c
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e3
:
SetDescription
(
aux
.
Stringid
(
100212006
,
2
))
e3
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e3
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e3
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
e3
:
SetRange
(
LOCATION_GRAVE
)
e3
:
SetRange
(
LOCATION_GRAVE
)
e3
:
SetCountLimit
(
1
,
id
+
o
*
2
)
e3
:
SetCountLimit
(
1
,
100212306
)
e3
:
SetCondition
(
s
.
lkcon
)
e3
:
SetCondition
(
c100212006
.
lkcon
)
e3
:
SetCost
(
aux
.
bfgcost
)
e3
:
SetCost
(
aux
.
bfgcost
)
e3
:
SetTarget
(
s
.
lktg
)
e3
:
SetTarget
(
c100212006
.
lktg
)
e3
:
SetOperation
(
s
.
lkop
)
e3
:
SetOperation
(
c100212006
.
lkop
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
end
end
function
s
.
cfilter
(
c
)
function
c100212006
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_LINK
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_LINK
)
end
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212006
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
return
Duel
.
IsExistingMatchingCard
(
c100212006
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212006
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212006
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
s
.
lmfilter
(
c
,
lc
,
tp
,
og
,
lmat
)
function
c100212006
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
c
:
IsFaceup
()
and
c
:
IsCanBeLinkMaterial
(
lc
)
and
c
:
IsLinkCode
(
lc
:
GetCode
())
and
c
:
IsLinkType
(
TYPE_LINK
)
local
c
=
e
:
GetHandler
()
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
c
,
lc
)
>
0
and
aux
.
MustMaterialCheck
(
c
,
tp
,
EFFECT_MUST_BE_LMATERIAL
)
local
e1
=
Effect
.
CreateEffect
(
c
)
and
(
not
og
or
og
:
IsContains
(
c
))
and
(
not
lmat
or
lmat
==
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
100212006
,
3
))
end
function
s
.
linkcon
(
e
,
c
,
og
,
lmat
,
min
,
max
)
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
return
Duel
.
IsExistingMatchingCard
(
s
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
end
function
s
.
linkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
,
og
,
lmat
,
min
,
max
)
local
mg
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
c
:
SetMaterial
(
mg
)
Duel
.
SendtoGrave
(
mg
,
REASON_MATERIAL
+
REASON_LINK
)
end
function
s
.
mattg
(
e
,
c
)
return
c
:
IsSetCard
(
0x119
)
and
c
:
IsType
(
TYPE_LINK
)
end
function
s
.
sumop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
+
EFFECT_FLAG_IGNORE_IMMUNE
)
e1
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
+
EFFECT_FLAG_IGNORE_IMMUNE
)
e1
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e1
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e1
:
SetRange
(
LOCATION_EXTRA
)
e1
:
SetRange
(
LOCATION_EXTRA
)
e1
:
SetCountLimit
(
1
,
id
+
o
*
3
)
e1
:
SetCountLimit
(
1
,
100212206
)
e1
:
SetCondition
(
s
.
linkcon
)
e1
:
SetCondition
(
c100212006
.
linkcon
)
e1
:
SetOperation
(
s
.
linkop
)
e1
:
SetOperation
(
c100212006
.
linkop
)
e1
:
SetValue
(
SUMMON_TYPE_LINK
)
e1
:
SetValue
(
SUMMON_TYPE_LINK
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
()
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_GRANT
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_GRANT
)
e2
:
SetTargetRange
(
LOCATION_EXTRA
,
0
)
e2
:
SetTargetRange
(
LOCATION_EXTRA
,
0
)
e2
:
SetTarget
(
s
.
mattg
)
e2
:
SetTarget
(
c100212006
.
mattg
)
e2
:
SetLabelObject
(
e1
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e2
:
SetLabelObject
(
e1
)
Duel
.
RegisterEffect
(
e2
,
tp
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
end
function
s
.
linkcon
(
e
,
c
,
og
,
lmat
,
min
,
max
)
function
c100212006
.
lmfilter
(
c
,
lc
,
tp
,
og
,
lmat
)
return
c
:
IsFaceup
()
and
c
:
IsCanBeLinkMaterial
(
lc
)
and
c
:
IsLinkCode
(
lc
:
GetCode
())
and
c
:
IsLinkType
(
TYPE_LINK
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
c
,
lc
)
>
0
and
aux
.
MustMaterialCheck
(
c
,
tp
,
EFFECT_MUST_BE_LMATERIAL
)
and
(
not
og
or
og
:
IsContains
(
c
))
and
(
not
lmat
or
lmat
==
c
)
end
function
c100212006
.
linkcon
(
e
,
c
,
og
,
lmat
,
min
,
max
)
if
c
==
nil
then
return
true
end
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
local
tp
=
c
:
GetControler
()
return
Duel
.
IsExistingMatchingCard
(
s
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
return
Duel
.
IsExistingMatchingCard
(
c100212006
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
end
end
function
s
.
linkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
,
og
,
lmat
,
min
,
max
)
function
c100212006
.
linkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
,
og
,
lmat
,
min
,
max
)
local
mg
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
local
mg
=
Duel
.
SelectMatchingCard
(
tp
,
c100212006
.
lmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
c
,
tp
,
og
,
lmat
)
c
:
SetMaterial
(
mg
)
c
:
SetMaterial
(
mg
)
Duel
.
SendtoGrave
(
mg
,
REASON_MATERIAL
+
REASON_LINK
)
Duel
.
SendtoGrave
(
mg
,
REASON_MATERIAL
+
REASON_LINK
)
end
end
function
s
.
mattg
(
e
,
c
)
function
c100212006
.
mattg
(
e
,
c
)
return
c
:
IsSetCard
(
0x119
)
and
c
:
IsType
(
TYPE_LINK
)
return
c
:
IsSetCard
(
0x119
)
and
c
:
IsType
(
TYPE_LINK
)
end
end
function
s
.
lkcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212006
.
lkcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
~=
tp
return
Duel
.
GetTurnPlayer
()
==
1
-
tp
and
(
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
)
and
(
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
)
end
end
function
s
.
lkfilter
(
c
)
function
c100212006
.
lkfilter
(
c
)
return
c
:
IsLinkSummonable
(
nil
)
and
c
:
Is
Link
(
3
)
return
c
:
IsLinkSummonable
(
nil
)
and
c
:
Is
Race
(
RACE_CYBERSE
)
and
c
:
IsLinkAbove
(
3
)
end
end
function
s
.
lktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c100212006
.
lktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
lkfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c100212006
.
lkfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
0
,
0
)
end
end
function
s
.
lkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c100212006
.
lkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
lkfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c100212006
.
lkfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
)
local
tc
=
g
:
GetFirst
()
local
tc
=
g
:
GetFirst
()
if
tc
then
if
tc
then
Duel
.
LinkSummon
(
tp
,
tc
,
nil
)
Duel
.
LinkSummon
(
tp
,
tc
,
nil
)
...
...
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