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
Nguyễn Anh Kiệt
ygopro-222DIY-cards
Commits
d96d1096
Commit
d96d1096
authored
Jul 06, 2019
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixes
parent
363cdbbf
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
190 additions
and
193 deletions
+190
-193
expansions/script/c33700062.lua
expansions/script/c33700062.lua
+0
-1
expansions/script/c33700074.lua
expansions/script/c33700074.lua
+0
-1
expansions/script/c33700760.lua
expansions/script/c33700760.lua
+0
-1
expansions/script/c47570400.lua
expansions/script/c47570400.lua
+173
-176
expansions/script/c81010045.lua
expansions/script/c81010045.lua
+1
-1
expansions/script/c81012046.lua
expansions/script/c81012046.lua
+6
-0
expansions/script/c81012048.lua
expansions/script/c81012048.lua
+1
-0
expansions/script/c81040018.lua
expansions/script/c81040018.lua
+1
-1
expansions/script/c9980402.lua
expansions/script/c9980402.lua
+1
-1
expansions/script/c9980502.lua
expansions/script/c9980502.lua
+6
-6
expansions/script/c9980573.lua
expansions/script/c9980573.lua
+1
-1
expansions/script/c9980710.lua
expansions/script/c9980710.lua
+0
-4
No files found.
expansions/script/c33700062.lua
View file @
d96d1096
--动物朋友 PPP×动物饼干
function
c33700062
.
initial_effect
(
c
)
c
:
EnableUnsummonable
()
--special summon condition
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
expansions/script/c33700074.lua
View file @
d96d1096
--动物朋友 槌蛇
function
c33700074
.
initial_effect
(
c
)
c
:
EnableUnsummonable
()
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
expansions/script/c33700760.lua
View file @
d96d1096
...
...
@@ -5,7 +5,6 @@ if not RSTFVal then
RSTFVal
=
RSTFVal
or
{}
tfrsv
=
RSTFVal
function
tfrsv
.
SSLimitEffect
(
c
)
c
:
EnableUnsummonable
()
--spsummon condition
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
expansions/script/c47570400.lua
View file @
d96d1096
--克罗萨斯·马格纳
local
m
=
47570400
local
c47570400
=
_G
[
"c"
..
m
]
function
c47570400
.
initial_effect
(
c
)
--fusion material
c
:
EnableReviveLimit
()
aux
.
AddFusionProcCodeFun
(
c
,
c47570400
.
fusfilter1
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionAttribute
,
ATTRIBUTE_FIRE
),
1
,
true
,
true
)
aux
.
EnablePendulumAttribute
(
c
,
false
)
--special summon rule
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_FIELD
)
e0
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e0
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetRange
(
LOCATION_EXTRA
)
e0
:
SetValue
(
SUMMON_TYPE_FUSION
)
e0
:
SetCondition
(
c47570400
.
sprcon
)
e0
:
SetOperation
(
c47570400
.
sprop
)
c
:
RegisterEffect
(
e0
)
--splimit
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_CANNOT_NEGATE
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c47570400
.
psplimit
)
c
:
RegisterEffect
(
e1
)
--inactivatable
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_CANNOT_INACTIVATE
)
e2
:
SetRange
(
LOCATION_PZONE
)
e2
:
SetValue
(
c47570400
.
effectfilter
)
c
:
RegisterEffect
(
e2
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetCode
(
EFFECT_CANNOT_DISEFFECT
)
e3
:
SetRange
(
LOCATION_PZONE
)
e3
:
SetValue
(
c47570400
.
effectfilter
)
c
:
RegisterEffect
(
e3
)
--destroy
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
47570400
,
0
))
e4
:
SetCategory
(
CATEGORY_TOGRAVE
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetCountLimit
(
1
)
e4
:
SetCost
(
c47570400
.
rmcost
)
e4
:
SetTarget
(
c47570400
.
tgtg
)
e4
:
SetOperation
(
c47570400
.
tgop
)
c
:
RegisterEffect
(
e4
)
--negate
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetDescription
(
aux
.
Stringid
(
47570400
,
2
))
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetCode
(
EVENT_CHAINING
)
e5
:
SetCountLimit
(
1
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetCondition
(
c47570400
.
chcon
)
e5
:
SetTarget
(
c47570400
.
chtg
)
e5
:
SetOperation
(
c47570400
.
chop
)
c
:
RegisterEffect
(
e5
)
--specialsummon
local
e6
=
Effect
.
CreateEffect
(
c
)
e6
:
SetDescription
(
aux
.
Stringid
(
47570400
,
1
))
e6
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e6
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e6
:
SetCode
(
EVENT_REMOVE
)
e6
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e6
:
SetRange
(
LOCATION_MZONE
)
e6
:
SetCountLimit
(
1
)
e6
:
SetCondition
(
c47570400
.
rmcon
)
e6
:
SetCost
(
c47570400
.
spcost
)
e6
:
SetTarget
(
c47570400
.
sptg
)
e6
:
SetOperation
(
c47570400
.
spop
)
c
:
RegisterEffect
(
e6
)
--fusion material
c
:
EnableReviveLimit
()
aux
.
AddFusionProcCodeFun
(
c
,
c47570400
.
fusfilter1
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionAttribute
,
ATTRIBUTE_FIRE
),
1
,
true
,
true
)
aux
.
EnablePendulumAttribute
(
c
,
false
)
--special summon rule
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_FIELD
)
e0
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e0
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetRange
(
LOCATION_EXTRA
)
e0
:
SetValue
(
SUMMON_TYPE_FUSION
)
e0
:
SetCondition
(
c47570400
.
sprcon
)
e0
:
SetOperation
(
c47570400
.
sprop
)
c
:
RegisterEffect
(
e0
)
--splimit
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_CANNOT_NEGATE
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetTarget
(
c47570400
.
psplimit
)
c
:
RegisterEffect
(
e1
)
--inactivatable
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_CANNOT_INACTIVATE
)
e2
:
SetRange
(
LOCATION_PZONE
)
e2
:
SetValue
(
c47570400
.
effectfilter
)
c
:
RegisterEffect
(
e2
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetCode
(
EFFECT_CANNOT_DISEFFECT
)
e3
:
SetRange
(
LOCATION_PZONE
)
e3
:
SetValue
(
c47570400
.
effectfilter
)
c
:
RegisterEffect
(
e3
)
--destroy
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
47570400
,
0
))
e4
:
SetCategory
(
CATEGORY_TOGRAVE
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetCountLimit
(
1
)
e4
:
SetCost
(
c47570400
.
rmcost
)
e4
:
SetTarget
(
c47570400
.
tgtg
)
e4
:
SetOperation
(
c47570400
.
tgop
)
c
:
RegisterEffect
(
e4
)
--negate
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetDescription
(
aux
.
Stringid
(
47570400
,
2
))
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetCode
(
EVENT_CHAINING
)
e5
:
SetCountLimit
(
1
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetCondition
(
c47570400
.
chcon
)
e5
:
SetTarget
(
c47570400
.
chtg
)
e5
:
SetOperation
(
c47570400
.
chop
)
c
:
RegisterEffect
(
e5
)
--specialsummon
local
e6
=
Effect
.
CreateEffect
(
c
)
e6
:
SetDescription
(
aux
.
Stringid
(
47570400
,
1
))
e6
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e6
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e6
:
SetCode
(
EVENT_REMOVE
)
e6
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e6
:
SetRange
(
LOCATION_MZONE
)
e6
:
SetCountLimit
(
1
)
e6
:
SetCondition
(
c47570400
.
rmcon
)
e6
:
SetCost
(
c47570400
.
spcost
)
e6
:
SetTarget
(
c47570400
.
sptg
)
e6
:
SetOperation
(
c47570400
.
spop
)
c
:
RegisterEffect
(
e6
)
end
function
c47570400
.
fusfilter1
(
c
)
return
c
:
IsRace
(
RACE_PYRO
)
return
c
:
IsRace
(
RACE_PYRO
)
end
function
c47570400
.
cfilter
(
c
)
return
(
c
:
IsRace
(
RACE_PYRO
)
or
c
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
))
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsReleasable
()
return
(
c
:
IsRace
(
RACE_PYRO
)
or
c
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
))
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsReleasable
()
end
function
c47570400
.
spfilter1
(
c
,
tp
,
g
)
return
g
:
IsExists
(
c47570400
.
spfilter2
,
1
,
c
,
tp
,
c
)
return
g
:
IsExists
(
c47570400
.
spfilter2
,
1
,
c
,
tp
,
c
)
end
function
c47570400
.
spfilter2
(
c
,
tp
,
mc
)
return
(
c
:
IsRace
(
RACE_PYRO
)
and
mc
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
)
or
c
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
)
and
mc
:
IsRace
(
RACE_PYRO
))
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
Group
.
FromCards
(
c
,
mc
))
>
0
return
(
c
:
IsRace
(
RACE_PYRO
)
and
mc
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
)
or
c
:
IsFusionAttribute
(
ATTRIBUTE_FIRE
)
and
mc
:
IsRace
(
RACE_PYRO
))
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
Group
.
FromCards
(
c
,
mc
))
>
0
end
function
c47570400
.
sprcon
(
e
,
c
)
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
local
g
=
Duel
.
GetMatchingGroup
(
c47570400
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
nil
)
return
g
:
IsExists
(
c47570400
.
spfilter1
,
1
,
nil
,
tp
,
g
)
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
local
g
=
Duel
.
GetMatchingGroup
(
c47570400
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
nil
)
return
g
:
IsExists
(
c47570400
.
spfilter1
,
1
,
nil
,
tp
,
g
)
end
function
c47570400
.
sprop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
local
g
=
Duel
.
GetMatchingGroup
(
c47570400
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g1
=
g
:
FilterSelect
(
tp
,
c47570400
.
spfilter1
,
1
,
1
,
nil
,
tp
,
g
)
local
mc
=
g1
:
GetFirst
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g2
=
g
:
FilterSelect
(
tp
,
c47570400
.
spfilter2
,
1
,
1
,
mc
,
tp
,
mc
)
g1
:
Merge
(
g2
)
local
cg
=
g1
:
Filter
(
Card
.
IsFacedown
,
nil
)
if
cg
:
GetCount
()
>
0
then
Duel
.
ConfirmCards
(
1
-
tp
,
cg
)
end
Duel
.
Release
(
g1
,
REASON_COST
+
REASON_MATERIAL
+
REASON_FUSION
)
local
g
=
Duel
.
GetMatchingGroup
(
c47570400
.
cfilter
,
tp
,
LOCATION_ONFIELD
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g1
=
g
:
FilterSelect
(
tp
,
c47570400
.
spfilter1
,
1
,
1
,
nil
,
tp
,
g
)
local
mc
=
g1
:
GetFirst
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g2
=
g
:
FilterSelect
(
tp
,
c47570400
.
spfilter2
,
1
,
1
,
mc
,
tp
,
mc
)
g1
:
Merge
(
g2
)
local
cg
=
g1
:
Filter
(
Card
.
IsFacedown
,
nil
)
if
cg
:
GetCount
()
>
0
then
Duel
.
ConfirmCards
(
1
-
tp
,
cg
)
end
Duel
.
Release
(
g1
,
REASON_COST
+
REASON_MATERIAL
+
REASON_FUSION
)
end
function
c47570400
.
pefilter
(
c
)
return
c
:
IsRace
(
RACE_MACHINE
)
or
c
:
IsSetCard
(
0x5da
)
or
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
return
c
:
IsRace
(
RACE_MACHINE
)
or
c
:
IsSetCard
(
0x5da
)
or
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
end
function
c47570400
.
psplimit
(
e
,
c
,
tp
,
sumtp
,
sumpos
)
return
not
c47570400
.
pefilter
(
c
)
and
bit
.
band
(
sumtp
,
SUMMON_TYPE_PENDULUM
)
==
SUMMON_TYPE_PENDULUM
return
not
c47570400
.
pefilter
(
c
)
and
bit
.
band
(
sumtp
,
SUMMON_TYPE_PENDULUM
)
==
SUMMON_TYPE_PENDULUM
end
function
c47570400
.
effectfilter
(
e
,
ct
)
local
p
=
e
:
GetHandler
():
GetControler
()
local
te
,
tp
,
loc
=
Duel
.
GetChainInfo
(
ct
,
CHAININFO_TRIGGERING_EFFECT
,
CHAININFO_TRIGGERING_PLAYER
,
CHAININFO_TRIGGERING_LOCATION
)
return
p
==
tp
and
te
:
GetHandler
():
IsAttribute
(
ATTRIBUTE_FIRE
)
and
re
:
IsActiveType
(
TYPE_MONSTER
)
local
p
=
e
:
GetHandler
():
GetControler
()
local
te
,
tp
,
loc
=
Duel
.
GetChainInfo
(
ct
,
CHAININFO_TRIGGERING_EFFECT
,
CHAININFO_TRIGGERING_PLAYER
,
CHAININFO_TRIGGERING_LOCATION
)
return
p
==
tp
and
te
:
GetHandler
():
IsAttribute
(
ATTRIBUTE_FIRE
)
and
re
:
IsActiveType
(
TYPE_MONSTER
)
end
function
c47570400
.
ccfilter
(
c
,
e
,
tp
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
end
function
c47570400
.
rmcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c47570400
.
ccfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINGMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
ccfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
e
:
GetHandler
())
local
tc
=
g
:
GetFirst
()
if
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_COST
+
REASON_TEMPORARY
)
~=
0
then
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetCountLimit
(
1
)
e1
:
SetOperation
(
c47570400
.
retop
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c47570400
.
ccfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINGMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
ccfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
e
:
GetHandler
())
local
tc
=
g
:
GetFirst
()
if
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_COST
+
REASON_TEMPORARY
)
~=
0
then
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetCountLimit
(
1
)
e1
:
SetOperation
(
c47570400
.
retop
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
end
function
c47570400
.
retop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
ReturnToField
(
e
:
GetLabelObject
())
Duel
.
ReturnToField
(
e
:
GetLabelObject
())
end
function
c47570400
.
gfilter
(
c
)
return
c
:
IsFaceup
()
return
c
:
IsFaceup
()
end
function
c47570400
.
tgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c47570400
.
gfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
e
:
GetHandler
())
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
1
,
1
-
tp
,
LOCATION_ONFIELD
)
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c47570400
.
gfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
e
:
GetHandler
())
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOGRAVE
,
nil
,
1
,
1
-
tp
,
LOCATION_ONFIELD
)
end
function
c47570400
.
tgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
gfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
)
local
dg
=
Group
.
CreateGroup
()
local
tc
=
g
:
GetFirst
()
local
c
=
e
:
GetHandler
()
while
tc
do
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e3
:
SetValue
(
-
3000
)
e3
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e3
)
if
predef
~=
0
and
(
tc
:
IsDefense
(
0
)
or
tc
:
IsType
(
TYPE_LINK
))
then
dg
:
AddCard
(
tc
)
end
tc
=
g
:
GetNext
()
end
Duel
.
Remove
(
dg
,
POS_FACEDOWN
,
REASON_RULE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
gfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
)
local
dg
=
Group
.
CreateGroup
()
local
tc
=
g
:
GetFirst
()
local
c
=
e
:
GetHandler
()
while
tc
do
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e3
:
SetValue
(
-
3000
)
e3
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e3
)
if
predef
~=
0
and
(
tc
:
IsDefense
(
0
)
or
tc
:
IsType
(
TYPE_LINK
))
then
dg
:
AddCard
(
tc
)
end
tc
=
g
:
GetNext
()
end
Duel
.
Remove
(
dg
,
POS_FACEDOWN
,
REASON_RULE
)
end
function
c47570400
.
chcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
rp
==
1
-
tp
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
return
rp
==
1
-
tp
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
end
function
c47570400
.
chtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
rp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
rp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
end
end
function
c47570400
.
chop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Group
.
CreateGroup
()
Duel
.
ChangeTargetCard
(
ev
,
g
)
Duel
.
ChangeChainOperation
(
ev
,
c47570400
.
repop
)
local
g
=
Group
.
CreateGroup
()
Duel
.
ChangeTargetCard
(
ev
,
g
)
Duel
.
ChangeChainOperation
(
ev
,
c47570400
.
repop
)
end
function
c47570400
.
repop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
then
c
:
CancelToGrave
(
false
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINGMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
ccfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
local
tc
=
g
:
GetFirst
()
if
tc
then
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_COST
+
REASON_TEMPORARY
)
~=
0
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetCountLimit
(
1
)
e1
:
SetOperation
(
c47570400
.
retop
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
local
c
=
e
:
GetHandler
()
if
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
then
c
:
CancelToGrave
(
false
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINGMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
ccfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
)
local
tc
=
g
:
GetFirst
()
if
tc
and
Duel
.
Remove
(
tc
,
POS_FACEUP
,
REASON_COST
+
REASON_TEMPORARY
)
~=
0
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
e1
:
SetLabelObject
(
tc
)
e1
:
SetCountLimit
(
1
)
e1
:
SetOperation
(
c47570400
.
retop
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
end
function
c47570400
.
rmcfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
return
c
:
IsFaceup
()
and
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
end
function
c47570400
.
rmcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
c47570400
.
rmcfilter
,
1
,
e
:
GetHandler
(),
tp
)
and
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_FUSION
)
return
eg
:
IsExists
(
c47570400
.
rmcfilter
,
1
,
e
:
GetHandler
(),
tp
)
and
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_FUSION
)
end
function
c47570400
.
spfilter
(
c
,
e
,
tp
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsLevel
(
9
)
and
c
:
IsType
(
TYPE_SYNCHRO
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_SYNCHRO
,
tp
,
false
,
false
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsLevel
(
9
)
and
c
:
IsType
(
TYPE_SYNCHRO
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_SYNCHRO
,
tp
,
false
,
false
)
end
function
c47570400
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsReleasable
()
end
Duel
.
Release
(
e
:
GetHandler
(),
REASON_COST
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsReleasable
()
end
Duel
.
Release
(
e
:
GetHandler
(),
REASON_COST
)
end
function
c47570400
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c47570400
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c47570400
.
spfilter
,
tp
,
LOCATION_EXTRA
,
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
c47570400
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ft
=
Duel
.
GetLocationCountFromEx
(
tp
)
if
ft
<=
0
or
not
aux
.
MustMaterialCheck
(
nil
,
tp
,
EFFECT_MUST_BE_SMATERIAL
)
then
return
end
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
SUMMON_TYPE_SYNCHRO
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
local
ft
=
Duel
.
GetLocationCountFromEx
(
tp
)
if
ft
<=
0
or
not
aux
.
MustMaterialCheck
(
nil
,
tp
,
EFFECT_MUST_BE_SMATERIAL
)
then
return
end
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c47570400
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
SUMMON_TYPE_SYNCHRO
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
expansions/script/c81010045.lua
View file @
d96d1096
...
...
@@ -14,7 +14,7 @@ function c81010045.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCountLimit
(
1
,
9523839
5
)
e2
:
SetCountLimit
(
1
,
8101094
5
)
e2
:
SetCondition
(
aux
.
exccon
)
e2
:
SetCost
(
aux
.
bfgcost
)
e2
:
SetTarget
(
c81010045
.
thtg
)
...
...
expansions/script/c81012046.lua
View file @
d96d1096
...
...
@@ -36,6 +36,7 @@ function c81012046.initial_effect(c)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
2
,
81012046
)
e4
:
SetCondition
(
c81012046
.
atkcon
)
e4
:
SetCost
(
c81012046
.
atkcost
)
e4
:
SetOperation
(
c81012046
.
atkop
)
c
:
RegisterEffect
(
e4
)
--Immune
...
...
@@ -109,6 +110,11 @@ function c81012046.atkcon(e,tp,eg,ep,ev,re,r,rp)
local
g
=
Group
.
FromCards
(
a
,
d
)
return
a
and
d
and
a
:
IsRelateToBattle
()
and
d
:
IsRelateToBattle
()
and
g
:
IsExists
(
c81012046
.
exfilter
,
1
,
nil
)
end
function
c81012046
.
atkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
GetFlagEffect
(
81012046
)
==
0
end
c
:
RegisterFlagEffect
(
81012046
,
RESET_CHAIN
,
0
,
1
)
end
function
c81012046
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
tc
=
e
:
GetLabelObject
()
if
tc
:
IsFaceup
()
and
tc
:
IsRelateToBattle
()
then
...
...
expansions/script/c81012048.lua
View file @
d96d1096
...
...
@@ -87,6 +87,7 @@ function c81012048.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
ct
,
0
,
0
)
end
function
c81012048
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tg
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_CARDS
)
local
rg
=
tg
:
Filter
(
Card
.
IsRelateToEffect
,
nil
,
e
)
if
rg
:
GetCount
()
>
0
then
...
...
expansions/script/c81040018.lua
View file @
d96d1096
...
...
@@ -30,7 +30,7 @@ function c81040018.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
81040921
)
==
0
and
Duel
.
IsExistingTarget
(
c81040018
.
thfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c81040018
.
thfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
tp
,
LOCATION_GRAVE
)
end
function
c81040018
.
tgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
...
...
expansions/script/c9980402.lua
View file @
d96d1096
...
...
@@ -117,7 +117,7 @@ function c9980402.eqop(e,tp,eg,ep,ev,re,r,rp)
c
:
RegisterEffect
(
e5
)
end
function
c9980402
.
eqlimit
(
e
,
c
)
return
c
:
IsSetCard
(
0x
1
bca
)
return
c
:
IsSetCard
(
0xbca
)
end
function
c9980402
.
sptg2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
...
...
expansions/script/c9980502.lua
View file @
d96d1096
...
...
@@ -117,24 +117,24 @@ function c9980502.spop2(e,tp,eg,ep,ev,re,r,rp)
end
function
c9980502
.
ctcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
IsReason
(
REASON_BATTLE
)
or
(
c
:
GetReasonPlayer
()
==
1
-
tp
and
c
:
IsReason
(
REASON_EFFECT
))
return
(
c
:
IsReason
(
REASON_BATTLE
)
or
(
c
:
GetReasonPlayer
()
==
1
-
tp
and
c
:
IsReason
(
REASON_EFFECT
)
))
end
function
c9980502
.
ctfilter
(
c
)
return
c
:
IsSummonType
(
SUMMON_TYPE_SPECIAL
)
and
c
:
IsControlerCanBeChanged
()
end
function
c9980502
.
cttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
c9980502
.
ctfilter
(
chkc
)
end
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c9980502
.
ctfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONTROL
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c9980502
.
ctfilter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_CONTROL
,
g
,
1
,
0
,
0
)
end
function
c9980502
.
ctop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
and
tc
:
IsFaceup
()
and
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsRace
(
RACE_MACHINE
)
then
local
tct
=
1
if
Duel
.
GetTurnPlayer
()
~=
tp
then
tct
=
2
elseif
Duel
.
GetCurrentPhase
()
==
PHASE_END
then
tct
=
3
end
local
tct
=
1
if
Duel
.
GetTurnPlayer
()
~=
tp
then
tct
=
2
elseif
Duel
.
GetCurrentPhase
()
==
PHASE_END
then
tct
=
3
end
if
tc
:
IsFacedown
()
and
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
GetControl
(
tc
,
tp
,
PHASE_END
,
tct
)
end
end
...
...
expansions/script/c9980573.lua
View file @
d96d1096
...
...
@@ -87,7 +87,7 @@ function c9980573.operation(e,tp,eg,ep,ev,re,r,rp)
e2
:
SetTargetRange
(
LOCATION_HAND
+
LOCATION_MZONE
,
0
)
e2
:
SetTarget
(
aux
.
TargetBoolFunction
(
Card
.
IsSetCard
,
0xcbca
))
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e2
,
tp
)
t
c
:
RegisterEffect
(
e2
,
tp
)
Duel
.
RegisterFlagEffect
(
tp
,
9980573
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
function
c9980573
.
filter1
(
c
,
e
,
tp
)
...
...
expansions/script/c9980710.lua
View file @
d96d1096
...
...
@@ -30,7 +30,6 @@ function c9980710.initial_effect(c)
e2
:
SetRange
(
LOCATION_FZONE
)
e2
:
SetCode
(
EFFECT_SELF_DESTROY
)
e2
:
SetTargetRange
(
LOCATION_MZONE
,
LOCATION_MZONE
)
e2
:
SetCondition
(
c9980710
.
effcon
)
e2
:
SetTarget
(
c9980710
.
filter
)
e2
:
SetValue
(
aux
.
TRUE
)
c
:
RegisterEffect
(
e2
)
...
...
@@ -62,9 +61,6 @@ function c9980710.counter(e,tp,eg,ep,ev,re,r,rp)
e
:
GetHandler
():
AddCounter
(
0x1009
,
ct
)
end
end
function
c9980710
.
effcon
(
e
)
return
e
:
GetHandler
():
GetOverlayCount
()
>
0
end
function
c9980710
.
filter
(
e
,
c
)
return
(
c
:
IsAttackBelow
(
500
)
or
c
:
IsDefenseBelow
(
500
))
and
c
:
IsFaceup
()
and
not
c
:
IsSetCard
(
0xbc8
)
and
not
c
:
IsImmuneToEffect
(
e
)
and
c
:
IsDestructable
()
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