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
add63643
Commit
add63643
authored
Sep 19, 2023
by
Huangnan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pre card update
parent
6dfa6062
Pipeline
#23511
passed with stages
in 25 minutes and 38 seconds
Changes
77
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
77 changed files
with
303 additions
and
244 deletions
+303
-244
expansions/222pre-DBVS.cdb
expansions/222pre-DBVS.cdb
+0
-0
expansions/222pre.cdb
expansions/222pre.cdb
+0
-0
expansions/pre-release.cdb
expansions/pre-release.cdb
+0
-0
expansions/script/c100314001.lua
expansions/script/c100314001.lua
+1
-1
expansions/script/c100314002.lua
expansions/script/c100314002.lua
+1
-0
expansions/script/c100314003.lua
expansions/script/c100314003.lua
+3
-3
expansions/script/c100314024.lua
expansions/script/c100314024.lua
+1
-0
expansions/script/c100314025.lua
expansions/script/c100314025.lua
+1
-1
expansions/script/c100314033.lua
expansions/script/c100314033.lua
+1
-1
expansions/script/c100421010.lua
expansions/script/c100421010.lua
+3
-3
expansions/script/c101201081.lua
expansions/script/c101201081.lua
+1
-1
expansions/script/c101201083.lua
expansions/script/c101201083.lua
+2
-2
expansions/script/c101201085.lua
expansions/script/c101201085.lua
+1
-1
expansions/script/c101201086.lua
expansions/script/c101201086.lua
+1
-0
expansions/script/c101201089.lua
expansions/script/c101201089.lua
+2
-1
expansions/script/c101201091.lua
expansions/script/c101201091.lua
+5
-6
expansions/script/c101202001.lua
expansions/script/c101202001.lua
+1
-1
expansions/script/c101202002.lua
expansions/script/c101202002.lua
+4
-3
expansions/script/c101202003.lua
expansions/script/c101202003.lua
+2
-1
expansions/script/c101202004.lua
expansions/script/c101202004.lua
+3
-2
expansions/script/c101202005.lua
expansions/script/c101202005.lua
+2
-3
expansions/script/c101202006.lua
expansions/script/c101202006.lua
+1
-1
expansions/script/c101202007.lua
expansions/script/c101202007.lua
+3
-2
expansions/script/c101202008.lua
expansions/script/c101202008.lua
+6
-2
expansions/script/c101202009.lua
expansions/script/c101202009.lua
+3
-2
expansions/script/c101202010.lua
expansions/script/c101202010.lua
+3
-2
expansions/script/c101202013.lua
expansions/script/c101202013.lua
+3
-2
expansions/script/c101202017.lua
expansions/script/c101202017.lua
+4
-4
expansions/script/c101202020.lua
expansions/script/c101202020.lua
+28
-9
expansions/script/c101202021.lua
expansions/script/c101202021.lua
+2
-1
expansions/script/c101202022.lua
expansions/script/c101202022.lua
+1
-1
expansions/script/c101202023.lua
expansions/script/c101202023.lua
+4
-3
expansions/script/c101202024.lua
expansions/script/c101202024.lua
+5
-6
expansions/script/c101202025.lua
expansions/script/c101202025.lua
+2
-3
expansions/script/c101202026.lua
expansions/script/c101202026.lua
+3
-2
expansions/script/c101202027.lua
expansions/script/c101202027.lua
+1
-3
expansions/script/c101202028.lua
expansions/script/c101202028.lua
+7
-5
expansions/script/c101202029.lua
expansions/script/c101202029.lua
+6
-4
expansions/script/c101202030.lua
expansions/script/c101202030.lua
+1
-1
expansions/script/c101202031.lua
expansions/script/c101202031.lua
+11
-8
expansions/script/c101202032.lua
expansions/script/c101202032.lua
+19
-20
expansions/script/c101202033.lua
expansions/script/c101202033.lua
+3
-2
expansions/script/c101202034.lua
expansions/script/c101202034.lua
+3
-2
expansions/script/c101202035.lua
expansions/script/c101202035.lua
+4
-4
expansions/script/c101202036.lua
expansions/script/c101202036.lua
+5
-4
expansions/script/c101202037.lua
expansions/script/c101202037.lua
+1
-1
expansions/script/c101202039.lua
expansions/script/c101202039.lua
+2
-8
expansions/script/c101202040.lua
expansions/script/c101202040.lua
+8
-13
expansions/script/c101202041.lua
expansions/script/c101202041.lua
+2
-2
expansions/script/c101202042.lua
expansions/script/c101202042.lua
+14
-10
expansions/script/c101202043.lua
expansions/script/c101202043.lua
+1
-1
expansions/script/c101202045.lua
expansions/script/c101202045.lua
+4
-3
expansions/script/c101202046.lua
expansions/script/c101202046.lua
+12
-8
expansions/script/c101202047.lua
expansions/script/c101202047.lua
+2
-1
expansions/script/c101202049.lua
expansions/script/c101202049.lua
+2
-2
expansions/script/c101202050.lua
expansions/script/c101202050.lua
+3
-2
expansions/script/c101202055.lua
expansions/script/c101202055.lua
+1
-1
expansions/script/c101202056.lua
expansions/script/c101202056.lua
+5
-4
expansions/script/c101202057.lua
expansions/script/c101202057.lua
+1
-1
expansions/script/c101202059.lua
expansions/script/c101202059.lua
+5
-2
expansions/script/c101202060.lua
expansions/script/c101202060.lua
+6
-5
expansions/script/c101202061.lua
expansions/script/c101202061.lua
+4
-3
expansions/script/c101202064.lua
expansions/script/c101202064.lua
+2
-2
expansions/script/c101202065.lua
expansions/script/c101202065.lua
+2
-1
expansions/script/c101202066.lua
expansions/script/c101202066.lua
+6
-3
expansions/script/c101202067.lua
expansions/script/c101202067.lua
+4
-3
expansions/script/c101202069.lua
expansions/script/c101202069.lua
+1
-1
expansions/script/c101202070.lua
expansions/script/c101202070.lua
+3
-2
expansions/script/c101202071.lua
expansions/script/c101202071.lua
+14
-16
expansions/script/c101202073.lua
expansions/script/c101202073.lua
+3
-0
expansions/script/c101202074.lua
expansions/script/c101202074.lua
+7
-5
expansions/script/c101202075.lua
expansions/script/c101202075.lua
+7
-4
expansions/script/c101202077.lua
expansions/script/c101202077.lua
+7
-9
expansions/script/c101202079.lua
expansions/script/c101202079.lua
+3
-2
expansions/script/c101202080.lua
expansions/script/c101202080.lua
+6
-5
expansions/script/c101203038.lua
expansions/script/c101203038.lua
+1
-0
expansions/script/c101203055.lua
expansions/script/c101203055.lua
+1
-1
No files found.
expansions/222pre-DBVS.cdb
deleted
100644 → 0
View file @
6dfa6062
File deleted
expansions/222pre.cdb
deleted
100644 → 0
View file @
6dfa6062
File deleted
expansions/
222pre-AOGV
.cdb
→
expansions/
pre-release
.cdb
View file @
add63643
No preview for this file type
expansions/script/c100314001.lua
View file @
add63643
...
...
@@ -33,7 +33,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e3
)
end
function
s
.
cfilter
(
c
,
tp
,
se
)
return
c
:
Is
Controler
(
tp
)
and
c
:
Is
PreviousControler
(
tp
)
and
c
:
GetOriginalAttribute
()
==
ATTRIBUTE_FIRE
return
c
:
IsPreviousControler
(
tp
)
and
c
:
GetOriginalAttribute
()
==
ATTRIBUTE_FIRE
and
c
:
IsReason
(
REASON_BATTLE
+
REASON_EFFECT
)
and
(
se
==
nil
or
c
:
GetReasonEffect
()
~=
se
)
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c100314002.lua
View file @
add63643
...
...
@@ -14,6 +14,7 @@ function s.initial_effect(c)
e1
:
SetCondition
(
s
.
spscon
)
e1
:
SetTarget
(
s
.
spstg
)
e1
:
SetOperation
(
s
.
spsop
)
e1
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
c
:
RegisterEffect
(
e1
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
...
...
expansions/script/c100314003.lua
View file @
add63643
...
...
@@ -22,7 +22,7 @@ function s.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e2
:
SetCode
(
EVENT_CHAINING
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
id
+
id
)
e2
:
SetCountLimit
(
1
,
id
+
o
)
e2
:
SetCondition
(
s
.
negcon
)
e2
:
SetTarget
(
s
.
negtg
)
e2
:
SetOperation
(
s
.
negop
)
...
...
@@ -51,7 +51,7 @@ function s.negcon(e,tp,eg,ep,ev,re,r,rp)
return
re
:
IsActiveType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
not
c
:
IsStatus
(
STATUS_BATTLE_DESTROYED
)
and
Duel
.
IsChainNegatable
(
ev
)
end
function
s
.
desfilter
(
c
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
c
:
IsFaceupEx
()
end
function
s
.
negtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
desfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_HAND
,
0
,
1
,
e
:
GetHandler
())
end
...
...
@@ -66,4 +66,4 @@ function s.negop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
end
\ No newline at end of file
end
expansions/script/c100314024.lua
View file @
add63643
...
...
@@ -12,6 +12,7 @@ function s.initial_effect(c)
e2
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_DESTROY_REPLACE
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetCountLimit
(
1
)
e2
:
SetTarget
(
s
.
desreptg
)
e2
:
SetValue
(
s
.
desrepval
)
e2
:
SetOperation
(
s
.
desrepop
)
...
...
expansions/script/c100314025.lua
View file @
add63643
...
...
@@ -48,7 +48,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
s
.
repfilter
(
c
,
tp
)
return
not
c
:
IsReason
(
REASON_REPLACE
)
and
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x81
)
and
c
:
Is
Location
(
LOCATION_MZONE
)
and
c
:
Is
Controler
(
tp
)
and
c
:
IsReason
(
REASON_EFFECT
)
return
not
c
:
IsReason
(
REASON_REPLACE
)
and
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x81
)
and
c
:
IsControler
(
tp
)
and
c
:
IsReason
(
REASON_EFFECT
)
end
function
s
.
reptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToRemove
()
and
eg
:
IsExists
(
s
.
repfilter
,
1
,
nil
,
tp
)
end
...
...
expansions/script/c100314033.lua
View file @
add63643
...
...
@@ -14,7 +14,7 @@ function s.initial_effect(c)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCountLimit
(
1
,
id
+
id
)
e2
:
SetCountLimit
(
1
,
id
+
o
)
e2
:
SetCost
(
aux
.
bfgcost
)
e2
:
SetOperation
(
s
.
operation
)
c
:
RegisterEffect
(
e2
)
...
...
expansions/script/c100421010.lua
View file @
add63643
...
...
@@ -51,11 +51,11 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
end
function
s
.
mfilter
(
c
)
return
c
:
IsSetCard
(
0x2a1
)
and
c
:
IsType
(
TYPE_MONSTER
)
function
s
.
mfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x2a1
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsPreviousControler
(
tp
)
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
rp
==
1
-
tp
and
eg
:
IsExists
(
s
.
mfilter
,
1
,
nil
)
return
rp
==
1
-
tp
and
eg
:
IsExists
(
s
.
mfilter
,
1
,
nil
,
tp
)
end
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x2a1
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
...
...
expansions/script/c101201081.lua
View file @
add63643
...
...
@@ -17,7 +17,7 @@ function s.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_DESTROY
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
id
+
EFFECT_COUNT_CODE_OATH
)
e2
:
SetCountLimit
(
1
,
id
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetTarget
(
s
.
destg
)
e2
:
SetOperation
(
s
.
desop
)
...
...
expansions/script/c101201083.lua
View file @
add63643
...
...
@@ -48,9 +48,9 @@ function s.lacon(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
latg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsFaceup
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
nil
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsFaceup
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
Duel
.
SelectTarget
(
tp
,
nil
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
SelectTarget
(
tp
,
Card
.
IsFaceup
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
end
function
s
.
laop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
...
...
expansions/script/c101201085.lua
View file @
add63643
...
...
@@ -6,7 +6,7 @@ function s.initial_effect(c)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
)
e1
:
SetType
(
EFFECT_
FLAG_CARD_TARGET
)
e1
:
SetType
(
EFFECT_
TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCountLimit
(
1
,
id
+
EFFECT_COUNT_CODE_OATH
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
...
...
expansions/script/c101201086.lua
View file @
add63643
...
...
@@ -18,6 +18,7 @@ function s.initial_effect(c)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e2
:
SetCategory
(
CATEGORY_DESTROY
+
CATEGORY_SEARCH
+
CATEGORY_TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
id
+
o
)
e2
:
SetTarget
(
s
.
thtg
)
...
...
expansions/script/c101201089.lua
View file @
add63643
...
...
@@ -16,7 +16,7 @@ function s.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_POSITION
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_DESTROYED
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetCountLimit
(
1
,
id
+
1
)
e2
:
SetCondition
(
s
.
condition
)
e2
:
SetTarget
(
s
.
target
)
...
...
@@ -37,6 +37,7 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
Duel
.
ChangePosition
(
g
,
POS_FACEDOWN_DEFENSE
)
local
g1
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
)
if
g1
:
GetCount
()
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
id
,
1
))
then
Duel
.
BreakEffect
()
Duel
.
SendtoGrave
(
g1
,
REASON_EFFECT
)
end
end
...
...
expansions/script/c101201091.lua
View file @
add63643
...
...
@@ -36,14 +36,13 @@ function s.filter(c)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
b
=
Duel
.
IsExistingMatchingCard
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
)
and
(
chkc
:
IsControler
(
tp
)
or
b
)
and
chkc
:
IsCanTurnSet
()
end
local
loc
=
0
if
b
then
loc
=
LOCATION_MZONE
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsCanTurnSet
,
tp
,
LOCATION_MZONE
,
loc
,
1
,
nil
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
)
and
(
chkc
:
IsControler
(
tp
)
or
b
)
and
chkc
:
IsCanTurnSet
()
end
local
loc2
=
0
if
b
then
loc2
=
LOCATION_MZONE
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsCanTurnSet
,
tp
,
LOCATION_MZONE
,
loc2
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_POSCHANGE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
Card
.
IsCanTurnSet
,
tp
,
LOCATION_MZONE
,
loc
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectTarget
(
tp
,
Card
.
IsCanTurnSet
,
tp
,
LOCATION_MZONE
,
loc
2
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_POSITION
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
...
...
expansions/script/c101202001.lua
View file @
add63643
...
...
@@ -111,4 +111,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
\ No newline at end of file
end
expansions/script/c101202002.lua
View file @
add63643
...
...
@@ -46,15 +46,15 @@ function c101202002.initial_effect(c)
e4
:
SetOperation
(
c101202002
.
thop2
)
c
:
RegisterEffect
(
e4
)
end
function
c101202002
.
cfilter1
(
c
)
function
c101202002
.
cfilter1
(
c
,
tp
)
return
c
:
IsCode
(
13331639
)
and
c
:
IsFaceup
()
and
Duel
.
IsExistingMatchingCard
(
c101202002
.
cfilter2
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
)
end
function
c101202002
.
cfilter2
(
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
end
function
c101202002
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
c101202002
.
cfilter1
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
c101202002
.
cfilter2
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c101202002
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
...
...
@@ -131,7 +131,8 @@ function c101202002.thfilter2(c,tp)
and
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsPreviousControler
(
tp
)
and
c
:
IsPreviousPosition
(
POS_FACEUP
)
end
function
c101202002
.
thcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
c101202002
.
thfilter2
,
1
,
nil
,
tp
)
and
e
:
GetHandler
():
IsFaceup
()
local
c
=
e
:
GetHandler
()
return
eg
:
IsExists
(
c101202002
.
thfilter2
,
1
,
c
,
tp
)
and
not
eg
:
IsContains
(
c
)
and
c
:
IsFaceup
()
end
function
c101202002
.
thtg2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToHand
()
end
...
...
expansions/script/c101202003.lua
View file @
add63643
--
coded by Lyris
--
TG ロケット・サラマンダー
--T.G. Rocket Salamander
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--spsummon from Deck
...
...
expansions/script/c101202004.lua
View file @
add63643
...
...
@@ -29,9 +29,10 @@ function c101202004.retfilter(c,e)
and
c
:
IsAbleToDeck
()
and
c
:
IsCanBeEffectTarget
(
e
)
end
function
c101202004
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
+
LOCATION_REMOVED
)
and
c101202004
.
retfilter
(
chkc
)
end
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
+
LOCATION_REMOVED
)
and
c101202004
.
retfilter
(
chkc
,
e
)
end
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
c101202004
.
retfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
nil
,
e
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
mzctcheck
,
1
,
#
g
,
tp
)
end
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
g
:
CheckSubGroup
(
aux
.
mzctcheck
,
1
,
#
g
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
tg
=
g
:
SelectSubGroup
(
tp
,
aux
.
mzctcheck
,
false
,
1
,
#
g
,
tp
)
Duel
.
SetTargetCard
(
tg
)
...
...
expansions/script/c101202005.lua
View file @
add63643
...
...
@@ -135,14 +135,13 @@ function c101202005.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c101202005
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x29a
)
and
(
c
:
IsLocation
(
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_GRAVE
)
or
c
:
IsFaceup
())
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
return
c
:
IsSetCard
(
0x29a
)
and
c
:
IsFaceupEx
()
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c101202005
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToEffect
(
e
)
and
Duel
.
SendtoHand
(
c
,
nil
,
REASON_EFFECT
)
>
0
and
c
:
IsLocation
(
LOCATION_HAND
)
then
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
local
g
=
Duel
.
GetMatchingGroup
(
c101202005
.
spfilter
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
nil
,
e
,
tp
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NecroValleyFilter
(
c101202005
.
spfilter
)
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
+
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
nil
,
e
,
tp
)
if
ft
>
0
and
g
:
GetCount
()
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
101202005
,
3
))
then
Duel
.
BreakEffect
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
expansions/script/c101202006.lua
View file @
add63643
...
...
@@ -79,7 +79,7 @@ function s.rvop(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
cfilter
,
tp
,
LOCATION_HAND
+
LOCATION_ONFIELD
,
0
,
1
,
1
,
nil
,
tp
,
Card
.
IsAbleToGrave
)
local
tc
=
g
:
GetFirst
()
local
c
=
e
:
GetHandler
()
if
tc
and
Duel
.
SendtoGrave
(
tc
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsRelateTo
Effect
(
e
)
then
if
tc
and
Duel
.
SendtoGrave
(
tc
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsRelateTo
Chain
(
)
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
expansions/script/c101202007.lua
View file @
add63643
--
coded by Lyris
--
スネークアイ・エクセル
--Snake-Eye Excel
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--to hand
...
...
@@ -52,7 +53,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x
19c
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
return
c
:
IsSetCard
(
0x
2a0
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
(
e
:
IsCostChecked
()
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
)
...
...
expansions/script/c101202008.lua
View file @
add63643
--
coded by Lyris
--
スネークアイ・オーク
--Snake-Eye Oark
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--revive
...
...
@@ -38,7 +39,10 @@ function s.rvtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
tc
=
Duel
.
SelectTarget
(
tp
,
s
.
filter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
tc
:
IsLocation
(
LOCATION_GRAVE
)
then
e
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_GRAVE_ACTION
+
CATEGORY_GRAVE_SPSUMMON
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
tc
,
1
,
0
,
0
)
else
e
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
end
end
function
s
.
rvop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
@@ -61,7 +65,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x
19c
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
return
c
:
IsSetCard
(
0x
2a0
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
(
e
:
IsCostChecked
()
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
)
...
...
expansions/script/c101202009.lua
View file @
add63643
--
coded by Lyris
--
スネークアイ・ワイトバーチ
--Snake-Eye Wight Birch
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--spsummon self
...
...
@@ -49,7 +50,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0x
19c
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
return
c
:
IsSetCard
(
0x
2a0
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
(
e
:
IsCostChecked
()
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
)
...
...
expansions/script/c101202010.lua
View file @
add63643
--
coded by Lyris
--
蛇眼の炎龍
--Snake-Eyes Flamberge Dragon
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--move
...
...
@@ -41,7 +42,7 @@ end
function
s
.
filter
(
c
,
tp
)
local
r
=
LOCATION_REASON_TOFIELD
if
not
c
:
IsControler
(
c
:
GetOwner
())
then
r
=
LOCATION_REASON_CONTROL
end
return
(
c
:
IsType
(
TYPE_MONSTER
)
or
c
:
IsLocation
(
LOCATION_MZONE
))
return
(
c
:
IsType
(
TYPE_MONSTER
)
or
c
:
IsLocation
(
LOCATION_MZONE
))
and
c
:
IsFaceupEx
()
and
Duel
.
GetLocationCount
(
c
:
GetOwner
(),
LOCATION_SZONE
,
tp
,
r
)
>
0
end
function
s
.
mvtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
expansions/script/c101202013.lua
View file @
add63643
...
...
@@ -13,9 +13,9 @@ function c101202013.initial_effect(c)
--Leave Field
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
101202013
,
1
))
e2
:
SetCategory
(
CATEGORY_
TOGRAVE
)
e2
:
SetCategory
(
CATEGORY_
GRAVE_ACTION
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetProperty
(
EFFECT_FLAG_
CARD_TARGET
+
EFFECT_FLAG_
DELAY
)
e2
:
SetCode
(
EVENT_LEAVE_FIELD
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
101202113
)
...
...
@@ -54,6 +54,7 @@ function c101202013.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
elseif
not
g
:
FilterCount
(
Card
.
IsAbleToDeck
,
nil
,
e
)
==
g
:
GetCount
()
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
2
,
0
,
0
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
2
,
0
,
0
)
end
function
c101202013
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tg
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_CARDS
):
Filter
(
Card
.
IsRelateToEffect
,
nil
,
e
)
...
...
expansions/script/c101202017.lua
View file @
add63643
...
...
@@ -79,9 +79,9 @@ function s.spcon(e,tp,eg,ep,ev,re,r,rp)
if
ct
<
2
then
return
false
end
local
te
,
p
=
Duel
.
GetChainInfo
(
ct
-
1
,
CHAININFO_TRIGGERING_EFFECT
,
CHAININFO_TRIGGERING_PLAYER
)
if
not
te
then
return
false
end
local
loc
1
=
te
:
GetHandler
():
IsSetCard
(
0x17e
)
and
not
te
:
GetHandler
():
IsCode
(
id
)
local
loc2
=
te
:
GetActiveType
()
==
TYPE_TRAP
and
te
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
return
(
loc1
or
loc
2
)
and
p
==
tp
and
rp
==
1
-
tp
local
b
1
=
te
:
GetHandler
():
IsSetCard
(
0x17e
)
and
not
te
:
GetHandler
():
IsCode
(
id
)
local
b2
=
te
:
GetActiveType
()
==
TYPE_TRAP
return
(
b1
or
b
2
)
and
p
==
tp
and
rp
==
1
-
tp
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
...
...
@@ -91,4 +91,4 @@ end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
or
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
Duel
.
SpecialSummon
(
e
:
GetHandler
(),
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
\ No newline at end of file
end
expansions/script/c101202020.lua
View file @
add63643
--ブラック・ホール・ドラゴン
--Dark Hole Dragon
--coded by Lyris
--coded by Lyris
& Mercury233
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--effect indes
...
...
@@ -16,11 +16,10 @@ function s.initial_effect(c)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_
DESTROYED
)
e2
:
SetCode
(
EVENT_
CUSTOM
+
id
)
e2
:
SetRange
(
LOCATION_GRAVE
+
LOCATION_HAND
)
e2
:
SetCountLimit
(
1
,
id
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetCondition
(
s
.
spcon
)
e2
:
SetTarget
(
s
.
sptg
)
e2
:
SetOperation
(
s
.
spop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -34,17 +33,37 @@ function s.initial_effect(c)
e3
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e3
:
SetOperation
(
s
.
regop
)
c
:
RegisterEffect
(
e3
)
if
not
s
.
global_check
then
s
.
global_check
=
true
local
ge1
=
Effect
.
CreateEffect
(
c
)
ge1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge1
:
SetCode
(
EVENT_DESTROY
)
ge1
:
SetOperation
(
s
.
descheck
)
Duel
.
RegisterEffect
(
ge1
,
0
)
end
end
function
s
.
cfilter
(
c
)
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsReason
(
REASON_EFFECT
)
and
not
c
:
GetReasonEffect
():
IsHasProperty
(
EFFECT_FLAG_CARD_TARGET
)
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
s
.
cfilter
,
1
,
nil
)
function
s
.
descheck
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
res
=
false
for
tc
in
aux
.
Next
(
eg
)
do
if
tc
:
IsLocation
(
LOCATION_MZONE
)
and
r
&
REASON_EFFECT
>
0
then
if
re
==
nil
or
not
re
:
IsHasProperty
(
EFFECT_FLAG_CARD_TARGET
)
then
res
=
true
break
end
local
tg
=
Duel
.
GetChainInfo
(
Duel
.
GetCurrentChain
(),
CHAININFO_TARGET_CARDS
)
if
tg
==
nil
or
not
tg
:
IsContains
(
tc
)
then
res
=
true
break
end
end
end
if
res
then
Duel
.
RaiseEvent
(
eg
,
EVENT_CUSTOM
+
id
,
re
,
r
,
rp
,
tp
,
0
)
end
end
function
s
.
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
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
...
...
@@ -68,4 +87,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
\ No newline at end of file
end
expansions/script/c101202021.lua
View file @
add63643
--
coded by Lyris
--
幻日灯火
--UFOLight
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--untargetable
...
...
expansions/script/c101202022.lua
View file @
add63643
...
...
@@ -69,4 +69,4 @@ end
function
s
.
negop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
NegateSummon
(
eg
)
Duel
.
Destroy
(
eg
,
REASON_EFFECT
)
end
\ No newline at end of file
end
expansions/script/c101202023.lua
View file @
add63643
--
coded by Lyris
--
侵略的外来種-I.A.S
--Invasive Alien Species - I.A.S
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--indes
...
...
@@ -38,8 +39,8 @@ function s.initial_effect(c)
e4
:
SetOperation
(
s
.
spop
)
c
:
RegisterEffect
(
e4
)
end
function
s
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
aux
.
GetValueType
(
tp
)
==
"Card"
then
tp
=
tp
:
GetControler
()
end
function
s
.
condition
(
e
)
local
tp
=
e
:
GetHandlerPlayer
()
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_FZONE
,
1
,
nil
)
end
function
s
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
expansions/script/c101202024.lua
View file @
add63643
--
coded by Lyris
--
陀羅威
--Tarai
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--spsummon
...
...
@@ -31,11 +32,9 @@ function s.checkop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
s
.
filter
(
c
,
e
,
tp
)
local
seq
=
c
:
GetSequence
()
if
seq
>
4
then
return
false
end
if
c
:
IsControler
(
1
-
tp
)
then
seq
=
seq
+
16
end
return
c
:
IsFaceup
()
and
c
:
GetFlagEffect
(
id
)
>
0
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
,
c
:
GetControler
(),
1
<<
seq
)
local
p
,
seq
=
c
:
GetControler
(),
c
:
GetSequence
()
return
c
:
IsFaceup
()
and
c
:
GetFlagEffect
(
id
)
>
0
and
Duel
.
GetMZoneCount
(
p
,
c
,
tp
,
LOCATION_REASON_TOFIELD
,
1
<<
seq
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
,
c
:
GetControler
())
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
s
.
filter
(
chkc
,
e
,
tp
)
end
...
...
expansions/script/c101202025.lua
View file @
add63643
...
...
@@ -44,10 +44,9 @@ function s.spop(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_DEFENSE
)
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_
CLIENT_HINT
+
EFFECT_FLAG_
PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
s
.
slim
)
...
...
@@ -55,4 +54,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
slim
(
e
,
c
,
sp
,
st
,
spos
,
tp
,
se
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
not
c
:
IsRace
(
RACE_ILLUSION
)
end
\ No newline at end of file
end
expansions/script/c101202026.lua
View file @
add63643
--
coded by Lyris
--
離世召人形
--Hanayome Ningyo
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--spsummon
...
...
@@ -56,7 +57,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_DECK
,
0
)
-
Duel
.
GetFieldGroup
(
tp
,
0
,
LOCATION_DECK
)
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_DECK
,
0
)
-
Duel
.
GetFieldGroup
Count
(
tp
,
0
,
LOCATION_DECK
)
if
c
:
IsRelateToEffect
(
e
)
and
c
:
IsFaceup
()
and
ct
>
0
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
expansions/script/c101202027.lua
View file @
add63643
...
...
@@ -45,7 +45,6 @@ s.toss_coin=true
function
s
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDraw
(
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_COIN
,
nil
,
0
,
tp
,
0
)
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
end
function
s
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
heads
=
0
...
...
@@ -58,7 +57,6 @@ function s.drop(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
atktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
end
function
s
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
ev
==
0
then
return
end
...
...
@@ -101,4 +99,4 @@ function s.countop(e,tp,eg,ep,ev,re,r,rp)
c
:
ResetFlagEffect
(
id
)
c
:
ResetFlagEffect
(
id
+
o
)
Duel
.
RaiseSingleEvent
(
c
,
EVENT_CUSTOM
+
id
+
2
*
o
,
re
,
r
,
rp
,
ep
,
heads_ct
)
end
\ No newline at end of file
end
expansions/script/c101202028.lua
View file @
add63643
--
coded by Lyris
--
霊魂鳥影-姫孔雀
--Shinobaroness Shade Peacock
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
@@ -42,7 +43,7 @@ function s.thcon(e,tp,eg,ep,ev,re,r,rp)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_RITUAL
)
end
function
s
.
filter
(
c
)
return
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
(
aux
.
IsTypeInText
(
c
,
TYPE_SPIRIT
)
or
c
:
IsCode
(
73055622
,
9553721
,
276357
,
30461781
,
99173029
)
)
and
c
:
IsAbleToHand
()
return
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
aux
.
IsTypeInText
(
c
,
TYPE_SPIRIT
)
and
c
:
IsAbleToHand
()
end
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
...
...
@@ -61,9 +62,10 @@ function s.spcon(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
local
ct
=
c
:
GetFlagEffectLabel
(
id
)
local
tn
=
Duel
.
GetTurnCount
()
if
not
ct
or
tn
==
ct
then
return
false
end
c
:
ResetFlagEffect
(
id
)
return
tn
==
ct
+
1
if
not
ct
or
tn
==
ct
then
c
:
ResetFlagEffect
(
id
)
return
false
else
return
tn
==
ct
+
1
end
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
...
...
expansions/script/c101202029.lua
View file @
add63643
--
coded by Lyris
--
霊魂鳥影-彦孔雀
--Shinobaron Shade Peacock
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
@@ -72,9 +73,10 @@ function s.spcon(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
local
ct
=
c
:
GetFlagEffectLabel
(
id
)
local
tn
=
Duel
.
GetTurnCount
()
if
not
ct
or
tn
==
ct
then
return
false
end
c
:
ResetFlagEffect
(
id
)
return
tn
==
ct
+
1
if
not
ct
or
tn
==
ct
then
c
:
ResetFlagEffect
(
id
)
return
false
else
return
tn
==
ct
+
1
end
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
...
...
expansions/script/c101202030.lua
View file @
add63643
...
...
@@ -102,7 +102,7 @@ function c101202030.pop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
BreakEffect
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
sc
=
g
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
if
sc
and
Duel
.
SendtoDeck
(
sc
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
>
0
and
sc
:
IsLocation
(
LOCATION_EXTRA
)
if
sc
and
Duel
.
SendtoDeck
(
sc
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
>
0
and
sc
:
IsLocation
(
LOCATION_EXTRA
)
and
sc
:
IsControler
(
tp
)
and
sc
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
true
,
false
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
nil
,
sc
)
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
101202030
,
2
))
then
Duel
.
BreakEffect
()
...
...
expansions/script/c101202031.lua
View file @
add63643
--
coded by Lyris
--
地縛戒隷 ジオグレムリーナ
--Earthbound Servant Geo Gremlina
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
...
...
@@ -31,7 +32,7 @@ function s.initial_effect(c)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
id
,
2
))
e3
:
SetCategory
(
CATEGORY_DAMAGE
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_
FIELD
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_
TRIGGER_O
)
e3
:
SetCode
(
EVENT_DESTROYED
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
id
+
o
*
2
)
...
...
@@ -73,9 +74,9 @@ function s.dirop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
s
.
cfilter
(
c
,
e
,
tp
)
return
c
:
IsFaceupEx
()
and
c
:
IsPreviousLocation
(
LOCATION_
ONFIELD
)
and
c
:
IsPreviousControler
(
1
-
tp
)
and
c
:
IsReason
(
REASON_EFFECT
)
and
c
:
GetReasonEffect
():
IsSetCard
(
0x21
)
and
c
:
GetTextAttack
()
>
0
and
c
:
IsCanBeEffectTarget
(
e
)
return
c
:
IsFaceupEx
()
and
c
:
IsPreviousLocation
(
LOCATION_
MZONE
)
and
c
:
IsPreviousControler
(
1
-
tp
)
and
c
:
IsReason
(
REASON_EFFECT
)
and
c
:
GetReasonEffect
():
GetHandler
():
IsSetCard
(
0x21
)
and
c
:
GetBaseAttack
()
>
0
and
c
:
IsCanBeEffectTarget
(
e
)
and
not
c
:
IsType
(
TYPE_TOKEN
)
end
function
s
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
g
=
eg
:
Filter
(
s
.
cfilter
,
nil
,
e
,
tp
)
...
...
@@ -83,9 +84,11 @@ function s.damtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
tg
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
Duel
.
SetTargetCard
(
tg
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
tp
,
tg
:
GetFirst
():
Get
Text
Attack
())
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
tp
,
tg
:
GetFirst
():
Get
Base
Attack
())
end
function
s
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
GetTextAttack
()
>
0
then
Duel
.
Damage
(
1
-
tp
,
tc
:
GetTextAttack
(),
REASON_EFFECT
)
end
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
GetBaseAttack
()
>
0
then
Duel
.
Damage
(
1
-
tp
,
tc
:
GetTextAttack
(),
REASON_EFFECT
)
end
end
expansions/script/c101202032.lua
View file @
add63643
--幻兽魔王 巴风特
--幻獣魔王バフォメット
--Berfomet the Phantom Beast Dark Ruler
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
aux
.
AddFusionProcFunRep
(
c
,
s
.
f
filter
,
2
,
true
)
aux
.
AddFusionProcFunRep
(
c
,
s
.
m
filter
,
2
,
true
)
--change name
aux
.
EnableChangeCode
(
c
,
4796100
,
LOCATION_GRAVE
+
LOCATION_MZONE
)
--to grave
...
...
@@ -12,8 +14,8 @@ function s.initial_effect(c)
e1
:
SetCategory
(
CATEGORY_TOGRAVE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCountLimit
(
1
,
id
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCondition
(
s
.
tgcon
)
e1
:
SetTarget
(
s
.
tgtg
)
e1
:
SetOperation
(
s
.
tgop
)
...
...
@@ -33,44 +35,41 @@ function s.initial_effect(c)
e2
:
SetOperation
(
s
.
spop
)
c
:
RegisterEffect
(
e2
)
end
RACE_ILLUSION
=
0x2000000
function
s
.
ffilter
(
c
,
fc
,
sub
,
mg
,
sg
)
return
c
:
IsRace
(
RACE_BEAST
+
RACE_FIEND
+
RACE_ILLUSION
)
and
(
not
sg
or
not
sg
:
IsExists
(
Card
.
IsRace
,
1
,
c
,
c
:
GetRace
()))
function
s
.
mfilter
(
c
,
fc
,
sub
,
mg
,
sg
)
return
c
:
IsRace
(
RACE_BEAST
+
RACE_FIEND
+
RACE_ILLUSION
)
and
(
not
sg
or
not
sg
:
IsExists
(
Card
.
IsRace
,
1
,
c
,
c
:
GetRace
()))
end
function
s
.
tgcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_FUSION
)
end
function
s
.
tg
filter
(
c
)
function
s
.
filter
(
c
)
return
c
:
IsRace
(
RACE_BEAST
+
RACE_FIEND
+
RACE_ILLUSION
)
and
c
:
IsAbleToGrave
()
end
function
s
.
tgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
tg
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
s
.
tgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
tgfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoGrave
(
g
,
REASON_EFFECT
)
end
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
Duel
.
SendtoGrave
(
g
,
REASON_EFFECT
)
end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
==
1
-
tp
end
function
s
.
filter
(
c
,
e
,
tp
)
return
c
:
IsRace
(
RACE_BEAST
+
RACE_FIEND
+
RACE_ILLUSION
)
and
not
c
:
IsCode
(
id
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsRace
(
RACE_BEAST
+
RACE_FIEND
+
RACE_ILLUSION
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
not
c
:
IsCode
(
id
)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_REMOVED
)
and
chkc
:
IsControler
(
tp
)
and
s
.
filter
(
chkc
,
e
,
tp
)
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_REMOVED
)
and
chkc
:
IsControler
(
tp
)
and
s
.
s
filter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
end
and
Duel
.
IsExistingTarget
(
s
.
s
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
s
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
s
.
spop
(
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
)
end
end
\ No newline at end of file
end
expansions/script/c101202033.lua
View file @
add63643
--
coded by Lyris
--
熾天の騎士ガイアプロミネンス
--Gaia Prominence, the Kindling Seraph
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
@@ -38,7 +39,7 @@ function s.negcon(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
local
loc
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TRIGGERING_LOCATION
)
return
not
c
:
IsStatus
(
STATUS_BATTLE_DESTROYED
)
and
rp
==
1
-
tp
and
re
:
IsActiveType
(
TYPE_MONSTER
)
and
loc
&
LOCATION_HAND
+
LOCATION_GRAVE
>
0
and
Duel
.
IsChainNegatable
(
ev
)
and
loc
&
(
LOCATION_HAND
|
LOCATION_GRAVE
)
>
0
and
Duel
.
IsChainNegatable
(
ev
)
end
function
s
.
cfilter
(
c
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsDiscardable
()
...
...
expansions/script/c101202034.lua
View file @
add63643
--
coded by Lyris
--
TG マイティ・ストライカー
--T.G. Mighty Striker
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
...
...
expansions/script/c101202035.lua
View file @
add63643
--
coded by Lyris
--
TG オーバー・ドラグナー
--T.G. Over Dragner
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
...
...
@@ -49,10 +50,9 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
2
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_
CLIENT_HINT
+
EFFECT_FLAG_
PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
aux
.
TargetBoolFunction
(
aux
.
NOT
(
Card
.
IsSetCard
),
0x27
))
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
...
...
expansions/script/c101202036.lua
View file @
add63643
--TG グレイヴ・ブラスター
--T.G. Glaive Blaster
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
...
...
@@ -21,6 +21,7 @@ function s.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
)
e2
:
SetCountLimit
(
1
)
e2
:
SetCondition
(
s
.
rmcon
)
e2
:
SetTarget
(
s
.
rmtg
)
e2
:
SetOperation
(
s
.
rmop
)
...
...
@@ -75,8 +76,8 @@ function s.sfilter(c,e,tp)
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
g
=
eg
:
Filter
(
s
.
sfilter
,
nil
,
e
,
tp
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
#
g
>
0
end
if
chk
==
0
then
return
#
g
>
0
end
if
chkc
then
return
g
:
IsContains
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
#
g
>
0
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
Duel
.
SetTargetCard
(
sg
)
...
...
@@ -85,4 +86,4 @@ end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
end
expansions/script/c101202037.lua
View file @
add63643
...
...
@@ -34,7 +34,7 @@ end
function
c101202037
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsType
(
TYPE_TUNER
)
and
c
:
IsLevel
(
2
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c101202037
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c101202037
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c101202037
.
spfilter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c101202037
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
expansions/script/c101202039.lua
View file @
add63643
--装甲超量鱼雷
--エクシーズ・アーマー・トルピード
--Script by Dio0
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--xyz summon
...
...
@@ -21,7 +22,6 @@ function s.initial_effect(c)
e2
:
SetTarget
(
s
.
drawtarget
)
e2
:
SetOperation
(
s
.
drawoperation
)
c
:
RegisterEffect
(
e2
)
--actlimit
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -48,17 +48,13 @@ function s.initial_effect(c)
e5
:
SetValue
(
aux
.
tgoval
)
e5
:
SetCondition
(
s
.
targetcon
)
c
:
RegisterEffect
(
e5
)
end
function
s
.
targetcon
(
e
)
return
e
:
GetHandler
():
GetEquipTarget
():
IsType
(
TYPE_XYZ
)
end
function
s
.
attcon
(
e
)
return
e
:
GetHandler
():
GetOverlayCount
()
==
0
end
function
s
.
drawcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
2
,
REASON_COST
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
2
,
2
,
REASON_COST
)
...
...
@@ -73,12 +69,10 @@ function s.drawoperation(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
s
.
actcon
(
e
)
local
tc
=
e
:
GetHandler
():
GetEquipTarget
()
return
Duel
.
GetAttacker
()
==
tc
or
Duel
.
GetAttackTarget
()
==
tc
end
function
s
.
disfilter
(
c
)
return
aux
.
NegateAnyFilter
(
c
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsFaceup
()
end
...
...
expansions/script/c101202040.lua
View file @
add63643
--装甲超量要塞
--エクシーズ・アーマー・フォートレス
--Script by Dio0
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--xyz summon
...
...
@@ -31,11 +32,9 @@ function s.initial_effect(c)
e3
:
SetValue
(
aux
.
ChangeBattleDamage
(
1
,
DOUBLE_DAMAGE
))
c
:
RegisterEffect
(
e3
)
end
function
s
.
damcon
(
e
)
return
e
:
GetHandler
():
GetEquipTarget
():
GetBattleTarget
()
~=
nil
end
function
s
.
ovfilter
(
c
)
return
c
:
IsFaceup
()
and
(
c
:
IsRank
(
3
)
or
c
:
IsRank
(
4
))
end
...
...
@@ -43,13 +42,11 @@ function s.xyzop(e,tp,chk)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
id
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
id
,
RESET_PHASE
+
PHASE_END
,
EFFECT_FLAG_OATH
,
1
)
end
function
s
.
xyzcondition
(
e
)
return
e
:
GetHandler
():
GetOverlayCount
()
>
0
end
function
s
.
thfilter
(
c
)
return
(
c
:
IsSetCard
(
0x4073
)
or
c
:
IsCode
(
73046708
)
)
and
c
:
IsAbleToHand
()
return
c
:
IsSetCard
(
0x4073
)
and
c
:
IsAbleToHand
()
end
function
s
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
...
...
@@ -69,16 +66,14 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
ct
,
tp
,
LOCATION_DECK
)
end
function
s
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
ct
=
e
:
GetLabel
()
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
ct
,
ct
,
nil
)
local
g
=
Duel
.
GetMatchingGroup
(
s
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SET
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
1
,
ct
)
if
sg
:
GetCount
()
>
0
then
local
ct
=
e
:
GetLabel
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
ct
,
ct
)
if
sg
then
Duel
.
SendtoHand
(
sg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
end
end
end
expansions/script/c101202041.lua
View file @
add63643
...
...
@@ -49,7 +49,7 @@ end
function
s
.
thfilter
(
c
)
return
c
:
IsSetCard
(
0x73
)
and
c
:
IsAbleToHand
()
end
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
s
.
thfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
s
.
thfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
...
...
@@ -92,4 +92,4 @@ function s.eqop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Overlay
(
c
,
tg
)
end
end
end
\ No newline at end of file
end
expansions/script/c101202042.lua
View file @
add63643
...
...
@@ -18,7 +18,7 @@ function s.initial_effect(c)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
+
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCondition
(
s
.
lscon
)
e1
:
SetOperation
(
s
.
lsop
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -30,7 +30,7 @@ function s.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e2
:
SetTargetRange
(
1
,
1
)
e2
:
SetCondition
(
s
.
lecon
)
e2
:
Set
Target
(
s
.
letg
)
e2
:
Set
Value
(
s
.
aclimit
)
c
:
RegisterEffect
(
e2
)
--to hand
local
e3
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -48,10 +48,16 @@ function Auxiliary.XyzAlterFilter(c,alterf,xyzc,e,tp,alterop)
return
alterf
(
c
,
e
,
tp
,
xyzc
)
and
c
:
IsCanBeXyzMaterial
(
xyzc
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
c
,
xyzc
)
>
0
and
Auxiliary
.
MustMaterialCheck
(
c
,
tp
,
EFFECT_MUST_BE_XMATERIAL
)
and
(
not
alterop
or
alterop
(
e
,
tp
,
0
,
c
))
end
function
s
.
chkfilter
(
c
,
tp
)
return
c
:
IsSummonPlayer
(
1
-
tp
)
and
c
:
IsSummonLocation
(
LOCATION_EXTRA
)
end
function
s
.
chk
(
e
,
tp
,
eg
)
for
p
=
0
,
1
do
if
eg
:
IsExists
(
Card
.
IsSummonPlayer
,
1
,
nil
,
1
-
p
)
then
Duel
.
RegisterFlagEffect
(
p
,
id
,
RESET_PHASE
+
PHASE_END
,
0
,
2
)
if
eg
:
IsExists
(
s
.
chkfilter
,
1
,
nil
,
p
)
then
Duel
.
RegisterFlagEffect
(
p
,
id
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
if
Duel
.
GetFlagEffect
(
p
,
id
)
>
1
then
Duel
.
RegisterFlagEffect
(
p
,
id
+
o
,
RESET_PHASE
+
PHASE_END
,
0
,
2
)
end
end
end
end
...
...
@@ -60,7 +66,7 @@ function s.mfilter(c,e,tp)
return
g
and
#
g
>
0
and
g
:
IsContains
(
c
)
end
function
s
.
altop
(
e
,
tp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
id
)
>
1
end
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
id
+
o
)
>
0
end
e
:
GetHandler
():
RegisterFlagEffect
(
id
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TOFIELD
+
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
function
s
.
lscon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
@@ -68,22 +74,20 @@ function s.lscon(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
lsop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
3
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_CLIENT_HINT
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
e2
=
e1
:
Clone
()
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
3
))
e2
:
SetCode
(
EFFECT_CANNOT_SUMMON
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
function
s
.
lecon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
s
.
letg
(
e
,
te
)
function
s
.
aclimit
(
e
,
te
,
tp
)
return
te
:
IsActiveType
(
TYPE_MONSTER
)
and
te
:
GetHandler
():
IsAttackAbove
(
3000
)
end
function
s
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
@@ -100,4 +104,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToHand
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
end
\ No newline at end of file
end
expansions/script/c101202043.lua
View file @
add63643
...
...
@@ -79,4 +79,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
c
:
RegisterEffect
(
e1
)
end
Duel
.
SpecialSummonComplete
()
end
\ No newline at end of file
end
expansions/script/c101202045.lua
View file @
add63643
--
coded by Lyris
--
奇跡の魔導剣士
--Exceed the Pendulum
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
@@ -42,10 +43,10 @@ function s.gchk(g)
return
g
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_PENDULUM
)
end
function
s
.
afilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_PENDULUM
)
return
c
:
IsFaceup
()
and
c
:
GetOriginalType
()
&
TYPE_PENDULUM
~=
0
end
function
s
.
val
(
e
,
c
)
return
Duel
.
GetMatchingGroupCount
(
s
.
afilter
,
c
:
GetControl
er
(),
LOCATION_ONFIELD
,
0
,
nil
)
*
100
return
Duel
.
GetMatchingGroupCount
(
s
.
afilter
,
e
:
GetHandlerPlay
er
(),
LOCATION_ONFIELD
,
0
,
nil
)
*
100
end
function
s
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
...
...
expansions/script/c101202046.lua
View file @
add63643
--S:Pリトルナイト
--S:P Little Night
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--material
...
...
@@ -68,17 +68,21 @@ end
function
s
.
drmcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
rp
==
1
-
tp
end
function
s
.
cfilter
(
c
,
tp
)
return
c
:
IsAbleToRemove
()
and
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
c
)
function
s
.
cfilter1
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsAbleToRemove
()
and
Duel
.
IsExistingTarget
(
s
.
cfilter2
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
c
)
end
function
s
.
cfilter2
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsAbleToRemove
()
end
function
s
.
drmtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
false
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
s
.
cfilter
1
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
cfilter
1
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
sg
=
Duel
.
SelectTarget
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
g
)
g
:
Merge
(
sg
)
local
g2
=
Duel
.
SelectTarget
(
tp
,
s
.
cfilter2
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
g
)
g
:
Merge
(
g2
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
2
,
0
,
0
)
end
function
s
.
drmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
@@ -116,4 +120,4 @@ function s.retop(e,tp,eg,ep,ev,re,r,rp)
for
tc
in
aux
.
Next
(
g
)
do
Duel
.
ReturnToField
(
tc
)
end
end
\ No newline at end of file
end
expansions/script/c101202047.lua
View file @
add63643
...
...
@@ -72,6 +72,7 @@ function c101202047.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c101202047
.
cfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
tp
)
e
:
SetLabel
(
g
:
GetFirst
():
GetCode
())
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
SendtoDeck
(
g
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_COST
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
...
...
@@ -143,7 +144,7 @@ function c101202047.pop(e,tp,eg,ep,ev,re,r,rp)
tg
=
tg
:
Filter
(
aux
.
PConditionExtraFilterSpecific
,
nil
,
e
,
tp
,
lscale
,
rscale
,
e1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
aux
.
GCheckAdditional
=
aux
.
PendOperationCheck
(
ft1
,
ft2
,
ft
)
local
g
=
tg
:
SelectSubGroup
(
tp
,
aux
.
TRUE
,
tru
e
,
1
,
math.min
(
#
tg
,
ft
))
local
g
=
tg
:
SelectSubGroup
(
tp
,
aux
.
TRUE
,
fals
e
,
1
,
math.min
(
#
tg
,
ft
))
aux
.
GCheckAdditional
=
nil
if
not
g
then
e1
:
Reset
()
...
...
expansions/script/c101202049.lua
View file @
add63643
--TG-ブレイクリミッター
--T.G. - Break Limiter
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -68,4 +68,4 @@ function s.rtop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
tc
)
else
Duel
.
SendtoDeck
(
tc
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
expansions/script/c101202050.lua
View file @
add63643
--
coded by Lyris
--
TG-オールクリア
--T.G. - All Clear
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
expansions/script/c101202055.lua
View file @
add63643
...
...
@@ -81,4 +81,4 @@ function s.tgop(e,tp,eg,ep,ev,re,r,rp)
if
Duel
.
GetTurnCount
()
~=
e
:
GetLabel
()
+
1
then
return
end
Duel
.
Hint
(
HINT_CARD
,
0
,
id
)
Duel
.
SendtoGrave
(
e
:
GetHandler
(),
REASON_EFFECT
)
end
\ No newline at end of file
end
expansions/script/c101202056.lua
View file @
add63643
--
coded by Lyris
--
蛇眼神殿スネークアイ
--The Shrine of Serpentine Sight - Snake-Eye
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -25,7 +26,7 @@ function s.initial_effect(c)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e3
:
SetRange
(
LOCATION_FZONE
)
e3
:
SetCountLimit
(
1
)
e3
:
SetCountLimit
(
1
,
EFFECT_COUNT_CODE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_CARD_TARGET
)
e3
:
SetCondition
(
s
.
spcon
)
e3
:
SetTarget
(
s
.
sptg
)
...
...
@@ -36,11 +37,11 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e4
)
end
function
s
.
filter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x
19c
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
Duel
.
GetLocationCount
(
c
:
GetOwner
(),
LOCATION_SZONE
,
tp
)
>
0
return
c
:
IsSetCard
(
0x
2a0
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
Duel
.
GetLocationCount
(
c
:
GetOwner
(),
LOCATION_SZONE
,
tp
)
>
0
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_GRAVE
+
LOCATION_HAND
,
0
,
1
,
nil
,
tp
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NecroValleyFilter
(
s
.
filter
),
tp
,
LOCATION_DECK
+
LOCATION_GRAVE
+
LOCATION_HAND
,
0
,
nil
,
tp
)
if
#
g
==
0
or
not
Duel
.
SelectEffectYesNo
(
tp
,
c
,
aux
.
Stringid
(
id
,
1
))
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
tc
=
g
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
...
...
expansions/script/c101202057.lua
View file @
add63643
...
...
@@ -77,4 +77,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
BreakEffect
()
Duel
.
SendtoDeck
(
rc
,
nil
,
SEQ_DECKBOTTOM
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
expansions/script/c101202059.lua
View file @
add63643
--
coded by Lyris
--
ファイヤー・バック
--Fire Recovery
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -30,7 +31,7 @@ function s.filter(c,e,tp)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
s
.
filter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToGrave
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToGrave
,
tp
,
LOCATION_HAND
,
0
,
1
,
e
:
GetHandler
())
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
@@ -40,6 +41,8 @@ end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
if
Duel
.
DiscardHand
(
tp
,
Card
.
IsAbleToGrave
,
1
,
1
,
REASON_EFFECT
)
<
1
then
return
end
local
gc
=
Duel
.
GetOperatedGroup
():
GetFirst
()
if
not
gc
:
IsLocation
(
LOCATION_GRAVE
)
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
...
...
expansions/script/c101202060.lua
View file @
add63643
--
coded by Lyris
--
シンクロ・ランブル
--Synchro Rumble
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
aux
.
AddCodeList
(
c
,
63436931
)
--Activate
...
...
@@ -25,7 +26,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e2
)
end
function
s
.
filter
(
c
,
e
,
tp
)
return
c
:
IsType
(
TYPE_TUNER
)
or
(
c
:
IsLevel
(
7
,
8
)
and
c
:
IsRace
(
RACE_DRAGON
)
and
c
:
IsType
(
TYPE_SYNCHRO
))
return
(
c
:
IsType
(
TYPE_TUNER
)
or
c
:
IsLevel
(
7
,
8
)
and
c
:
IsRace
(
RACE_DRAGON
)
and
c
:
IsType
(
TYPE_SYNCHRO
))
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
...
...
@@ -40,12 +41,12 @@ function s.activate(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_DEFENSE
)
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_
CLIENT_HINT
+
EFFECT_FLAG_
PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
s
.
limit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
s
.
limit
(
e
,
c
)
...
...
expansions/script/c101202061.lua
View file @
add63643
--
coded by Lyris
--
星逢の神籬
--The Himorogi where Stars Align
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -35,7 +36,7 @@ function s.mfilter(c,tp)
return
(
c
:
IsType
(
TYPE_SPIRIT
)
or
c
:
IsCode
(
25415053
))
and
c
:
IsLocation
(
LOCATION_MZONE
)
end
function
s
.
cfilter
(
c
,
tp
)
return
c
:
IsPreviousPosition
(
POS_FACEUP
)
and
c
:
IsAttribute
(
ATTRIBUTE_WIND
)
and
c
:
IsPreviousControler
(
tp
)
return
c
:
IsPreviousPosition
(
POS_FACEUP
)
and
bit
.
band
(
c
:
GetPreviousAttributeOnField
(),
ATTRIBUTE_WIND
)
~=
0
and
c
:
IsPreviousControler
(
tp
)
and
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsControler
(
tp
)
end
function
s
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
@@ -51,7 +52,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
local
b1
=
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
1
,
nil
)
local
b2
=
Duel
.
IsExistingMatchingCard
(
s
.
sfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
if
chk
==
0
then
return
b1
or
b2
end
local
op
=
aux
.
SelectFromOptions
(
tp
,{
b1
,
1190
},{
b2
,
115
9
})
local
op
=
aux
.
SelectFromOptions
(
tp
,{
b1
,
1190
},{
b2
,
115
3
})
if
op
==
1
then
e
:
SetCategory
(
CATEGORY_TOHAND
)
e
:
SetOperation
(
s
.
retrieve
)
...
...
expansions/script/c101202064.lua
View file @
add63643
...
...
@@ -42,13 +42,13 @@ function s.sfilter2(c,e,tp,oc)
and
aux
.
gfcheck
(
Group
.
FromCards
(
c
,
oc
),
Card
.
IsSetCard
,
0x196
,
0x29d
)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_HAND
,
0
,
1
,
nil
)
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
g
:
IsExists
(
s
.
sfilter1
,
1
,
nil
,
e
,
tp
,
g
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
2
,
PLAYER_ALL
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_HAND
)
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_HAND
,
0
,
1
,
nil
)
local
g
=
Duel
.
GetMatchingGroup
(
s
.
filter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
+
LOCATION_HAND
,
0
,
nil
)
if
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
g
:
IsExists
(
s
.
sfilter1
,
1
,
nil
,
e
,
tp
,
g
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
aux
.
Stringid
(
id
,
2
))
local
sc
=
g
:
FilterSelect
(
tp
,
s
.
sfilter1
,
1
,
1
,
nil
,
e
,
tp
,
g
):
GetFirst
()
...
...
expansions/script/c101202065.lua
View file @
add63643
--
coded by Lyris
--
天子の指輪
--Angel Ring
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
expansions/script/c101202066.lua
View file @
add63643
--
coded by Lyris
--
カードスキャナー
--Card Scanner
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -31,7 +32,7 @@ function s.initial_effect(c)
end
function
s
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_DECK
,
1
,
nil
)
end
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_DECK
,
1
,
nil
,
1
-
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CARDTYPE
)
Duel
.
SetTargetParam
(
Duel
.
AnnounceType
(
tp
))
end
...
...
@@ -39,12 +40,14 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
if
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_DECK
,
0
)
==
0
or
Duel
.
GetFieldGroup
(
tp
,
0
,
LOCATION_DECK
)
==
0
then
return
end
local
sc
=
Duel
.
GetFieldCard
(
tp
,
LOCATION_DECK
,
0
)
local
oc
=
Duel
.
GetFieldCard
(
1
-
tp
,
LOCATION_DECK
,
0
)
Duel
.
ConfirmCards
(
tp
,
sc
)
Duel
.
ConfirmCards
(
1
-
tp
,
sc
)
Duel
.
ConfirmCards
(
tp
,
oc
)
Duel
.
ConfirmCards
(
1
-
tp
,
oc
)
local
op
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PARAM
)
if
sc
:
IsType
(
1
<<
op
)
then
Duel
.
SendtoHand
(
sc
,
nil
,
REASON_EFFECT
)
else
Duel
.
MoveSequence
(
sc
,
SEQ_DECKTOP
)
end
if
oc
:
IsType
(
1
<<
op
)
then
Duel
.
SendtoHand
(
oc
,
nil
,
REASON_EFFECT
)
if
oc
:
IsType
(
1
<<
op
)
then
Duel
.
SendtoHand
(
oc
,
nil
,
REASON_EFFECT
,
1
-
tp
)
else
Duel
.
MoveSequence
(
oc
,
SEQ_DECKTOP
)
end
end
function
s
.
tdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c101202067.lua
View file @
add63643
--
coded by Lyris
--
不死武士の悼み
--Lament of the Immortal Bushi
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -28,11 +29,11 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e3
)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_MZONE
,
0
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_MZONE
,
0
)
if
chk
==
0
then
return
#
g
>
0
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
#
g
,
0
,
0
)
end
function
s
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_MZONE
,
0
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_MZONE
,
0
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
expansions/script/c101202069.lua
View file @
add63643
...
...
@@ -16,7 +16,7 @@ function c101202069.initial_effect(c)
c
:
RegisterEffect
(
e1
)
end
function
c101202069
.
rfilter
(
c
,
tp
)
return
c
:
GetBaseAttack
()
==
2500
and
c
:
IsRace
(
RACE_SPELLCASTER
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
return
c
:
GetBaseAttack
()
==
2500
and
c
:
IsRace
(
RACE_SPELLCASTER
)
and
c
:
IsType
(
TYPE_PENDULUM
)
end
function
c101202069
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
c101202069
.
rfilter
,
1
,
nil
,
tp
)
end
...
...
expansions/script/c101202070.lua
View file @
add63643
--
coded by Lyris
--
TG-クローズ
--T.G. - Close
local
s
,
id
,
o
=
GetID
()
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
expansions/script/c101202071.lua
View file @
add63643
--重铠装超量
--フル・アーマード・エクシーズ
--Script by Dio0
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--activate
...
...
@@ -28,12 +29,11 @@ end
function
s
.
xyzfilter
(
c
)
return
c
:
IsXyzSummonable
(
nil
)
end
function
s
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
end
function
s
.
xyzcond
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
return
Duel
.
IsExistingMatchingCard
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
return
Duel
.
IsExistingMatchingCard
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
end
function
s
.
xyztg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
xyzfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
end
...
...
@@ -47,12 +47,11 @@ function s.xyzop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
XyzSummon
(
tp
,
tg
:
GetFirst
(),
nil
)
end
end
function
s
.
tgfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
and
Duel
.
IsExistingMatchingCard
(
s
.
eqfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
c
)
end
function
s
.
eqfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
and
c
:
CheckUniqueOnField
(
tp
)
and
not
c
:
IsForbidden
()
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
and
c
:
CheckUniqueOnField
(
tp
)
and
not
c
:
IsForbidden
()
end
function
s
.
eqtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
s
.
tgfilter
(
chkc
,
tp
)
end
...
...
@@ -60,18 +59,17 @@ function s.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
return
ft
>
0
and
Duel
.
IsExistingTarget
(
s
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarget
(
tp
,
s
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_EQUIP
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_EQUIP
,
g
,
1
,
0
,
0
)
end
function
s
.
eqop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<=
0
then
return
end
local
c
=
e
:
GetHandler
()
local
t
g
=
Duel
.
GetTargetsRelateToChain
()
local
tc
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
):
GetFirst
()
local
ec
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
eqfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
1
,
tc
,
tp
):
GetFirst
(
)
if
tc
and
ec
and
ec
:
CheckUniqueOnField
(
tp
)
and
not
ec
:
IsForbidden
()
then
if
not
Duel
.
Equip
(
tp
,
ec
,
tc
)
then
return
end
local
t
c
=
Duel
.
GetTargetsRelateToChain
():
GetFirst
()
if
not
tc
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_EQUIP
)
local
ec
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
s
.
eqfilter
),
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
1
,
tc
,
tp
):
GetFirst
()
if
ec
and
Duel
.
Equip
(
tp
,
ec
,
tc
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
...
...
@@ -80,17 +78,17 @@ function s.eqop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetValue
(
s
.
eqlimit
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
ec
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
--
local
e2
=
Effect
.
CreateEffect
(
ec
)
e2
:
SetType
(
EFFECT_TYPE_EQUIP
)
e2
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e2
:
SetValue
(
ec
:
GetAttack
())
e2
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
ec
:
RegisterEffect
(
e2
)
ec
:
RegisterEffect
(
e2
,
true
)
--substitute
local
e3
=
Effect
.
CreateEffect
(
c
)
local
e3
=
Effect
.
CreateEffect
(
e
c
)
e3
:
SetType
(
EFFECT_TYPE_EQUIP
)
e3
:
SetCode
(
EFFECT_DESTROY_SUBSTITUTE
)
e3
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e3
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e3
:
SetValue
(
s
.
desrepval
)
ec
:
RegisterEffect
(
e3
,
true
)
...
...
expansions/script/c101202073.lua
View file @
add63643
...
...
@@ -45,6 +45,7 @@ function c101202073.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local
rc
=
g
:
GetFirst
()
if
rc
:
IsType
(
TYPE_TOKEN
)
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
101202073
,
2
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
...
...
@@ -66,8 +67,10 @@ function c101202073.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
c101202073
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
,
nil
):
GetFirst
()
if
tc
and
Duel
.
SpecialSummonStep
(
tc
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
then
local
fid
=
tc
:
GetFieldID
()
tc
:
RegisterFlagEffect
(
101202073
,
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
0
,
1
,
fid
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
101202073
,
3
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
...
...
expansions/script/c101202074.lua
View file @
add63643
--
coded by Lyris
--
裏切りの罪宝-シルウィア
--Tainted Treasure of Betrayal - Silvia
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -29,7 +30,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e2
)
end
function
s
.
filter
(
c
,
tp
)
return
c
:
IsFaceupEx
()
and
c
:
IsSetCard
(
0x
19b
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToGraveAsCost
()
return
c
:
IsFaceupEx
()
and
c
:
IsSetCard
(
0x
29f
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToGraveAsCost
()
and
Duel
.
IsExistingTarget
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
c
)
end
function
s
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
@@ -39,11 +40,12 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsOnField
()
and
aux
.
NegateAnyFilter
(
chkc
)
end
local
c
=
e
:
GetHandler
()
if
chkc
then
return
chkc
:
IsOnField
()
and
aux
.
NegateAnyFilter
(
chkc
)
and
c
~=
chkc
end
if
chk
==
0
then
return
e
:
IsCostChecked
()
or
Duel
.
IsExistingTarget
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
end
or
Duel
.
IsExistingTarget
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
c
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
Duel
.
SelectTarget
(
tp
,
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
Duel
.
SelectTarget
(
tp
,
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
c
)
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
...
...
expansions/script/c101202075.lua
View file @
add63643
...
...
@@ -21,9 +21,12 @@ function s.condition(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
GetMatchingGroup
(
s
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
nil
):
GetSum
(
Card
.
GetLevel
)
>
1
end
function
s
.
mfilter
(
c
,
tp
,
ft
)
if
not
(
c
:
IsFaceupEx
()
and
c
:
GetOriginalType
()
&
TYPE_MONSTER
>
0
)
then
return
false
end
local
p
=
c
:
GetOwner
()
if
p
~=
tp
then
ft
=
0
end
local
r
=
LOCATION_REASON_TOFIELD
if
not
c
:
IsControler
(
c
:
GetOwner
()
)
then
r
=
LOCATION_REASON_CONTROL
end
return
c
:
GetOriginalType
()
&
TYPE_MONSTER
>
0
and
Duel
.
GetLocationCount
(
c
:
GetOwner
(),
LOCATION_SZONE
,
tp
,
r
)
>
0
if
not
c
:
IsControler
(
p
)
then
r
=
LOCATION_REASON_CONTROL
end
return
Duel
.
GetLocationCount
(
p
,
LOCATION_SZONE
,
tp
,
r
)
>
ft
end
function
s
.
sfilter
(
c
,
e
,
tp
)
return
c
:
GetOriginalType
()
&
TYPE_MONSTER
>
0
and
c
:
GetType
()
&
TYPE_CONTINUOUS
+
TYPE_SPELL
==
TYPE_CONTINUOUS
+
TYPE_SPELL
...
...
@@ -46,7 +49,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
e
:
SetCategory
(
0
)
e
:
SetOperation
(
s
.
mvop
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarget
(
tp
,
s
.
mfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
,
tp
,
ft
)
Duel
.
SelectTarget
(
tp
,
s
.
mfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
,
tp
,
0
)
else
e
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e
:
SetOperation
(
s
.
spop
)
...
...
@@ -71,4 +74,4 @@ end
function
s
.
spop
(
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
)
end
end
\ No newline at end of file
end
expansions/script/c101202077.lua
View file @
add63643
...
...
@@ -31,6 +31,7 @@ function s.initial_effect(c)
e3
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e3
:
SetRange
(
LOCATION_SZONE
)
e3
:
SetCountLimit
(
1
,
id
)
e3
:
SetCondition
(
s
.
effcon
)
e3
:
SetCost
(
s
.
effcost
)
e3
:
SetOperation
(
s
.
changeop
)
e3
:
SetLabel
(
2
)
...
...
@@ -44,6 +45,7 @@ function s.initial_effect(c)
e4
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e4
:
SetRange
(
LOCATION_SZONE
)
e4
:
SetCountLimit
(
1
,
id
)
e4
:
SetCondition
(
s
.
effcon
)
e4
:
SetCost
(
s
.
effcost
)
e4
:
SetTarget
(
s
.
tgtg
)
e4
:
SetOperation
(
s
.
tgop
)
...
...
@@ -61,7 +63,7 @@ function s.rmfilter(c)
end
function
s
.
effcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
ct
=
e
:
GetLabel
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
rmfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
rmfilter
,
tp
,
LOCATION_EXTRA
,
0
,
ct
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
rmfilter
,
tp
,
LOCATION_EXTRA
,
0
,
ct
,
ct
,
nil
)
Duel
.
Remove
(
g
,
POS_FACEDOWN
,
REASON_COST
)
...
...
@@ -105,14 +107,10 @@ function s.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
s
.
tgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
res
=
nil
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
res
=
Duel
.
SendtoGrave
(
g
,
REASON_EFFECT
)
end
local
dg
=
Duel
.
GetMatchingGroup
(
aux
.
NegateEffectMonsterFilter
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
if
#
dg
>
0
and
res
~=
0
then
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
tgfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
):
GetFirst
()
if
tc
and
Duel
.
SendtoGrave
(
tc
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_GRAVE
)
then
local
dg
=
Duel
.
GetMatchingGroup
(
aux
.
NegateEffectMonsterFilter
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
local
dc
=
dg
:
GetFirst
()
while
dc
do
Duel
.
NegateRelatedChain
(
dc
,
RESET_TURN_SET
)
...
...
@@ -130,4 +128,4 @@ function s.tgop(e,tp,eg,ep,ev,re,r,rp)
dc
=
dg
:
GetNext
()
end
end
end
\ No newline at end of file
end
expansions/script/c101202079.lua
View file @
add63643
--
coded by Lyris
--
星宵竜転
--Seishou Ruten
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--Activate
...
...
@@ -34,7 +35,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
local
f
=
aux
.
FALSE
local
typ
=
tc
:
GetType
()
&
TYPE_FUSION
+
TYPE_SYNCHRO
+
TYPE_XYZ
+
TYPE_LINK
if
typ
==
TYPE_FUSION
then
f
=
aux
.
FilterEqualFunction
(
Card
.
GetAttribute
,
tc
:
GetAttribute
())
elseif
typ
==
TYPE_SYNCHRO
then
f
=
aux
.
FilterBoolFunction
(
Card
.
IsLevelBelow
,
tc
:
GetLevel
())
elseif
typ
==
TYPE_SYNCHRO
then
f
=
aux
.
FilterBoolFunction
(
Card
.
IsLevelBelow
,
tc
:
GetLevel
()
-
1
)
elseif
typ
==
TYPE_XYZ
then
f
=
aux
.
FilterBoolFunction
(
Card
.
IsLevel
,
tc
:
GetRank
())
elseif
typ
==
TYPE_LINK
then
f
=
aux
.
FilterEqualFunction
(
Card
.
GetRace
,
tc
:
GetRace
())
end
local
g
=
Duel
.
GetMatchingGroup
(
s
.
sfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
nil
,
e
,
tp
,
f
)
...
...
expansions/script/c101202080.lua
View file @
add63643
--
coded by Lyris
--
エスケープ・ゴート
--Escapegoat
--coded by Lyris
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -36,12 +37,12 @@ function s.tkcon(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TARGET_CARDS
)
return
g
and
g
:
IsExists
(
s
.
tfilter
,
1
,
nil
,
tp
)
end
function
s
.
cfilter
(
c
)
function
s
.
cfilter
(
c
,
tp
)
return
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
s
.
tkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
nil
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
1
,
nil
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
nil
,
tp
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
s
.
cfilter
,
1
,
1
,
nil
,
tp
)
Duel
.
Release
(
g
,
REASON_COST
)
end
function
s
.
tktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
@@ -66,7 +67,7 @@ function s.rfilter(c,e)
end
function
s
.
reptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
eg
:
IsExists
(
s
.
filter
,
1
,
nil
,
e
)
and
Duel
.
IsExistingMatchingCard
(
s
.
rfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
,
e
)
end
if
Duel
.
SelectEffectYesNo
(
tp
,
c
,
96
)
then
if
Duel
.
SelectEffectYesNo
(
tp
,
e
:
GetHandler
()
,
96
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DESREPLACE
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
rfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
1
,
nil
,
e
):
GetFirst
()
e
:
SetLabelObject
(
tc
)
...
...
expansions/script/c101203038.lua
View file @
add63643
...
...
@@ -12,6 +12,7 @@ function s.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_DELAY
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
id
)
e1
:
SetCondition
(
s
.
dmgcon
)
e1
:
SetTarget
(
s
.
damtg
)
e1
:
SetOperation
(
s
.
dmgop
)
...
...
expansions/script/c101203055.lua
View file @
add63643
...
...
@@ -174,6 +174,6 @@ function s.op5(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter5
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoHand
(
g
:
GetFirst
(),
nil
,
REASON_EFFECT
)
Duel
.
ShuffleDeck
(
tp
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment