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
Soulgamer
ygopro-222DIY-cards
Commits
f3496c41
You need to sign in or sign up before continuing.
Commit
f3496c41
authored
Oct 14, 2020
by
TanakaKotoha
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
7
parent
71e97404
Changes
100
Hide whitespace changes
Inline
Side-by-side
Showing
100 changed files
with
1000 additions
and
624 deletions
+1000
-624
expansions/222DIY.cdb
expansions/222DIY.cdb
+0
-0
expansions/script/c10199990.lua
expansions/script/c10199990.lua
+104
-37
expansions/script/c10199991.lua
expansions/script/c10199991.lua
+4
-2
expansions/script/c10199992.lua
expansions/script/c10199992.lua
+7
-0
expansions/script/c12061001.lua
expansions/script/c12061001.lua
+2
-2
expansions/script/c12061010.lua
expansions/script/c12061010.lua
+5
-5
expansions/script/c12061020.lua
expansions/script/c12061020.lua
+2
-2
expansions/script/c14700101.lua
expansions/script/c14700101.lua
+1
-1
expansions/script/c17061180.lua
expansions/script/c17061180.lua
+2
-2
expansions/script/c26800000.lua
expansions/script/c26800000.lua
+70
-37
expansions/script/c26803012.lua
expansions/script/c26803012.lua
+4
-4
expansions/script/c26809052.lua
expansions/script/c26809052.lua
+0
-1
expansions/script/c26821000.lua
expansions/script/c26821000.lua
+1
-0
expansions/script/c26821001.lua
expansions/script/c26821001.lua
+3
-32
expansions/script/c26821002.lua
expansions/script/c26821002.lua
+3
-32
expansions/script/c26821003.lua
expansions/script/c26821003.lua
+4
-19
expansions/script/c26821004.lua
expansions/script/c26821004.lua
+4
-13
expansions/script/c26821005.lua
expansions/script/c26821005.lua
+4
-13
expansions/script/c26821006.lua
expansions/script/c26821006.lua
+3
-19
expansions/script/c26821007.lua
expansions/script/c26821007.lua
+3
-22
expansions/script/c26821008.lua
expansions/script/c26821008.lua
+4
-13
expansions/script/c26821009.lua
expansions/script/c26821009.lua
+4
-13
expansions/script/c26821010.lua
expansions/script/c26821010.lua
+3
-32
expansions/script/c26821011.lua
expansions/script/c26821011.lua
+3
-12
expansions/script/c26821012.lua
expansions/script/c26821012.lua
+3
-12
expansions/script/c26821013.lua
expansions/script/c26821013.lua
+3
-8
expansions/script/c26821014.lua
expansions/script/c26821014.lua
+4
-13
expansions/script/c26821015.lua
expansions/script/c26821015.lua
+3
-8
expansions/script/c26821016.lua
expansions/script/c26821016.lua
+2
-21
expansions/script/c26821017.lua
expansions/script/c26821017.lua
+3
-12
expansions/script/c26821018.lua
expansions/script/c26821018.lua
+3
-12
expansions/script/c33301000.lua
expansions/script/c33301000.lua
+9
-0
expansions/script/c33310100.lua
expansions/script/c33310100.lua
+3
-3
expansions/script/c33310101.lua
expansions/script/c33310101.lua
+11
-10
expansions/script/c33310102.lua
expansions/script/c33310102.lua
+5
-5
expansions/script/c33310103.lua
expansions/script/c33310103.lua
+1
-1
expansions/script/c33310104.lua
expansions/script/c33310104.lua
+1
-1
expansions/script/c33310302.lua
expansions/script/c33310302.lua
+1
-1
expansions/script/c33330094.lua
expansions/script/c33330094.lua
+5
-5
expansions/script/c33330100.lua
expansions/script/c33330100.lua
+1
-1
expansions/script/c33330101.lua
expansions/script/c33330101.lua
+1
-1
expansions/script/c33330105.lua
expansions/script/c33330105.lua
+1
-1
expansions/script/c33330109.lua
expansions/script/c33330109.lua
+3
-3
expansions/script/c33330151.lua
expansions/script/c33330151.lua
+117
-0
expansions/script/c33330400.lua
expansions/script/c33330400.lua
+7
-7
expansions/script/c33330413.lua
expansions/script/c33330413.lua
+4
-4
expansions/script/c33331100.lua
expansions/script/c33331100.lua
+2
-2
expansions/script/c33340004.lua
expansions/script/c33340004.lua
+1
-1
expansions/script/c33350022.lua
expansions/script/c33350022.lua
+35
-108
expansions/script/c33400524.lua
expansions/script/c33400524.lua
+1
-1
expansions/script/c33500933.lua
expansions/script/c33500933.lua
+6
-4
expansions/script/c37564202.lua
expansions/script/c37564202.lua
+1
-1
expansions/script/c65010003.lua
expansions/script/c65010003.lua
+1
-1
expansions/script/c65010004.lua
expansions/script/c65010004.lua
+1
-1
expansions/script/c65010005.lua
expansions/script/c65010005.lua
+1
-1
expansions/script/c65010006.lua
expansions/script/c65010006.lua
+1
-1
expansions/script/c65010007.lua
expansions/script/c65010007.lua
+1
-1
expansions/script/c65010008.lua
expansions/script/c65010008.lua
+1
-1
expansions/script/c65010009.lua
expansions/script/c65010009.lua
+1
-1
expansions/script/c65010010.lua
expansions/script/c65010010.lua
+1
-1
expansions/script/c65010011.lua
expansions/script/c65010011.lua
+1
-1
expansions/script/c65010012.lua
expansions/script/c65010012.lua
+1
-1
expansions/script/c65010013.lua
expansions/script/c65010013.lua
+1
-1
expansions/script/c65010100.lua
expansions/script/c65010100.lua
+1
-1
expansions/script/c65010101.lua
expansions/script/c65010101.lua
+4
-4
expansions/script/c65010103.lua
expansions/script/c65010103.lua
+41
-0
expansions/script/c65010104.lua
expansions/script/c65010104.lua
+54
-0
expansions/script/c65010105.lua
expansions/script/c65010105.lua
+1
-1
expansions/script/c65010201.lua
expansions/script/c65010201.lua
+2
-2
expansions/script/c65010213.lua
expansions/script/c65010213.lua
+30
-0
expansions/script/c65010214.lua
expansions/script/c65010214.lua
+73
-0
expansions/script/c65010515.lua
expansions/script/c65010515.lua
+5
-5
expansions/script/c65010552.lua
expansions/script/c65010552.lua
+1
-1
expansions/script/c65010554.lua
expansions/script/c65010554.lua
+1
-1
expansions/script/c65010556.lua
expansions/script/c65010556.lua
+1
-1
expansions/script/c65010558.lua
expansions/script/c65010558.lua
+1
-1
expansions/script/c65010559.lua
expansions/script/c65010559.lua
+1
-1
expansions/script/c65010560.lua
expansions/script/c65010560.lua
+1
-1
expansions/script/c65010561.lua
expansions/script/c65010561.lua
+1
-1
expansions/script/c65010562.lua
expansions/script/c65010562.lua
+1
-1
expansions/script/c65010563.lua
expansions/script/c65010563.lua
+1
-1
expansions/script/c65010564.lua
expansions/script/c65010564.lua
+3
-3
expansions/script/c65010565.lua
expansions/script/c65010565.lua
+83
-0
expansions/script/c65010566.lua
expansions/script/c65010566.lua
+55
-0
expansions/script/c65010576.lua
expansions/script/c65010576.lua
+90
-0
expansions/script/c65010577.lua
expansions/script/c65010577.lua
+1
-1
expansions/script/c65010578.lua
expansions/script/c65010578.lua
+1
-1
expansions/script/c65010579.lua
expansions/script/c65010579.lua
+1
-1
expansions/script/c65010585.lua
expansions/script/c65010585.lua
+9
-0
expansions/script/c65010586.lua
expansions/script/c65010586.lua
+11
-3
expansions/script/c65010587.lua
expansions/script/c65010587.lua
+10
-3
expansions/script/c65020140.lua
expansions/script/c65020140.lua
+1
-1
expansions/script/c65020179.lua
expansions/script/c65020179.lua
+1
-1
expansions/script/c65030066.lua
expansions/script/c65030066.lua
+1
-1
expansions/script/c65030083.lua
expansions/script/c65030083.lua
+2
-0
expansions/script/c65030084.lua
expansions/script/c65030084.lua
+2
-0
expansions/script/c65060008.lua
expansions/script/c65060008.lua
+1
-1
expansions/script/c72404107.lua
expansions/script/c72404107.lua
+1
-1
expansions/script/c75646407.lua
expansions/script/c75646407.lua
+13
-9
expansions/script/c81000000.lua
expansions/script/c81000000.lua
+6
-6
No files found.
expansions/222DIY.cdb
View file @
f3496c41
No preview for this file type
expansions/script/c10199990.lua
View file @
f3496c41
--version 20.
08.25
--version 20.
10.11
if
not
pcall
(
function
()
require
(
"expansions/script/c10199991"
)
end
)
then
require
(
"script/c10199991"
)
end
local
m
=
10199990
local
vm
=
10199991
local
Version_Number
=
20200825
local
Version_Number
=
20201011
if
rsv
.
Library_Switch
then
return
end
rsv
.
Library_Switch
=
true
-----------------------"Part_Effect_Base"-----------------------
--Creat Event
function
rsef
.
CreatEvent
(
event_code
,
event1
,
con1
,
...
)
rsef
.
CreatEvent_Switch
=
rsef
.
CreatEvent_Switch
or
{}
if
rsef
.
CreatEvent_Switch
[
event_code
]
then
return
end
rsef
.
CreatEvent_Switch
[
event_code
]
=
true
local
creat_list
=
{
event1
,
con1
,
...
}
local
eff_list
=
{}
for
idx
,
val
in
pairs
(
creat_list
)
do
if
type
(
val
)
==
"number"
then
local
e1
=
rsef
.
FC
({
true
,
0
},
val
)
e1
:
SetOperation
(
rsop
.
CreatEvent
(
creat_list
[
idx
+
1
],
event_code
))
table.insert
(
eff_list
,
e1
)
end
end
return
table.unpack
(
eff_list
)
end
function
rsop
.
CreatEvent
(
con
,
event_code
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
con
=
con
or
aux
.
TRUE
local
res
,
sg
=
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
res
then
return
end
sg
=
sg
or
eg
Duel
.
RaiseEvent
(
sg
,
event_code
,
re
,
r
,
rp
,
ep
,
ev
)
for
tc
in
aux
.
Next
(
sg
)
do
Duel
.
RaiseSingleEvent
(
tc
,
event_code
,
re
,
r
,
rp
,
ep
,
ev
)
end
end
end
--Creat "EVENT_SET"
function
rsef
.
CreatEvent_Set
()
if
rsef
.
CreatEvent_Set_Switch
then
return
end
rsef
.
CreatEvent_Set_Switch
=
true
local
e1
=
rsef
.
FC
({
true
,
0
},
EVENT_MSET
)
e1
:
SetOperation
(
rsop
.
CreatEvent_Set
)
local
e2
=
rsef
.
RegisterClone
({
true
,
0
},
e1
,
"code"
,
EVENT_SSET
)
local
e3
=
rsef
.
RegisterClone
({
true
,
0
},
e1
,
"code"
,
EVENT_SPSUMMON_SUCCESS
,
"con"
,
rscon
.
CreatEvent_Set
)
local
e4
=
rsef
.
RegisterClone
({
true
,
0
},
e3
,
"code"
,
EVENT_CHANGE_POS
)
return
e1
,
e2
,
e3
,
e4
end
function
rsop
.
CreatEvent_Set
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
sg
=
eg
:
Filter
(
Card
.
IsFacedown
,
nil
)
Duel
.
RaiseEvent
(
sg
,
rscode
.
Set
,
re
,
r
,
rp
,
ep
,
ev
)
for
tc
in
aux
.
Next
(
sg
)
do
Duel
.
RaiseSingleEvent
(
tc
,
rscode
.
Set
,
re
,
r
,
rp
,
ep
,
ev
)
end
return
rsef
.
CreatEvent
(
rscode
.
Set
,
EVENT_MSET
,
nil
,
EVENT_SSET
,
nil
,
EVENT_SPSUMMON_SUCCESS
,
rscon
.
CreatEvent_Set
,
EVENT_CHANGE_POS
,
rscon
.
CreatEvent_Set
)
end
function
rscon
.
CreatEvent_Set
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
Card
.
IsFacedown
,
1
,
nil
)
local
sg
=
eg
:
Filter
(
Card
.
IsFacedown
,
nil
)
return
#
sg
>
0
,
sg
end
--Effect: Get default hint string for Duel.Hint ,use in effect target
...
...
@@ -753,14 +770,14 @@ function rsef.FV_INDESTRUCTABLE(reg_list,inds_list,val_list,tg,tg_range_list,con
end
--Field Val Effect: Other Limit
function
rsef
.
FV_LIMIT
(
reg_list
,
lim_list
,
val_list
,
tg
,
tg_range_list
,
con
,
reset_list
,
flag
,
desc_list
)
local
code_list_1
=
{
"dis"
,
"dise"
,
"tri"
,
"atk"
,
"atkan"
,
"datk"
,
"res"
,
"ress"
,
"resns"
,
"td"
,
"th"
,
"cp"
,
"cpe"
,
"ctrl"
}
local
code_list_2
=
{
EFFECT_DISABLE
,
EFFECT_DISABLE_EFFECT
,
EFFECT_CANNOT_TRIGGER
,
EFFECT_CANNOT_ATTACK
,
EFFECT_CANNOT_ATTACK_ANNOUNCE
,
EFFECT_CANNOT_DIRECT_ATTACK
,
EFFECT_CANNOT_RELEASE
,
EFFECT_UNRELEASABLE_SUM
,
EFFECT_UNRELEASABLE_NONSUM
,
EFFECT_CANNOT_TO_DECK
,
EFFECT_CANNOT_TO_HAND
,
EFFECT_CANNOT_CHANGE_POSITION
,
EFFECT_CANNOT_CHANGE_POS_E
,
EFFECT_CANNOT_CHANGE_CONTROL
}
local
code_list_1
=
{
"dis"
,
"dise"
,
"tri"
,
"atk"
,
"atkan"
,
"datk"
,
"res"
,
"ress"
,
"resns"
,
"td"
,
"th"
,
"cp"
,
"cpe"
,
"ctrl"
,
"distm"
}
local
code_list_2
=
{
EFFECT_DISABLE
,
EFFECT_DISABLE_EFFECT
,
EFFECT_CANNOT_TRIGGER
,
EFFECT_CANNOT_ATTACK
,
EFFECT_CANNOT_ATTACK_ANNOUNCE
,
EFFECT_CANNOT_DIRECT_ATTACK
,
EFFECT_CANNOT_RELEASE
,
EFFECT_UNRELEASABLE_SUM
,
EFFECT_UNRELEASABLE_NONSUM
,
EFFECT_CANNOT_TO_DECK
,
EFFECT_CANNOT_TO_HAND
,
EFFECT_CANNOT_CHANGE_POSITION
,
EFFECT_CANNOT_CHANGE_POS_E
,
EFFECT_CANNOT_CHANGE_CONTROL
,
EFFECT_DISABLE_TRAPMONSTER
}
local
code_list
,
val_list2
=
rsof
.
Table_Suit
(
lim_list
,
code_list_1
,
code_list_2
,
val_list
)
local
eff_list
=
{}
local
range
=
rsef
.
GetRegisterRange
(
reg_list
)
if
not
tg_range_list
then
tg_range_list
=
{
0
,
LOCATION_MZONE
}
end
for
idx
,
eff_code
in
ipairs
(
code_list
)
do
local
flag2
=
rsef
.
GetRegisterProperty
(
flag
)
|
EFFECT_FLAG_SET_AVAILABLE
local
flag2
=
rsef
.
GetRegisterProperty
(
flag
)
--
|EFFECT_FLAG_SET_AVAILABLE
flag2
=
eff_code
==
EFFECT_CANNOT_CHANGE_POSITION
and
flag2
or
flag2
|
EFFECT_FLAG_IGNORE_IMMUNE
local
e1
=
rsef
.
FV
(
reg_list
,
eff_code
,
val_list2
[
idx
],
tg
,
tg_range_list
,
range
,
con
,
reset_list
,
flag2
,
desc_list
)
table.insert
(
eff_list
,
e1
)
...
...
@@ -1170,7 +1187,7 @@ function rsef.FC_AttachEffect_ChangeOp2(baseop)
end
--Effect Function:XXX card/group will leave field in XXX Phase , often use in special summon
function
rsef
.
FC_PHASELEAVE
(
reg_list
,
sg
,
times
,
whos
,
phase
,
leaveway
,
reset_list
)
function
rsef
.
FC_PHASELEAVE
(
reg_list
,
leave_val
,
times
,
whos
,
phase
,
leaveway
,
reset_list
)
--times: nil every phase
-- 0 next phase
-- 1 or + times phase
...
...
@@ -1189,6 +1206,7 @@ function rsef.FC_PHASELEAVE(reg_list,sg,times,whos,phase,leaveway,reset_list)
if
times
==
0
and
whos
==
1
and
turnp
~=
tp
then
times
=
cphase
<=
phase
and
2
or
1
end
local
sg
=
rsgf
.
Mix2
(
leave_val
)
local
fid
=
reg_owner
:
GetFieldID
()
for
tc
in
aux
.
Next
(
sg
)
do
tc
:
RegisterFlagEffect
(
rscode
.
Phase_Leave_Flag
,
rsreset
.
est
+
RESET_PHASE
+
phase
,
0
,
0
,
fid
)
...
...
@@ -1496,28 +1514,34 @@ function rstg.negsumtg(way_str)
end
--Effect target: Target Cards Main Set
--effect parameter table main set
function
rsef
.
list
(
list_type_str
,
parameter1
,
...
)
--warning:
--bugs in {{A,B,C},{A2,B2,C2}},{A3,B3,C3} ,plz use {A3,B3,C3},{{A,B,C},{A2,B2,C2}}
--bugs in {filter,nil,loc},{filter,nil,loc} , plz use "" no nil
function
rsef
.
list
(
list_type_str
,
...
)
--{cfilter,gfilter}, if you use table, gfilter must be function, if you use gfilter, loc_self must be number !!!!!!!!!
local
parameter
2
,
parameter3
=
({
...
})[
1
],({
...
})[
2
]
local
mix_list
=
{
parameter1
,
...
}
local
len
=
#
mix_list
local
parameter
1
,
parameter2
,
parameter3
=
({
...
})[
1
],({
...
})[
2
],({
...
})[
3
]
local
mix_list
=
{
...
}
local
len
=
select
(
'#'
,
...
)
local
target_list_total
=
{}
--1. cfilter,category,loc_self
if
type
(
parameter1
)
~=
"table"
then
target_list_total
=
{{
parameter1
,
...
}}
target_list_total
=
{{
...
}}
--2. { cfilter,gfilter }, { category_fun,category_str,sel_hint } ,loc_self
elseif
type
(
parameter1
)
==
"table"
and
len
>
1
and
type
(
parameter1
[
1
])
==
"function"
and
(
type
(
parameter1
[
2
])
==
"nil"
or
type
(
parameter1
[
2
])
==
"function"
)
and
(
type
(
parameter1
[
2
])
~=
"function"
or
type
(
parameter3
)
==
"number"
)
then
target_list_total
=
{{
parameter1
,
...
}}
elseif
type
(
parameter1
)
==
"table"
and
type
(
parameter1
[
1
])
==
"function"
and
type
(
parameter1
[
2
])
==
"function"
and
type
(
parameter3
)
==
"number"
then
target_list_total
=
{{
...
}}
--3. {A,B,C},{{D,E,F}} OR {A,B,C},{D,E,F} OR {{A,B,C}},{D,E,F}, to {{A,B,C},{D,E,F}}
else
for
_
,
mix_parammeter
in
pairs
(
mix_list
)
do
--Debug.Message(#mix_parammeter[1])
if
rsof
.
Check_Boolean
(
mix_parammeter
[
0
],
true
)
then
for
idx
,
mix_parammeter2
in
pairs
(
mix_parammeter
)
do
if
idx
~=
0
then
table.insert
(
target_list_total
,
mix_parammeter2
)
end
end
end
else
mix_parammeter
[
2
]
=
mix_parammeter
[
2
]
or
""
table.insert
(
target_list_total
,
mix_parammeter
)
end
end
...
...
@@ -1849,7 +1873,7 @@ function rstg.TargetSelect(e,tp,eg,ep,ev,re,r,rp,target_list_total)
if
not
is_player
then
info_count
=
type
(
minct
)
==
"number"
and
minct
or
#
selected_group
end
if
aux
.
GetValueType
(
selected_group
)
~=
"Group"
then
if
aux
.
GetValueType
(
selected_group
)
~=
"Group"
or
category
==
CATEGORY_HANDES
then
if
(
type
(
loc_self
)
==
"number"
and
loc_self
>
0
)
and
(
type
(
loc_oppo
)
==
"number"
and
loc_oppo
>
0
)
then
info_player
=
PLAYER_ALL
elseif
(
type
(
loc_self
)
==
"number"
and
loc_self
>
0
)
and
(
type
(
loc_oppo
)
~=
"number"
or
loc_oppo
<=
0
)
then
...
...
@@ -3675,21 +3699,64 @@ function rssf.EnableSpecialProcedure_Op(e,tp)
aux
.
AddXyzProcedure
=
rscf
.
GetBaseXyzProduce1
aux
.
AddXyzProcedureLevelFree
=
rscf
.
GetBaseXyzProduce2
aux
.
AddLinkProcedure
=
rscf
.
GetBaseLinkProduce1
Card
.
RegisterEffect
=
rscf
.
RegisterEffect2
local
e1
=
Effect
.
GlobalEffect
()
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTarget
(
rssf
.
EnableSpecialProcedure_Op_regop
)
e1
:
SetTargetRange
(
1
,
1
)
Duel
.
RegisterEffect
(
e1
,
0
)
for
tc
in
aux
.
Next
(
g
)
do
--Method ResetEffect/ReplaceEffect will cause issue at Raise Event
tc
:
ReplaceEffect
(
80316585
,
0
)
local
mt
=
getmetatable
(
tc
)
if
mt
.
initial_effect
then
mt
.
initial_effect
(
tc
)
end
tc
:
IsSpecialSummonable
()
local
cid
=
tc
:
CopyEffect
(
tc
:
GetOriginalCode
(),
0
,
1
)
end
aux
.
AddSynchroProcedure
=
f6
aux
.
AddSynchroMixProcedure
=
f7
aux
.
AddXyzProcedure
=
f8
aux
.
AddXyzProcedureLevelFree
=
f9
aux
.
AddLinkProcedure
=
f10
Card
.
RegisterEffect
=
rscf
.
RegisterEffect
e
:
Reset
()
end
function
rssf
.
EnableSpecialProcedure_Op_regop
(
e
,
c
,
tp
,
st
,
sp
,
stp
,
se
)
if
not
c
:
IsType
(
rscf
.
extype
)
then
return
false
end
rscf
.
ssproce
[
c
]
=
rscf
.
ssproce
[
c
]
or
{[
1
]
=
{},[
2
]
=
{}}
if
se
and
se
:
GetCode
()
==
EFFECT_SPSUMMON_PROC
and
not
rsof
.
Table_List
(
rscf
.
ssproce
[
c
][
1
],
se
)
then
c
:
RegisterFlagEffect
(
rscode
.
Special_Procedure
,
0
,
0
,
1
)
table.insert
(
rscf
.
ssproce
[
c
][
1
],
se
)
table.insert
(
rscf
.
ssproce
[
c
][
1
],
se
:
GetCondition
()
or
aux
.
TRUE
)
end
if
se
and
rscf
.
ssproce
[
se
]
then
return
false
end
return
se
and
se
:
GetCode
()
==
EFFECT_SPSUMMON_PROC
end
rscf
.
RegisterEffect
=
Card
.
RegisterEffect
function
rscf
.
RegisterEffect2
(
c
,
e
,
ignore
)
rscf
.
ssproce
[
c
]
=
rscf
.
ssproce
[
c
]
or
{[
1
]
=
{},[
2
]
=
{}}
if
e
:
GetCode
()
==
EFFECT_SPSUMMON_PROC
then
local
flag1
,
flag2
=
e
:
GetProperty
()
local
flag1_uc
=
flag1
if
flag1
&
EFFECT_FLAG_UNCOPYABLE
~=
0
then
flag1_uc
=
flag1
-
EFFECT_FLAG_UNCOPYABLE
end
e
:
SetProperty
(
flag1_uc
,
flag2
)
rscf
.
RegisterEffect
(
c
,
e
,
ignore
)
e
:
SetProperty
(
flag1
,
flag2
)
rscf
.
ssproce
[
e
]
=
true
table.insert
(
rscf
.
ssproce
[
c
][
2
],
e
)
table.insert
(
rscf
.
ssproce
[
c
][
2
],
e
:
GetCondition
()
or
aux
.
TRUE
)
end
return
end
function
rscf
.
SwitchSpecialProcedure_filter
(
c
)
return
c
:
GetFlagEffect
(
rscode
.
Special_Procedure
)
>
0
end
function
rssf
.
SwitchSpecialProcedure
(
dis_idx
,
enb_idx
)
end
function
rscf
.
GetBaseSynchroProduce1
(
c
,
f1
,
f2
,
minc
,
maxc
)
if
c
.
dark_synchro
==
true
then
rscf
.
AddSynchroProcedureSpecial
(
c
,
aux
.
NonTuner
(
f1
),
nil
,
nil
,
rscf
.
DarkTuner
(
f2
),
minc
,
maxc
or
99
)
...
...
expansions/script/c10199991.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
Version_Number
=
20200409
local
m
=
10199990
local
vm
=
10199991
if
rsv
then
return
end
rsv
=
{}
--"Base Function"
rscf
=
{}
--"Card Function"
rsgf
=
{}
--"Group Function"
...
...
@@ -33,6 +34,7 @@ rsef.attacheffect ={} --"Effect information for attach effects"
rsef
.
attacheffectf
=
{}
rsef
.
solveeffect
=
{}
rsop
.
baseop
=
{}
rscf
.
ssproce
=
{}
rscf
.
synchro_material_action
=
{}
--"Custom syn material's action"
rscf
.
xyz_material_action
=
{}
--"Custom xyz material's action"
...
...
@@ -69,6 +71,8 @@ rscode.Utility_Xyz_Material = m+400 --"Utility Xyz Material"
rscode
.
Previous_Set_Code
=
m
+
500
--"Previous Set Code"
rscode
.
Synchro_Material
=
m
+
600
--"Record synchro proceudre target"
rscode
.
Pre_Complete_Proc
=
m
+
700
--"Previous c:CompleteProcedure"
rscode
.
Special_Procedure
=
m
+
900
rscode
.
Set
=
m
+
800
--"EVENT_SET"
...
...
@@ -210,5 +214,3 @@ function rsof.Escape_Old_Functions()
return
rscf
.
AddSpecialSummonProcdure
(
reg_list
,
range
,
con
,
nil
,
op
,
desc_list
,
lim_list
,
nil
,
reset_list
)
end
end
expansions/script/c10199992.lua
View file @
f3496c41
...
...
@@ -37,6 +37,7 @@ local rsss = Star_Spirit
local
rsnm
=
Nightmare
local
rslf
=
Little_Fox
local
rccv
=
Thermonuclear
local
rsfn
=
Fake_News
#
XiaoMi
643865567
local
rssg
=
Sex_Gun
...
...
@@ -67,6 +68,7 @@ local rsts = Trinity_Sword
#
Luoxing
1151483512
local
rsdt
=
Dark_Tale
local
rsod
=
Order
local
rsyzt
=
YanZeTown
#
YunZeZhun
1587361112
local
rsphh
=
Phantom_Thieves_Of_Hearts
...
...
@@ -99,6 +101,11 @@ local rswk = White_Moon_Knight
#
ReiKai
2404873791
local
rsch
=
Churck
#
XueXiao
3234454893
local
rsmd
=
Mrs_Dice
#
HuangWu
1103516856
local
rsdc
=
Dragon_Caller
--Set Code
#
Scl
...
...
expansions/script/c12061001.lua
View file @
f3496c41
...
...
@@ -90,8 +90,8 @@ function cm.splimit(e,c)
return
not
c
:
IsRace
(
RACE_PLANT
)
end
function
cm
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
Is
AbleToGraveAsCost
()
and
c
:
IsSummonType
(
SUMMON_TYPE_ADVANCE
)
end
Duel
.
SendtoGrav
e
(
e
:
GetHandler
(),
REASON_COST
)
if
chk
==
0
then
return
e
:
GetHandler
():
Is
Releasable
()
and
e
:
GetHandler
()
:
IsSummonType
(
SUMMON_TYPE_ADVANCE
)
end
Duel
.
Releas
e
(
e
:
GetHandler
(),
REASON_COST
)
end
function
cm
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
cm
.
filter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
...
...
expansions/script/c12061010.lua
View file @
f3496c41
...
...
@@ -37,18 +37,18 @@ function cm.initial_effect(c)
e3
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e3
)
end
function
cm
.
desfilter
(
c
,
e
,
tp
)
return
c
:
IsControler
(
tp
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsDestructable
(
e
)
and
not
c
:
IsStatus
(
STATUS_DESTROY_CONFIRMED
+
STATUS_BATTLE_DESTROYED
)
function
cm
.
desfilter
(
c
,
tp
)
return
c
:
IsControler
(
tp
)
and
c
:
IsLocation
(
LOCATION_ONFIELD
)
and
(
c
:
IsReason
(
REASON_BATTLE
)
or
c
:
IsReason
(
REASON_EFFECT
))
and
not
c
:
IsReason
(
REASON_REPLACE
)
end
function
cm
.
desreptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
c
:
GetLinkedGroup
()
if
chk
==
0
then
return
g
:
IsExists
(
cm
.
desfilter
,
1
,
nil
,
e
,
tp
)
and
Duel
.
CheckLPCost
(
tp
,
1000
)
end
if
chk
==
0
then
return
eg
:
IsExists
(
cm
.
desfilter
,
1
,
c
,
tp
)
and
c
:
IsDestructable
(
e
)
and
not
c
:
IsStatus
(
STATUS_DESTROY_CONFIRMED
)
end
return
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
0
))
end
function
cm
.
desrepval
(
e
,
c
)
return
cm
.
desfilter
(
c
,
e
,
e
:
GetHandlerPlayer
())
return
cm
.
desfilter
(
c
,
e
:
GetHandlerPlayer
())
end
function
cm
.
desrepop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
PayLPCost
(
tp
,
1000
)
...
...
expansions/script/c12061020.lua
View file @
f3496c41
...
...
@@ -46,7 +46,7 @@ function cm.initial_effect(c)
e3
:
SetCode
(
m
)
e3
:
SetRange
(
LOCATION_SZONE
)
e3
:
SetProperty
(
EFFECT_FLAG_SET_AVAILABLE
)
e3
:
SetTargetRange
(
0xff
,
0xf
f
)
e3
:
SetTargetRange
(
0xff
,
0xf
)
e3
:
SetCondition
(
cm
.
scon
)
e3
:
SetTarget
(
cm
.
checktg
)
c
:
RegisterEffect
(
e3
)
...
...
@@ -59,7 +59,7 @@ function cm.scon(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
IsExistingMatchingCard
(
cm
.
sfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
cm
.
rmtarget
(
e
,
c
)
return
not
c
:
IsLocation
(
0x80
)
and
not
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
return
not
c
:
IsLocation
(
0x80
)
and
not
c
:
Is
Location
(
0x20
)
and
not
c
:
Is
Type
(
TYPE_SPELL
+
TYPE_TRAP
)
end
function
cm
.
checktg
(
e
,
c
)
return
not
c
:
IsPublic
()
...
...
expansions/script/c14700101.lua
View file @
f3496c41
...
...
@@ -22,7 +22,7 @@ function c14700101.initial_effect(c)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_CHAINING
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
9
)
e2
:
SetCountLimit
(
1
,
m
+
11
)
e2
:
SetCondition
(
cm
.
chcon
)
e2
:
SetCost
(
cm
.
chcost
)
e2
:
SetTarget
(
cm
.
chtg
)
...
...
expansions/script/c17061180.lua
View file @
f3496c41
...
...
@@ -3,7 +3,7 @@ local m=17061180
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
c
:
EnableCounterPermit
(
0x7f3
,
LOCATION_PZONE
+
LOCATION_MZONE
)
aux
.
EnablePendulumAttribute
(
c
)
aux
.
EnablePendulumAttribute
(
c
,
false
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_COUNTER
)
...
...
@@ -121,6 +121,6 @@ end
function
cm
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
Remove
(
tc
,
POS_FACE
UP
,
REASON_EFFECT
)
Duel
.
Remove
(
tc
,
POS_FACE
DOWN
,
REASON_EFFECT
)
end
end
expansions/script/c26800000.lua
View file @
f3496c41
...
...
@@ -2,57 +2,90 @@
Amana
=
Amana
or
{}
--Mogami Shizuka, 81018xxx, 0x81b
function
Amana
.
AttackBelow
(
c
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetCode
(
EFFECT_CANNOT_ATTACK
)
ea
:
SetCondition
(
Amana
.
atcon
)
c
:
RegisterEffect
(
ea
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetCode
(
EFFECT_CANNOT_ATTACK
)
ea
:
SetCondition
(
Amana
.
atcon
)
c
:
RegisterEffect
(
ea
)
end
function
Amana
.
atcon
(
e
)
return
e
:
GetHandler
():
GetAttack
()
>=
2000
return
e
:
GetHandler
():
GetAttack
()
>=
2000
end
--majsoul
function
Amana
.
Majsoul
(
c
)
Duel
.
EnableGlobalFlag
(
GLOBALFLAG_SELF_TOGRAVE
)
aux
.
AddCodeList
(
c
,
26818000
,
26818001
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_SELF_TOGRAVE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
tgcon
)
c
:
RegisterEffect
(
ea
)
Duel
.
EnableGlobalFlag
(
GLOBALFLAG_SELF_TOGRAVE
)
aux
.
AddCodeList
(
c
,
26818000
,
26818001
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_SELF_TOGRAVE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
tgcon
)
c
:
RegisterEffect
(
ea
)
end
function
Amana
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26818000
,
26818001
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26818000
,
26818001
)
end
function
Amana
.
tgcon
(
e
)
local
tp
=
e
:
GetHandlerPlayer
()
return
Duel
.
GetCurrentPhase
()
==
PHASE_END
and
not
(
Duel
.
IsExistingMatchingCard
(
Amana
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
or
Duel
.
IsPlayerAffectedByEffect
(
tp
,
26818046
))
local
tp
=
e
:
GetHandlerPlayer
()
return
Duel
.
GetCurrentPhase
()
==
PHASE_END
and
not
(
Duel
.
IsExistingMatchingCard
(
Amana
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
or
Duel
.
IsPlayerAffectedByEffect
(
tp
,
26818046
))
end
--majsoulGirl/Boy
function
Amana
.
MajsoulGirl
(
c
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_CHANGE_CODE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
namecon
)
ea
:
SetValue
(
26818000
)
c
:
RegisterEffect
(
ea
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_CHANGE_CODE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
namecon
)
ea
:
SetValue
(
26818000
)
c
:
RegisterEffect
(
ea
)
end
function
Amana
.
MajsoulBoy
(
c
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_CHANGE_CODE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
namecon
)
ea
:
SetValue
(
26818001
)
c
:
RegisterEffect
(
ea
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
ea
:
SetCode
(
EFFECT_CHANGE_CODE
)
ea
:
SetRange
(
LOCATION_MZONE
)
ea
:
SetCondition
(
Amana
.
namecon
)
ea
:
SetValue
(
26818001
)
c
:
RegisterEffect
(
ea
)
end
function
Amana
.
namecon
(
e
)
local
ph
=
Duel
.
GetCurrentPhase
()
return
(
ph
>=
PHASE_BATTLE_START
and
ph
<=
PHASE_BATTLE
)
or
ph
==
PHASE_END
local
ph
=
Duel
.
GetCurrentPhase
()
return
(
ph
>=
PHASE_BATTLE_START
and
ph
<=
PHASE_BATTLE
)
or
ph
==
PHASE_END
end
--sliver
function
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
Amana
.
SliverSummon
(
c
)
local
ea
=
Effect
.
CreateEffect
(
c
)
ea
:
SetType
(
EFFECT_TYPE_SINGLE
)
ea
:
SetCode
(
EFFECT_SPSUMMON_COST
)
ea
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
ea
:
SetCost
(
Amana
.
spcost
)
ea
:
SetOperation
(
Amana
.
spcop
)
c
:
RegisterEffect
(
ea
)
end
function
Amana
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
Amana
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
expansions/script/c26803012.lua
View file @
f3496c41
...
...
@@ -70,11 +70,11 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
chfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
81010004
)
and
c
:
IsAbleToHand
()
and
Duel
.
GetMZoneCount
(
tp
,
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
81010004
)
and
c
:
IsAbleToHand
()
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
cm
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
Is
Location
(
LOCATION_ONFIELD
)
and
chkc
:
IsControler
(
tp
)
and
cm
.
chfilter
(
chkc
,
tp
)
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
if
chkc
then
return
chkc
:
Is
OnField
(
)
and
chkc
:
IsControler
(
tp
)
and
cm
.
chfilter
(
chkc
,
tp
)
end
if
chk
==
0
then
return
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
)
and
Duel
.
IsExistingTarget
(
cm
.
chfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
cm
.
chfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
1
,
nil
,
tp
)
...
...
@@ -84,7 +84,7 @@ end
function
cm
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
~=
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToEffect
(
e
)
then
if
tc
:
IsRelateToEffect
(
e
)
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
~=
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
expansions/script/c26809052.lua
View file @
f3496c41
...
...
@@ -84,7 +84,6 @@ function cm.spoperation(e,tp,eg,ep,ev,re,r,rp)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
cm
.
spfilter2
),
tp
,
0x13
,
0
,
1
,
1
,
c
,
e
,
tp
,
zone
)
if
sg
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
,
zone
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
end
end
end
...
...
expansions/script/c26821000.lua
View file @
f3496c41
...
...
@@ -2,3 +2,4 @@
local
m
=
26821000
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
expansions/script/c26821001.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821001
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -28,7 +22,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
damcon
)
e2
:
SetCost
(
cm
.
damc
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
damtg
)
e2
:
SetOperation
(
cm
.
damop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -37,19 +31,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
cm
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
spfilter
(
c
)
return
c
:
IsCode
(
26821000
)
and
c
:
IsAbleToGraveAsCost
()
end
...
...
@@ -69,16 +50,6 @@ end
function
cm
.
damcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
end
function
cm
.
damcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetTargetPlayer
(
1
-
tp
)
...
...
expansions/script/c26821002.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821002
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -28,7 +22,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
con
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
tg
)
e2
:
SetOperation
(
cm
.
op
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -37,19 +31,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
cm
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
filter
(
c
)
return
(
c
:
IsFaceup
()
or
c
:
IsLocation
(
LOCATION_GRAVE
))
and
c
:
IsCode
(
26821000
)
end
...
...
@@ -64,16 +45,6 @@ end
function
cm
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
rmfilter
(
c
,
atk
)
return
c
:
IsFaceup
()
and
not
c
:
IsAttack
(
atk
)
and
c
:
IsAbleToRemove
()
end
...
...
expansions/script/c26821003.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821003
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--xyz summon
aux
.
AddXyzProcedure
(
c
,
nil
,
7
,
2
)
...
...
@@ -24,7 +25,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
)
e2
:
SetCondition
(
cm
.
rmcon
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
rmtg
)
e2
:
SetOperation
(
cm
.
rmop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -34,15 +35,9 @@ function cm.IsSliverScene(c)
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
spfilter
(
c
,
e
,
sp
)
return
c
:
IsCode
(
26821000
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
sp
,
false
,
false
)
...
...
@@ -61,16 +56,6 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26821000
)
end
...
...
expansions/script/c26821004.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821004
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -9,7 +10,7 @@ function cm.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
activate
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -27,16 +28,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26821000
)
end
...
...
@@ -59,9 +50,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
if
chk
==
0
then
return
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
and
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c26821005.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821005
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -10,7 +11,7 @@ function cm.initial_effect(c)
e1
:
SetCode
(
EVENT_ATTACK_ANNOUNCE
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
cm
.
condition
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
activate
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -30,16 +31,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26821000
)
end
...
...
@@ -67,9 +58,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
if
chk
==
0
then
return
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
and
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c26821006.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821006
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -28,7 +22,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
con
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
destg
)
e2
:
SetOperation
(
cm
.
desop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -69,16 +63,6 @@ end
function
cm
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
nil
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
nil
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
)
...
...
expansions/script/c26821007.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821007
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -37,19 +31,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
cm
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
spcon
(
e
,
c
)
if
c
==
nil
then
return
true
end
return
Duel
.
GetFieldGroupCount
(
c
:
GetControler
(),
0
,
LOCATION_MZONE
)
>
0
...
...
@@ -62,7 +43,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
Get
CurrentPhase
()
==
PHASE_MAIN1
end
if
chk
==
0
then
return
Duel
.
Get
ActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
...
...
expansions/script/c26821008.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821008
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -9,7 +10,7 @@ function cm.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
activate
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -31,16 +32,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26821000
)
end
...
...
@@ -72,9 +63,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
if
chk
==
0
then
return
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
and
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
recfilter
(
c
)
...
...
expansions/script/c26821009.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821009
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -10,7 +11,7 @@ function cm.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
activate
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -30,16 +31,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsCode
(
26821000
)
end
...
...
@@ -71,9 +62,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
thcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
if
chk
==
0
then
return
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
and
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
aux
.
bfgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
atop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c26821010.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821010
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -29,7 +23,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
con
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
tgtg
)
e2
:
SetOperation
(
cm
.
tgop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -38,19 +32,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
cm
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
spcon
(
e
,
c
)
if
c
==
nil
then
return
true
end
return
Duel
.
GetFieldGroupCount
(
c
:
GetControler
(),
LOCATION_MZONE
,
0
)
==
0
...
...
@@ -62,16 +43,6 @@ end
function
cm
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
tgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDraw
(
tp
,
2
)
end
Duel
.
SetTargetPlayer
(
tp
)
...
...
expansions/script/c26821011.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821011
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsLevelAbove
,
7
),
2
,
2
)
...
...
@@ -14,7 +15,7 @@ function cm.initial_effect(c)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
cm
.
spcon
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
sptg
)
e1
:
SetOperation
(
cm
.
spop
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -27,7 +28,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
con
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
rmtg
)
e2
:
SetOperation
(
cm
.
rmop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -36,16 +37,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_LINK
)
end
...
...
expansions/script/c26821012.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821012
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--splimit
local
e0
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -19,7 +20,7 @@ function cm.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
cm
.
condition
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
operation
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -30,7 +31,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
con
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
thtg
)
e2
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -42,16 +43,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
dfilter
(
c
)
return
c
:
IsFacedown
()
or
not
cm
.
IsSliverScene
(
c
)
end
...
...
expansions/script/c26821013.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821013
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--xyz summon
aux
.
AddXyzProcedure
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsAttribute
,
ATTRIBUTE_WATER
),
7
,
2
)
...
...
@@ -30,15 +31,9 @@ function cm.IsSliverScene(c)
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFacedown
()
or
not
cm
.
IsSliverScene
(
c
)
...
...
expansions/script/c26821014.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821014
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--xyz summon
aux
.
AddXyzProcedure
(
c
,
nil
,
7
,
3
)
...
...
@@ -31,7 +32,7 @@ function cm.initial_effect(c)
e3
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
+
EFFECT_FLAG_DELAY
)
e3
:
SetCode
(
EVENT_TO_GRAVE
)
e3
:
SetCountLimit
(
1
,
m
)
e3
:
SetCost
(
cm
.
c
ost
)
e3
:
SetCost
(
Amana
.
SliverC
ost
)
e3
:
SetTarget
(
cm
.
thtg
)
e3
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e3
)
...
...
@@ -40,20 +41,10 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
excost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
and
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
cm
.
c
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Amana
.
SliverC
ost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
function
cm
.
extg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_EXTRA
,
1
,
nil
,
tp
,
POS_FACEUP
)
end
...
...
expansions/script/c26821015.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821015
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--link summon
aux
.
AddLinkProcedure
(
c
,
cm
.
mfilter
,
2
)
...
...
@@ -39,16 +40,10 @@ function cm.cfilter(c,g)
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
lg
=
e
:
GetHandler
():
GetLinkedGroup
()
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
cm
.
cfilter
,
1
,
nil
,
lg
)
and
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
cm
.
cfilter
,
1
,
nil
,
lg
)
and
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
cm
.
cfilter
,
1
,
1
,
nil
,
lg
)
Amana
.
SliverCost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
Duel
.
Release
(
g
,
REASON_COST
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
mfilter
(
c
)
return
cm
.
IsSliverScene
(
c
)
and
c
:
IsLinkType
(
TYPE_MONSTER
)
...
...
expansions/script/c26821016.lua
View file @
f3496c41
...
...
@@ -2,15 +2,9 @@
local
m
=
26821016
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--spsummon cost
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_COST
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCost
(
cm
.
spcost
)
e0
:
SetOperation
(
cm
.
spcop
)
c
:
RegisterEffect
(
e0
)
Amana
.
SliverSummon
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -36,19 +30,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
spcost
(
e
,
c
,
tp
)
return
Duel
.
GetActivityCount
(
tp
,
ACTIVITY_BATTLE_PHASE
)
==
0
end
function
cm
.
spcop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cdfilter
(
c
)
return
c
:
IsFaceup
()
and
cm
.
IsSliverScene
(
c
)
and
c
:
GetCode
()
~=
m
end
...
...
expansions/script/c26821017.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821017
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -10,7 +11,7 @@ function cm.initial_effect(c)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
cm
.
spcon
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
sptg
)
e1
:
SetOperation
(
cm
.
spop
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -22,7 +23,7 @@ function cm.initial_effect(c)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
900
)
e2
:
SetCondition
(
cm
.
condition
)
e2
:
SetCost
(
cm
.
c
ost
)
e2
:
SetCost
(
Amana
.
SliverC
ost
)
e2
:
SetTarget
(
cm
.
target
)
e2
:
SetOperation
(
cm
.
operation
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -31,16 +32,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
cm
.
IsSliverScene
(
c
)
and
not
c
:
IsCode
(
m
)
end
...
...
expansions/script/c26821018.lua
View file @
f3496c41
...
...
@@ -2,6 +2,7 @@
local
m
=
26821018
local
cm
=
_G
[
"c"
..
m
]
cm
.
named_with_SliverScene
=
1
Duel
.
LoadScript
(
"c26800000.lua"
)
function
cm
.
initial_effect
(
c
)
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -9,7 +10,7 @@ function cm.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCondition
(
cm
.
spcon
)
e1
:
SetCost
(
cm
.
c
ost
)
e1
:
SetCost
(
Amana
.
SliverC
ost
)
e1
:
SetTarget
(
cm
.
sptg
)
e1
:
SetOperation
(
cm
.
spop
)
c
:
RegisterEffect
(
e1
)
...
...
@@ -19,7 +20,7 @@ function cm.initial_effect(c)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
,
m
)
e4
:
SetCondition
(
cm
.
zcon
)
e4
:
SetCost
(
cm
.
c
ost
)
e4
:
SetCost
(
Amana
.
SliverC
ost
)
e4
:
SetTarget
(
cm
.
ztg
)
e4
:
SetOperation
(
cm
.
zop
)
c
:
RegisterEffect
(
e4
)
...
...
@@ -28,16 +29,6 @@ function cm.IsSliverScene(c)
local
m
=
_G
[
"c"
..
c
:
GetCode
()]
return
m
and
(
m
.
named_with_SliverScene
or
c
:
IsCode
(
26821000
,
26821999
))
end
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_CANNOT_BP
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
==
0
end
...
...
expansions/script/c33301000.lua
0 → 100644
View file @
f3496c41
--尺酱的外包
if
not
pcall
(
function
()
require
(
"expansions/script/c10199990"
)
end
)
then
require
(
"script/c10199990"
)
end
--[[
DIY Record
1. 2020.10.10 33310100~33350022 Change library, first point to here.
2. 2020.10.10 33330151~33330155 Creat and complete new series "Fake_News"
]]
--
expansions/script/c33310100.lua
View file @
f3496c41
--可可莉柯特·布兰琪
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
local
m
,
cm
=
rs
o
f
.
DefineCard
(
33310100
,
"Cochrot"
)
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rs
c
f
.
DefineCard
(
33310100
,
"Cochrot"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
local
e1
=
rsef
.
SC
(
c
,
EVENT_SPSUMMON_SUCCESS
,
nil
,
nil
,
nil
,
rscon
.
sumtype
(
"rit"
),
cm
.
atkop
)
...
...
@@ -32,7 +32,7 @@ function cm.actfilter(c,e,tp)
return
c
:
IsCode
(
33310101
)
and
c
:
GetActivateEffect
()
and
c
:
GetActivateEffect
():
IsActivatable
(
tp
,
true
,
true
)
end
function
cm
.
actop
(
e
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
HINTMSG_TOFIELD
)
rs
hint
.
Selec
t
(
tp
,
HINTMSG_TOFIELD
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
cm
.
actfilter
),
tp
,
LOCATION_DECK
+
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
not
tc
then
return
end
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
...
...
expansions/script/c33310101.lua
View file @
f3496c41
--恶魔的提线魔术
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
local
m
,
cm
=
rs
o
f
.
DefineCard
(
33310101
)
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rs
c
f
.
DefineCard
(
33310101
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
)
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
0
},{
1
,
0x1
},
"tg"
,
nil
,
LOCATION_SZONE
,
nil
,
nil
,
rsop
.
target2
(
cm
.
fun
,
cm
.
copyfilter
,
"tg"
,
LOCATION_DECK
+
LOCATION_HAND
),
cm
.
copyop
)
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
0
},{
1
,
0x1
},
"tg"
,
nil
,
LOCATION_SZONE
,
nil
,
nil
,
rsop
.
target2
(
cm
.
fun
,
cm
.
copyfilter
,
"tg"
,
LOCATION_DECK
),
cm
.
copyop
)
local
e3
=
rsef
.
QO
(
c
,
nil
,{
m
,
1
},{
1
,
0x1
},
"dis"
,
nil
,
LOCATION_SZONE
,
rscon
.
excard2
(
Card
.
IsType
,
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_RITUAL
),
nil
,
rsop
.
target
(
aux
.
disfilter1
,
"dis"
,
0
,
LOCATION_ONFIELD
),
cm
.
disop
)
local
e4
=
rsef
.
QO
(
c
,
nil
,{
m
,
2
},{
1
,
0x1
},
nil
,
nil
,
LOCATION_SZONE
,
cm
.
skipcon
,
nil
,
nil
,
cm
.
skipop
)
end
...
...
@@ -12,8 +12,8 @@ function cm.copyfilter(c,e,tp)
return
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
cm
.
copyop
(
e
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
"tg"
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
copyfilter
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
1
,
nil
):
GetFirst
()
rs
hint
.
Selec
t
(
tp
,
"tg"
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
copyfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
):
GetFirst
()
if
not
tc
or
Duel
.
SendtoGrave
(
tc
,
REASON_EFFECT
)
<=
0
or
not
tc
:
IsLocation
(
LOCATION_GRAVE
)
then
return
end
local
te
=
tc
:
GetActivateEffect
()
local
op
=
te
:
GetOperation
()
...
...
@@ -21,17 +21,17 @@ function cm.copyop(e,tp)
end
function
cm
.
disop
(
e
,
tp
)
local
c
=
e
:
GetHandler
()
rs
of
.
SelectHin
t
(
tp
,
"dis"
)
rs
hint
.
Selec
t
(
tp
,
"dis"
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
disfilter1
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
1
,
nil
):
GetFirst
()
if
not
tc
then
return
end
Duel
.
HintSelection
(
rsgf
.
Mix2
(
tc
))
local
e1
,
e2
=
rsef
.
SV_LIMIT
({
c
,
tc
},
"dis,dise"
,
nil
,
nil
,
rsreset
.
est
_pend
)
local
e1
,
e2
=
rsef
.
SV_LIMIT
({
c
,
tc
},
"dis,dise"
,
nil
,
nil
,
rsreset
.
est
)
Duel
.
AdjustInstantly
(
c
)
if
tc
:
IsDisabled
()
and
tc
:
IsType
(
TYPE_MONSTER
)
then
local
e3
=
rsef
.
SV_INDESTRUCTABLE
({
c
,
tc
},
"battle"
,
nil
,
nil
,
rsreset
.
est
_pend
)
local
e3
=
rsef
.
SV_INDESTRUCTABLE
({
c
,
tc
},
"battle"
,
nil
,
nil
,
rsreset
.
est
)
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
)
e4
:
SetReset
(
rsreset
.
est
_pend
)
e4
:
SetReset
(
rsreset
.
est
)
e4
:
SetCode
(
EFFECT_MUST_ATTACK
)
tc
:
RegisterEffect
(
e4
)
end
...
...
@@ -42,11 +42,12 @@ end
function
cm
.
skipop
(
e
,
tp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EVENT_CHAIN_
EN
D
)
e1
:
SetCode
(
EVENT_CHAIN_
SOLVE
D
)
e1
:
SetOperation
(
cm
.
skipop2
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
cm
.
skipop2
(
e
,
tp
)
Debug
.
Message
(
"111"
)
local
p
=
Duel
.
GetTurnPlayer
()
Duel
.
SkipPhase
(
p
,
PHASE_MAIN1
,
RESET_PHASE
+
PHASE_END
,
1
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
...
...
expansions/script/c33310102.lua
View file @
f3496c41
--睡美人的小憇
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
local
m
,
cm
=
rs
o
f
.
DefineCard
(
33310102
)
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rs
c
f
.
DefineCard
(
33310102
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
nil
,
nil
,
nil
,
"sp,rm"
,
nil
,
nil
,
nil
,
cm
.
tg
,
cm
.
act
)
local
e2
=
rsef
.
I
(
c
,{
m
,
0
},
{
1
,
m
}
,
"td,th"
,
"tg"
,
LOCATION_GRAVE
,
nil
,
nil
,
rstg
.
target
({
cm
.
tdfilter
,
"td"
,
LOCATION_REMOVED
},
rsop
.
list
(
Card
.
IsAbleToHand
,
"th"
)),
cm
.
tdop
)
local
e2
=
rsef
.
I
(
c
,{
m
,
0
},
nil
,
"td,th"
,
"tg"
,
LOCATION_GRAVE
,
nil
,
nil
,
rstg
.
target
({
cm
.
tdfilter
,
"td"
,
LOCATION_REMOVED
},
rsop
.
list
(
Card
.
IsAbleToHand
,
"th"
)),
cm
.
tdop
)
end
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_RITUAL
,
tp
,
false
,
true
)
and
c
:
CheckSetCard
(
"Cochrot"
)
and
Duel
.
IsExistingMatchingCard
(
cm
.
matfilter
,
tp
,
LOCATION_HAND
+
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
c
,
c
,
e
,
tp
)
...
...
@@ -26,10 +26,10 @@ function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
nil
,
0
,
tp
,
LOCATION_GRAVE
)
end
function
cm
.
act
(
e
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
"sp"
)
rs
hint
.
Selec
t
(
tp
,
"sp"
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
spfilter
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
not
tc
then
return
end
rs
of
.
SelectHin
t
(
tp
,
"res"
)
rs
hint
.
Selec
t
(
tp
,
"res"
)
local
matc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
matfilter
,
tp
,
LOCATION_HAND
+
LOCATION_MZONE
+
LOCATION_GRAVE
,
0
,
1
,
1
,
tc
,
tc
,
e
,
tp
):
GetFirst
()
tc
:
SetMaterial
(
Group
.
FromCards
(
matc
))
if
matc
:
IsLocation
(
LOCATION_GRAVE
)
then
...
...
expansions/script/c33310103.lua
View file @
f3496c41
--可可莉柯特·兽耳布偶
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33310103
,
"Cochrot"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c33310104.lua
View file @
f3496c41
--可可莉柯特·地狱尖啸者
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33310104
,
"Cochrot"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c33310302.lua
View file @
f3496c41
...
...
@@ -67,7 +67,7 @@ local n=Duel.GetCurrentChain()
local
flag
=
1
if
n
>=
1
then
flag
=
0
end
return
flag
==
1
and
Duel
.
GetTurnPlayer
()
==
e
:
GetHandlerPlayer
()
and
not
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
return
flag
==
0
and
Duel
.
GetTurnPlayer
()
==
e
:
GetHandlerPlayer
()
and
not
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
--SpecialSummon
function
cm
.
spcfilter
(
c
,
ft
)
...
...
expansions/script/c33330094.lua
View file @
f3496c41
--幼小的影子 米恩
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
local
m
,
cm
=
rs
o
f
.
DefineCard
(
33330094
)
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rs
c
f
.
DefineCard
(
33330094
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
nil
,
nil
,
nil
,
"des,sp"
,
nil
,
rstg
.
target
(
Card
.
IsFaceup
,
"des"
,
LOCATION_MZONE
,
LOCATION_MZONE
),
cm
.
desop
)
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
1
},
nil
,
"sp"
,
nil
,
LOCATION_GRAVE
,
nil
,
rscost
.
cost
(
Card
.
IsAbleToDeckAsCost
,
"td"
),
rsop
.
target
(
cm
.
spfilter
,
"sp"
,
LOCATION_EXTRA
),
cm
.
spop
)
...
...
@@ -9,7 +9,7 @@ function cm.desop(e,tp)
local
tc
=
rscf
.
GetTargetCard
()
if
not
tc
or
Duel
.
Destroy
(
tc
,
REASON_EFFECT
)
<=
0
then
return
end
if
Duel
.
IsExistingMatchingCard
(
rscf
.
spfilter2
(
Card
.
IsCode
,
tc
:
GetCode
()),
LOCATION_DECK
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
0
))
then
rs
of
.
SelectHin
t
(
tp
,
"sp"
)
rs
hint
.
Selec
t
(
tp
,
"sp"
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
rscf
.
spfilter2
(
Card
.
IsCode
,
tc
:
GetCode
()),
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
rssf
.
SpecialSummon
(
sg
)
end
...
...
@@ -25,11 +25,11 @@ function cm.spfilter2(matg,lc)
return
matg
:
GetClassCount
(
Card
.
GetCode
)
==
1
and
lc
:
IsLinkSummonable
(
matg
,
nil
,
2
,
2
)
end
function
cm
.
spop
(
e
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
"sp"
)
rs
hint
.
Selec
t
(
tp
,
"sp"
)
local
lc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
not
lc
then
return
end
local
mg
=
Duel
.
GetMatchingGroup
(
cm
.
matfilter
,
tp
,
LOCATION_GRAVE
,
0
,
nil
)
rs
of
.
SelectHin
t
(
tp
,
"td"
)
rs
hint
.
Selec
t
(
tp
,
"td"
)
local
matg
=
mg
:
SelectSubGroup
(
tp
,
cm
.
spfilter2
,
false
,
2
,
2
,
lc
)
rssf
.
LinkMaterialAction
=
cm
.
customlk
Duel
.
LinkSummon
(
tp
,
lc
,
matg
,
nil
,
2
,
2
)
...
...
expansions/script/c33330100.lua
View file @
f3496c41
--造神计划
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33330100
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
)
...
...
expansions/script/c33330101.lua
View file @
f3496c41
--造神计划1 伪帝
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33330101
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c33330105.lua
View file @
f3496c41
--造神计划5 空想原核
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33330105
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c33330109.lua
View file @
f3496c41
--造神计划9 永生骸
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33330109
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
@@ -58,14 +58,14 @@ function cm.spop(e,tp)
rsop
.
SelectSpecialSummon
(
tp
,
rscf
.
spfilter2
(
Card
.
IsType
,
TYPE_LINK
),
tp
,
LOCATION_REMOVED
,
LOCATION_REMOVED
,
1
,
1
,
nil
,{},
e
,
tp
)
end
function
cm
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
ep
==
tp
and
ev
>=
5
00
and
(
r
&
REASON_BATTLE
~=
0
or
(
r
&
REASON_EFFECT
~=
0
and
rp
~=
tp
))
return
ep
==
tp
and
ev
>=
10
00
and
(
r
&
REASON_BATTLE
~=
0
or
(
r
&
REASON_EFFECT
~=
0
and
rp
~=
tp
))
end
function
cm
.
setfilter
(
c
)
return
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
c
:
IsSSetable
()
end
function
cm
.
setop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
local
st
=
math.floor
(
ev
/
5
00
)
local
st
=
math.floor
(
ev
/
10
00
)
if
ft
<=
0
then
return
end
rsop
.
SelectSolve
(
HINTMSG_SET
,
tp
,
cm
.
setfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
math.min
(
ft
,
st
),
nil
,
cm
.
setfun
,
tp
)
end
...
...
expansions/script/c33330151.lua
0 → 100644
View file @
f3496c41
--虚伪谶言 视野深渊
if
not
pcall
(
function
()
require
(
"expansions/script/c33301000"
)
end
)
then
require
(
"script/c33301000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
33330151
)
if
rsfn
then
return
end
rsfn
=
cm
rscf
.
DefineSet
(
rsfn
,
0x55c
)
function
rsfn
.
CheckActFun
()
local
e1
=
rsef
.
FC
({
true
,
0
},
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetOperation
(
cm
.
checkop
)
end
rsfn
.
CheckActFun
()
function
cm
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
for
tc
in
aux
.
Next
(
eg
)
do
if
not
re
or
not
rsfn
.
IsSet
(
re
:
GetHandler
())
then
Duel
.
RegisterFlagEffect
(
tc
:
GetSummonPlayer
(),
m
,
rsreset
.
pend
,
0
,
1
)
end
end
end
function
rsfn
.
e1cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
m
)
==
0
and
c
:
IsDiscardable
()
end
Duel
.
SendtoGrave
(
c
,
REASON_COST
+
REASON_DISCARD
)
local
e1
=
rsef
.
FV_LIMIT_PLAYER
({
c
,
tp
},
"sp"
,
nil
,
cm
.
splimit
,{
1
,
0
},
nil
,
rsreset
.
pend
)
end
function
cm
.
splimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
,
se
)
return
not
rsfn
.
IsSet
(
se
:
GetHandler
())
end
function
rsfn
.
RegFun
(
c
,
code
,
ccon
,
cop
)
local
e0
=
rsef
.
ACT
(
c
)
local
e1
=
rsef
.
QO
(
c
,
nil
,{
m
,
0
},{
1
,
code
},
"rec,tg"
,
nil
,
LOCATION_HAND
,
nil
,
rsfn
.
e1cost
,
rsop
.
target2
(
cm
.
dffun
,
400
,
"rec"
),
cm
.
recop
)
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
2
},{
1
,
code
},
nil
,
nil
,
LOCATION_GRAVE
,
nil
,
rsfn
.
e3cost
,
nil
,
cm
.
loseop
)
local
e3
=
rsef
.
FC
(
c
,
EVENT_CHAINING
,
nil
,
nil
,
"cd"
,
LOCATION_SZONE
,
nil
,
aux
.
chainreg
)
local
e4
=
rsef
.
FC
(
c
,
EVENT_CHAIN_SOLVING
,
nil
,
nil
,
nil
,
LOCATION_SZONE
,
cm
.
cecon
(
ccon
),
cm
.
ceop
(
code
,
cop
))
return
e0
,
e1
,
e2
,
e3
,
e4
end
function
cm
.
cecon
(
ccon
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
loc
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TRIGGERING_LOCATION
)
return
c
:
GetFlagEffect
(
1
)
>
0
and
c
:
GetFlagEffect
(
m
)
==
0
and
rp
==
tp
and
loc
&
LOCATION_GRAVE
~=
0
and
rsfn
.
IsSet
(
re
:
GetHandler
())
and
ccon
(
e
,
tp
)
end
end
function
cm
.
ceop
(
code
,
cop
)
return
function
(
e
,
tp
)
local
c
=
e
:
GetHandler
()
if
not
Duel
.
SelectEffectYesNo
(
tp
,
c
,
aux
.
Stringid
(
code
,
3
))
then
return
end
rshint
.
Card
(
m
)
c
:
RegisterFlagEffect
(
m
,
rsreset
.
est_pend
,
0
,
1
)
Duel
.
ChangeTargetCard
(
ev
,
Group
.
CreateGroup
())
Duel
.
ChangeChainOperation
(
ev
,
cop
)
end
end
function
cm
.
dffun
(
g
,
e
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
0
,
tp
,
LOCATION_DECK
)
end
function
cm
.
dffilter
(
c
,
e
,
tp
)
return
rsfn
.
IsSet
(
c
)
and
c
:
IsComplexType
(
TYPE_TRAP
+
TYPE_CONTINUOUS
)
and
(
c
:
GetActivateEffect
():
IsActivatable
(
tp
)
or
c
:
IsAbleToGrave
())
and
not
c
:
IsCode
(
e
:
GetHandler
():
GetCode
())
end
function
cm
.
recop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
Recover
(
tp
,
400
,
REASON_EFFECT
)
<=
0
then
return
end
rsop
.
SelectOC
({
m
,
1
},
true
)
rsop
.
SelectSolve
(
HINTMSG_SELF
,
tp
,
cm
.
dffilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
cm
.
dfsfun
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
function
cm
.
dfsfun
(
g
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
g
:
GetFirst
()
local
b1
=
tc
:
IsAbleToGrave
()
local
b2
=
tc
:
GetActivateEffect
():
IsActivatable
(
tp
)
local
op
=
rsop
.
SelectOption
(
tp
,
b2
,
1150
,
b1
,
1191
)
if
op
==
2
then
Duel
.
SendtoGrave
(
tc
,
REASON_EFFECT
)
elseif
op
==
1
then
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
local
te
=
tc
:
GetActivateEffect
()
local
tep
=
tc
:
GetControler
()
local
cost
=
te
:
GetCost
()
if
cost
then
cost
(
te
,
tep
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
end
end
function
rsfn
.
e3cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
m
)
==
0
and
c
:
IsAbleToDeckAsCost
()
end
Duel
.
SendtoDeck
(
c
,
nil
,
2
,
REASON_COST
)
local
e1
=
rsef
.
FV_LIMIT_PLAYER
({
c
,
tp
},
"sp"
,
nil
,
cm
.
splimit
,{
1
,
0
},
nil
,
rsreset
.
pend
)
end
function
cm
.
loseop
(
e
,
tp
)
Duel
.
SetLP
(
tp
,
Duel
.
GetLP
(
tp
)
-
500
)
end
function
rsfn
.
thfilter
(
c
)
return
rsfn
.
IsSet
(
c
)
and
c
:
IsAbleToHand
()
and
(
c
:
IsLocation
(
LOCATION_DECK
)
or
c
:
IsFaceup
())
end
function
rsfn
.
thcon
(
e
,
tp
,
checkdis
)
return
Duel
.
IsExistingMatchingCard
(
cm
.
thfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
)
and
(
not
checkdis
or
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToGrave
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
))
end
function
rsfn
.
thop
(
e
,
tp
,
ct
)
local
ct
,
og
,
tc
=
rsop
.
SelectToHand
(
tp
,
rsfn
.
thfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
ct
,
nil
,{})
local
og2
=
og
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_HAND
)
return
#
og2
end
function
rsfn
.
disop
(
e
,
tp
)
Duel
.
BreakEffect
()
rsop
.
SelectToGrave
(
tp
,
Card
.
IsAbleToGrave
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,{})
end
--------------------------------------
function
cm
.
initial_effect
(
c
)
local
e0
,
e1
,
e2
,
e3
,
e4
=
rsfn
.
RegFun
(
c
,
m
,
cm
.
ccon
,
cm
.
cop
)
end
function
cm
.
ccon
(
e
,
tp
)
return
rsfn
.
thcon
(
e
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
rsfn
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
function
cm
.
cop
(
e
,
tp
)
if
rsfn
.
thop
(
e
,
tp
,
1
)
<=
0
then
return
end
local
_
,
_
,
tc
=
rsop
.
SelectToHand
(
tp
,
rsfn
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,{})
if
not
tc
or
not
tc
:
IsLocation
(
LOCATION_HAND
)
then
return
end
Duel
.
BreakEffect
()
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
end
\ No newline at end of file
expansions/script/c33330400.lua
View file @
f3496c41
--恶梦启示录
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
=
33330400
local
cm
=
_G
[
"c"
..
m
]
if
not
rsv
.
Nightmare
then
...
...
@@ -33,7 +33,7 @@ function rsnm.SummonFun(c,code,type2,isgrave,istograve)
end
function
rsnm
.
counterfilter
(
c
)
if
c
:
GetSummonLocation
()
&
LOCATION_HAND
+
LOCATION_DECK
==
0
then
return
true
end
return
c
:
IsSetCard
(
0x
6
552
)
return
c
:
IsSetCard
(
0x
4
552
)
end
function
rsnm
.
spcfilter
(
c
,
tp
)
return
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
c
:
IsAbleToDeckAsCost
()
and
Duel
.
GetMZoneCount
(
tp
,
c
,
tp
)
>
0
...
...
@@ -50,7 +50,7 @@ function rsnm.spop(e,tp)
end
function
rsnm
.
spcfilter2
(
c
,
e
)
local
val
=
e
:
GetValue
()
return
c
:
IsSetCard
(
0x
6
552
)
and
((
val
==
0
and
c
:
IsAbleToDeckOrExtraAsCost
())
or
(
val
==
1
and
c
:
IsAbleToGraveAsCost
()))
return
c
:
IsSetCard
(
0x
4
552
)
and
((
val
==
0
and
c
:
IsAbleToDeckOrExtraAsCost
())
or
(
val
==
1
and
c
:
IsAbleToGraveAsCost
()))
end
function
rsnm
.
spcfilter3
(
g
,
tp
,
loc
)
return
Duel
.
GetMZoneCount
(
tp
,
g
,
tp
)
>
0
and
((
loc
==
LOCATION_ONFIELD
and
#
g
==
1
)
or
(
loc
==
LOCATION_GRAVE
and
#
g
==
2
))
...
...
@@ -92,7 +92,7 @@ function rsnm.limop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
rsnm
.
splimit
(
e
,
c
)
if
c
:
IsLocation
(
LOCATION_HAND
+
LOCATION_DECK
)
then
return
not
c
:
IsSetCard
(
0x
6
552
)
if
c
:
IsLocation
(
LOCATION_HAND
+
LOCATION_DECK
)
then
return
not
c
:
IsSetCard
(
0x
4
552
)
else
return
false
end
end
...
...
@@ -100,7 +100,7 @@ function rsnm.thcon(e,tp,eg,ep,ev,re,r,rp)
return
rp
==
1
-
tp
and
e
:
GetHandler
():
GetPreviousControler
()
==
tp
end
function
rsnm
.
thfilter
(
c
)
return
c
:
IsAbleToHand
()
and
c
:
IsSetCard
(
0x
6
552
)
return
c
:
IsAbleToHand
()
and
c
:
IsSetCard
(
0x
4
552
)
end
function
rsnm
.
thop
(
e
,
tp
)
rshint
.
Select
(
tp
,
"th"
)
...
...
@@ -157,7 +157,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local
c
=
aux
.
ExceptThisCard
(
e
)
if
not
c
then
return
end
local
tc
=
e
:
GetLabelObject
()
if
not
tc
:
IsSetCard
(
0x
6
552
)
then
return
end
if
not
tc
:
IsSetCard
(
0x
4
552
)
then
return
end
local
e1
=
rsef
.
SV_IMMUNE_EFFECT
(
c
,
cm
.
val
,
nil
,
rsreset
.
est_pend
)
e1
:
SetOwnerPlayer
(
tp
)
local
te
=
tc
.
flip_effect
...
...
@@ -175,7 +175,7 @@ function cm.poscon(e,tp,eg,ep,ev,re,r,rp)
return
Duel
.
GetAttacker
():
IsControler
(
1
-
tp
)
end
function
cm
.
posfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x
6
552
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x
4
552
)
end
function
cm
.
posop
(
e
,
tp
)
local
g
=
Duel
.
GetMatchingGroup
(
cm
.
posfilter
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
...
...
expansions/script/c33330413.lua
View file @
f3496c41
--咒念树
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
=
33330413
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
@@ -15,10 +15,10 @@ function cm.con(e,c)
return
Duel
.
IsExistingMatchingCard
(
cm
.
resfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
nil
)
end
function
cm
.
resfilter
(
c
)
return
c
:
GetOriginalType
()
&
TYPE_MONSTER
~=
0
and
c
:
Is
Type
(
TYPE_TRAP
)
and
c
:
Is
Releasable
()
return
c
:
GetOriginalType
()
&
TYPE_MONSTER
~=
0
and
c
:
IsReleasable
()
end
function
cm
.
op
(
e
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
"res"
)
rs
hint
.
Selec
t
(
tp
,
"res"
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
resfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Release
(
g
,
REASON_COST
)
end
...
...
@@ -38,7 +38,7 @@ function cm.spop(e,tp)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
rs
of
.
SelectHin
t
(
tp
,
"sp"
)
rs
hint
.
Selec
t
(
tp
,
"sp"
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
#
sg
>
0
and
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEDOWN_DEFENSE
)
>
0
then
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
...
...
expansions/script/c33331100.lua
View file @
f3496c41
--小狐
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
=
33331100
local
cm
=
_G
[
"c"
..
m
]
if
not
rsv
.
LF
then
...
...
@@ -102,7 +102,7 @@ function cm.op(e,tp)
if
op
==
1
then
Duel
.
SendtoExtraP
(
tc
,
nil
,
REASON_COST
)
else
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_
S
ZONE
,
POS_FACEUP
,
true
)
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_
P
ZONE
,
POS_FACEUP
,
true
)
end
end
-------------
...
...
expansions/script/c33340004.lua
View file @
f3496c41
--热核污染病毒-Æ
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
33301000"
)
end
)
then
require
(
"script/c3330100
0"
)
end
local
m
=
33340004
local
cm
=
_G
[
"c"
..
m
]
if
not
RcoreVal
then
...
...
expansions/script/c33350022.lua
View file @
f3496c41
--传说之魂 缜密
if
not
pcall
(
function
()
require
(
"expansions/script/c33301000"
)
end
)
then
require
(
"script/c33301000"
)
end
local
m
=
33350022
local
cm
=
_G
[
"c"
..
m
]
cm
.
name
=
"传说的「G」"
cm
.
setname
=
"TaleSouls"
function
cm
.
initial_effect
(
c
)
aux
.
AddXyzProcedure
(
c
,
nil
,
1
,
2
)
c
:
EnableReviveLimit
()
--Xyz Summon
aux
.
AddXyzProcedure
(
c
,
nil
,
1
,
2
,
nil
,
nil
,
99
)
--Atk & Def
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetValue
(
cm
.
adval
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e2
:
SetValue
(
cm
.
adval
)
c
:
RegisterEffect
(
e2
)
--Move
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e3
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
2
,
EFFECT_COUNT_CODE_SINGLE
)
e3
:
SetCondition
(
cm
.
condition
)
e3
:
SetTarget
(
cm
.
mvtg
)
e3
:
SetOperation
(
cm
.
mvop
)
c
:
RegisterEffect
(
e3
)
--Return Hand
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
m
,
2
))
e4
:
SetCategory
(
CATEGORY_TOHAND
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
2
,
EFFECT_COUNT_CODE_SINGLE
)
e4
:
SetCondition
(
cm
.
condition
)
e4
:
SetTarget
(
cm
.
thtg
)
e4
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e4
)
local
e1
=
rsef
.
I
(
c
,{
m
,
0
},
1
,
"se,th"
,
nil
,
LOCATION_MZONE
,
nil
,
rscost
.
rmxyz
(
1
),
rstg
.
target2
(
cm
.
fun
,
rsop
.
list
(
cm
.
thfilter
,
"th"
,
LOCATION_DECK
)),
cm
.
thop
)
local
e2
=
rsef
.
SC
(
c
,
EVENT_SPSUMMON_SUCCESS
,
nil
,
nil
,
"cd"
,
rscon
.
sumtype
(
"xyz"
,
cm
.
cfilter
),
cm
.
op
)
end
cm
.
setname
=
"TaleSouls"
function
cm
.
cfilter
(
c
,
e
,
tp
,
re
,
rp
,
mat
)
return
#
mat
>
0
and
mat
:
IsExists
(
Card
.
IsCode
,
1
,
nil
,
33350016
)
end
--Atk & Def
function
cm
.
adval
(
e
,
c
)
local
g
=
e
:
GetHandler
():
GetOverlayGroup
()
return
g
:
GetSum
(
Card
.
GetLevel
)
*
300
function
cm
.
op
(
e
,
tp
)
local
e3
=
rsef
.
I
({
e
:
GetHandler
()},{
m
,
1
},
1
,
"rm"
,
"tg"
,
LOCATION_MZONE
,
nil
,
nil
,
rstg
.
target
(
Card
.
IsFaceup
,
nil
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
),
cm
.
tgop
)
e3
:
SetReset
(
rsreset
.
est
)
end
--Effect
function
cm
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
not
c
:
IsHasEffect
(
EFFECT_REVERSE_UPDATE
)
and
c
:
IsAttackAbove
(
500
)
function
cm
.
tgop
(
e
,
tp
)
local
tc
=
rscf
.
GetTargetCard
()
if
not
tc
then
return
end
if
Duel
.
ChangePosition
(
tc
,
POS_FACEDOWN_DEFENSE
)
<=
0
then
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_RULE
)
end
end
--Move
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
(
c
:
IsLocation
(
LOCATION_GRAVE
)
or
c
:
IsFaceup
())
and
c
:
GetAttack
()
==
500
and
(
Duel
.
GetMZoneCount
(
tp
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
or
c
:
IsAbleToHand
()
)
function
cm
.
fun
(
g
,
e
,
tp
)
rshint
.
Select
(
tp
,
"tg"
)
local
tg
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
tgfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
SendtoGrave
(
tg
,
REASON_COST
)
end
function
cm
.
mvtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
,
tp
,
LOCATION_REASON_CONTROL
)
>
0
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
)
function
cm
.
thfilter
(
c
,
e
,
tp
)
return
c
:
IsAbleToHand
()
and
c
.
setname
==
"TaleSouls"
and
Duel
.
IsExistingMatchingCard
(
cm
.
tgfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
c
,
e
,
tp
)
end
function
cm
.
mvop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
IsControler
(
1
-
tp
)
or
c
:
IsImmuneToEffect
(
e
)
or
Duel
.
GetMZoneCount
(
tp
)
<
1
or
c
:
GetAttack
()
<
500
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOZONE
)
local
s
=
Duel
.
SelectDisableField
(
tp
,
1
,
LOCATION_MZONE
,
0
,
0
)
local
nseq
=
math.log
(
s
,
2
)
Duel
.
MoveSequence
(
c
,
nseq
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_COPY_INHERIT
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
)
e1
:
SetValue
(
-
500
)
c
:
RegisterEffect
(
e1
)
if
Duel
.
IsExistingMatchingCard
(
cm
.
spfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
1
))
then
Duel
.
BreakEffect
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
spfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
local
tc
=
g
:
GetFirst
()
if
tc
then
local
b1
=
tc
:
IsAbleToHand
()
local
b2
=
Duel
.
GetMZoneCount
(
tp
)
>
0
and
tc
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
if
b1
and
(
not
b2
or
Duel
.
SelectOption
(
tp
,
1190
,
1152
)
==
0
)
then
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
tc
)
else
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
function
cm
.
tgfilter
(
c
,
e
,
tp
)
return
c
.
setname
==
"TaleSouls"
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToGraveAsCost
()
and
Duel
.
IsExistingMatchingCard
(
cm
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
c
)
end
--Return Hand
function
cm
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
1
-
tp
,
LOCATION_ONFIELD
)
function
cm
.
thfilter2
(
c
,
e
,
tp
)
return
c
:
IsAbleToHand
()
and
c
.
setname
==
"TaleSouls"
end
function
cm
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
c
:
GetAttack
()
<
500
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_COPY_INHERIT
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
)
e1
:
SetValue
(
-
500
)
c
:
RegisterEffect
(
e1
)
Duel
.
HintSelection
(
g
)
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
function
cm
.
thop
(
e
,
tp
)
rshint
.
Select
(
tp
,
"th"
)
local
tg
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
#
tg
>
0
then
Duel
.
SendtoHand
(
tg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
tg
)
end
end
\ No newline at end of file
end
expansions/script/c33400524.lua
View file @
f3496c41
...
...
@@ -217,7 +217,7 @@ function cm.TojiEquip(ec,e,tp,eg,ep,ev,re,r,rp)
local
e2
=
Effect
.
CreateEffect
(
ec
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCategory
(
CATEGORY_COUNTER
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetCode
(
EVENT_DESTROYED
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetCountLimit
(
2
,
m
+
1
)
...
...
expansions/script/c33500933.lua
View file @
f3496c41
...
...
@@ -35,6 +35,7 @@ function cm.initial_effect(c)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e3
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e3
:
SetTarget
(
cm
.
indtg
)
...
...
@@ -47,6 +48,7 @@ function cm.initial_effect(c)
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetType
(
EFFECT_TYPE_FIELD
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e5
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e5
:
SetCode
(
EFFECT_DISABLE
)
e5
:
SetTarget
(
cm
.
indtg2
)
...
...
@@ -167,11 +169,11 @@ function cm.atkval(e,c)
end
--e3
function
cm
.
indtg
(
e
,
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_WATER
)
and
c
:
GetCounter
(
0x1015
)
>
0
return
(
c
:
IsAttribute
(
ATTRIBUTE_WATER
)
or
(
e
:
GetHandler
()
==
c
and
e
:
GetHandler
():
IsAttribute
(
ATTRIBUTE_WATER
)
)
)
and
c
:
GetCounter
(
0x1015
)
>
0
end
--e5
function
cm
.
indtg2
(
e
,
c
)
return
c
:
GetAttribute
()
~=
ATTRIBUTE_WATER
and
c
:
GetCounter
(
0x1015
)
>
0
return
(
c
:
GetAttribute
()
~=
ATTRIBUTE_WATER
or
(
e
:
GetHandler
()
==
c
and
e
:
GetHandler
():
GetAttribute
()
~=
ATTRIBUTE_WATER
)
)
and
c
:
GetCounter
(
0x1015
)
>
0
end
--e7
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
@@ -232,7 +234,7 @@ function cm.Eqop1(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
TojiEquip
(
ec
,
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
token
=
Duel
.
CreateToken
(
tp
,
m
+
1
)
local
token
=
Duel
.
CreateToken
(
tp
,
33400525
)
Duel
.
MoveToField
(
token
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
token
:
CancelToGrave
()
local
e1_1
=
Effect
.
CreateEffect
(
token
)
...
...
@@ -267,7 +269,7 @@ function cm.TojiEquip(ec,e,tp,eg,ep,ev,re,r,rp)
local
e2
=
Effect
.
CreateEffect
(
ec
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCategory
(
CATEGORY_COUNTER
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetCode
(
EVENT_DESTROYED
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetCountLimit
(
2
,
m
+
1
)
...
...
expansions/script/c37564202.lua
View file @
f3496c41
...
...
@@ -22,7 +22,7 @@ function cm.filter1(c)
return
c
:
IsType
(
TYPE_TUNER
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToRemove
()
end
function
cm
.
filter2
(
c
)
return
c
:
IsNotTuner
(
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToRemove
()
return
not
c
:
IsType
(
TYPE_TUNER
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToRemove
()
end
function
cm
.
rmtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
false
end
...
...
expansions/script/c65010003.lua
View file @
f3496c41
--「02的愤怒」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010003
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010004.lua
View file @
f3496c41
--「02的威压」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010004
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010005.lua
View file @
f3496c41
--「02的反击」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010005
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010006.lua
View file @
f3496c41
--「02的一击」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010006
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010007.lua
View file @
f3496c41
--「02退出了观战」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010007
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010008.lua
View file @
f3496c41
--「为了适应超出我体系的环境」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010008
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010009.lua
View file @
f3496c41
--「你们太强了我打不过」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010009
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010010.lua
View file @
f3496c41
--「02加入了游戏」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010010
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010011.lua
View file @
f3496c41
--「02场」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010011
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010012.lua
View file @
f3496c41
--「我为什么又卡手了…」
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010012
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010013.lua
View file @
f3496c41
--窥屏021
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010013
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010100.lua
View file @
f3496c41
--Neo-Aspect宇田川亚子
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010100
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010101.lua
View file @
f3496c41
--八岐大狐
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010101
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
@@ -20,11 +20,11 @@ function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_RELEASE
,
nil
,
1
,
tp
,
LOCATION_MZONE
)
end
function
cm
.
negop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
rscf
.
Get
RelationThisCard
(
e
)
local
c
=
rscf
.
Get
FaceUpSelf
(
e
)
if
not
c
then
return
end
local
lg
=
c
:
GetLinkedGroup
()
if
#
lg
<=
0
then
return
end
rs
of
.
SelectHin
t
(
tp
,
"res"
)
rs
hint
.
Selec
t
(
tp
,
"res"
)
local
rg
=
lg
:
FilterSelect
(
tp
,
Card
.
IsReleasable
,
1
,
1
,
nil
)
if
#
rg
<=
0
or
Duel
.
Release
(
rg
,
REASON_EFFECT
)
<=
0
or
not
Duel
.
NegateActivation
(
ev
)
then
return
end
if
re
:
GetHandler
():
IsRelateToEffect
(
re
)
then
...
...
@@ -42,7 +42,7 @@ function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
ct
)
end
function
cm
.
drop
(
e
,
tp
)
local
c
=
rscf
.
Get
RelationThisCard
(
e
)
local
c
=
rscf
.
Get
FaceUpSelf
(
e
)
if
not
c
then
return
end
local
ct
=
c
:
GetLink
()
local
matct
=
e
:
GetHandler
():
GetMaterialCount
()
...
...
expansions/script/c65010103.lua
0 → 100644
View file @
f3496c41
--双生少女 奇迹时雨
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
=
65010103
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddXyzProcedure
(
c
,
nil
,
8
,
2
)
local
e1
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
},
"sp"
,
nil
,
LOCATION_MZONE
,
nil
,
rscost
.
rmxyz
(
1
),
rsop
.
target
(
cm
.
spfilter
,
"sp"
,
LOCATION_EXTRA
),
cm
.
spop
)
end
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
Duel
.
GetLocationCountFromEx
(
1
-
tp
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
1
-
tp
,
false
,
false
,
POS_FACEUP
,
1
-
tp
)
and
not
c
:
IsType
(
TYPE_XYZ
)
end
function
cm
.
spfilter2
(
c
,
e
,
tp
)
return
Duel
.
GetLocationCountFromEx
(
tp
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
true
,
false
,
POS_FACEUP
)
end
function
cm
.
spop
(
e
,
tp
)
rshint
.
Select
(
tp
,
"sp"
)
local
sc1
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
not
sc1
or
rssf
.
SpecialSummon
(
sc1
,
0
,
1
-
tp
,
1
-
tp
,
false
,
false
,
POS_FACEUP
)
<=
0
then
return
end
cm
.
buffop
(
sc1
,
e
)
if
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_EXTRA
)
>
0
and
Duel
.
IsPlayerCanSpecialSummon
(
tp
)
and
Duel
.
GetLocationCountFromEx
(
tp
)
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
1
))
then
Duel
.
BreakEffect
()
local
g
=
Duel
.
GetMatchingGroup
(
cm
.
spfilter2
,
tp
,
0
,
LOCATION_EXTRA
,
nil
,
e
,
tp
)
local
sc2
=
g
:
RandomSelect
(
tp
,
1
):
GetFirst
()
if
sc2
and
rssf
.
SpecialSummon
(
sc2
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
>
0
then
cm
.
buffop
(
sc2
,
e
)
end
end
end
function
cm
.
buffop
(
tc
,
e
)
local
c
=
e
:
GetHandler
()
local
e1
=
rsef
.
SV_LIMIT
({
c
,
tc
},
"atk"
,
nil
,
nil
,
rsreset
.
est
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_LEAVE_FIELD_REDIRECT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_REDIRECT
)
e1
:
SetValue
(
LOCATION_DECK
)
tc
:
RegisterEffect
(
e1
)
return
true
end
\ No newline at end of file
expansions/script/c65010104.lua
0 → 100644
View file @
f3496c41
--双生少女 奇迹夕立
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
=
65010104
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddXyzProcedure
(
c
,
nil
,
4
,
2
)
local
e1
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
},
"sp"
,
nil
,
LOCATION_MZONE
,
nil
,
rscost
.
rmxyz
(
1
),
rsop
.
target
(
cm
.
spfilter
,
"sp"
,
LOCATION_HAND
+
LOCATION_GRAVE
),
cm
.
spop
)
end
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
Duel
.
GetLocationCount
(
1
-
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
1
-
tp
,
false
,
false
,
POS_FACEUP
,
1
-
tp
)
end
function
cm
.
spfilter2
(
c
,
e
,
tp
)
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP
)
end
function
cm
.
check
(
e
,
tp
)
local
b1
=
Duel
.
IsExistingMatchingCard
(
aux
.
NecroValleyFilter
(
cm
.
spfilter2
),
tp
,
0
,
LOCATION_GRAVE
,
1
,
nil
,
e
,
tp
)
local
b2
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_HAND
)
>
0
return
b1
or
b2
,
b2
,
b1
end
function
cm
.
spop
(
e
,
tp
)
rshint
.
Select
(
tp
,
"sp"
)
local
sc1
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
cm
.
spfilter
),
tp
,
LOCATION_HAND
+
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
if
not
sc1
or
rssf
.
SpecialSummon
(
sc1
,
0
,
1
-
tp
,
1
-
tp
)
<=
0
then
return
end
cm
.
buffop
(
sc1
,
e
)
if
cm
.
check
(
e
,
tp
)
and
Duel
.
IsPlayerCanSpecialSummon
(
tp
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
then
local
_
,
b2
,
b1
=
cm
.
check
(
e
,
tp
)
local
op
=
rsop
.
SelectOption
(
tp
,
b1
or
b2
,{
m
,
1
},
b2
,{
m
,
2
},
b1
,{
m
,
3
})
if
op
~=
0
then
Duel
.
BreakEffect
()
end
local
sc2
=
nil
if
op
==
2
then
local
g
=
Duel
.
GetMatchingGroup
(
cm
.
spfilter2
,
tp
,
0
,
LOCATION_HAND
,
nil
,
e
,
tp
)
if
#
g
<=
0
then
return
end
sc2
=
g
:
RandomSelect
(
tp
,
1
):
GetFirst
()
elseif
op
==
3
then
sc2
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
cm
.
spfilter
),
tp
,
0
,
LOCATION_GRAVE
,
1
,
1
,
nil
,
e
,
tp
):
GetFirst
()
end
if
sc2
and
rssf
.
SpecialSummon
(
sc2
)
>
0
then
cm
.
buffop
(
sc2
,
e
)
end
end
end
function
cm
.
buffop
(
tc
,
e
)
local
c
=
e
:
GetHandler
()
local
e1
=
rsef
.
SV_LIMIT
({
c
,
tc
},
"atk"
,
nil
,
nil
,
rsreset
.
est
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_LEAVE_FIELD_REDIRECT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_REDIRECT
)
e1
:
SetValue
(
LOCATION_DECK
)
tc
:
RegisterEffect
(
e1
)
return
true
end
\ No newline at end of file
expansions/script/c65010105.lua
View file @
f3496c41
--白色相册
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010105
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
...
...
expansions/script/c65010201.lua
View file @
f3496c41
--虚拟水神之月
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010201
,
"VrAqua"
)
if
rsvraq
then
return
end
rsva
=
cm
...
...
@@ -60,7 +60,7 @@ end
-----------------------------
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
nil
,
nil
,{
1
,
m
},
"se,th"
,
nil
,
nil
,
nil
,
rsop
.
target
(
cm
.
thfilter
,
"th"
,
LOCATION_DECK
),
cm
.
act
)
local
e2
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
+
100
},
"td,dr"
,
"tg"
,
LOCATION_GRAVE
,
nil
,
aux
.
bfgcost
,
rstg
.
target
({
cm
.
tdfilter
,
"td"
,
LOCATION_GRAVE
,
0
,
1
,
3
,
c
},
rsop
.
list
(
1
,
"dr"
,
1
)),
cm
.
tdop
)
local
e2
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
},
"td,dr"
,
"tg"
,
LOCATION_GRAVE
,
nil
,
aux
.
bfgcost
,
rstg
.
target
({
cm
.
tdfilter
,
"td"
,
LOCATION_GRAVE
,
0
,
1
,
3
,
c
},
rsop
.
list
(
1
,
"dr"
,
1
)),
cm
.
tdop
)
end
function
cm
.
thfilter
(
c
)
return
((
c
:
IsLevelBelow
(
4
)
and
rsva
.
filter_ar
(
c
))
or
(
c
:
IsType
(
TYPE_TRAP
)
and
rsva
.
IsSet
(
c
)))
and
c
:
IsAbleToHand
()
...
...
expansions/script/c65010213.lua
0 → 100644
View file @
f3496c41
--行星驱逐舰 风雪游隼号
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010213
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rscf
.
SetSpecialSummonProduce
(
c
,
LOCATION_HAND
,
cm
.
sprcon
,
nil
,
nil
,{
1
,
m
})
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
0
},
1
,
"tg"
,
nil
,
LOCATION_MZONE
,
nil
,
nil
,
rsop
.
target2
(
cm
.
fun
,
cm
.
tgfilter
,
"tg"
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
true
),
cm
.
tgop
)
end
function
cm
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsRace
(
RACE_MACHINE
)
end
function
cm
.
sprcon
(
e
,
c
,
tp
)
return
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_MZONE
)
>
0
and
not
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
cm
.
tgfilter
(
c
,
e
)
return
e
:
GetHandler
():
GetColumnGroup
():
IsContains
(
c
)
end
function
cm
.
fun
(
g
,
e
,
tp
)
Duel
.
SetChainLimit
(
cm
.
limit
(
e
:
GetHandler
()))
end
function
cm
.
limit
(
c
)
return
function
(
e
)
return
not
c
:
GetColumnGroup
():
IsContains
(
e
:
GetHandler
())
end
end
function
cm
.
tgop
(
e
,
tp
)
local
c
=
aux
.
ExceptThisCard
(
e
)
if
not
c
then
return
end
local
g
=
c
:
GetColumnGroup
()
Duel
.
SendtoGrave
(
g
,
REASON_RULE
)
end
\ No newline at end of file
expansions/script/c65010214.lua
0 → 100644
View file @
f3496c41
--「六兆年零一夜物语」凑友希那
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010214
)
function
cm
.
initial_effect
(
c
)
rscf
.
SetSummonCondition
(
c
,
false
,
aux
.
synlimit
)
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
nil
),
2
)
--adjust
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e1
:
SetCode
(
EVENT_ADJUST
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetOperation
(
cm
.
adjustop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_CANNOT_ACTIVATE
)
e2
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e2
:
SetTargetRange
(
0
,
1
)
e2
:
SetValue
(
cm
.
aclimit
)
c
:
RegisterEffect
(
e2
)
--cannot summon,spsummon,flipsummon
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_FIELD
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e4
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e4
:
SetTargetRange
(
0
,
1
)
e4
:
SetTarget
(
cm
.
sumlimit
)
c
:
RegisterEffect
(
e4
)
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetType
(
EFFECT_TYPE_FIELD
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetCode
(
EFFECT_CANNOT_SUMMON
)
e5
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e5
:
SetTargetRange
(
0
,
1
)
e5
:
SetTarget
(
cm
.
sumlimit
)
c
:
RegisterEffect
(
e5
)
local
e6
=
Effect
.
CreateEffect
(
c
)
e6
:
SetType
(
EFFECT_TYPE_FIELD
)
e6
:
SetRange
(
LOCATION_MZONE
)
e6
:
SetCode
(
EFFECT_CANNOT_FLIP_SUMMON
)
e6
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e6
:
SetTargetRange
(
0
,
1
)
e6
:
SetTarget
(
cm
.
sumlimit
)
c
:
RegisterEffect
(
e6
)
end
function
cm
.
adjustop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
phase
=
Duel
.
GetCurrentPhase
()
if
(
phase
==
PHASE_DAMAGE
and
not
Duel
.
IsDamageCalculated
())
or
phase
==
PHASE_DAMAGE_CAL
then
return
end
local
g1
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
g2
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
)
if
#
g2
>#
g1
then
rshint
.
Select
(
1
-
tp
,
"tg"
)
local
tg
=
g2
:
Select
(
1
-
tp
,
#
g2
-#
g1
,
#
g2
-#
g1
,
nil
)
Duel
.
SendtoGrave
(
tg
,
REASON_RULE
)
Duel
.
Readjust
()
end
end
function
cm
.
aclimit
(
e
,
re
,
tp
)
if
not
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
then
return
false
end
local
rc
=
re
:
GetHandler
()
local
g1
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
g2
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
)
return
#
g1
<=#
g2
end
function
cm
.
sumlimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
)
if
sumpos
and
sumpos
&
POS_FACEDOWN
>
0
then
return
false
end
local
g1
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
g2
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
)
return
#
g1
<=#
g2
end
expansions/script/c65010515.lua
View file @
f3496c41
--URBEX HINDER-暴食者
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
65010000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
=
65010515
local
cm
=
_G
[
"c"
..
m
]
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddLinkProcedure
(
nil
,
2
,
3
,
cm
.
gf
)
aux
.
AddLinkProcedure
(
c
,
nil
,
2
,
3
,
cm
.
gf
)
local
e1
=
rsef
.
QO
(
c
,
nil
,{
m
,
1
},{
1
,
m
},
"sp"
,
nil
,
LOCATION_MZONE
,
rscon
.
phmp
,
nil
,
rsop
.
target2
(
cm
.
fun
,
cm
.
lfilter
,
"sp"
,
LOCATION_EXTRA
),
cm
.
spop
)
end
cm
.
rssetcode
=
"URBEX"
...
...
@@ -34,14 +34,14 @@ function cm.lfilter2(c,g,rc,tp,ct)
return
g
:
CheckSubGroup
(
cm
.
gfilter
,
1
,
99
,
c
,
rc
,
tp
,
ct
)
end
function
cm
.
spop
(
e
,
tp
)
local
c
=
rscf
.
Get
RelationThisCard
(
e
)
local
c
=
rscf
.
Get
FaceUpSelf
(
e
)
if
not
c
then
return
end
local
ct
=
e
:
GetLabel
()
==
1
and
c
:
GetMutualLinkedGroupCount
()
or
0
local
g
=
Duel
.
GetMatchingGroup
(
cm
.
mfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
,
tp
)
rs
of
.
SelectHin
t
(
tp
,
"sp"
)
rs
hint
.
Selec
t
(
tp
,
"sp"
)
local
lc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
lfilter2
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
g
,
c
,
tp
,
ct
):
GetFirst
()
if
not
lc
then
return
end
rs
of
.
SelectHin
t
(
tp
,
HINTMSG_LMATERIAL
)
rs
hint
.
Selec
t
(
tp
,
HINTMSG_LMATERIAL
)
local
mg
=
g
:
SelectSubGroup
(
tp
,
cm
.
gfilter
,
false
,
1
,
99
,
lc
,
c
,
tp
,
ct
)
Duel
.
LinkSummon
(
tp
,
lc
,
mg
)
end
\ No newline at end of file
expansions/script/c65010552.lua
View file @
f3496c41
--天知龙 暗黑残星龙
--Lua by Hui_lan, fix by scl
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010552
,
"TianZhi"
)
function
c65010552
.
initial_effect
(
c
)
--disable
...
...
expansions/script/c65010554.lua
View file @
f3496c41
--天知骑士王 冈格尼尔龙王
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010554
,
"TianZhi"
)
function
c65010554
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c65010556.lua
View file @
f3496c41
--天知之翼的骑行
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
65010000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010556
,
"TianZhi"
)
function
c65010556
.
initial_effect
(
c
)
--activate
...
...
expansions/script/c65010558.lua
View file @
f3496c41
--天知之翼骑士
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010558
,
"TianZhi"
)
function
c65010558
.
initial_effect
(
c
)
--set
...
...
expansions/script/c65010559.lua
View file @
f3496c41
--天知海龙 深渊硬甲鱼
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010559
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
FTO
(
c
,
EVENT_SPSUMMON_SUCCESS
,{
m
,
0
},{
1
,
m
},
"sp"
,
nil
,
LOCATION_HAND
,
cm
.
spcon
,
nil
,
rsop
.
target
(
cm
.
spfilter
,
"sp"
),
cm
.
spop
)
...
...
expansions/script/c65010560.lua
View file @
f3496c41
--天知骑士王 三叉戟海王
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010560
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
(
c
)
...
...
expansions/script/c65010561.lua
View file @
f3496c41
--友希兰
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
65010000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010561
)
function
cm
.
initial_effect
(
c
)
--local e1=rscf.SetSummonCondition(c,nil,rsval.spconbe)
...
...
expansions/script/c65010562.lua
View file @
f3496c41
--奥泽美咲的质疑
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010562
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
EVENT_CHAINING
,
nil
,{
1
,
m
,
1
},
"neg,des"
,
"dsp,dcal"
,
cm
.
con
,
nil
,
cm
.
tg
,
cm
.
act
)
...
...
expansions/script/c65010563.lua
View file @
f3496c41
--「触及梦想的瞬间」户山香澄
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010563
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
...
...
expansions/script/c65010564.lua
View file @
f3496c41
--星光歌剧 雪代晶Revue
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010564
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
FTO
(
c
,
EVENT_RELEASE
,{
m
,
0
},{
1
,
m
},
"sp"
,
"de"
,
LOCATION_HAND
,
cm
.
spcon
,
nil
,
rsop
.
target
(
rscf
.
spfilter2
(),
"sp"
),
cm
.
spop
)
local
e2
=
rsef
.
RegisterClone
(
c
,
e1
,
"code"
,
EVENT_TO_GRAVE
,
"c
on
"
,
cm
.
spcon2
)
local
e2
=
rsef
.
RegisterClone
(
c
,
e1
,
"code"
,
EVENT_TO_GRAVE
,
"c
trl
"
,
cm
.
spcon2
)
local
e3
=
rsef
.
SC
(
c
,
EVENT_SPSUMMON_SUCCESS
,
nil
,
nil
,
nil
,
cm
.
imcon
,
cm
.
imop
)
local
e4
=
rsef
.
QO
(
c
,
nil
,{
m
,
1
},{
1
,
m
+
100
},
"dis,atk"
,
"tg"
,
LOCATION_MZONE
,
nil
,
nil
,
rstg
.
target
(
cm
.
disfilter
,
"dis"
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
c
),
cm
.
disop
)
end
...
...
@@ -26,7 +26,7 @@ end
function
cm
.
imop
(
e
,
tp
)
local
c
=
e
:
GetHandler
()
rshint
.
Card
(
m
)
local
e1
=
rsef
.
FV_IMMUNE_EFFECT
({
c
,
tp
},
rsval
.
imng2
,
aux
.
TargetBoolFunction
(
Card
.
IsSetCard
,
0x9da0
),{
LOCATION_MZONE
,
0
},
nil
,
rsreset
.
pend
)
local
e1
=
rsef
.
FV_IMMUNE_EFFECT
({
c
,
tp
},
rsval
.
imn
t
g2
,
aux
.
TargetBoolFunction
(
Card
.
IsSetCard
,
0x9da0
),{
LOCATION_MZONE
,
0
},
nil
,
rsreset
.
pend
)
end
function
cm
.
disfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_EFFECT
)
...
...
expansions/script/c65010565.lua
0 → 100644
View file @
f3496c41
--天知骑士王 格拉姆灵王
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010565
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
c
:
EnableReviveLimit
(
c
)
aux
.
AddFusionProcCodeFun
(
c
,
65010558
,
cm
.
fusfilter
,
1
,
true
,
true
)
local
e3
=
rsef
.
QO
(
c
,
nil
,{
m
,
0
},{
1
,
m
},
"dr"
,
"ptg"
,
LOCATION_MZONE
,
cm
.
drcon
,
nil
,
rsop
.
target
(
1
,
"dr"
),
cm
.
drop
)
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e0
:
SetCode
(
EVENT_CHAINING
)
e0
:
SetRange
(
LOCATION_MZONE
)
e0
:
SetOperation
(
cm
.
creg
)
c
:
RegisterEffect
(
e0
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_CHAIN_SOLVING
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCondition
(
cm
.
discon1
)
e1
:
SetOperation
(
cm
.
disop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e2
:
SetCode
(
EVENT_CHAIN_SOLVING
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCondition
(
cm
.
discon2
)
e2
:
SetOperation
(
cm
.
disop
)
c
:
RegisterEffect
(
e2
)
e0
:
SetLabelObject
(
e2
)
if
cm
.
switch
then
return
end
cm
.
switch
=
{[
0
]
=
0
,[
1
]
=
0
}
local
ge1
=
rsef
.
FC
({
c
,
0
},
EVENT_CHAINING
)
ge1
:
SetOperation
(
cm
.
regop
)
local
ge2
=
rsef
.
FC
({
c
,
0
},
EVENT_CHAIN_NEGATED
)
ge2
:
SetOperation
(
cm
.
regop2
)
local
ge3
=
rsef
.
FC
({
c
,
0
},
EVENT_PHASE_START
+
PHASE_DRAW
)
ge3
:
SetOperation
(
cm
.
regop3
)
end
function
cm
.
fusfilter
(
c
,
fc
)
return
c
:
IsLevelAbove
(
5
)
and
c
:
IsRace
(
RACE_WYRM
)
end
function
cm
.
creg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
aux
.
chainreg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
GetLabelObject
():
SetLabel
(
0
)
local
res
=
false
for
i
=
1
,
ev
do
local
te
=
Duel
.
GetChainInfo
(
i
,
CHAININFO_TRIGGERING_EFFECT
)
if
te
:
GetCode
()
==
EVENT_SUMMON_SUCCESS
or
te
:
GetCode
()
==
EVENT_SPSUMMON_SUCCESS
then
res
=
true
end
end
if
res
then
e
:
GetLabelObject
():
SetLabel
(
100
)
end
end
function
cm
.
aclimit1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
then
cm
.
switch
[
rp
]
=
cm
.
switch
[
rp
]
+
1
end
end
function
cm
.
aclimit2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
then
cm
.
switch
[
rp
]
=
cm
.
switch
[
rp
]
-
1
end
end
function
cm
.
regop3
(
e
,
tp
)
cm
.
switch
=
{[
0
]
=
0
,[
1
]
=
0
}
end
function
cm
.
drcon
(
e
,
tp
)
return
rscon
.
phmp
(
e
,
tp
)
and
cm
.
switch
[
1
-
tp
]
>
0
end
function
cm
.
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
cm
.
discon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
e
:
GetHandler
():
GetFlagEffect
(
1
)
<=
0
then
return
false
end
local
te
,
loc
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TRIGGERING_EFFECT
,
CHAININFO_TRIGGERING_LOCATION
)
return
te
:
GetHandler
():
GetLocation
()
~=
loc
and
Duel
.
IsChainDisablable
(
ev
)
and
loc
&
LOCATION_ONFIELD
~=
0
end
function
cm
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
rshint
.
Card
(
m
)
Duel
.
NegateEffect
(
ev
)
end
function
cm
.
discon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
rp
~=
tp
and
Duel
.
IsChainNegatable
(
ev
)
and
e
:
GetLabel
()
==
100
end
\ No newline at end of file
expansions/script/c65010566.lua
0 → 100644
View file @
f3496c41
--天知胤龙 魔域幽灵龙
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010566
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
FTO
(
c
,
EVENT_TO_HAND
,{
m
,
0
},{
1
,
m
},
"sp"
,
"de"
,
LOCATION_HAND
,
cm
.
spcon
,
nil
,
rsop
.
target
({
rscf
.
spfilter2
(),
"sp"
},{
cm
.
spfilter
,
"sp"
,
rsloc
.
hd
}),
cm
.
spop
)
local
e2
=
rsef
.
SC
(
c
,
EVENT_TO_GRAVE
,
nil
,
nil
,
"cd"
,
nil
,
cm
.
regop
)
local
e3
=
rsef
.
RegisterClone
(
c
,
e2
,
"code"
,
EVENT_REMOVE
)
local
e4
=
rsef
.
FTO
(
c
,
EVENT_PHASE
+
PHASE_STANDBY
,{
m
,
1
},{
1
,
m
+
100
},
"td,des"
,
"tg"
,
rsloc
.
gr
,
cm
.
descon
,
nil
,
rstg
.
target
({
aux
.
TRUE
,
"des"
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
},
rsop
.
list
(
Card
.
IsAbleToDeck
,
"td"
,
LOCATION_REMOVED
)),
cm
.
desop
)
e2
:
SetLabelObject
(
e4
)
e3
:
SetLabelObject
(
e4
)
end
function
cm
.
cfilter
(
c
,
tp
)
return
c
:
GetReasonPlayer
()
~=
tp
end
function
cm
.
spcon
(
e
,
tp
,
eg
)
return
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
tp
)
end
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
1
and
rscf
.
spfilter2
(
Card
.
IsCode
,
65010558
)(
c
,
e
,
tp
)
and
not
rscon
.
bsdcheck
(
tp
)
end
function
cm
.
spop
(
e
,
tp
)
local
e1
=
rsef
.
FV_LIMIT_PLAYER
({
e
:
GetHandler
(),
tp
},
"sp"
,
nil
,
cm
.
tg
,{
1
,
0
},
nil
,
rsreset
.
pend
)
local
c
=
rscf
.
GetSelf
(
e
)
if
not
c
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<
2
or
rscon
.
bsdcheck
(
tp
)
then
return
end
rsop
.
SelectSolve
(
HINTMSG_SPSUMMON
,
tp
,
cm
.
spfilter
,
tp
,
rsloc
.
hd
,
0
,
1
,
1
,
c
,
cm
.
spfun
,
e
,
tp
)
end
function
cm
.
spfun
(
g
,
e
,
tp
)
local
tc
=
g
:
GetFirst
()
local
sg
=
rsgf
.
Mix2
(
tc
,
e
:
GetHandler
())
rssf
.
SpecialSummon
(
sg
)
return
true
end
function
cm
.
tg
(
e
,
c
)
return
c
:
IsLocation
(
LOCATION_EXTRA
)
and
not
c
:
IsType
(
TYPE_FUSION
)
end
function
cm
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
GetCurrentPhase
()
==
PHASE_STANDBY
then
e
:
GetLabelObject
():
SetLabel
(
Duel
.
GetTurnCount
())
c
:
RegisterFlagEffect
(
m
,
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
2
)
else
e
:
GetLabelObject
():
SetLabel
(
0
)
c
:
RegisterFlagEffect
(
m
,
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
1
)
end
end
function
cm
.
descon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
e
:
GetLabel
()
~=
Duel
.
GetTurnCount
()
and
tp
==
Duel
.
GetTurnPlayer
()
and
c
:
GetFlagEffect
(
m
)
>
0
end
function
cm
.
desop
(
e
,
tp
)
local
tc
=
rscf
.
GetTargetCard
()
if
rsop
.
SelectToDeck
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,{})
>
0
and
tc
then
Duel
.
Destroy
(
tc
,
REASON_EFFECT
)
end
end
\ No newline at end of file
expansions/script/c65010576.lua
0 → 100644
View file @
f3496c41
--天知之魔戒骑士
if
not
pcall
(
function
()
require
(
"expansions/script/c65010000"
)
end
)
then
require
(
"script/c65010000"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010576
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
},
"td,se,th"
,
nil
,
LOCATION_HAND
,
cm
.
thcon
,
nil
,
rsop
.
target
({
Card
.
IsAbleToDeck
,
"td"
,
LOCATION_HAND
},{
cm
.
thfilter
,
"th"
,
LOCATION_DECK
+
LOCATION_REMOVED
}),
cm
.
thop
)
local
e2
=
rsef
.
QO
(
c
,
nil
,{
m
,
1
},{
1
,
m
+
100
},
"sp,rm,fus"
,
nil
,
LOCATION_MZONE
,
nil
,
nil
,
cm
.
fustg
,
cm
.
fusop
)
end
function
cm
.
thcon
(
e
,
tp
)
return
not
e
:
GetHandler
():
IsPublic
()
end
function
cm
.
thfilter
(
c
)
return
not
c
:
IsCode
(
65010558
)
and
c
:
CheckSetCard
(
"TianZhi"
)
and
c
:
IsAbleToHand
()
and
c
:
RemovePosCheck
()
end
function
cm
.
thop
(
e
,
tp
)
if
rsop
.
SelectToDeck
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,{})
>
0
then
rsop
.
SelectToHand
(
tp
,
cm
.
thfilter
,
tp
,
LOCATION_DECK
+
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,{})
end
end
function
cm
.
mfilter0
(
c
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsAbleToRemove
()
end
function
cm
.
mfilter1
(
c
,
e
)
return
not
c
:
IsImmuneToEffect
(
e
)
end
function
cm
.
mfilter2
(
c
,
e
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsAbleToRemove
()
and
not
c
:
IsImmuneToEffect
(
e
)
end
function
cm
.
spfilter1
(
c
,
e
,
tp
,
m
,
f
,
chkf
)
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
CheckSetCard
(
"TianZhi"
)
and
(
not
f
or
f
(
c
))
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_FUSION
,
tp
,
false
,
false
)
and
c
:
CheckFusionMaterial
(
m
,
nil
,
chkf
)
end
function
cm
.
fustg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
local
res
=
false
local
chkf
=
tp
local
mg1
=
Duel
.
GetFusionMaterial
(
tp
)
local
mg2
=
Duel
.
GetMatchingGroup
(
cm
.
mfilter0
,
tp
,
LOCATION_GRAVE
,
0
,
nil
)
mg2
:
Merge
(
mg1
)
res
=
Duel
.
IsExistingMatchingCard
(
cm
.
spfilter1
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
,
mg2
,
nil
,
chkf
)
if
not
res
then
local
ce
=
Duel
.
GetChainMaterial
(
tp
)
if
ce
~=
nil
then
local
fgroup
=
ce
:
GetTarget
()
local
mg3
=
fgroup
(
ce
,
e
,
tp
)
local
mf
=
ce
:
GetValue
()
res
=
Duel
.
IsExistingMatchingCard
(
cm
.
spfilter1
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
,
mg3
,
mf
,
chkf
)
end
end
return
res
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
end
function
cm
.
fusop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
chkf
=
tp
local
mg1
=
Duel
.
GetFusionMaterial
(
tp
):
Filter
(
cm
.
mfilter1
,
nil
,
e
)
local
mg2
=
Duel
.
GetMatchingGroup
(
cm
.
mfilter2
,
tp
,
LOCATION_GRAVE
,
0
,
nil
,
e
)
mg2
:
Merge
(
mg1
)
local
sg1
=
Duel
.
GetMatchingGroup
(
cm
.
spfilter1
,
tp
,
LOCATION_EXTRA
,
0
,
nil
,
e
,
tp
,
mg2
,
nil
,
chkf
)
local
mg3
=
nil
local
sg3
=
nil
local
ce
=
Duel
.
GetChainMaterial
(
tp
)
if
ce
~=
nil
then
local
fgroup
=
ce
:
GetTarget
()
mg3
=
fgroup
(
ce
,
e
,
tp
)
local
mf
=
ce
:
GetValue
()
sg3
=
Duel
.
GetMatchingGroup
(
cm
.
spfilter1
,
tp
,
LOCATION_EXTRA
,
0
,
nil
,
e
,
tp
,
mg3
,
mf
,
chkf
)
end
if
sg1
:
GetCount
()
>
0
or
(
sg3
~=
nil
and
sg3
:
GetCount
()
>
0
)
then
local
sg
=
sg1
:
Clone
()
if
sg3
then
sg
:
Merge
(
sg3
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tg
=
sg
:
Select
(
tp
,
1
,
1
,
nil
)
local
tc
=
tg
:
GetFirst
()
if
sg1
:
IsContains
(
tc
)
and
(
sg3
==
nil
or
not
sg3
:
IsContains
(
tc
)
or
not
Duel
.
SelectYesNo
(
tp
,
ce
:
GetDescription
()))
then
local
mat1
=
Duel
.
SelectFusionMaterial
(
tp
,
tc
,
mg2
,
nil
,
chkf
)
tc
:
SetMaterial
(
mat1
)
local
mat2
=
mat1
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
mat1
:
Sub
(
mat2
)
Duel
.
SendtoGrave
(
mat1
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
)
Duel
.
Remove
(
mat2
,
POS_FACEUP
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
)
Duel
.
BreakEffect
()
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_FUSION
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
else
local
mat
=
Duel
.
SelectFusionMaterial
(
tp
,
tc
,
mg3
,
nil
,
chkf
)
local
fop
=
ce
:
GetOperation
()
fop
(
ce
,
e
,
tp
,
tc
,
mat
)
end
tc
:
CompleteProcedure
()
end
end
\ No newline at end of file
expansions/script/c65010577.lua
View file @
f3496c41
--粉彩调色板大革命☆
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010577
,
"TianZhi"
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
nil
,
nil
,
nil
,
"sp"
,
nil
,
cm
.
con
,
nil
,
rsop
.
target
(
cm
.
spfilter
,
"sp"
,
LOCATION_GRAVE
,
LOCATION_GRAVE
),
cm
.
act
)
...
...
expansions/script/c65010578.lua
View file @
f3496c41
--绝对宣言-独奏会-
if
not
pcall
(
function
()
require
(
"expansions/script/c650
99990"
)
end
)
then
require
(
"script/c6509999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c650
10000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010578
)
function
cm
.
initial_effect
(
c
)
local
e1
=
rsef
.
ACT
(
c
,
nil
,
nil
,{
1
,
m
,
1
},
"rm"
,
nil
,
nil
,
nil
,
cm
.
tg
,
cm
.
act
)
...
...
expansions/script/c65010579.lua
View file @
f3496c41
--绯红之夜的白月骑士
if
not
pcall
(
function
()
require
(
"expansions/script/c
10199990"
)
end
)
then
require
(
"script/c1019999
0"
)
end
if
not
pcall
(
function
()
require
(
"expansions/script/c
65010000"
)
end
)
then
require
(
"script/c6501000
0"
)
end
local
m
,
cm
=
rscf
.
DefineCard
(
65010579
,
"WMKnight"
)
if
rswk
then
return
end
rswk
=
cm
...
...
expansions/script/c65010585.lua
View file @
f3496c41
...
...
@@ -4,6 +4,7 @@ local m,cm=rscf.DefineCard(65010585)
function
cm
.
initial_effect
(
c
)
local
e2
=
rsef
.
STO
(
c
,
EVENT_SUMMON_SUCCESS
,{
m
,
1
},{
1
,
m
},
"dish,se,th"
,
"de"
,
rscon
.
sumtype
(
"adv"
),
nil
,
rsop
.
target
({
2
,
"dish"
},{
cm
.
thfilter
,
"th"
,
LOCATION_DECK
}),
cm
.
thop
)
local
e3
=
rsef
.
STO
(
c
,
EVENT_SUMMON_SUCCESS
,{
m
,
2
},{
1
,
m
},
"td,des"
,
"de"
,
rscon
.
sumtype
(
"adv"
),
nil
,
rsop
.
target2
(
cm
.
fun
,
cm
.
tdfilter
,
"td"
,
0
,
LOCATION_ONFIELD
),
cm
.
tdop
)
local
e4
=
rsef
.
STO
(
c
,
EVENT_SUMMON_SUCCESS
,{
m
,
3
},{
1
,
m
},
"dish,dr"
,
"de"
,
rscon
.
sumtype
(
"adv"
),
nil
,
rsop
.
target
({
cm
.
dishfilter
,
"dish"
,
LOCATION_HAND
,
0
,
1
},{
1
,
"dr"
}),
cm
.
drop
)
--summon with 1 tribute
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
...
...
@@ -48,4 +49,12 @@ function cm.tdop(e,tp)
rsop
.
SelectOC
(
nil
,
true
)
rsop
.
SelectDestroy
(
tp
,
aux
.
TRUE
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
1
,
nil
,{})
end
end
function
cm
.
dishfilter
(
c
)
return
c
:
IsDiscardable
(
REASON_EFFECT
)
and
c
:
IsSetCard
(
0x9da0
)
end
function
cm
.
drop
(
e
,
tp
)
if
rsop
.
SelectToGrave
(
tp
,
cm
.
dishfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,{
REASON_EFFECT
+
REASON_DISCARD
})
>
0
then
Duel
.
Draw
(
tp
,
1
,
REASON_EFFECT
)
end
end
\ No newline at end of file
expansions/script/c65010586.lua
View file @
f3496c41
...
...
@@ -77,8 +77,16 @@ function cm.negop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
cm
.
chainop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
SetChainLimit
(
cm
.
chainlm
)
if
not
rscon
.
excard2
(
Card
.
IsSetCard
,
LOCATION_MZONE
,
0
,
1
,
nil
,
0x9da0
)(
e
,
tp
)
then
Duel
.
SetChainLimit
(
cm
.
chainlm1
)
end
if
not
rscon
.
excard2
(
Card
.
IsSetCard
,
LOCATION_MZONE
,
0
,
1
,
nil
,
0x9da0
)(
e
,
1
-
tp
)
then
Duel
.
SetChainLimit
(
cm
.
chainlm2
)
end
end
function
cm
.
chainlm1
(
e
,
rp
,
tp
)
return
rp
~=
tp
end
function
cm
.
chainlm
(
e
,
rp
,
tp
)
return
not
rscon
.
excard2
(
Card
.
IsSetCard
,
LOCATION_MZONE
,
0
,
1
,
nil
,
0x9da0
)(
e
,
rp
)
function
cm
.
chainlm
2
(
e
,
rp
,
tp
)
return
rp
==
tp
end
expansions/script/c65010587.lua
View file @
f3496c41
...
...
@@ -5,14 +5,21 @@ function cm.initial_effect(c)
local
e1
=
rsef
.
ACT
(
c
)
local
e2
=
rsef
.
I
(
c
,{
m
,
0
},{
1
,
m
},
nil
,
nil
,
LOCATION_SZONE
,
nil
,
rscost
.
cost
(
cm
.
tgfilter
,
"tg"
,
rsloc
.
hd
),
nil
,
cm
.
limitop
)
local
e3
=
rsef
.
FV_INDESTRUCTABLE
(
c
,
"ct"
,
nil
,
aux
.
TargetBoolFunction
(
Card
.
IsSummonType
,
SUMMON_TYPE_ADVANCE
),{
LOCATION_MZONE
,
0
},
nil
,
nil
,
"sa"
)
local
e4
=
rsef
.
FTO
(
c
,
EVENT_PHASE
+
PHASE_END
,{
m
,
1
},{
1
,
m
+
100
},
nil
,
nil
,
LOCATION_SZONE
,
nil
,
nil
,
rsop
.
target
(
cm
.
setfilter
,
nil
,
LOCATION_GRAVE
),
cm
.
setop
)
local
e4
=
rsef
.
FTO
(
c
,
EVENT_PHASE
+
PHASE_END
,{
m
,
1
},{
1
,
m
+
100
},
nil
,
"tg"
,
LOCATION_SZONE
,
nil
,
nil
,
rstg
.
target
(
cm
.
setfilter
,
nil
,
LOCATION_GRAVE
),
cm
.
setop
)
end
function
cm
.
setfilter
(
c
)
return
c
:
IsSetCard
(
0x9da0
)
and
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
c
:
IsSSetable
()
end
function
cm
.
setop
(
e
,
tp
)
if
not
rscf
.
GetSelf
(
e
)
then
return
end
rsop
.
SelectSSet
(
tp
,
aux
.
NecroValleyFilter
(
cm
.
setfilter
),
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,{})
local
c
=
rscf
.
GetSelf
(
e
)
local
tc
=
rscf
.
GetTargetCard
()
if
not
c
or
not
tc
or
Duel
.
SSet
(
tp
,
tc
)
<=
0
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_LEAVE_FIELD_REDIRECT
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_REDIRECT
)
e1
:
SetValue
(
LOCATION_REMOVED
)
tc
:
RegisterEffect
(
e1
)
end
function
cm
.
tgfilter
(
c
)
return
c
:
IsSetCard
(
0x9da0
)
and
c
:
IsAbleToGraveAsCost
()
...
...
expansions/script/c65020140.lua
View file @
f3496c41
...
...
@@ -40,7 +40,7 @@ function c65020140.operation(e,tp,eg,ep,ev,re,r,rp)
end
function
c65020140
.
filter
(
c
,
tp
,
code
)
return
c
:
IsType
(
TYPE_SPIRIT
)
and
c
:
IsSummonable
(
true
,
nil
)
and
Duel
.
GetMZoneCount
(
tp
)
>
0
return
c
:
IsType
(
TYPE_SPIRIT
)
and
c
:
IsSummonable
(
true
,
nil
)
and
Duel
.
GetMZoneCount
(
tp
)
>
0
and
not
c
:
IsCode
()
end
function
c65020140
.
filter2
(
c
,
tp
)
return
c
:
IsSetCard
(
0x5da7
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToHand
()
and
Duel
.
IsExistingMatchingCard
(
c65020140
.
filter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
,
tp
,
c
:
GetCode
())
...
...
expansions/script/c65020179.lua
View file @
f3496c41
...
...
@@ -21,7 +21,7 @@ function c65020179.initial_effect(c)
c
:
RegisterEffect
(
e2
)
end
function
c65020179
.
costfil
(
c
)
return
(
c
:
IsSetCard
(
0x5da7
)
and
c
:
IsType
(
TYPE_SPIRIT
))
and
c
:
IsAbleToDeckAsCost
()
return
(
c
:
IsSetCard
(
0x5da7
)
or
c
:
IsType
(
TYPE_SPIRIT
))
and
c
:
IsAbleToDeckAsCost
()
end
function
c65020179
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToDeckAsCost
()
and
Duel
.
IsExistingMatchingCard
(
c65020179
.
costfil
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
e
:
GetHandler
())
end
...
...
expansions/script/c65030066.lua
View file @
f3496c41
...
...
@@ -106,7 +106,7 @@ function c65030066.tg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
nil
,
1
,
1
-
tp
,
LOCATION_GRAVE
+
LOCATION_EXTRA
)
end
function
c65030066
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c65030066
.
tgfil
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_EXTR
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c65030066
.
tgfil
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_EXTR
A
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
)
end
...
...
expansions/script/c65030083.lua
View file @
f3496c41
...
...
@@ -4,6 +4,8 @@ function c65030083.initial_effect(c)
--synchro summon
aux
.
AddSynchroMixProcedure
(
c
,
aux
.
NonTuner
(
c65030083
.
synfil
),
nil
,
nil
,
aux
.
Tuner
(
nil
),
1
,
99
)
c
:
EnableReviveLimit
()
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
,
false
)
--negate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_TODECK
+
CATEGORY_DRAW
+
CATEGORY_NEGATE
+
CATEGORY_SPECIAL_SUMMON
)
...
...
expansions/script/c65030084.lua
View file @
f3496c41
...
...
@@ -4,6 +4,8 @@ function c65030084.initial_effect(c)
--synchro summon
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
c65030084
.
synfil
),
2
)
c
:
EnableReviveLimit
()
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
,
false
)
--synchro summon success
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
65030084
,
0
))
...
...
expansions/script/c65060008.lua
View file @
f3496c41
...
...
@@ -52,7 +52,7 @@ function c65060008.tgtg(e,c)
return
c
:
GetMutualLinkedGroupCount
()
>
0
end
function
c65060008
.
efilter
(
e
,
re
,
rp
)
return
r
p
~=
e
:
GetHandlerPlayer
()
and
not
(
re
:
GetActivateLocation
()
==
LOCATION_HAND
or
re
:
GetActivateLocation
()
==
LOCATION_ONFIELD
)
return
r
e
:
GetOwnerPlayer
()
~=
e
:
GetOwnerPlayer
()
and
not
(
re
:
GetActivateLocation
()
==
LOCATION_HAND
or
bit
.
band
(
re
:
GetActivateLocation
(),
LOCATION_ONFIELD
)
==
re
:
GetActivateLocation
()
)
end
function
c65060008
.
spfil
(
c
,
e
,
tp
)
return
c
:
IsCode
(
65060008
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
...
...
expansions/script/c72404107.lua
View file @
f3496c41
...
...
@@ -88,7 +88,7 @@ function c72404107.activate(e,tp,eg,ep,ev,re,r,rp)
end
elseif
sel
==
4
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c72404107
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
5
,
5
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c72404107
.
filter
1
,
tp
,
LOCATION_GRAVE
,
0
,
5
,
5
,
nil
)
if
g
:
GetCount
()
==
5
then
if
Duel
.
SendtoDeck
(
g
,
REASON_EFFECT
)
~=
5
then
Duel
.
Draw
(
tp
,
1
,
REASON_EFFECT
)
...
...
expansions/script/c75646407.lua
View file @
f3496c41
--极北星辰 鹿乃
function
c75646407
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
aux
.
AddFusionProcFunRep
(
c
,
c75646407
.
spfilter
,
3
,
false
)
aux
.
AddContactFusionProcedure
(
c
,
Card
.
IsAbleToRemoveAsCost
,
LOCATION_HAND
+
LOCATION_GRAVE
,
0
,
Duel
.
Remove
,
POS_FACEUP
,
REASON_COST
)
--spsummon condition
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
@@ -8,14 +11,14 @@ function c75646407.initial_effect(c)
e1
:
SetValue
(
c75646407
.
splimit
)
c
:
RegisterEffect
(
e1
)
--special summon rule
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e2
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e2
:
SetRange
(
LOCATION_EXTRA
)
e2
:
SetCondition
(
c75646407
.
sprcon
)
e2
:
SetOperation
(
c75646407
.
sprop
)
c
:
RegisterEffect
(
e2
)
--
local e2=Effect.CreateEffect(c)
--
e2:SetType(EFFECT_TYPE_FIELD)
--
e2:SetCode(EFFECT_SPSUMMON_PROC)
--
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
--
e2:SetRange(LOCATION_EXTRA)
--
e2:SetCondition(c75646407.sprcon)
--
e2:SetOperation(c75646407.sprop)
--
c:RegisterEffect(e2)
--lv change
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
...
...
@@ -35,7 +38,8 @@ function c75646407.initial_effect(c)
e5
:
SetRange
(
LOCATION_GRAVE
)
e5
:
SetOperation
(
aux
.
chainreg
)
c
:
RegisterEffect
(
e5
)
local
e4
=
Effect
.
CreateEffect
(
c
)
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
75646407
,
1
))
e4
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e4
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e4
:
SetProperty
(
EFFECT_FLAG_DELAY
)
...
...
expansions/script/c81000000.lua
View file @
f3496c41
...
...
@@ -173,18 +173,18 @@ function Tenka.Einstein(c)
c
:
RegisterEffect
(
ea
)
if
not
Tenka
.
global_check
then
Tenka
.
global_check
=
true
local
ge
1
=
Effect
.
CreateEffect
(
c
)
ge
1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge
1
:
SetCode
(
EVENT_DAMAGE
)
ge
1
:
SetOperation
(
Tenka
.
checkop
)
Duel
.
RegisterEffect
(
ge
1
,
0
)
local
ge
a
=
Effect
.
CreateEffect
(
c
)
ge
a
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge
a
:
SetCode
(
EVENT_DAMAGE
)
ge
a
:
SetOperation
(
Tenka
.
checkop
)
Duel
.
RegisterEffect
(
ge
a
,
0
)
end
end
function
Tenka
.
rfcon
(
e
)
return
Duel
.
GetAttacker
()
==
e
:
GetHandler
()
or
Duel
.
GetAttackTarget
()
==
e
:
GetHandler
()
end
function
Tenka
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
ep
==
tp
and
bit
.
band
(
r
,
REASON_BATTLE
)
==
REASON_BATTLE
then
if
bit
.
band
(
r
,
REASON_BATTLE
)
~=
0
then
Duel
.
RegisterFlagEffect
(
ep
,
81024000
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
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