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
xiaoye
ygopro-222DIY-cards
Commits
9d811a0b
Commit
9d811a0b
authored
Jan 19, 2025
by
Huangnan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
459d1dec
Changes
26
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
961 additions
and
80 deletions
+961
-80
expansions/FiNALE.cdb
expansions/FiNALE.cdb
+0
-0
expansions/script/Yakumonue.lua
expansions/script/Yakumonue.lua
+1
-0
expansions/script/c16349053.lua
expansions/script/c16349053.lua
+1
-0
expansions/script/c16372019.lua
expansions/script/c16372019.lua
+1
-1
expansions/script/c16372020.lua
expansions/script/c16372020.lua
+1
-1
expansions/script/c16372030.lua
expansions/script/c16372030.lua
+208
-1
expansions/script/c16372035.lua
expansions/script/c16372035.lua
+208
-0
expansions/script/c16372040.lua
expansions/script/c16372040.lua
+115
-0
expansions/script/c16372045.lua
expansions/script/c16372045.lua
+120
-0
expansions/script/c17243036.lua
expansions/script/c17243036.lua
+3
-0
expansions/script/c17243046.lua
expansions/script/c17243046.lua
+1
-1
expansions/script/c18700007.lua
expansions/script/c18700007.lua
+1
-0
expansions/script/c18700194.lua
expansions/script/c18700194.lua
+3
-3
expansions/script/c18700544.lua
expansions/script/c18700544.lua
+3
-3
expansions/script/c18700548.lua
expansions/script/c18700548.lua
+1
-1
expansions/script/c18700552.lua
expansions/script/c18700552.lua
+3
-3
expansions/script/c23410007.lua
expansions/script/c23410007.lua
+1
-1
expansions/script/c52700700.lua
expansions/script/c52700700.lua
+2
-4
expansions/script/c52700706.lua
expansions/script/c52700706.lua
+7
-4
expansions/script/c81902106 (1).lua
expansions/script/c81902106 (1).lua
+240
-0
expansions/script/c81902106.lua
expansions/script/c81902106.lua
+21
-30
expansions/script/c81905002.lua
expansions/script/c81905002.lua
+6
-1
expansions/script/c81905017.lua
expansions/script/c81905017.lua
+1
-2
expansions/script/c81905018.lua
expansions/script/c81905018.lua
+9
-10
expansions/script/c81905020.lua
expansions/script/c81905020.lua
+3
-14
expansions/strings.conf
expansions/strings.conf
+1
-0
No files found.
expansions/FiNALE.cdb
View file @
9d811a0b
No preview for this file type
expansions/script/Yakumonue.lua
View file @
9d811a0b
expansions/script/c16349053.lua
View file @
9d811a0b
...
...
@@ -20,6 +20,7 @@ function c16349053.initial_effect(c)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetCountLimit
(
1
,
16349053
)
e2
:
SetTarget
(
c16349053
.
target
)
e2
:
SetOperation
(
c16349053
.
activate
)
c
:
RegisterEffect
(
e2
)
...
...
expansions/script/c16372019.lua
View file @
9d811a0b
...
...
@@ -56,7 +56,7 @@ function c16372019.ffilter(c,e,tp)
and
Duel
.
IsExistingMatchingCard
(
c16372019
.
spfilter
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
,
0
,
1
,
nil
,
c
,
e
,
tp
)
end
function
c16372019
.
spfilter
(
c
,
fc
,
e
,
tp
)
return
aux
.
Is
MaterialListCode
(
fc
,
c
:
GetCode
())
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
return
aux
.
Is
CodeListed
(
fc
,
c
:
GetCode
())
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingMatchingCard
(
c16372019
.
setfilter
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
,
0
,
1
,
nil
,
fc
,
c
:
GetCode
())
end
function
c16372019
.
setfilter
(
c
,
fc
,
code
)
...
...
expansions/script/c16372020.lua
View file @
9d811a0b
...
...
@@ -104,7 +104,7 @@ function c16372020.operation(e,tp,eg,ep,ev,re,r,rp)
Duel
.
BreakEffect
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tc
=
rg
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
Duel
.
SpecialSummon
Step
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
...
...
expansions/script/c16372030.lua
View file @
9d811a0b
--启灵元神 朝霞晖映
function
c16372030
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--spsummon condition
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_CONDITION
)
e0
:
SetValue
(
c16372030
.
splimit
)
c
:
RegisterEffect
(
e0
)
--counter
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
16372030
,
1
))
e1
:
SetCategory
(
CATEGORY_COUNTER
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetCode
(
EVENT_CHAINING
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCondition
(
c16372030
.
ctcon
)
e1
:
SetTarget
(
c16372030
.
cttg
)
e1
:
SetOperation
(
c16372030
.
ctop
)
c
:
RegisterEffect
(
e1
)
--negate activate
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
16372030
,
2
))
e2
:
SetCategory
(
CATEGORY_NEGATE
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_CHAINING
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e2
:
SetCountLimit
(
1
)
e2
:
SetCondition
(
c16372030
.
condition
)
e2
:
SetCost
(
c16372030
.
cost
)
e2
:
SetTarget
(
c16372030
.
target
)
e2
:
SetOperation
(
c16372030
.
operation
)
c
:
RegisterEffect
(
e2
)
--damage
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
16372030
,
3
))
e3
:
SetCategory
(
CATEGORY_DAMAGE
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
16372030
)
e3
:
SetCost
(
c16372030
.
damcost
)
e3
:
SetTarget
(
c16372030
.
damtg
)
e3
:
SetOperation
(
c16372030
.
damop
)
c
:
RegisterEffect
(
e3
)
--setself
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e4
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e4
:
SetCode
(
EVENT_LEAVE_FIELD
)
e4
:
SetCountLimit
(
1
,
16372030
+
1
)
e4
:
SetCondition
(
c16372030
.
setscon
)
e4
:
SetTarget
(
c16372030
.
setstg
)
e4
:
SetOperation
(
c16372030
.
setsop
)
c
:
RegisterEffect
(
e4
)
--ritual summon
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_TOGRAVE
)
e5
:
SetType
(
EFFECT_TYPE_IGNITION
)
e5
:
SetRange
(
LOCATION_SZONE
)
e5
:
SetCountLimit
(
1
,
16372030
)
e5
:
SetCondition
(
c16372030
.
spellcon
)
e5
:
SetTarget
(
c16372030
.
tg1
)
e5
:
SetOperation
(
c16372030
.
op1
)
c
:
RegisterEffect
(
e5
)
end
function
c16372030
.
splimit
(
e
,
se
,
sp
,
st
)
return
se
:
GetHandler
():
IsSetCard
(
0xdc1
)
end
function
c16372030
.
ctcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
re
:
IsActiveType
(
TYPE_MONSTER
)
and
rp
==
1
-
tp
end
function
c16372030
.
ctfilter
(
c
)
return
c
:
IsCanAddCounter
(
0x3dc1
,
1
)
and
c
:
GetCounter
(
0x3dc1
)
<
3
end
function
c16372030
.
cttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c16372030
.
ctfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
end
function
c16372030
.
ctop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
c16372030
.
ctfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
):
GetFirst
()
if
tc
and
tc
:
AddCounter
(
0x3dc1
,
1
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetCode
(
EFFECT_UNRELEASABLE_SUM
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e1
:
SetCondition
(
c16372030
.
con
)
e1
:
SetValue
(
1
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_UNRELEASABLE_NONSUM
)
tc
:
RegisterEffect
(
e2
)
local
e3
=
e1
:
Clone
()
e3
:
SetCode
(
EFFECT_CANNOT_BE_FUSION_MATERIAL
)
e3
:
SetValue
(
c16372030
.
fuslimit
)
tc
:
RegisterEffect
(
e3
)
local
e4
=
e1
:
Clone
()
e4
:
SetCode
(
EFFECT_CANNOT_BE_SYNCHRO_MATERIAL
)
tc
:
RegisterEffect
(
e4
)
local
e5
=
e1
:
Clone
()
e5
:
SetCode
(
EFFECT_CANNOT_BE_XYZ_MATERIAL
)
tc
:
RegisterEffect
(
e5
)
local
e6
=
e1
:
Clone
()
e6
:
SetCode
(
EFFECT_CANNOT_BE_LINK_MATERIAL
)
tc
:
RegisterEffect
(
e6
)
end
end
function
c16372030
.
con
(
e
)
return
e
:
GetHandler
():
GetCounter
(
0x3dc1
)
>=
3
end
function
c16372030
.
fuslimit
(
e
,
c
,
sumtype
)
return
sumtype
==
SUMMON_TYPE_FUSION
end
function
c16372030
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
loc
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TRIGGERING_LOCATION
)
return
not
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
and
ep
~=
tp
and
loc
==
LOCATION_MZONE
and
re
:
IsActiveType
(
TYPE_MONSTER
)
and
Duel
.
IsChainNegatable
(
ev
)
end
function
c16372030
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsCanRemoveCounter
(
tp
,
1
,
1
,
0x3dc1
,
1
,
REASON_COST
)
end
Duel
.
RemoveCounter
(
tp
,
1
,
1
,
0x3dc1
,
1
,
REASON_COST
)
end
function
c16372030
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_NEGATE
,
eg
,
1
,
0
,
0
)
end
function
c16372030
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
NegateActivation
(
ev
)
end
function
c16372030
.
damfilter
(
c
)
return
c
:
GetCounter
(
0x3dc1
)
>
0
end
function
c16372030
.
damcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCounter
(
tp
,
1
,
1
,
0x3dc1
)
>
0
end
local
g
=
Duel
.
GetMatchingGroup
(
c16372030
.
damfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
nil
)
local
tc
=
g
:
GetFirst
()
local
sum
=
0
while
tc
do
local
sct
=
tc
:
GetCounter
(
0x3dc1
)
tc
:
RemoveCounter
(
tp
,
0x3dc1
,
sct
,
0
)
sum
=
sum
+
sct
tc
=
g
:
GetNext
()
end
e
:
SetLabel
(
sum
)
end
function
c16372030
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
local
ct
=
e
:
GetLabel
()
Duel
.
SetTargetPlayer
(
1
-
tp
)
Duel
.
SetTargetParam
(
ct
*
300
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
ct
*
300
)
end
function
c16372030
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
end
function
c16372030
.
setscon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_MZONE
)
end
function
c16372030
.
setstg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
end
function
c16372030
.
setsop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<
1
then
return
end
if
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCode
(
EFFECT_CHANGE_TYPE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
)
e1
:
SetValue
(
TYPE_SPELL
+
TYPE_CONTINUOUS
)
c
:
RegisterEffect
(
e1
)
end
end
function
c16372030
.
spellcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetType
()
==
TYPE_SPELL
+
TYPE_CONTINUOUS
end
function
c16372030
.
tgfilter
(
c
)
return
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsFaceupEx
()
and
c
:
GetOriginalLevel
()
>
0
and
c
:
IsAbleToGrave
()
end
function
c16372030
.
tg1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
mg
=
Duel
.
GetMatchingGroup
(
c16372030
.
tgfilter
,
tp
,
LOCATION_HAND
+
LOCATION_ONFIELD
,
0
,
c
)
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_RITUAL
,
tp
,
false
,
true
)
and
mg
:
CheckWithSumEqual
(
Card
.
GetLevel
,
9
,
1
,
99
,
c
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c16372030
.
op1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
local
mg
=
Duel
.
GetMatchingGroup
(
c16372030
.
tgfilter
,
tp
,
LOCATION_HAND
+
LOCATION_ONFIELD
,
0
,
c
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
aux
.
GCheckAdditional
=
aux
.
RitualCheckAdditional
(
c
,
9
,
"Equal"
)
local
mat
=
mg
:
SelectSubGroup
(
tp
,
aux
.
RitualCheck
,
false
,
1
,
9
,
tp
,
c
,
9
,
"Equal"
)
aux
.
GCheckAdditional
=
nil
c
:
SetMaterial
(
mat
)
if
Duel
.
SendtoGrave
(
mat
,
0x40
)
>
0
then
Duel
.
BreakEffect
()
Duel
.
SpecialSummon
(
c
,
SUMMON_TYPE_RITUAL
,
tp
,
tp
,
false
,
true
,
POS_FACEUP
)
c
:
CompleteProcedure
()
end
end
\ No newline at end of file
expansions/script/c16372035.lua
0 → 100644
View file @
9d811a0b
--启灵元神 未来战姬
function
c16372035
.
initial_effect
(
c
)
aux
.
EnablePendulumAttribute
(
c
)
--splimit
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_SPSUMMON_CONDITION
)
e0
:
SetValue
(
c16372035
.
splimit
)
c
:
RegisterEffect
(
e0
)
--special summon
local
e00
=
Effect
.
CreateEffect
(
c
)
e00
:
SetType
(
EFFECT_TYPE_FIELD
)
e00
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e00
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e00
:
SetRange
(
LOCATION_HAND
)
e00
:
SetCondition
(
c16372035
.
sprcon
)
e00
:
SetTarget
(
c16372035
.
sprtg
)
e00
:
SetOperation
(
c16372035
.
sprop
)
c
:
RegisterEffect
(
e00
)
--indes
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_COUNT
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetTargetRange
(
LOCATION_ONFIELD
,
0
)
e1
:
SetTarget
(
c16372035
.
indtg
)
e1
:
SetValue
(
c16372035
.
indct
)
c
:
RegisterEffect
(
e1
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_PZONE
)
e2
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_ATTACK
+
TIMING_END_PHASE
)
e2
:
SetCountLimit
(
1
,
16372035
)
e2
:
SetCost
(
c16372035
.
scost
)
e2
:
SetTarget
(
c16372035
.
stg
)
e2
:
SetOperation
(
c16372035
.
sop
)
c
:
RegisterEffect
(
e2
)
--to deck
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
16372035
,
0
))
e3
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e3
:
SetCountLimit
(
1
,
16372035
+
1
)
e3
:
SetCost
(
c16372035
.
spcost
)
e3
:
SetTarget
(
c16372035
.
sptg
)
e3
:
SetOperation
(
c16372035
.
spop
)
c
:
RegisterEffect
(
e3
)
--setself
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e4
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e4
:
SetCode
(
EVENT_LEAVE_FIELD
)
e4
:
SetCountLimit
(
1
,
16372035
+
2
)
e4
:
SetCondition
(
c16372035
.
setscon
)
e4
:
SetTarget
(
c16372035
.
setstg
)
e4
:
SetOperation
(
c16372035
.
setsop
)
c
:
RegisterEffect
(
e4
)
--extra attack
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetDescription
(
aux
.
Stringid
(
16372035
,
1
))
e5
:
SetCategory
(
CATEGORY_TOHAND
)
e5
:
SetType
(
EFFECT_TYPE_IGNITION
)
e5
:
SetRange
(
LOCATION_SZONE
)
e5
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e5
:
SetCountLimit
(
1
)
e5
:
SetCondition
(
c16372035
.
spellcon
)
e5
:
SetTarget
(
c16372035
.
attg
)
e5
:
SetOperation
(
c16372035
.
atop
)
c
:
RegisterEffect
(
e5
)
end
function
c16372035
.
sprlimit
(
e
,
se
,
sp
,
st
)
return
se
:
IsHasType
(
EFFECT_TYPE_ACTIONS
)
end
function
c16372035
.
sprcon
(
e
,
c
)
if
c
==
nil
then
return
true
end
return
Duel
.
GetLocationCount
(
c
:
GetControler
(),
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c16372035
.
sfilter
,
c
:
GetControler
(),
LOCATION_SZONE
,
0
,
3
,
c
)
end
function
c16372035
.
sprtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
c
)
local
g
=
Duel
.
GetMatchingGroup
(
c16372035
.
sfilter
,
tp
,
LOCATION_SZONE
,
0
,
c
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
sg
=
g
:
CancelableSelect
(
tp
,
3
,
3
,
nil
)
if
sg
then
sg
:
KeepAlive
()
e
:
SetLabelObject
(
sg
)
return
true
else
return
false
end
end
function
c16372035
.
sprop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
local
g
=
e
:
GetLabelObject
()
Duel
.
SendtoGrave
(
g
,
REASON_SPSUMMON
)
end
function
c16372035
.
indtg
(
e
,
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0xdc1
)
end
function
c16372035
.
indct
(
e
,
re
,
r
,
rp
)
if
bit
.
band
(
r
,
REASON_EFFECT
)
~=
0
then
return
1
else
return
0
end
end
function
c16372035
.
sfilter
(
c
)
return
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToGraveAsCost
()
and
c
:
GetOriginalType
()
&
0x1
>
0
and
c
:
GetSequence
()
<
5
end
function
c16372035
.
scost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c16372035
.
sfilter
,
tp
,
LOCATION_SZONE
,
0
,
3
,
c
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c16372035
.
sfilter
,
tp
,
LOCATION_SZONE
,
0
,
3
,
3
,
c
)
Duel
.
SendtoGrave
(
g
,
REASON_COST
)
end
function
c16372035
.
stg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
true
,
true
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c16372035
.
sop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP
)
c
:
CompleteProcedure
()
end
function
c16372035
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
GetBattledGroupCount
()
==
0
and
c
:
IsReleasable
()
end
Duel
.
Release
(
c
,
REASON_COST
)
end
function
c16372035
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsFaceupEx
()
and
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
c
:
IsLevelAbove
(
1
)
end
function
c16372035
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c16372035
.
spfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
nil
,
e
,
tp
)
if
chk
==
0
then
return
g
:
CheckWithSumEqual
(
Card
.
GetLevel
,
9
,
1
,
9
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
)
end
function
c16372035
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NecroValleyFilter
(
c16372035
.
spfilter
),
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
0
,
nil
,
e
,
tp
)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
ft
<=
0
then
return
end
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
ft
=
1
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
g
:
SelectWithSumEqual
(
tp
,
Card
.
GetLevel
,
9
,
1
,
ft
)
if
sg
and
sg
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c16372035
.
setscon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_MZONE
)
end
function
c16372035
.
setstg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
end
function
c16372035
.
setsop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<
1
then
return
end
if
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCode
(
EFFECT_CHANGE_TYPE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
)
e1
:
SetValue
(
TYPE_SPELL
+
TYPE_CONTINUOUS
)
c
:
RegisterEffect
(
e1
)
end
end
function
c16372035
.
spellcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetType
()
==
TYPE_SPELL
+
TYPE_CONTINUOUS
and
aux
.
bpcon
(
e
)
end
function
c16372035
.
atfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0xdc1
)
end
function
c16372035
.
cspellfilter
(
c
)
return
c
:
GetType
()
&
(
TYPE_SPELL
+
TYPE_CONTINUOUS
)
==
TYPE_SPELL
+
TYPE_CONTINUOUS
and
c
:
IsFaceup
()
end
function
c16372035
.
attg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
g
=
Duel
.
GetMatchingGroup
(
c16372035
.
cspellfilter
,
tp
,
LOCATION_SZONE
,
0
,
nil
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c16372035
.
tgfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c16372035
.
atfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
e
:
GetHandler
():
IsAbleToHand
()
and
#
g
>
1
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarget
(
tp
,
c16372035
.
atfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c16372035
.
atop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c16372035
.
cspellfilter
,
tp
,
LOCATION_SZONE
,
0
,
nil
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_EXTRA_ATTACK_MONSTER
)
e1
:
SetValue
(
#
g
-
1
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
BreakEffect
()
Duel
.
SendtoHand
(
c
,
nil
,
0x40
)
end
end
end
\ No newline at end of file
expansions/script/c16372040.lua
0 → 100644
View file @
9d811a0b
--花信物语 四季的誓言
function
c16372040
.
initial_effect
(
c
)
c
:
SetUniqueOnField
(
1
,
0
,
16372040
)
--activate
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e0
:
SetCode
(
EVENT_FREE_CHAIN
)
c
:
RegisterEffect
(
e0
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
16372040
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_SZONE
)
e1
:
SetCountLimit
(
1
,
16372040
)
e1
:
SetCondition
(
c16372040
.
condition
)
e1
:
SetCost
(
c16372040
.
costoath
)
e1
:
SetTarget
(
c16372040
.
target
)
e1
:
SetOperation
(
c16372040
.
activate
)
c
:
RegisterEffect
(
e1
)
--to field
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
16372040
,
1
))
e2
:
SetCategory
(
CATEGORY_LEAVE_GRAVE
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetCountLimit
(
1
,
16372040
+
1
)
e2
:
SetCost
(
c16372040
.
costoath
)
e2
:
SetTarget
(
c16372040
.
target2
)
e2
:
SetOperation
(
c16372040
.
activate2
)
c
:
RegisterEffect
(
e2
)
Duel
.
AddCustomActivityCounter
(
16372040
,
ACTIVITY_SPSUMMON
,
c16372040
.
counterfilter
)
end
function
c16372040
.
counterfilter
(
c
)
return
c
:
IsRace
(
RACE_PLANT
)
end
function
c16372040
.
costoath
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCustomActivityCount
(
16372040
,
tp
,
ACTIVITY_SPSUMMON
)
==
0
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c16372040
.
splimitoath
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c16372040
.
splimitoath
(
e
,
c
)
return
not
c
:
IsRace
(
RACE_PLANT
)
end
function
c16372040
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0xdc1
)
and
c
:
GetOriginalType
()
&
0x1
>
0
and
c
:
GetSequence
()
<
5
end
function
c16372040
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
c16372040
.
cfilter
,
tp
,
LOCATION_SZONE
,
0
,
3
,
nil
)
end
function
c16372040
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
c
:
GetSequence
()
<
5
end
function
c16372040
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c16372040
.
spfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
0
,
LOCATION_SZONE
)
end
function
c16372040
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c16372040
.
spfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c16372040
.
filter
(
c
)
return
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
not
c
:
IsForbidden
()
end
function
c16372040
.
target2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
c16372040
.
filter
(
chkc
)
end
if
chk
==
0
then
if
not
Duel
.
IsExistingTarget
(
c16372040
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
then
return
false
end
if
e
:
GetHandler
():
IsLocation
(
LOCATION_HAND
)
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
>
1
else
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
>
0
end
end
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
if
ft
>
2
then
ft
=
2
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c16372040
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
ft
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
g
:
GetCount
(),
0
,
0
)
end
function
c16372040
.
activate2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
if
ft
<=
0
then
return
end
local
g
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_CARDS
)
local
sg
=
g
:
Filter
(
Card
.
IsRelateToEffect
,
nil
,
e
)
if
sg
:
GetCount
()
>
0
then
if
sg
:
GetCount
()
>
ft
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
rg
=
sg
:
Select
(
tp
,
ft
,
ft
,
nil
)
sg
=
rg
end
local
tc
=
sg
:
GetFirst
()
while
tc
do
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetCode
(
EFFECT_CHANGE_TYPE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
)
e1
:
SetValue
(
TYPE_SPELL
+
TYPE_CONTINUOUS
)
tc
:
RegisterEffect
(
e1
)
tc
=
sg
:
GetNext
()
end
end
end
\ No newline at end of file
expansions/script/c16372045.lua
0 → 100644
View file @
9d811a0b
--花信物语 神启者
function
c16372045
.
initial_effect
(
c
)
--activate
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e0
:
SetCode
(
EVENT_FREE_CHAIN
)
c
:
RegisterEffect
(
e0
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
16372045
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetRange
(
LOCATION_SZONE
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
16372045
)
e1
:
SetCost
(
c16372045
.
costoath
)
e1
:
SetTarget
(
c16372045
.
target
)
e1
:
SetOperation
(
c16372045
.
activate
)
c
:
RegisterEffect
(
e1
)
--copy
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
16372045
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetCountLimit
(
1
,
16372045
)
e2
:
SetHintTiming
(
TIMINGS_CHECK_MONSTER
+
TIMING_CHAIN_END
+
TIMING_END_PHASE
)
e2
:
SetCost
(
c16372045
.
costoath
)
e2
:
SetTarget
(
c16372045
.
target2
)
e2
:
SetOperation
(
c16372045
.
operation2
)
c
:
RegisterEffect
(
e2
)
Duel
.
AddCustomActivityCounter
(
16372045
,
ACTIVITY_SPSUMMON
,
c16372045
.
counterfilter
)
end
function
c16372045
.
counterfilter
(
c
)
return
c
:
IsRace
(
RACE_PLANT
)
end
function
c16372045
.
costoath
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetCustomActivityCount
(
16372045
,
tp
,
ACTIVITY_SPSUMMON
)
==
0
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_OATH
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c16372045
.
splimitoath
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
c16372045
.
splimitoath
(
e
,
c
)
return
not
c
:
IsRace
(
RACE_PLANT
)
end
function
c16372045
.
setfilter
(
c
)
return
c
:
IsSetCard
(
0xdc1
)
and
not
c
:
IsForbidden
()
end
function
c16372045
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsSetCard
(
0xdc1
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
c
:
GetSequence
()
<
5
end
function
c16372045
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c16372045
.
setfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
>
0
and
Duel
.
IsExistingTarget
(
c16372045
.
spfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOFIELD
)
local
g1
=
Duel
.
SelectTarget
(
tp
,
c16372045
.
setfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g2
=
Duel
.
SelectTarget
(
tp
,
c16372045
.
spfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
1
,
nil
,
e
,
tp
)
g1
:
Merge
(
g2
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g2
,
1
,
0
,
0
)
end
function
c16372045
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetTargetsRelateToChain
()
local
tc
=
g
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
):
GetFirst
()
local
sc
=
g
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_SZONE
):
GetFirst
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
<
1
then
return
end
if
tc
and
Duel
.
MoveToField
(
tc
,
tp
,
tp
,
LOCATION_SZONE
,
POS_FACEUP
,
true
)
then
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetCode
(
EFFECT_CHANGE_TYPE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
)
e1
:
SetValue
(
TYPE_SPELL
+
TYPE_CONTINUOUS
)
tc
:
RegisterEffect
(
e1
)
if
sc
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
then
Duel
.
SpecialSummon
(
sc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
function
c16372045
.
filter
(
c
)
return
c
:
IsType
(
0x6
)
and
c
:
IsSetCard
(
0xdc1
)
and
not
c
:
IsCode
(
16372045
)
and
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
c16372045
.
target2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
local
te
=
e
:
GetLabelObject
()
local
tg
=
te
:
GetTarget
()
return
tg
and
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
,
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c16372045
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
e
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c16372045
.
filter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
local
te
,
ceg
,
cep
,
cev
,
cre
,
cr
,
crp
=
g
:
GetFirst
():
CheckActivateEffect
(
false
,
true
,
true
)
Duel
.
ClearTargetCard
()
g
:
GetFirst
():
CreateEffectRelation
(
e
)
local
tg
=
te
:
GetTarget
()
e
:
SetProperty
(
te
:
GetProperty
())
if
tg
then
tg
(
e
,
tp
,
ceg
,
cep
,
cev
,
cre
,
cr
,
crp
,
1
)
end
te
:
SetLabelObject
(
e
:
GetLabelObject
())
e
:
SetLabelObject
(
te
)
Duel
.
ClearOperationInfo
(
0
)
end
function
c16372045
.
operation2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
te
=
e
:
GetLabelObject
()
if
not
te
then
return
end
local
tc
=
te
:
GetHandler
()
if
not
tc
:
IsRelateToEffect
(
e
)
then
return
end
e
:
SetLabelObject
(
te
:
GetLabelObject
())
local
op
=
te
:
GetOperation
()
if
op
then
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
end
\ No newline at end of file
expansions/script/c17243036.lua
View file @
9d811a0b
...
...
@@ -52,6 +52,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
local
e1
=
Effect
.
CreateEffect
(
tc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetReset
(
0
,
1
)
e1
:
SetValue
(
1000
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
...
...
@@ -63,6 +64,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
e4
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e4
:
SetRange
(
0xff
)
e4
:
SetCode
(
EFFECT_CANNOT_BE_EFFECT_TARGET
)
e4
:
SetReset
(
0
,
1
)
e4
:
SetValue
(
aux
.
tgoval
)
tc
:
RegisterEffect
(
e4
)
--no damage
...
...
@@ -71,6 +73,7 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
e3
:
SetCode
(
EFFECT_AVOID_BATTLE_DAMAGE
)
e3
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetReset
(
0
,
1
)
e3
:
SetValue
(
1
)
tc
:
RegisterEffect
(
e3
)
tc
:
RegisterFlagEffect
(
id
,
0
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
id
,
0
))
...
...
expansions/script/c17243046.lua
View file @
9d811a0b
...
...
@@ -17,7 +17,7 @@ function s.initial_effect(c)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetTargetRange
(
LOCATION_MZONE
,
0
)
e2
:
SetTarget
(
s
.
tg
)
e2
:
SetValue
(
6
00
)
e2
:
SetValue
(
8
00
)
c
:
RegisterEffect
(
e2
)
--immune
local
e3
=
Effect
.
CreateEffect
(
c
)
...
...
expansions/script/c18700007.lua
View file @
9d811a0b
...
...
@@ -47,6 +47,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
and
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
>
0
then
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
if
Duel
.
GetMZoneCount
(
tp
,
c
)
<=
0
or
Duel
.
IsExistingMatchingCard
(
cm
.
filter3
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
then
return
end
if
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
cm
.
filter2
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
1
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
expansions/script/c18700194.lua
View file @
9d811a0b
--奇物-55 神秘学教典仪
local
m
=
18700194
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"1.lua"
)
xpcall
(
function
()
require
(
"expansions/script/1"
)
end
,
function
()
require
(
"script/1"
)
end
)
function
cm
.
initial_effect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
...
...
@@ -75,7 +75,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
e3
:
SetCode
(
EFFECT_QP_ACT_IN_SET_TURN
)
e3
:
SetTargetRange
(
LOCATION_SZONE
,
0
)
e3
:
Reset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
2
)
Duel
.
RegisterEffect
(
e
3
,
tp
)
Duel
.
RegisterEffect
(
e
2
,
tp
)
end
function
cm
.
tftg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
>
0
end
...
...
@@ -132,4 +132,4 @@ function cm.retop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
ConfirmCards
(
1
-
tp
,
c
)
Duel
.
Recover
(
tp
,
500
,
REASON_EFFECT
)
end
end
end
\ No newline at end of file
expansions/script/c18700544.lua
View file @
9d811a0b
...
...
@@ -114,10 +114,10 @@ function cm.effcon(e,tp,eg,ep,ev,re,r,rp)
return
eg
:
IsExists
(
cm
.
effilter
,
1
,
nil
,
tp
)
end
function
cm
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_
GRAVE
)
and
chkc
:
IsAbleToDeck
(
)
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_
MZONE
)
end
if
chk
==
0
then
return
true
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_
TODECK
)
local
g
=
Duel
.
SelectTarget
(
tp
,
cm
.
thfilter2
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_
OPERATECARD
)
local
g
=
Duel
.
SelectTarget
(
tp
,
cm
.
thfilter2
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
)
end
function
cm
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
...
...
expansions/script/c18700548.lua
View file @
9d811a0b
...
...
@@ -136,7 +136,7 @@ function cm.target2(e,tp,eg,ep,ev,re,r,rp,chk)
return
res
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
nil
,
1
,
tp
,
LOCATION_
ONFIELD
+
LOCATION_GRAV
E
+
LOCATION_REMOVED
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
nil
,
1
,
tp
,
LOCATION_
HAND
+
LOCATION_MZON
E
+
LOCATION_REMOVED
)
end
function
cm
.
activate2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
chkf
=
tp
...
...
expansions/script/c18700552.lua
View file @
9d811a0b
...
...
@@ -115,9 +115,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local
ec
=
re
:
GetHandler
()
if
Duel
.
NegateActivation
(
ev
)
and
ec
:
IsRelateToEffect
(
re
)
then
ec
:
CancelToGrave
()
if
Duel
.
Remove
(
ec
,
POS_FACEUP
,
REASON_EFFECT
)
~=
0
and
ec
:
IsLocation
(
LOCATION_REMOVED
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
1
))
and
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
then
if
Duel
.
Remove
(
ec
,
POS_FACEUP
,
REASON_EFFECT
)
~=
0
and
Duel
.
IsExistingMatchingCard
(
cm
.
cfilter
,
tp
,
LOCATION_DECK
+
LOCATION_EXTRA
,
0
,
1
,
nil
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
1
)
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
cfilter
,
tp
,
LOCATION_DECK
+
LOCATION_
REMOVED
,
0
,
1
,
1
,
nil
):
GetFirst
()
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
cfilter
,
tp
,
LOCATION_DECK
+
LOCATION_
EXTRA
,
0
,
1
,
1
,
nil
):
GetFirst
()
if
tc
then
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_EFFECT
)
end
...
...
@@ -160,7 +160,7 @@ function cm.activate2(e,tp,eg,ep,ev,re,r,rp)
tc
:
RegisterEffect
(
e9
)
if
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
3
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
aux
.
Stringid
(
m
,
4
))
local
zc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
cfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
):
GetFirst
()
local
zc
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
cfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
):
GetFirst
()
Duel
.
HintSelection
(
Group
.
FromCards
(
zc
))
zc
:
RegisterFlagEffect
(
18700544
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
...
...
expansions/script/c23410007.lua
View file @
9d811a0b
...
...
@@ -110,5 +110,5 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp)
end
Duel
.
ShuffleDeck
(
tp
)
end
end
e
lse
Duel
.
Draw
(
tp
,
1
,
REASON_EFFECT
)
e
nd
end
\ No newline at end of file
expansions/script/c52700700.lua
View file @
9d811a0b
...
...
@@ -15,10 +15,9 @@ function s.x(c)
--add illusionist
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
2
)
e3
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_TOHAND
+
CATEGORY_TOGRAVE
)
e3
:
SetCategory
(
CATEGORY_
TOHAND
+
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_GRAVE_SPSUMMON
+
CATEGORY_GRAVE_ACTION
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e3
:
SetCode
(
EVENT_BE_MATERIAL
)
e3
:
SetCountLimit
(
1
,
id
)
e3
:
SetCode
(
EVENT_LEAVE_FIELD
)
e3
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e3
:
SetCondition
(
s
.
drcon1
)
e3
:
SetTarget
(
s
.
drtg
)
...
...
@@ -37,7 +36,6 @@ function s.drfilter(c,e,tp)
end
function
s
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
drfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_GRAVE
)
end
function
s
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SELECT
)
...
...
expansions/script/c52700706.lua
View file @
9d811a0b
...
...
@@ -31,16 +31,19 @@ end
function
s
.
opcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
s
.
opcfilter
,
1
,
nil
)
end
function
s
.
opfilter
(
c
)
return
c
:
IsAbleToDeck
()
and
c
:
IsFaceupEx
()
end
function
s
.
optg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDraw
(
tp
,
1
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
g
,
1
,
0
,
0
)
and
Duel
.
IsExistingMatchingCard
(
s
.
opfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
s
.
opfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
nil
,
1
,
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
1
)
end
function
s
.
opop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
s
.
opfilter
),
tp
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
LOCATION_GRAVE
+
LOCATION_REMOVED
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
and
Duel
.
SendtoDeck
(
g
,
nil
,
SEQ_DECKBOTTOM
,
REASON_EFFECT
)
~=
0
then
Duel
.
BreakEffect
()
Duel
.
Draw
(
tp
,
1
,
REASON_EFFECT
)
...
...
expansions/script/c81902106 (1).lua
0 → 100644
View file @
9d811a0b
--TC.105 隐匿于幕后的禁忌门扉 摩多罗隐岐奈
local
m
=
81902106
local
cm
=
_G
[
"c"
..
m
]
Duel
.
LoadScript
(
"Yakumonue.lua"
)
cm
.
TC_number
=
105
function
cm
.
initial_effect
(
c
)
aux
.
AddCodeList
(
c
,
81902000
)
--xyz summon
aux
.
AddXyzProcedure
(
c
,
nil
,
8
,
3
,
cm
.
ovfilter
,
aux
.
Stringid
(
m
,
0
),
3
,
cm
.
xyzop
)
c
:
EnableReviveLimit
()
--exsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
1
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_GRAVE_SPSUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetCountLimit
(
1
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCost
(
cm
.
cost
)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
operation
)
c
:
RegisterEffect
(
e1
)
--remove
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
2
))
e2
:
SetCategory
(
CATEGORY_REMOVE
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e2
:
SetCost
(
cm
.
rmcost
)
e2
:
SetTarget
(
cm
.
rmtg
)
e2
:
SetOperation
(
cm
.
rmop
)
c
:
RegisterEffect
(
e2
)
end
--xyz Summon
function
cm
.
ovfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_XYZ
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsSetCard
(
0x851
)
and
c
:
IsAttackAbove
(
2400
)
end
function
cm
.
xyzop
(
e
,
tp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
m
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
m
,
RESET_PHASE
+
PHASE_END
,
EFFECT_FLAG_OATH
,
1
)
end
--xyz summon
function
cm
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
local
g1
=
e
:
GetHandler
():
GetOverlayGroup
()
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
local
g2
=
e
:
GetHandler
():
GetOverlayGroup
()
local
tc
=
g2
:
GetFirst
()
while
tc
do
g1
:
RemoveCard
(
tc
)
tc
=
g2
:
GetNext
()
end
g1
:
KeepAlive
()
e
:
SetLabelObject
(
g1
)
end
function
cm
.
filter1
(
c
,
e
,
tp
)
return
c
:
IsRank
(
5
)
and
c
:
IsAttack
(
2500
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_XYZ
,
tp
,
false
,
false
)
end
function
cm
.
filter2
(
c
)
return
c
:
IsCanOverlay
()
end
function
cm
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
aux
.
NecroValleyFilter
(
cm
.
filter1
),
tp
,
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
end
function
cm
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g1
=
e
:
GetLabelObject
():
Filter
(
cm
.
filter2
,
nil
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NecroValleyFilter
(
cm
.
filter1
),
tp
,
LOCATION_EXTRA
+
LOCATION_GRAVE
,
0
,
nil
,
e
,
tp
)
g
:
Sub
(
g1
)
if
#
g
>
0
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
then
Duel
.
Hint
(
HINTMSG_SELECT
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
local
tc
=
sg
:
GetFirst
()
if
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_XYZ
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
then
tc
:
CompleteProcedure
()
-- Return it to the Extra Deck during the End Phase
local
e4
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e4
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e4
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e4
:
SetCountLimit
(
1
)
e4
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e4
:
SetLabelObject
(
tc
)
e4
:
SetCondition
(
cm
.
tdcon
)
e4
:
SetOperation
(
cm
.
tdop
)
Duel
.
RegisterEffect
(
e4
,
tp
)
tc
:
RegisterFlagEffect
(
m
+
100
,
RESET_EVENT
+
RESETS_STANDARD
,
0
,
1
)
Duel
.
Hint
(
HINTMSG_SELECT
,
tp
,
HINTMSG_XMATERIAL
)
local
oc
=
g1
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
if
oc
:
IsCanOverlay
()
then
Duel
.
Overlay
(
tc
,
oc
)
end
end
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
cm
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e2
:
SetOperation
(
cm
.
checkop
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e2
,
tp
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetCode
(
m
)
e3
:
SetTargetRange
(
1
,
0
)
e3
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e3
,
tp
)
end
function
cm
.
tdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
e
:
GetLabelObject
()
if
not
tc
or
tc
:
GetFlagEffect
(
m
+
100
)
==
0
then
e
:
Reset
()
return
false
end
return
true
end
function
cm
.
tdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
e
:
GetLabelObject
()
if
tc
then
Duel
.
SendtoDeck
(
tc
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
end
end
function
cm
.
splimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
,
se
)
return
c
:
IsLocation
(
LOCATION_EXTRA
)
and
aux
.
ExtraDeckSummonCountLimit
[
sump
]
<=
0
end
function
cm
.
cfilter
(
c
,
tp
)
return
c
:
IsSummonPlayer
(
tp
)
and
c
:
IsPreviousLocation
(
LOCATION_EXTRA
)
end
function
cm
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
tp
)
then
aux
.
ExtraDeckSummonCountLimit
[
tp
]
=
aux
.
ExtraDeckSummonCountLimit
[
tp
]
-
1
end
if
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
1
-
tp
)
then
aux
.
ExtraDeckSummonCountLimit
[
1
-
tp
]
=
aux
.
ExtraDeckSummonCountLimit
[
1
-
tp
]
-
1
end
end
--Remove
function
cm
.
rmcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
end
function
cm
.
rmfilter
(
c
)
return
c
:
IsAbleToRemove
()
and
c
:
IsFaceup
()
end
function
cm
.
rmtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
cm
.
rmfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
nil
,
1
,
0
,
0
)
end
function
cm
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
cm
.
rmfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
)
if
#
g
>
0
then
Duel
.
Hint
(
HINTMSG_SELECT
,
tp
,
HINTMSG_REMOVE
)
local
tc
=
g
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
local
atk
=
tc
:
GetAttack
()
local
mg
=
tc
:
GetOverlayGroup
()
for
rc
in
aux
.
Next
(
mg
)
do
Duel
.
Remove
(
rc
,
POS_FACEUP
,
REASON_EFFECT
)
local
e1_1
=
Effect
.
CreateEffect
(
c
)
e1_1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1_1
:
SetCode
(
EFFECT_CANNOT_TRIGGER
)
e1_1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1_1
:
SetRange
(
LOCATION_REMOVED
)
e1_1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
rc
:
RegisterEffect
(
e1_1
)
end
if
Duel
.
Remove
(
tc
,
0
,
REASON_EFFECT
+
REASON_TEMPORARY
)
~=
0
and
tc
:
IsLocation
(
LOCATION_REMOVED
)
then
local
fid
=
tc
:
GetFieldID
()
for
rc
in
aux
.
Next
(
mg
)
do
rc
:
RegisterFlagEffect
(
m
+
300
,
RESET_EVENT
+
RESETS_STANDARD
,
0
,
1
,
fid
)
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
2
))
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_STANDBY
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetLabel
(
atk
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCondition
(
cm
.
retcon
)
e1
:
SetOperation
(
cm
.
retop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
2
)
tc
:
RegisterFlagEffect
(
m
+
200
,
RESET_PHASE
+
PHASE_STANDBY
+
RESET_SELF_TURN
,
0
,
1
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
end
end
function
cm
.
retcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetLabelObject
():
GetFlagEffect
(
m
+
200
)
~=
0
and
e
:
GetLabelObject
():
IsLocation
(
LOCATION_REMOVED
)
end
function
cm
.
xfilter
(
c
,
fid
)
return
c
:
IsLocation
(
LOCATION_REMOVED
)
and
c
:
IsCanOverlay
()
and
c
:
GetFlagEffectLabel
(
m
+
300
)
==
fid
end
function
cm
.
retop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
e
:
GetLabelObject
()
local
atk
=
e
:
GetLabel
()
local
mg
=
Duel
.
GetMatchingGroup
(
cm
.
xfilter
,
tp
,
LOCATION_REMOVED
,
LOCATION_REMOVED
,
nil
,
tc
:
GetFieldID
())
Duel
.
ReturnToField
(
tc
)
if
#
mg
>
0
then
Duel
.
Overlay
(
tc
,
mg
)
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_SET_ATTACK_FINAL
)
e1
:
SetValue
(
atk
*
2
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e1
)
local
e3
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
+
EFFECT_FLAG_CANNOT_DISABLE
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCode
(
EFFECT_IMMUNE_EFFECT
)
e3
:
SetValue
(
cm
.
efilter
)
e3
:
SetReset
(
RESET_EVENT
+
0x1fe0000
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e3
)
tc
:
RegisterFlagEffect
(
m
,
RESET_PHASE
+
PHASE_END
+
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
m
,
3
))
end
function
cm
.
efilter
(
e
,
te
)
return
te
:
GetOwnerPlayer
()
~=
e
:
GetOwnerPlayer
()
end
expansions/script/c81902106.lua
View file @
9d811a0b
...
...
@@ -74,7 +74,8 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINTMSG_SELECT
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
local
tc
=
sg
:
GetFirst
()
if
Duel
.
SpecialSummon
(
sg
,
SUMMON_TYPE_XYZ
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
then
if
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_XYZ
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
then
tc
:
CompleteProcedure
()
-- Return it to the Extra Deck during the End Phase
local
e4
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e4
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
...
@@ -93,27 +94,31 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
cm
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e2
:
SetOperation
(
cm
.
checkop
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e2
,
tp
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetCode
(
m
)
e3
:
SetTargetRange
(
1
,
0
)
e3
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e3
,
tp
)
end
function
cm
.
cfilter
(
c
,
tp
)
return
c
:
GetSummonPlayer
()
==
tp
and
c
:
IsPreviousLocation
(
LOCATION_EXTRA
)
end
function
cm
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
tp
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
cm
.
splimit
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
end
function
cm
.
splimit
(
e
,
c
)
return
c
:
IsLocation
(
LOCATION_EXTRA
)
end
function
cm
.
tdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
e
:
GetLabelObject
()
...
...
@@ -129,20 +134,6 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoDeck
(
tc
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
end
end
function
cm
.
splimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
,
se
)
return
c
:
IsLocation
(
LOCATION_EXTRA
)
and
aux
.
ExtraDeckSummonCountLimit
[
sump
]
<=
0
end
function
cm
.
cfilter
(
c
,
tp
)
return
c
:
IsSummonPlayer
(
tp
)
and
c
:
IsPreviousLocation
(
LOCATION_EXTRA
)
end
function
cm
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
tp
)
then
aux
.
ExtraDeckSummonCountLimit
[
tp
]
=
aux
.
ExtraDeckSummonCountLimit
[
tp
]
-
1
end
if
eg
:
IsExists
(
cm
.
cfilter
,
1
,
nil
,
1
-
tp
)
then
aux
.
ExtraDeckSummonCountLimit
[
1
-
tp
]
=
aux
.
ExtraDeckSummonCountLimit
[
1
-
tp
]
-
1
end
end
--Remove
function
cm
.
rmcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
...
...
expansions/script/c81905002.lua
View file @
9d811a0b
...
...
@@ -18,8 +18,9 @@ function cm.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_SEARCH
+
CATEGORY_TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_TO_GRAVE
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetProperty
(
EFFECT_FLAG_D
AMAGE_STEP
+
EFFECT_FLAG_D
ELAY
)
e2
:
SetCountLimit
(
1
,
m
+
100
)
e2
:
SetCondition
(
cm
.
spcon
)
e2
:
SetTarget
(
cm
.
sptg
)
e2
:
SetOperation
(
cm
.
spop
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -51,6 +52,10 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
c
,
SUMMON_VALUE_SELF
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
end
--tohand
function
cm
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsPreviousPosition
(
POS_FACEUP
)
end
function
cm
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsAbleToHand
()
and
c
:
IsSetCard
(
0x3596
)
and
c
:
IsType
(
TYPE_MONSTER
)
end
...
...
expansions/script/c81905017.lua
View file @
9d811a0b
...
...
@@ -57,7 +57,7 @@ function cm.repfilter(c)
return
c
:
IsSetCard
(
0x5596
)
and
c
:
IsType
(
TYPE_TRAP
)
and
c
:
IsType
(
TYPE_CONTINUOUS
)
and
c
:
CheckActivateEffect
(
false
,
true
,
false
)
~=
nil
end
function
cm
.
repcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
IsExistingMatchingCard
(
cm
.
repfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
m
)
==
0
return
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
IsExistingMatchingCard
(
cm
.
repfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
function
cm
.
repop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
...
...
@@ -74,6 +74,5 @@ function cm.repop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabelObject
(
te
)
local
op
=
te
:
GetOperation
()
if
op
then
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
Duel
.
RegisterFlagEffect
(
tp
,
m
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
end
\ No newline at end of file
expansions/script/c81905018.lua
View file @
9d811a0b
...
...
@@ -12,6 +12,15 @@ function cm.initial_effect(c)
e1
:
SetTarget
(
cm
.
target
)
e1
:
SetOperation
(
cm
.
activate
)
c
:
RegisterEffect
(
e1
)
--recall
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
6
))
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_FZONE
)
e2
:
SetCondition
(
cm
.
recon
)
e2
:
SetOperation
(
cm
.
reop
)
c
:
RegisterEffect
(
e2
)
--Reset
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
m
,
4
))
...
...
@@ -103,16 +112,6 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
--recall
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
6
))
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_FZONE
)
e2
:
SetCondition
(
cm
.
recon
)
e2
:
SetOperation
(
cm
.
reop
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
c
:
RegisterEffect
(
e2
)
end
--recall
function
cm
.
recon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
expansions/script/c81905020.lua
View file @
9d811a0b
...
...
@@ -84,23 +84,12 @@ function cm.disable(e,c)
end
--disable effect
function
cm
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
Get
Controler
():
Get
FlagEffect
(
m
)
<
1
return
e
:
GetHandler
():
GetFlagEffect
(
m
)
<
1
end
function
cm
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
IsChainNegatable
(
ev
)
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
m
,
2
))
then
Duel
.
Hint
(
HINT_CARD
,
0
,
m
)
Duel
.
NegateEffect
(
ev
)
Duel
.
RegisterFlagEffect
(
tp
,
m
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
e
:
GetHandler
():
RegisterFlagEffect
(
m
,
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
0
,
0
)
end
end
end
\ No newline at end of file
expansions/strings.conf
View file @
9d811a0b
...
...
@@ -346,6 +346,7 @@
!
setname
0
xdc4
阿尔法兽
!
counter
0
xdc0
神耀指示物
!
counter
0
xdc1
辛指示物
!
counter
3
dc1
神印指示物
#真正的光 3303217899 164 0xce0-0xcef
!
setname
0
xce2
Geass
...
...
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