Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-222DIY-cards
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
alstroemeria-silentlove
ygopro-222DIY-cards
Commits
5f42b44d
Commit
5f42b44d
authored
Nov 17, 2020
by
TanakaKotoha
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
e46fba82
Pipeline
#1277
canceled with stages
in 19 minutes and 39 seconds
Changes
27
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
431 additions
and
560 deletions
+431
-560
expansions/222DIY.cdb
expansions/222DIY.cdb
+0
-0
expansions/script/c81000000.lua
expansions/script/c81000000.lua
+40
-0
expansions/script/c81005059.lua
expansions/script/c81005059.lua
+2
-0
expansions/script/c81005066.lua
expansions/script/c81005066.lua
+2
-7
expansions/script/c81009007.lua
expansions/script/c81009007.lua
+3
-34
expansions/script/c81009008.lua
expansions/script/c81009008.lua
+17
-46
expansions/script/c81009011.lua
expansions/script/c81009011.lua
+11
-40
expansions/script/c81009015.lua
expansions/script/c81009015.lua
+27
-56
expansions/script/c81011001.lua
expansions/script/c81011001.lua
+21
-23
expansions/script/c81011066.lua
expansions/script/c81011066.lua
+1
-7
expansions/script/c81012005.lua
expansions/script/c81012005.lua
+42
-45
expansions/script/c81012008.lua
expansions/script/c81012008.lua
+19
-22
expansions/script/c81012025.lua
expansions/script/c81012025.lua
+30
-33
expansions/script/c81012026.lua
expansions/script/c81012026.lua
+35
-38
expansions/script/c81012028.lua
expansions/script/c81012028.lua
+31
-34
expansions/script/c81012053.lua
expansions/script/c81012053.lua
+33
-36
expansions/script/c81012054.lua
expansions/script/c81012054.lua
+22
-25
expansions/script/c81012063.lua
expansions/script/c81012063.lua
+36
-39
expansions/script/c81012070.lua
expansions/script/c81012070.lua
+18
-21
expansions/script/c81012074.lua
expansions/script/c81012074.lua
+30
-26
expansions/script/c81012087.lua
expansions/script/c81012087.lua
+2
-7
expansions/script/c81022005.lua
expansions/script/c81022005.lua
+2
-0
expansions/script/c81022010.lua
expansions/script/c81022010.lua
+2
-7
expansions/script/c81022025.lua
expansions/script/c81022025.lua
+2
-0
expansions/script/c81022032.lua
expansions/script/c81022032.lua
+1
-7
expansions/script/c81022044.lua
expansions/script/c81022044.lua
+1
-0
expansions/script/c81041037.lua
expansions/script/c81041037.lua
+1
-7
No files found.
expansions/222DIY.cdb
View file @
5f42b44d
No preview for this file type
expansions/script/c81000000.lua
View file @
5f42b44d
...
...
@@ -195,3 +195,43 @@ function Tenka.EinBattleCon(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
return
ep
==
tp
and
c
:
IsRelateToBattle
()
end
--
function
Tenka
.
PyroLink
(
c
)
local
eb
=
Effect
.
CreateEffect
(
c
)
eb
:
SetType
(
EFFECT_TYPE_SINGLE
)
eb
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
eb
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
eb
:
SetValue
(
1
)
c
:
RegisterEffect
(
eb
)
end
--
function
Tenka
.
KaedeMusic
(
c
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
ea
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_CANNOT_NEGATE
)
ea
:
SetCode
(
EVENT_BE_MATERIAL
)
ea
:
SetCondition
(
Tenka
.
efcon
)
ea
:
SetOperation
(
Tenka
.
efop
)
c
:
RegisterEffect
(
ea
)
end
function
Tenka
.
efcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
r
==
REASON_XYZ
end
function
Tenka
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
rc
=
c
:
GetReasonCard
()
local
e1
=
Effect
.
CreateEffect
(
rc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_CANNOT_NEGATE
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
Tenka
.
sumcon
)
e1
:
SetOperation
(
Tenka
.
sumsuc
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1
,
true
)
end
function
Tenka
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
Tenka
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81009011
,
1
))
end
expansions/script/c81005059.lua
View file @
5f42b44d
--白雪安娜·寻踪
local
m
=
81005059
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
cm
.
mfilter
,
2
)
c
:
EnableReviveLimit
()
Tenka
.
PyroLink
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
...
...
expansions/script/c81005066.lua
View file @
5f42b44d
--鲜为人知的天使护士
local
m
=
81005066
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
3
,
3
)
c
:
EnableReviveLimit
()
--cannot be link material
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
Tenka
.
PyroLink
(
c
)
--fusion summon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_FUSION_SUMMON
)
...
...
expansions/script/c81009007.lua
View file @
5f42b44d
--幸福滋味·高垣枫
local
m
=
81009007
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
3
,
99
,
cm
.
lcheck
)
c
:
EnableReviveLimit
()
--cannot link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
Tenka
.
KaedeMusic
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
...
...
@@ -40,13 +36,6 @@ function cm.initial_effect(c)
e3
:
SetTarget
(
cm
.
mttg
)
e3
:
SetOperation
(
cm
.
mtop
)
c
:
RegisterEffect
(
e3
)
--effect gain
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e4
:
SetCode
(
EVENT_BE_MATERIAL
)
e4
:
SetCondition
(
cm
.
efcon
)
e4
:
SetOperation
(
cm
.
efop
)
c
:
RegisterEffect
(
e4
)
end
function
cm
.
lcheck
(
g
)
return
g
:
IsExists
(
Card
.
IsLinkType
,
1
,
nil
,
TYPE_XYZ
)
...
...
@@ -103,23 +92,3 @@ function cm.mtop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Overlay
(
c
,
g
)
end
end
function
cm
.
efcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
r
==
REASON_XYZ
end
function
cm
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
rc
=
c
:
GetReasonCard
()
local
e1
=
Effect
.
CreateEffect
(
rc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
cm
.
sumcon
)
e1
:
SetOperation
(
cm
.
sumsuc
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1
,
true
)
end
function
cm
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
cm
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81009011
,
1
))
end
expansions/script/c81009008.lua
View file @
5f42b44d
--丽之妙药·高垣枫
function
c81009008
.
initial_effect
(
c
)
local
m
=
81009008
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
nil
,
2
,
2
,
c
81009008
.
lcheck
)
aux
.
AddLinkProcedure
(
c
,
nil
,
2
,
2
,
c
m
.
lcheck
)
c
:
EnableReviveLimit
()
--cannot link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
Tenka
.
KaedeMusic
(
c
)
--change name
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
@@ -20,36 +18,29 @@ function c81009008.initial_effect(c)
c
:
RegisterEffect
(
e1
)
--material
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
81009008
,
0
))
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e2
:
SetType
(
EFFECT_TYPE_XMATERIAL
+
EFFECT_TYPE_IGNITION
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
)
e2
:
SetTarget
(
c
81009008
.
target
)
e2
:
SetOperation
(
c
81009008
.
operation
)
e2
:
SetTarget
(
c
m
.
target
)
e2
:
SetOperation
(
c
m
.
operation
)
c
:
RegisterEffect
(
e2
)
--effect gain
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e4
:
SetCode
(
EVENT_BE_MATERIAL
)
e4
:
SetCondition
(
c81009008
.
efcon
)
e4
:
SetOperation
(
c81009008
.
efop
)
c
:
RegisterEffect
(
e4
)
end
function
c
81009008
.
lcheck
(
g
,
lc
)
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
Card
.
IsLinkType
,
1
,
nil
,
TYPE_XYZ
)
end
function
c
81009008
.
filter
(
c
,
tp
)
function
c
m
.
filter
(
c
,
tp
)
return
c
:
IsType
(
TYPE_LINK
)
and
(
c
:
IsControler
(
tp
)
or
c
:
IsAbleToChangeControler
())
end
function
c
81009008
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c
81009008
.
filter
(
chkc
,
tp
)
and
chkc
~=
e
:
GetHandler
()
end
function
c
m
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c
m
.
filter
(
chkc
,
tp
)
and
chkc
~=
e
:
GetHandler
()
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsType
(
TYPE_XYZ
)
and
Duel
.
IsExistingTarget
(
c
81009008
.
filter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
e
:
GetHandler
(),
tp
)
end
and
Duel
.
IsExistingTarget
(
c
m
.
filter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
e
:
GetHandler
(),
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarget
(
tp
,
c
81009008
.
filter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
e
:
GetHandler
(),
tp
)
Duel
.
SelectTarget
(
tp
,
c
m
.
filter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
e
:
GetHandler
(),
tp
)
end
function
c
81009008
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
c
:
IsRelateToEffect
(
e
)
and
tc
:
IsRelateToEffect
(
e
)
and
not
tc
:
IsImmuneToEffect
(
e
)
then
...
...
@@ -60,23 +51,3 @@ function c81009008.operation(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Overlay
(
c
,
Group
.
FromCards
(
tc
))
end
end
function
c81009008
.
efcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
r
==
REASON_XYZ
end
function
c81009008
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
rc
=
c
:
GetReasonCard
()
local
e1
=
Effect
.
CreateEffect
(
rc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
c81009008
.
sumcon
)
e1
:
SetOperation
(
c81009008
.
sumsuc
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1
,
true
)
end
function
c81009008
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
c81009008
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81009011
,
1
))
end
expansions/script/c81009011.lua
View file @
5f42b44d
--恋风·高垣枫
function
c81009011
.
initial_effect
(
c
)
local
m
=
81009011
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_XYZ
),
1
,
1
)
c
:
EnableReviveLimit
()
--effect gain
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e0
:
SetCode
(
EVENT_BE_MATERIAL
)
e0
:
SetCondition
(
c81009011
.
efcon
)
e0
:
SetOperation
(
c81009011
.
efop
)
c
:
RegisterEffect
(
e0
)
--cannot link material
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
Tenka
.
PyroLink
(
c
)
Tenka
.
KaedeMusic
(
c
)
--battle
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
81009011
,
0
))
e4
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e4
:
SetType
(
EFFECT_TYPE_XMATERIAL
+
EFFECT_TYPE_CONTINUOUS
)
e4
:
SetCode
(
EVENT_BATTLED
)
e4
:
SetCondition
(
c
81009011
.
xyzcon
)
e4
:
SetOperation
(
c
81009011
.
xyzop
)
e4
:
SetCondition
(
c
m
.
xyzcon
)
e4
:
SetOperation
(
c
m
.
xyzop
)
c
:
RegisterEffect
(
e4
)
end
function
c
81009011
.
xyzcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
xyzcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
c
:
GetBattleTarget
()
if
not
c
:
IsRelateToBattle
()
or
c
:
IsFacedown
()
then
return
false
end
e
:
SetLabelObject
(
tc
)
return
tc
and
tc
:
IsType
(
TYPE_MONSTER
)
and
tc
:
IsReason
(
REASON_BATTLE
)
and
not
tc
:
IsType
(
TYPE_TOKEN
)
end
function
c
81009011
.
xyzop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
xyzop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
e
:
GetLabelObject
()
if
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
then
...
...
@@ -44,23 +35,3 @@ function c81009011.xyzop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Overlay
(
c
,
tc
)
end
end
function
c81009011
.
efcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
r
==
REASON_XYZ
end
function
c81009011
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
rc
=
c
:
GetReasonCard
()
local
e1
=
Effect
.
CreateEffect
(
rc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
c81009011
.
sumcon
)
e1
:
SetOperation
(
c81009011
.
sumsuc
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1
,
true
)
end
function
c81009011
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
c81009011
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81009011
,
1
))
end
expansions/script/c81009015.lua
View file @
5f42b44d
--神秘的女神·高垣枫
function
c81009015
.
initial_effect
(
c
)
local
m
=
81009015
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
nil
,
3
,
3
,
c
81009015
.
lcheck
)
aux
.
AddLinkProcedure
(
c
,
nil
,
3
,
3
,
c
m
.
lcheck
)
c
:
EnableReviveLimit
()
--cannot link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
Tenka
.
KaedeMusic
(
c
)
--Attach
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCode
(
EVENT_TO_GRAVE
)
e1
:
SetCountLimit
(
1
,
81009015
)
e1
:
SetCondition
(
c
81009015
.
xyzcon
)
e1
:
SetTarget
(
c
81009015
.
xyztg
)
e1
:
SetOperation
(
c
81009015
.
xyzop
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
c
m
.
xyzcon
)
e1
:
SetTarget
(
c
m
.
xyztg
)
e1
:
SetOperation
(
c
m
.
xyzop
)
c
:
RegisterEffect
(
e1
)
--change name
local
e2
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -30,77 +28,50 @@ function c81009015.initial_effect(c)
c
:
RegisterEffect
(
e2
)
--material
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
81009015
,
0
))
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e3
:
SetType
(
EFFECT_TYPE_XMATERIAL
+
EFFECT_TYPE_IGNITION
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
)
e3
:
SetTarget
(
c
81009015
.
mttg
)
e3
:
SetOperation
(
c
81009015
.
mtop
)
e3
:
SetTarget
(
c
m
.
mttg
)
e3
:
SetOperation
(
c
m
.
mtop
)
c
:
RegisterEffect
(
e3
)
--effect gain
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e4
:
SetCode
(
EVENT_BE_MATERIAL
)
e4
:
SetCondition
(
c81009015
.
efcon
)
e4
:
SetOperation
(
c81009015
.
efop
)
c
:
RegisterEffect
(
e4
)
end
function
c
81009015
.
lcheck
(
g
,
lc
)
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
Card
.
IsLinkType
,
1
,
nil
,
TYPE_XYZ
)
end
function
c
81009015
.
xyzcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
xyzcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_ONFIELD
)
end
function
c
81009015
.
filter
(
c
)
function
c
m
.
filter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
end
function
c
81009015
.
xyztg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
81009015
.
filter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
81009015
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c
m
.
xyztg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
m
.
filter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
m
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarget
(
tp
,
c
81009015
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
SelectTarget
(
tp
,
c
m
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c
81009015
.
xyzop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
xyzop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
and
not
tc
:
IsImmuneToEffect
(
e
)
and
c
:
IsRelateToEffect
(
e
)
then
Duel
.
Overlay
(
tc
,
Group
.
FromCards
(
c
))
end
end
function
c
81009015
.
mtfilter
(
c
,
e
)
function
c
m
.
mtfilter
(
c
,
e
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
+
TYPE_LINK
)
and
not
c
:
IsImmuneToEffect
(
e
)
end
function
c
81009015
.
mttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
mttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsType
(
TYPE_XYZ
)
and
Duel
.
IsExistingMatchingCard
(
c
81009015
.
mtfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
)
end
and
Duel
.
IsExistingMatchingCard
(
c
m
.
mtfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
)
end
end
function
c
81009015
.
mtop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
mtop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsFacedown
()
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_XMATERIAL
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81009015
.
mtfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
mtfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
)
if
g
:
GetCount
()
>
0
then
Duel
.
Overlay
(
c
,
g
)
end
end
function
c81009015
.
efcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
r
==
REASON_XYZ
end
function
c81009015
.
efop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
rc
=
c
:
GetReasonCard
()
local
e1
=
Effect
.
CreateEffect
(
rc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
c81009015
.
sumcon
)
e1
:
SetOperation
(
c81009015
.
sumsuc
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1
,
true
)
end
function
c81009015
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
c81009015
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81009011
,
1
))
end
expansions/script/c81011001.lua
View file @
5f42b44d
--水晶艾蕾娜
function
c81011001
.
initial_effect
(
c
)
local
m
=
81011001
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsSummonType
,
SUMMON_TYPE_ADVANCE
),
1
,
1
)
Tenka
.
PyroLink
(
c
)
--spsummon bgm
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_CANNOT_NEGATE
)
e0
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e0
:
SetCondition
(
c
81011001
.
sumcon
)
e0
:
SetOperation
(
c
81011001
.
sumsuc
)
e0
:
SetCondition
(
c
m
.
sumcon
)
e0
:
SetOperation
(
c
m
.
sumsuc
)
c
:
RegisterEffect
(
e0
)
--search
local
e2
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -16,39 +21,32 @@ function c81011001.initial_effect(c)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetCode
(
EVENT_RELEASE
)
e2
:
SetCountLimit
(
1
,
81011001
)
e2
:
SetCondition
(
c
81011001
.
thcon
)
e2
:
SetTarget
(
c
81011001
.
thtg
)
e2
:
SetOperation
(
c
81011001
.
thop
)
e2
:
SetCountLimit
(
1
,
m
)
e2
:
SetCondition
(
c
m
.
thcon
)
e2
:
SetTarget
(
c
m
.
thtg
)
e2
:
SetOperation
(
c
m
.
thop
)
c
:
RegisterEffect
(
e2
)
--cannot be link material
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e3
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e3
:
SetValue
(
1
)
c
:
RegisterEffect
(
e3
)
end
function
c
81011001
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
sumcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
end
function
c
81011001
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
81011001
,
0
))
function
c
m
.
sumsuc
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_MUSIC
,
0
,
aux
.
Stringid
(
m
,
0
))
end
function
c
81011001
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsReason
(
REASON_SUMMON
)
end
function
c
81011001
.
filter
(
c
)
function
c
m
.
filter
(
c
)
return
c
:
IsLevelAbove
(
5
)
and
c
:
IsAbleToHand
()
end
function
c
81011001
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81011001
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
function
c
m
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c
81011001
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81011001
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
...
...
expansions/script/c81011066.lua
View file @
5f42b44d
...
...
@@ -6,13 +6,7 @@ function cm.initial_effect(c)
c
:
EnableReviveLimit
()
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLevelAbove
,
7
),
1
,
1
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
--
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
expansions/script/c81012005.lua
View file @
5f42b44d
--游戏女王·艾米莉
function
c81012005
.
initial_effect
(
c
)
local
m
=
81012005
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
4
,
4
,
c81012005
.
lcheck
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
4
,
4
,
cm
.
lcheck
)
Tenka
.
PyroLink
(
c
)
--destroy replace
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_DESTROY_REPLACE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetTarget
(
c
81012005
.
reptg
)
e1
:
SetValue
(
c
81012005
.
repval
)
e1
:
SetTarget
(
c
m
.
reptg
)
e1
:
SetValue
(
c
m
.
repval
)
c
:
RegisterEffect
(
e1
)
--copy effect
local
e2
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -24,10 +21,10 @@ function c81012005.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetCountLimit
(
1
,
81012005
)
e2
:
SetCondition
(
c
81012005
.
cpcon
)
e2
:
SetTarget
(
c
81012005
.
cptg
)
e2
:
SetOperation
(
c
81012005
.
cpop
)
e2
:
SetCountLimit
(
1
,
m
)
e2
:
SetCondition
(
c
m
.
cpcon
)
e2
:
SetTarget
(
c
m
.
cptg
)
e2
:
SetOperation
(
c
m
.
cpop
)
c
:
RegisterEffect
(
e2
)
--return to deck
local
e3
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -35,56 +32,56 @@ function c81012005.initial_effect(c)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e3
:
SetCode
(
EVENT_TO_GRAVE
)
e3
:
SetCountLimit
(
1
,
81012095
)
e3
:
SetCondition
(
c
81012005
.
tdcon
)
e3
:
SetTarget
(
c
81012005
.
tdtg
)
e3
:
SetOperation
(
c
81012005
.
tdop
)
e3
:
SetCountLimit
(
1
,
m
+
90
)
e3
:
SetCondition
(
c
m
.
tdcon
)
e3
:
SetTarget
(
c
m
.
tdtg
)
e3
:
SetOperation
(
c
m
.
tdop
)
c
:
RegisterEffect
(
e3
)
end
function
c
81012005
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
81012005
.
mzfilter
,
1
,
nil
)
and
g
:
GetClassCount
(
Card
.
GetOriginalCode
)
==
g
:
GetCount
()
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
m
.
mzfilter
,
1
,
nil
)
and
g
:
GetClassCount
(
Card
.
GetOriginalCode
)
==
g
:
GetCount
()
end
function
c
81012005
.
mzfilter
(
c
)
function
c
m
.
mzfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsLevelAbove
(
7
)
end
function
c
81012005
.
repfilter
(
c
,
tp
)
function
c
m
.
repfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsControler
(
tp
)
and
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsReason
(
REASON_BATTLE
+
REASON_EFFECT
)
and
not
c
:
IsReason
(
REASON_REPLACE
)
end
function
c
81012005
.
rmfilter
(
c
)
function
c
m
.
rmfilter
(
c
)
return
c
:
IsType
(
TYPE_SPELL
)
and
c
:
IsAbleToRemove
()
end
function
c
81012005
.
reptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
eg
:
IsExists
(
c
81012005
.
repfilter
,
1
,
nil
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
c
81012005
.
rmfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
function
c
m
.
reptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
eg
:
IsExists
(
c
m
.
repfilter
,
1
,
nil
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
c
m
.
rmfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
if
Duel
.
SelectEffectYesNo
(
tp
,
e
:
GetHandler
(),
96
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012005
.
rmfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
rmfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
+
REASON_REPLACE
)
return
true
end
return
false
end
function
c
81012005
.
repval
(
e
,
c
)
return
c
81012005
.
repfilter
(
c
,
e
:
GetHandlerPlayer
())
function
c
m
.
repval
(
e
,
c
)
return
c
m
.
repfilter
(
c
,
e
:
GetHandlerPlayer
())
end
function
c
81012005
.
cfilter
(
c
)
function
c
m
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
bit
.
band
(
c
:
GetType
(),
0x81
)
==
0x81
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012005
.
cpcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsExistingMatchingCard
(
c
81012005
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
function
c
m
.
cpcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsExistingMatchingCard
(
c
m
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c
81012005
.
cpfilter
(
c
)
function
c
m
.
cpfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_SPELL
)
and
c
:
IsAbleToDeck
()
and
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
c
81012005
.
cptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
function
c
m
.
cptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
local
te
=
e
:
GetLabelObject
()
local
tg
=
te
:
GetTarget
()
return
tg
and
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
,
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
81012005
.
cpfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
m
.
cpfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012005
.
cpfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
cpfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
local
te
,
ceg
,
cep
,
cev
,
cre
,
cr
,
crp
=
g
:
GetFirst
():
CheckActivateEffect
(
false
,
true
,
true
)
Duel
.
ClearTargetCard
()
g
:
GetFirst
():
CreateEffectRelation
(
e
)
...
...
@@ -95,7 +92,7 @@ function c81012005.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
nil
,
0
,
0
,
0
)
end
function
c
81012005
.
cpop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
cpop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
te
=
e
:
GetLabelObject
()
if
not
te
then
return
end
if
not
te
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
...
...
@@ -105,19 +102,19 @@ function c81012005.cpop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
BreakEffect
()
Duel
.
Remove
(
te
:
GetHandler
(),
POS_FACEUP
,
REASON_EFFECT
)
end
function
c
81012005
.
tdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
tdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_ONFIELD
)
end
function
c
81012005
.
tdfilter
(
c
)
function
c
m
.
tdfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
(
c
:
IsType
(
TYPE_PENDULUM
)
or
c
:
IsType
(
TYPE_SPELL
))
and
c
:
IsAbleToDeck
()
end
function
c
81012005
.
tdtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81012005
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
c
81012005
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
nil
)
function
c
m
.
tdtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
c
m
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
g
,
g
:
GetCount
(),
0
,
0
)
end
function
c
81012005
.
tdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c
81012005
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
nil
)
function
c
m
.
tdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c
m
.
tdfilter
,
tp
,
LOCATION_REMOVED
,
0
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoDeck
(
g
,
nil
,
2
,
REASON_EFFECT
)
end
...
...
expansions/script/c81012008.lua
View file @
5f42b44d
--漫读·艾米莉
function
c81012008
.
initial_effect
(
c
)
local
m
=
81012008
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
c81012008
.
matfilter
,
1
,
1
)
--cannot link material
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
aux
.
AddLinkProcedure
(
c
,
cm
.
matfilter
,
1
,
1
)
Tenka
.
PyroLink
(
c
)
--set
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e2
:
SetCountLimit
(
1
,
81012008
)
e2
:
SetCountLimit
(
1
,
m
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCondition
(
c
81012008
.
setcon
)
e2
:
SetTarget
(
c
81012008
.
settg
)
e2
:
SetOperation
(
c
81012008
.
setop
)
e2
:
SetCondition
(
c
m
.
setcon
)
e2
:
SetTarget
(
c
m
.
settg
)
e2
:
SetOperation
(
c
m
.
setop
)
c
:
RegisterEffect
(
e2
)
end
function
c
81012008
.
matfilter
(
c
)
function
c
m
.
matfilter
(
c
)
return
c
:
IsLinkType
(
TYPE_RITUAL
)
and
c
:
IsLinkType
(
TYPE_PENDULUM
)
end
function
c
81012008
.
cfilter
(
c
,
lg
)
function
c
m
.
cfilter
(
c
,
lg
)
return
c
:
IsSummonType
(
SUMMON_TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
lg
:
IsContains
(
c
)
end
function
c
81012008
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lg
=
e
:
GetHandler
():
GetLinkedGroup
()
return
eg
:
IsExists
(
c
81012008
.
cfilter
,
1
,
nil
,
lg
)
return
eg
:
IsExists
(
c
m
.
cfilter
,
1
,
nil
,
lg
)
end
function
c
81012008
.
setfilter
(
c
)
function
c
m
.
setfilter
(
c
)
return
c
:
IsType
(
TYPE_SPELL
)
and
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsSSetable
()
end
function
c
81012008
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c
81012008
.
setfilter
(
chkc
)
end
function
c
m
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c
m
.
setfilter
(
chkc
)
end
if
chk
==
0
then
return
true
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012008
.
setfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
setfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
1
,
0
,
0
)
end
function
c
81012008
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
and
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsSSetable
()
then
Duel
.
SSet
(
tp
,
tc
)
...
...
expansions/script/c81012025.lua
View file @
5f42b44d
--樱花树下·爱米莉
function
c81012025
.
initial_effect
(
c
)
local
m
=
81012025
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
2
,
2
,
c81012025
.
lcheck
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
2
,
2
,
cm
.
lcheck
)
Tenka
.
PyroLink
(
c
)
--tohand
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
81012025
)
e1
:
SetCondition
(
c
81012025
.
thcon
)
e1
:
SetTarget
(
c
81012025
.
thtg
)
e1
:
SetOperation
(
c
81012025
.
thop
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
c
m
.
thcon
)
e1
:
SetTarget
(
c
m
.
thtg
)
e1
:
SetOperation
(
c
m
.
thop
)
c
:
RegisterEffect
(
e1
)
--special summon
local
e3
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -25,48 +22,48 @@ function c81012025.initial_effect(c)
e3
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e3
:
SetType
(
EFFECT_TYPE_IGNITION
)
e3
:
SetRange
(
LOCATION_GRAVE
)
e3
:
SetCountLimit
(
1
,
81012925
)
e3
:
SetCountLimit
(
1
,
m
+
900
)
e3
:
SetCost
(
aux
.
bfgcost
)
e3
:
SetTarget
(
c
81012025
.
sptg2
)
e3
:
SetOperation
(
c
81012025
.
spop2
)
e3
:
SetTarget
(
c
m
.
sptg2
)
e3
:
SetOperation
(
c
m
.
spop2
)
c
:
RegisterEffect
(
e3
)
end
function
c
81012025
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
81012025
.
mzfilter
,
1
,
nil
)
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
m
.
mzfilter
,
1
,
nil
)
end
function
c
81012025
.
mzfilter
(
c
)
function
c
m
.
mzfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012025
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
end
function
c
81012025
.
filter
(
c
)
function
c
m
.
filter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
(
c
:
IsType
(
TYPE_PENDULUM
)
or
c
:
IsType
(
TYPE_SPELL
))
and
c
:
IsAbleToHand
()
end
function
c
81012025
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81012025
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
function
c
m
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c
81012025
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012025
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
function
c
81012025
.
spfilter2
(
c
,
e
,
tp
)
function
c
m
.
spfilter2
(
c
,
e
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsRace
(
RACE_PYRO
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
81012025
)
end
function
c
81012025
.
sptg2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_REMOVED
)
and
chkc
:
IsControler
(
tp
)
and
c
81012025
.
spfilter2
(
chkc
,
e
,
tp
)
end
function
c
m
.
sptg2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_REMOVED
)
and
chkc
:
IsControler
(
tp
)
and
c
m
.
spfilter2
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingTarget
(
c
81012025
.
spfilter2
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
end
and
Duel
.
IsExistingTarget
(
c
m
.
spfilter2
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012025
.
spfilter2
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
spfilter2
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
c
81012025
.
spop2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
spop2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
...
...
@@ -76,10 +73,10 @@ function c81012025.spop2(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c
81012025
.
splimit
)
e1
:
SetTarget
(
c
m
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c
81012025
.
splimit
(
e
,
c
)
function
c
m
.
splimit
(
e
,
c
)
return
not
c
:
IsRace
(
RACE_PYRO
)
and
c
:
IsLocation
(
LOCATION_EXTRA
)
end
expansions/script/c81012026.lua
View file @
5f42b44d
--粉红沙冰·爱米莉
function
c81012026
.
initial_effect
(
c
)
local
m
=
81012026
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
3
,
3
,
c81012026
.
lcheck
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
3
,
3
,
cm
.
lcheck
)
Tenka
.
PyroLink
(
c
)
--act limit
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_CHAINING
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetOperation
(
c
81012026
.
chainop
)
e1
:
SetOperation
(
c
m
.
chainop
)
c
:
RegisterEffect
(
e1
)
--cannot be target
local
e2
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -23,7 +20,7 @@ function c81012026.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e2
:
SetTargetRange
(
LOCATION_MZONE
,
0
)
e2
:
SetTarget
(
c
81012026
.
tgtg
)
e2
:
SetTarget
(
c
m
.
tgtg
)
e2
:
SetValue
(
aux
.
tgoval
)
c
:
RegisterEffect
(
e2
)
--remove
...
...
@@ -33,76 +30,76 @@ function c81012026.initial_effect(c)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetRange
(
LOCATION_SZONE
)
e3
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
+
EFFECT_FLAG_DELAY
)
e3
:
SetCountLimit
(
1
,
81012026
)
e3
:
SetCondition
(
c
81012026
.
rmcon
)
e3
:
SetTarget
(
c
81012026
.
rmtg
)
e3
:
SetOperation
(
c
81012026
.
rmop
)
e3
:
SetCountLimit
(
1
,
m
)
e3
:
SetCondition
(
c
m
.
rmcon
)
e3
:
SetTarget
(
c
m
.
rmtg
)
e3
:
SetOperation
(
c
m
.
rmop
)
c
:
RegisterEffect
(
e3
)
--set
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e5
:
SetCode
(
EVENT_DESTROYED
)
e5
:
SetCountLimit
(
1
,
81012926
)
e5
:
SetCondition
(
c
81012026
.
setcon
)
e5
:
SetTarget
(
c
81012026
.
settg
)
e5
:
SetOperation
(
c
81012026
.
setop
)
e5
:
SetCountLimit
(
1
,
m
+
900
)
e5
:
SetCondition
(
c
m
.
setcon
)
e5
:
SetTarget
(
c
m
.
settg
)
e5
:
SetOperation
(
c
m
.
setop
)
c
:
RegisterEffect
(
e5
)
end
function
c
81012026
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
81012026
.
mzfilter
,
1
,
nil
)
and
g
:
GetClassCount
(
Card
.
GetCode
)
==
g
:
GetCount
()
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
m
.
mzfilter
,
1
,
nil
)
and
g
:
GetClassCount
(
Card
.
GetCode
)
==
g
:
GetCount
()
end
function
c
81012026
.
mzfilter
(
c
)
function
c
m
.
mzfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsLevelAbove
(
4
)
end
function
c
81012026
.
chainop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
chainop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
rc
=
re
:
GetHandler
()
if
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
and
ep
==
tp
and
re
:
IsActiveType
(
TYPE_RITUAL
)
then
Duel
.
SetChainLimit
(
c
81012026
.
chainlm
)
Duel
.
SetChainLimit
(
c
m
.
chainlm
)
end
end
function
c
81012026
.
chainlm
(
e
,
rp
,
tp
)
function
c
m
.
chainlm
(
e
,
rp
,
tp
)
return
tp
==
rp
end
function
c
81012026
.
tgtg
(
e
,
c
)
function
c
m
.
tgtg
(
e
,
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsType
(
TYPE_RITUAL
)
end
function
c
81012026
.
cfilter
(
c
,
tp
)
function
c
m
.
cfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsSummonType
(
SUMMON_TYPE_RITUAL
)
and
lg
:
IsContains
(
c
)
end
function
c
81012026
.
rmcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
rmcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lg
=
e
:
GetHandler
():
GetLinkedGroup
()
return
eg
:
IsExists
(
c
81012026
.
cfilter
,
1
,
nil
,
lg
)
return
eg
:
IsExists
(
c
m
.
cfilter
,
1
,
nil
,
lg
)
end
function
c
81012026
.
rmtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
function
c
m
.
rmtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsOnField
()
and
chkc
:
IsAbleToRemove
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c
81012026
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_EFFECT
)
end
end
function
c
81012026
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
rp
==
1
-
tp
and
c
:
GetPreviousControler
()
==
tp
and
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
end
function
c
81012026
.
setfilter
(
c
)
function
c
m
.
setfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_SPELL
)
and
c
:
IsSSetable
()
end
function
c
81012026
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
c
81012026
.
setfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
81012026
.
setfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
nil
)
end
function
c
m
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
c
m
.
setfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
m
.
setfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012026
.
setfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
setfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
1
,
0
,
0
)
end
function
c
81012026
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsSSetable
()
then
Duel
.
SSet
(
tp
,
tc
)
...
...
expansions/script/c81012028.lua
View file @
5f42b44d
--只是早餐·爱米莉
function
c81012028
.
initial_effect
(
c
)
local
m
=
81012028
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_PENDULUM
),
3
,
3
,
c
81012028
.
lcheck
)
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_PENDULUM
),
3
,
3
,
c
m
.
lcheck
)
c
:
EnableReviveLimit
()
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
--draw
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_DRAW
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCondition
(
c
81012028
.
drcon
)
e1
:
SetTarget
(
c
81012028
.
drtg
)
e1
:
SetOperation
(
c
81012028
.
drop
)
e1
:
SetCondition
(
c
m
.
drcon
)
e1
:
SetTarget
(
c
m
.
drtg
)
e1
:
SetOperation
(
c
m
.
drop
)
c
:
RegisterEffect
(
e1
)
--spsummon
local
e3
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -26,55 +23,55 @@ function c81012028.initial_effect(c)
e3
:
SetType
(
EFFECT_TYPE_IGNITION
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e3
:
SetCountLimit
(
1
,
81012928
)
e3
:
SetTarget
(
c
81012028
.
sptg
)
e3
:
SetOperation
(
c
81012028
.
spop
)
e3
:
SetCountLimit
(
1
,
m
+
900
)
e3
:
SetTarget
(
c
m
.
sptg
)
e3
:
SetOperation
(
c
m
.
spop
)
c
:
RegisterEffect
(
e3
)
end
function
c
81012028
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
81012028
.
mzfilter
,
1
,
nil
)
function
c
m
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
c
m
.
mzfilter
,
1
,
nil
)
end
function
c
81012028
.
mzfilter
(
c
)
function
c
m
.
mzfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012028
.
cfilter
(
c
,
lg
,
tp
)
function
c
m
.
cfilter
(
c
,
lg
,
tp
)
return
c
:
IsRace
(
RACE_PYRO
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsSummonType
(
SUMMON_TYPE_RITUAL
)
and
lg
:
IsContains
(
c
)
and
not
Duel
.
IsExistingMatchingCard
(
c
81012028
.
drfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
c
:
GetCode
())
and
not
Duel
.
IsExistingMatchingCard
(
c
m
.
drfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
c
:
GetCode
())
end
function
c
81012028
.
drfilter
(
c
,
code
)
function
c
m
.
drfilter
(
c
,
code
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
code
)
end
function
c
81012028
.
drcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
drcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lg
=
e
:
GetHandler
():
GetLinkedGroup
()
return
eg
:
IsExists
(
c
81012028
.
cfilter
,
1
,
nil
,
lg
,
tp
)
return
eg
:
IsExists
(
c
m
.
cfilter
,
1
,
nil
,
lg
,
tp
)
end
function
c
81012028
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetTargetPlayer
(
tp
)
Duel
.
SetTargetParam
(
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
1
)
end
function
c
81012028
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Draw
(
p
,
d
,
REASON_EFFECT
)
end
function
c
81012028
.
counterfilter
(
c
)
function
c
m
.
counterfilter
(
c
)
return
c
:
IsRace
(
RACE_PYRO
)
end
function
c
81012028
.
filter
(
c
,
e
,
tp
,
zone
)
function
c
m
.
filter
(
c
,
e
,
tp
,
zone
)
return
c
:
IsRace
(
RACE_PYRO
)
and
not
c
:
IsType
(
TYPE_LINK
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
,
tp
,
zone
)
end
function
c
81012028
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
function
c
m
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
zone
=
bit
.
band
(
e
:
GetHandler
():
GetLinkedZone
(
tp
),
0x1f
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c
81012028
.
filter
(
chkc
,
e
,
tp
,
zone
)
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c
m
.
filter
(
chkc
,
e
,
tp
,
zone
)
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingTarget
(
c
81012028
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
,
zone
)
end
and
Duel
.
IsExistingTarget
(
c
m
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
,
zone
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012028
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
,
zone
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
,
zone
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
c
81012028
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
local
zone
=
bit
.
band
(
e
:
GetHandler
():
GetLinkedZone
(
tp
),
0x1f
)
if
tc
:
IsRelateToEffect
(
e
)
and
zone
~=
0
then
...
...
@@ -85,10 +82,10 @@ function c81012028.spop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c
81012028
.
splimit
)
e1
:
SetTarget
(
c
m
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c
81012028
.
splimit
(
e
,
c
)
function
c
m
.
splimit
(
e
,
c
)
return
not
c
:
IsRace
(
RACE_PYRO
)
end
expansions/script/c81012053.lua
View file @
5f42b44d
--实习女仆·双叶
function
c81012053
.
initial_effect
(
c
)
local
m
=
81012053
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkRace
,
RACE_PYRO
),
2
)
Tenka
.
PyroLink
(
c
)
--set
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
81012053
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
81012053
)
e1
:
SetCondition
(
c
81012053
.
setcon
)
e1
:
SetTarget
(
c
81012053
.
settg
)
e1
:
SetOperation
(
c
81012053
.
setop
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
c
m
.
setcon
)
e1
:
SetTarget
(
c
m
.
settg
)
e1
:
SetOperation
(
c
m
.
setop
)
c
:
RegisterEffect
(
e1
)
--cannot be link material
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e2
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
--to hand
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
81012053
,
1
))
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
1
))
e3
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e3
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
81012953
)
e3
:
SetCondition
(
c
81012053
.
thcon
)
e3
:
SetTarget
(
c
81012053
.
thtg
)
e3
:
SetOperation
(
c
81012053
.
thop
)
e3
:
SetCondition
(
c
m
.
thcon
)
e3
:
SetTarget
(
c
m
.
thtg
)
e3
:
SetOperation
(
c
m
.
thop
)
c
:
RegisterEffect
(
e3
)
end
function
c
81012053
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
end
function
c
81012053
.
setfilter1
(
c
,
tp
)
function
c
m
.
setfilter1
(
c
,
tp
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
not
c
:
IsForbidden
()
and
Duel
.
IsExistingMatchingCard
(
c
81012053
.
setfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
c
:
GetCode
())
and
Duel
.
IsExistingMatchingCard
(
c
m
.
setfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
c
:
GetCode
())
end
function
c
81012053
.
setfilter2
(
c
,
code
)
function
c
m
.
setfilter2
(
c
,
code
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
not
c
:
IsCode
(
code
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
not
c
:
IsForbidden
()
end
function
c
81012053
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
settg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
0
)
and
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
1
)
and
Duel
.
IsExistingMatchingCard
(
c
81012053
.
setfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
tp
)
end
and
Duel
.
IsExistingMatchingCard
(
c
m
.
setfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
tp
)
end
end
function
c
81012053
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
0
)
or
not
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
1
)
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012053
.
setfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tp
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
setfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tp
)
local
tc1
=
g1
:
GetFirst
()
if
not
tc1
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012053
.
setfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tc1
:
GetCode
())
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
setfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tc1
:
GetCode
())
local
tc2
=
g2
:
GetFirst
()
Duel
.
MoveToField
(
tc1
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
Duel
.
MoveToField
(
tc2
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
...
...
@@ -65,30 +62,30 @@ function c81012053.setop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c
81012053
.
splimit
)
e1
:
SetTarget
(
c
m
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c
81012053
.
splimit
(
e
,
c
)
function
c
m
.
splimit
(
e
,
c
)
return
not
c
:
IsRace
(
RACE_PYRO
)
end
function
c
81012053
.
cfilter
(
c
,
lg
)
function
c
m
.
cfilter
(
c
,
lg
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
lg
:
IsContains
(
c
)
end
function
c
81012053
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lg
=
e
:
GetHandler
():
GetLinkedGroup
()
return
eg
:
IsExists
(
c
81012053
.
cfilter
,
1
,
nil
,
lg
)
return
eg
:
IsExists
(
c
m
.
cfilter
,
1
,
nil
,
lg
)
end
function
c
81012053
.
thfilter
(
c
)
function
c
m
.
thfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_SPELL
)
and
c
:
IsAbleToHand
()
end
function
c
81012053
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81012053
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
function
c
m
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c
81012053
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012053
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
...
...
expansions/script/c81012054.lua
View file @
5f42b44d
--害羞女仆·理子
function
c81012054
.
initial_effect
(
c
)
local
m
=
81012054
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
c
81012054
.
mfilter
,
2
)
aux
.
AddLinkProcedure
(
c
,
c
m
.
mfilter
,
2
)
c
:
EnableReviveLimit
()
Tenka
.
PyroLink
(
c
)
--spsummon
local
e0
=
aux
.
AddRitualProcEqual2
(
c
,
c
81012054
.
filter
,
LOCATION_REMOVED
,
nil
,
c81012054
.
psfilter
)
local
e0
=
aux
.
AddRitualProcEqual2
(
c
,
c
m
.
filter
,
LOCATION_REMOVED
,
nil
,
cm
.
psfilter
)
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetCode
(
0
)
e0
:
SetCountLimit
(
1
,
81012054
)
e0
:
SetCountLimit
(
1
,
m
)
e0
:
SetRange
(
LOCATION_MZONE
)
e0
:
SetCost
(
c
81012054
.
cost
)
e0
:
SetCost
(
c
m
.
cost
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
...
...
@@ -18,44 +22,37 @@ function c81012054.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCountLimit
(
1
,
81012954
)
e2
:
SetCondition
(
c
81012054
.
spcon
)
e2
:
SetTarget
(
c
81012054
.
sptg
)
e2
:
SetOperation
(
c
81012054
.
spop
)
e2
:
SetCondition
(
c
m
.
spcon
)
e2
:
SetTarget
(
c
m
.
sptg
)
e2
:
SetOperation
(
c
m
.
spop
)
c
:
RegisterEffect
(
e2
)
--cannot be link material
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e3
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e3
:
SetValue
(
1
)
c
:
RegisterEffect
(
e3
)
end
function
c81012054
.
mfilter
(
c
)
end
function
cm
.
mfilter
(
c
)
return
c
:
IsLinkType
(
TYPE_PENDULUM
)
and
c
:
IsLinkRace
(
RACE_PYRO
)
end
function
c
81012054
.
filter
(
c
)
function
c
m
.
filter
(
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsType
(
TYPE_RITUAL
)
end
function
c
81012054
.
psfilter
(
c
,
e
,
tp
)
function
c
m
.
psfilter
(
c
,
e
,
tp
)
return
c
~=
e
:
GetHandler
()
end
function
c
81012054
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsReleasable
()
end
Duel
.
Release
(
e
:
GetHandler
(),
REASON_COST
)
end
function
c
81012054
.
spcfilter
(
c
,
tp
)
function
c
m
.
spcfilter
(
c
,
tp
)
return
c
:
IsSummonType
(
SUMMON_TYPE_RITUAL
)
and
c
:
IsReason
(
REASON_BATTLE
+
REASON_EFFECT
)
and
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
GetPreviousControler
()
==
tp
end
function
c
81012054
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
c
81012054
.
spcfilter
,
1
,
nil
,
tp
)
function
c
m
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
c
m
.
spcfilter
,
1
,
nil
,
tp
)
end
function
c
81012054
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c
81012054
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
...
...
expansions/script/c81012063.lua
View file @
5f42b44d
--特别礼物·爱米莉
function
c81012063
.
initial_effect
(
c
)
local
m
=
81012063
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
c81012063
.
matfilter
,
4
,
4
)
aux
.
AddLinkProcedure
(
c
,
cm
.
matfilter
,
4
,
4
)
Tenka
.
PyroLink
(
c
)
--immune
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_IMMUNE_EFFECT
)
e0
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e0
:
SetRange
(
LOCATION_MZONE
)
e0
:
SetCondition
(
c
81012063
.
tgcon
)
e0
:
SetValue
(
c
81012063
.
efilter
)
e0
:
SetCondition
(
c
m
.
tgcon
)
e0
:
SetValue
(
c
m
.
efilter
)
c
:
RegisterEffect
(
e0
)
--summon success
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
c
81012063
.
regcon
)
e1
:
SetOperation
(
c
81012063
.
regop
)
e1
:
SetCondition
(
c
m
.
regcon
)
e1
:
SetOperation
(
c
m
.
regop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetCode
(
EFFECT_MATERIAL_CHECK
)
e2
:
SetValue
(
c
81012063
.
valcheck
)
e2
:
SetValue
(
c
m
.
valcheck
)
e2
:
SetLabelObject
(
e1
)
c
:
RegisterEffect
(
e2
)
--spsummon
local
e3
=
aux
.
AddRitualProcGreater2
(
c
,
c
81012063
.
filter
,
LOCATION_DECK
)
e3
:
SetDescription
(
aux
.
Stringid
(
81012063
,
0
))
local
e3
=
aux
.
AddRitualProcGreater2
(
c
,
c
m
.
filter
,
LOCATION_DECK
)
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e3
:
SetType
(
EFFECT_TYPE_IGNITION
)
e3
:
SetCode
(
0
)
e3
:
SetCountLimit
(
1
,
81012063
)
e3
:
SetCountLimit
(
1
,
m
)
e3
:
SetRange
(
LOCATION_MZONE
)
--cannot be link material
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
)
e4
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e4
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e4
:
SetValue
(
1
)
c
:
RegisterEffect
(
e4
)
--activate limit
local
e6
=
Effect
.
CreateEffect
(
c
)
e6
:
SetDescription
(
aux
.
Stringid
(
81012063
,
1
))
e6
:
SetDescription
(
aux
.
Stringid
(
m
,
1
))
e6
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e6
:
SetCode
(
EVENT_FREE_CHAIN
)
e6
:
SetRange
(
LOCATION_MZONE
)
e6
:
SetHintTiming
(
0
,
TIMING_DRAW_PHASE
)
e6
:
SetCountLimit
(
1
,
81012963
)
e6
:
SetCost
(
c
81012063
.
actcost
)
e6
:
SetOperation
(
c
81012063
.
actop
)
e6
:
SetCountLimit
(
1
,
m
+
900
)
e6
:
SetCost
(
c
m
.
actcost
)
e6
:
SetOperation
(
c
m
.
actop
)
c
:
RegisterEffect
(
e6
)
end
function
c
81012063
.
matfilter
(
c
)
function
c
m
.
matfilter
(
c
)
return
c
:
IsLinkRace
(
RACE_PYRO
)
and
c
:
IsLinkType
(
TYPE_PENDULUM
)
and
c
:
IsLevelAbove
(
8
)
end
function
c
81012063
.
regcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
regcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
and
e
:
GetLabel
()
==
1
end
function
c
81012063
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
81012063
,
RESET_EVENT
+
RESETS_STANDARD
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
81012063
,
2
))
function
c
m
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetHandler
():
RegisterFlagEffect
(
m
,
RESET_EVENT
+
RESETS_STANDARD
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
m
,
2
))
end
function
c
81012063
.
valfilter
(
c
)
function
c
m
.
valfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012063
.
valcheck
(
e
,
c
)
function
c
m
.
valcheck
(
e
,
c
)
local
g
=
c
:
GetMaterial
()
if
g
:
IsExists
(
c
81012063
.
valfilter
,
1
,
nil
)
then
if
g
:
IsExists
(
c
m
.
valfilter
,
1
,
nil
)
then
e
:
GetLabelObject
():
SetLabel
(
1
)
else
e
:
GetLabelObject
():
SetLabel
(
0
)
end
end
function
c
81012063
.
tgcon
(
e
)
return
e
:
GetHandler
():
GetFlagEffect
(
81012063
)
>
0
function
c
m
.
tgcon
(
e
)
return
e
:
GetHandler
():
GetFlagEffect
(
m
)
>
0
end
function
c
81012063
.
efilter
(
e
,
te
)
function
c
m
.
efilter
(
e
,
te
)
return
te
:
GetOwner
()
~=
e
:
GetOwner
()
end
function
c
81012063
.
filter
(
c
)
function
c
m
.
filter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsRace
(
RACE_PYRO
)
end
function
c
81012063
.
cfilter
(
c
)
function
c
m
.
cfilter
(
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012063
.
actcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
c
81012063
.
cfilter
,
1
,
nil
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
c
81012063
.
cfilter
,
1
,
1
,
nil
)
function
c
m
.
actcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
c
m
.
cfilter
,
1
,
nil
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
c
m
.
cfilter
,
1
,
1
,
nil
)
Duel
.
Release
(
g
,
REASON_COST
)
end
function
c
81012063
.
actop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
actop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e2
:
SetCode
(
EFFECT_CANNOT_ACTIVATE
)
e2
:
SetTargetRange
(
0
,
1
)
e2
:
SetValue
(
c
81012063
.
aclimit
)
e2
:
SetValue
(
c
m
.
aclimit
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
function
c
81012063
.
aclimit
(
e
,
re
,
tp
)
function
c
m
.
aclimit
(
e
,
re
,
tp
)
local
loc
=
re
:
GetActivateLocation
()
return
(
loc
==
LOCATION_SZONE
and
not
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
))
or
(
loc
==
LOCATION_MZONE
and
re
:
IsActiveType
(
TYPE_MONSTER
))
end
expansions/script/c81012070.lua
View file @
5f42b44d
--假日散步·双叶
function
c81012070
.
initial_effect
(
c
)
local
m
=
81012070
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
c81012070
.
matfilter
,
1
,
1
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
aux
.
AddLinkProcedure
(
c
,
cm
.
matfilter
,
1
,
1
)
Tenka
.
PyroLink
(
c
)
--extra pendulum
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetType
(
EFFECT_TYPE_IGNITION
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetCountLimit
(
1
,
81012070
+
EFFECT_COUNT_CODE_DUEL
)
e5
:
SetCost
(
c
81012070
.
expcost
)
e5
:
SetOperation
(
c
81012070
.
expop
)
e5
:
SetCountLimit
(
1
,
m
+
EFFECT_COUNT_CODE_DUEL
)
e5
:
SetCost
(
c
m
.
expcost
)
e5
:
SetOperation
(
c
m
.
expop
)
c
:
RegisterEffect
(
e5
)
end
function
c
81012070
.
matfilter
(
c
)
function
c
m
.
matfilter
(
c
)
return
c
:
IsLinkType
(
TYPE_RITUAL
)
and
c
:
IsLinkType
(
TYPE_PENDULUM
)
and
c
:
GetOriginalLevel
()
>
7
end
function
c
81012070
.
costfilter
(
c
,
tp
,
mc
)
function
c
m
.
costfilter
(
c
,
tp
,
mc
)
local
lg
=
mc
:
GetLinkedGroup
()
return
lg
:
IsContains
(
c
)
and
c
:
IsAbleToRemoveAsCost
()
and
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c
81012070
.
expcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c
m
.
expcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81012070
.
costfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
tp
,
c
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
costfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
tp
,
c
)
and
c
:
IsAbleToRemoveAsCost
()
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012070
.
costfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
c
,
tp
,
c
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
costfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
c
,
tp
,
c
)
g
:
AddCard
(
c
)
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_COST
)
end
function
c
81012070
.
expop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
expop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
81012070
,
4
))
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
4
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_EXTRA_PENDULUM_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetValue
(
c
81012070
.
pendvalue
)
e1
:
SetValue
(
c
m
.
pendvalue
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c
81012070
.
pendvalue
(
e
,
c
)
function
c
m
.
pendvalue
(
e
,
c
)
return
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
expansions/script/c81012074.lua
View file @
5f42b44d
--青梅竹马·爱米莉
function
c81012074
.
initial_effect
(
c
)
local
m
=
81012074
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkType
,
TYPE_EFFECT
),
2
,
2
)
c
:
EnableReviveLimit
()
Tenka
.
PyroLink
(
c
)
--remove
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
81012074
,
0
))
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e2
:
SetCategory
(
CATEGORY_REMOVE
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetCountLimit
(
1
,
81012074
)
e2
:
SetTarget
(
c
81012074
.
target
)
e2
:
SetOperation
(
c
81012074
.
operation
)
e2
:
SetCountLimit
(
1
,
m
)
e2
:
SetTarget
(
c
m
.
target
)
e2
:
SetOperation
(
c
m
.
operation
)
c
:
RegisterEffect
(
e2
)
--atkup
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
81012074
,
1
))
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
1
))
e3
:
SetCategory
(
CATEGORY_ATKCHANGE
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_BATTLE_START
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
81012974
)
e3
:
SetCondition
(
c
81012074
.
atkcon
)
e3
:
SetCost
(
c
81012074
.
atkcost
)
e3
:
SetOperation
(
c
81012074
.
atkop
)
e3
:
SetCountLimit
(
1
,
m
+
900
)
e3
:
SetCondition
(
c
m
.
atkcon
)
e3
:
SetCost
(
c
m
.
atkcost
)
e3
:
SetOperation
(
c
m
.
atkop
)
c
:
RegisterEffect
(
e3
)
end
function
c
81012074
.
rmfilter
(
c
)
function
c
m
.
rmfilter
(
c
)
return
c
:
IsRace
(
RACE_PYRO
)
and
c
:
IsAbleToRemove
()
end
function
c
81012074
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
81012074
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
81012074
.
rmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c
m
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c
m
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c
m
.
rmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
81012074
.
rmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c
m
.
rmfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c
81012074
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
Duel
.
Remove
(
tc
,
0
,
REASON_EFFECT
+
REASON_TEMPORARY
)
~=
0
then
...
...
@@ -50,8 +54,8 @@ function c81012074.operation(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_STANDBY
)
e1
:
SetCountLimit
(
1
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetCondition
(
c
81012074
.
retcon
)
e1
:
SetOperation
(
c
81012074
.
retop
)
e1
:
SetCondition
(
c
m
.
retcon
)
e1
:
SetOperation
(
c
m
.
retop
)
if
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
GetCurrentPhase
()
==
PHASE_STANDBY
then
e1
:
SetReset
(
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
2
)
e1
:
SetValue
(
Duel
.
GetTurnCount
())
...
...
@@ -63,31 +67,31 @@ function c81012074.operation(e,tp,eg,ep,ev,re,r,rp)
tc
:
RegisterFlagEffect
(
81012975
,
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
ct
)
end
end
function
c
81012074
.
retcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
retcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetTurnPlayer
()
~=
tp
or
Duel
.
GetTurnCount
()
==
e
:
GetValue
()
then
return
false
end
return
e
:
GetLabelObject
():
GetFlagEffect
(
81012975
)
~=
0
end
function
c
81012074
.
retop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
retop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
e
:
GetLabelObject
()
Duel
.
ReturnToField
(
tc
)
end
function
c
81012074
.
atkcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
atkcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetAttacker
()
if
tc
:
IsControler
(
1
-
tp
)
then
tc
=
Duel
.
GetAttackTarget
()
end
e
:
SetLabelObject
(
tc
)
return
tc
and
tc
:
IsControler
(
tp
)
and
tc
:
IsRace
(
RACE_PYRO
)
and
tc
:
IsRelateToBattle
()
and
Duel
.
GetAttackTarget
()
~=
nil
end
function
c
81012074
.
atkfilter
(
c
)
function
c
m
.
atkfilter
(
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsType
(
TYPE_RITUAL
)
and
c
:
GetAttack
()
>
0
and
c
:
IsDiscardable
()
end
function
c
81012074
.
atkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
81012074
.
atkfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
function
c
m
.
atkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c
m
.
atkfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DISCARD
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
81012074
.
atkfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c
m
.
atkfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
e
:
SetLabel
(
g
:
GetFirst
():
GetAttack
())
Duel
.
SendtoGrave
(
g
,
REASON_COST
+
REASON_DISCARD
)
end
function
c
81012074
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c
m
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
local
tc
=
e
:
GetLabelObject
()
if
tc
:
IsRelateToBattle
()
and
tc
:
IsFaceup
()
and
tc
:
IsControler
(
tp
)
then
...
...
expansions/script/c81012087.lua
View file @
5f42b44d
--秋夜花火·爱米莉
local
m
=
81012087
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
cm
.
mfilter
,
1
,
1
)
c
:
EnableReviveLimit
()
Tenka
.
PyroLink
(
c
)
--
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
@@ -25,13 +27,6 @@ function cm.initial_effect(c)
e1
:
SetTarget
(
cm
.
sptg
)
e1
:
SetOperation
(
cm
.
spop
)
c
:
RegisterEffect
(
e1
)
--cannot be link material
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e3
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e3
:
SetValue
(
1
)
c
:
RegisterEffect
(
e3
)
end
function
cm
.
mfilter
(
c
)
return
c
:
IsLinkType
(
TYPE_PENDULUM
)
and
c
:
IsLinkRace
(
RACE_PYRO
)
...
...
expansions/script/c81022005.lua
View file @
5f42b44d
--草莓芭菲·拉蒂
local
m
=
81022005
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkRace
,
RACE_PYRO
),
2
)
Tenka
.
PyroLink
(
c
)
--token
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
...
...
expansions/script/c81022010.lua
View file @
5f42b44d
--读书时间·理子
local
m
=
81022010
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkRace
,
RACE_PYRO
),
4
,
4
)
--cannot be link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
...
...
expansions/script/c81022025.lua
View file @
5f42b44d
--到站电车·拉蒂
local
m
=
81022025
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"c81000000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkRace
,
RACE_PYRO
),
2
,
2
)
Tenka
.
PyroLink
(
c
)
--summon success
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
...
...
expansions/script/c81022032.lua
View file @
5f42b44d
...
...
@@ -6,6 +6,7 @@ function cm.initial_effect(c)
--link summon
aux
.
AddLinkProcedure
(
c
,
cm
.
mfilter
,
2
)
c
:
EnableReviveLimit
()
Tenka
.
PyroLink
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
...
...
@@ -30,13 +31,6 @@ function cm.initial_effect(c)
e2
:
SetTarget
(
cm
.
thtg
)
e2
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e2
)
--cannot be link material
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e3
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e3
:
SetValue
(
1
)
c
:
RegisterEffect
(
e3
)
end
function
cm
.
mfilter
(
c
)
return
c
:
IsLinkType
(
TYPE_PENDULUM
)
and
c
:
IsLinkRace
(
RACE_PYRO
)
...
...
expansions/script/c81022044.lua
View file @
5f42b44d
...
...
@@ -6,6 +6,7 @@ function cm.initial_effect(c)
--link summon
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLinkRace
,
RACE_PYRO
),
2
)
Tenka
.
PyroLink
(
c
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
...
...
expansions/script/c81041037.lua
View file @
5f42b44d
...
...
@@ -7,13 +7,7 @@ function cm.initial_effect(c)
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
c
,
cm
.
matfilter
,
2
)
Tenka
.
KoikakeLink
(
c
)
--cannot link material
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
e0
:
SetValue
(
1
)
c
:
RegisterEffect
(
e0
)
Tenka
.
PyroLink
(
c
)
--Negate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_NEGATE
+
CATEGORY_DESTROY
)
...
...
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