Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
P
pre-release-database-cdb
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
MyCard
pre-release-database-cdb
Commits
869be725
Commit
869be725
authored
Dec 20, 2025
by
wind2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix
parent
7ac5586a
Pipeline
#42060
canceled with stages
in 4 seconds
Changes
11
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
65 additions
and
63 deletions
+65
-63
LOCH.cdb
LOCH.cdb
+0
-0
LOCR.cdb
LOCR.cdb
+0
-0
script/c100256004.lua
script/c100256004.lua
+1
-1
script/c100257001.lua
script/c100257001.lua
+4
-3
script/c100257004.lua
script/c100257004.lua
+2
-2
script/c100257007.lua
script/c100257007.lua
+4
-2
script/c100257010.lua
script/c100257010.lua
+27
-16
script/c100257013.lua
script/c100257013.lua
+9
-9
script/c100257016.lua
script/c100257016.lua
+4
-4
script/c100257024.lua
script/c100257024.lua
+11
-7
script/c100257025.lua
script/c100257025.lua
+3
-19
No files found.
LOCH.cdb
View file @
869be725
No preview for this file type
LOC
B
.cdb
→
LOC
R
.cdb
View file @
869be725
No preview for this file type
script/c100256004.lua
View file @
869be725
...
...
@@ -29,7 +29,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e2
)
end
function
s
.
matfilter2
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsLocation
(
LOCATION_MZONE
)
return
c
:
IsFaceup
()
and
c
:
IsLocation
(
LOCATION_MZONE
)
end
function
s
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonLocation
(
LOCATION_EXTRA
)
...
...
script/c100257001.lua
View file @
869be725
...
...
@@ -59,10 +59,11 @@ function s.cfilter(c,tp)
return
c
:
IsAttribute
(
ATTRIBUTE_WATER
)
and
c
:
IsPreviousControler
(
tp
)
end
function
s
.
spcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
s
.
cfilter
,
1
,
nil
,
tp
)
and
not
c
:
IsPublic
()
local
c
=
e
:
GetHandler
(
)
return
eg
:
IsExists
(
s
.
cfilter
,
1
,
nil
,
tp
)
and
not
c
:
IsPublic
()
end
function
s
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
not
c
:
IsPublic
()
end
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
...
@@ -78,7 +79,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
s
.
descon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
c
:
IsSummonLocation
(
LOCATION_HAND
+
LOCATION_DECK
)
return
e
:
GetHandler
()
:
IsSummonLocation
(
LOCATION_HAND
+
LOCATION_DECK
)
end
function
s
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
...
...
script/c100257004.lua
View file @
869be725
...
...
@@ -15,7 +15,7 @@ function s.initial_effect(c)
--search
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e2
:
SetCategory
(
CATEGORY_SEARCH
)
e2
:
SetCategory
(
CATEGORY_SEARCH
+
CATEGORY_TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
...
...
@@ -79,5 +79,5 @@ function s.valcheck(e,c)
end
function
s
.
eacon
(
e
)
local
c
=
e
:
GetHandler
()
return
c
:
IsAttackAbove
(
c
:
GetBaseAttack
()
+
1
)
return
c
:
GetAttack
()
>
c
:
GetBaseAttack
(
)
end
script/c100257007.lua
View file @
869be725
...
...
@@ -61,7 +61,9 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
else
g
=
tg
end
Duel
.
SpecialSummonComplete
()
if
g
and
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -89,7 +91,7 @@ function s.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_NEGATE
,
eg
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOEXTRA
,
nil
,
1
,
tp
,
LOCATION_MZONE
)
end
function
s
.
ne
t
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
ne
g
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
disfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
aux
.
ExceptThisCard
(
e
))
Duel
.
HintSelection
(
g
)
...
...
script/c100257010.lua
View file @
869be725
...
...
@@ -37,26 +37,27 @@ end
function
s
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsSummonType
(
SUMMON_TYPE_XYZ
)
end
function
s
.
filter
(
c
,
mc
)
function
s
.
filter
(
c
,
mc
,
e
,
tp
)
return
c
:
IsSetCard
(
0x55
)
and
(
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
or
(
mc
:
IsType
(
TYPE_XYZ
)
and
c
:
IsCanOverlay
()))
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
or
(
mc
:
IsType
(
TYPE_XYZ
)
and
c
:
IsCanOverlay
()))
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
e
:
GetHandler
())
end
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
e
:
GetHandler
()
,
e
,
tp
)
end
end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
c
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
c
,
e
,
tp
)
local
tc
=
g
:
GetFirst
()
if
tc
then
if
c
:
IsRelateToChain
()
and
c
:
IsType
(
TYPE_XYZ
)
and
tc
:
IsCanOverlay
()
and
(
not
(
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
tc
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
))
or
Duel
.
SelectOption
(
tp
,
1190
,
1152
)
==
1
)
then
local
ovchk
=
c
:
IsRelateToChain
()
and
c
:
IsType
(
TYPE_XYZ
)
and
tc
:
IsCanOverlay
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
tc
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
and
(
not
ovchk
or
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
id
,
1
)))
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
elseif
ovchk
then
Duel
.
Overlay
(
c
,
Group
.
FromCards
(
tc
))
else
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
end
end
end
...
...
@@ -64,30 +65,40 @@ function s.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
3
,
REASON_COST
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
3
,
3
,
REASON_COST
)
end
function
s
.
rsfilter
(
c
,
ec
)
function
s
.
rsfilter
(
c
,
ec
,
tp
,
chk
)
local
ng
=
Group
.
FromCards
(
c
)
if
ec
then
ng
:
AddCard
(
ec
)
end
return
c
:
IsReleasableByEffect
()
and
(
Duel
.
IsExistingMatchingCard
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
Group
.
FromCards
(
c
,
ec
))
or
not
ec
and
Duel
.
IsExistingMatchingCard
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
c
))
and
(
not
chk
or
Duel
.
IsExistingMatchingCard
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
ng
))
end
function
s
.
distg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
rsfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
c
)
end
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
rsfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
c
,
c
,
tp
,
true
)
end
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
c
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DISABLE
,
g
,
g
:
GetCount
()
-
1
,
0
,
0
)
end
function
s
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsReleasableByEffect
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
aux
.
ExceptThisCard
(
e
),
aux
.
ExceptThisCard
(
e
))
local
tc
=
sg
:
GetFirst
()
if
Duel
.
Release
(
tc
,
REASON_EFFECT
)
~=
0
then
local
rg
=
nil
local
ec
=
aux
.
ExceptThisCard
(
e
)
if
Duel
.
IsExistingMatchingCard
(
s
.
rsfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
ec
,
ec
,
tp
,
true
)
then
rg
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
rsfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
ec
,
ec
,
tp
,
true
)
else
rg
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
rsfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
ec
,
ec
,
tp
,
false
)
end
if
not
rg
or
rg
:
GetCount
()
==
0
then
return
end
if
Duel
.
Release
(
rg
,
REASON_EFFECT
)
~=
0
then
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
NegateAnyFilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
aux
.
ExceptThisCard
(
e
))
for
tc
in
aux
.
Next
(
g
)
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e2
:
SetCode
(
EFFECT_DISABLE_EFFECT
)
e2
:
SetValue
(
RESET_TURN_SET
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
...
...
script/c100257013.lua
View file @
869be725
...
...
@@ -35,8 +35,7 @@ function s.nefilter(c)
return
aux
.
NegateMonsterFilter
(
c
)
or
not
c
:
IsAttack
(
0
)
or
not
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
end
function
s
.
distg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
s
.
nefilter
(
chkc
)
and
chkc
~=
e
:
GetHandler
()
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
s
.
nefilter
(
chkc
)
and
chkc
~=
e
:
GetHandler
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
s
.
nefilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
e
:
GetHandler
())
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DISABLE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
s
.
nefilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
e
:
GetHandler
())
...
...
@@ -76,17 +75,21 @@ function s.spcon(e,tp,eg,ep,ev,re,r,rp)
return
rp
==
1
-
tp
end
function
s
.
filter1
(
c
,
e
)
return
c
:
IsOnField
()
and
c
:
IsFaceup
()
and
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsImmuneToEffect
(
e
)
return
c
:
IsOnField
()
and
c
:
IsFaceup
()
and
c
:
Is
Fusion
Attribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsImmuneToEffect
(
e
)
end
function
s
.
filter2
(
c
,
e
,
tp
,
m
,
f
,
gc
,
chkf
)
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
(
not
f
or
f
(
c
))
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_FUSION
,
tp
,
false
,
false
)
and
c
:
CheckFusionMaterial
(
m
,
gc
,
chkf
)
end
function
s
.
ffiltr
(
c
,
e
)
return
c
:
IsFaceup
()
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsFusionAttribute
(
ATTRIBUTE_DARK
)
and
(
not
e
or
not
c
:
IsImmuneToEffect
(
e
))
end
function
s
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
local
chkf
=
tp
local
mg1
=
Duel
.
GetFusionMaterial
(
tp
):
Filter
(
Card
.
IsOnField
,
nil
)
local
mg1
=
Duel
.
GetFusionMaterial
(
tp
):
Filter
(
s
.
filter1
,
nil
,
e
)
local
mg2
=
Duel
.
GetMatchingGroup
(
s
.
ffiltr
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
mg1
:
Merge
(
mg2
)
local
res
=
Duel
.
IsExistingMatchingCard
(
s
.
filter2
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
,
mg1
,
nil
,
c
,
chkf
)
...
...
@@ -103,9 +106,6 @@ function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
end
function
s
.
ffiltr
(
c
,
e
)
return
c
:
IsFaceup
()
and
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
(
not
e
or
not
c
:
IsImmuneToEffect
(
e
))
end
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
chkf
=
tp
...
...
@@ -129,13 +129,13 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tg
=
sg
:
Select
(
tp
,
1
,
1
,
nil
)
local
tc
=
tg
:
GetFirst
()
if
sg1
:
IsContains
(
tc
)
and
(
sg2
==
nil
or
not
sg2
:
IsContains
(
tc
)
or
not
Duel
.
SelectYesNo
(
tp
,
ce
:
GetDescription
()))
then
if
sg1
:
IsContains
(
tc
)
and
(
sg2
==
nil
or
not
sg2
:
IsContains
(
tc
)
or
ce
and
not
Duel
.
SelectYesNo
(
tp
,
ce
:
GetDescription
()))
then
local
mat1
=
Duel
.
SelectFusionMaterial
(
tp
,
tc
,
mg1
,
c
,
chkf
)
tc
:
SetMaterial
(
mat1
)
Duel
.
SendtoGrave
(
mat1
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
)
Duel
.
BreakEffect
()
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_FUSION
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
else
else
if
ce
then
local
mat2
=
Duel
.
SelectFusionMaterial
(
tp
,
tc
,
mg3
,
c
,
chkf
)
local
fop
=
ce
:
GetOperation
()
fop
(
ce
,
e
,
tp
,
tc
,
mat2
)
...
...
script/c100257016.lua
View file @
869be725
...
...
@@ -7,12 +7,12 @@ function s.initial_effect(c)
c
:
EnableReviveLimit
()
--control
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetCategory
(
CATEGORY_CONTROL
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetHintTiming
(
0
,
TIMING_BATTLE_START
+
TIMING_BATTLE_END
+
TIMINGS_CHECK_MONSTER
)
e1
:
SetHintTiming
(
TIMING_BATTLE_START
+
TIMING_BATTLE_END
+
TIMINGS_CHECK_MONSTER
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCondition
(
s
.
cocon
)
e1
:
SetTarget
(
s
.
cotg
)
...
...
@@ -20,6 +20,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e1
)
--special summon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e2
:
SetCategory
(
CATEGORY_DESTROY
+
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
...
...
@@ -32,8 +33,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e2
)
end
function
s
.
cocon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ph
=
Duel
.
GetCurrentPhase
()
return
ph
>=
PHASE_BATTLE_START
and
ph
<=
PHASE_BATTLE
return
Duel
.
IsBattlePhase
()
end
function
s
.
cfilter
(
c
,
ec
)
local
zone
=
bit
.
band
(
ec
:
GetLinkedZone
(),
0x1f
)
...
...
script/c100257024.lua
View file @
869be725
...
...
@@ -18,12 +18,13 @@ function s.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_DAMAGE
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_BE_BATTLE_TARGET
)
e2
:
SetTargetCard
(
s
.
damtg2
)
e2
:
SetCountLimit
(
1
)
e2
:
SetTarget
(
s
.
damtg2
)
e2
:
SetOperation
(
s
.
damop2
)
c
:
RegisterEffect
(
e2
)
end
function
s
.
costfilter
(
c
)
return
c
:
IsFacedown
()
and
c
:
IsAbleToGraveAsCost
()
return
c
:
IsFacedown
()
and
c
:
IsAbleToGraveAsCost
()
and
c
:
GetSequence
()
<
5
end
function
s
.
damcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
costfilter
,
tp
,
LOCATION_SZONE
,
0
,
1
,
nil
)
end
...
...
@@ -52,24 +53,27 @@ function s.damop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
s
.
damcon
(
e
,
re
,
val
,
r
,
rp
,
rc
)
if
not
re
or
not
re
:
IsActiveType
(
TYPE_MONSTER
)
or
bit
.
band
(
r
,
REASON_EFFECT
)
==
0
then
return
0
end
if
re
:
GetHandler
():
IsRace
(
RACE_FIEND
)
then
return
val
else
return
0
end
if
bit
.
band
(
r
,
REASON_EFFECT
)
~=
0
and
re
and
re
:
IsActiveType
(
TYPE_MONSTER
)
then
if
re
:
GetHandler
():
IsRace
(
RACE_FIEND
)
then
return
val
else
return
0
end
else
return
val
end
end
function
s
.
filter
(
c
)
return
c
:
IsPosition
(
POS_ATTACK
)
end
function
s
.
damtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
s
.
damtg
2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
s
.
filter
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
local
ct
=
Duel
.
GetMatchingGroupCount
(
s
.
filter
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
Duel
.
SetTargetPlayer
(
1
-
tp
)
Duel
.
SetTargetParam
(
ct
*
500
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
ct
*
500
)
end
function
s
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
damop
2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ct
=
Duel
.
GetMatchingGroupCount
(
s
.
filter
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
local
p
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
)
if
Duel
.
Damage
(
p
,
ct
*
500
,
REASON_EFFECT
)
~=
0
then
Duel
.
BreakEffect
()
Duel
.
SkipPhase
(
1
-
tp
,
PHASE_BATTLE
,
RESET_PHASE
+
PHASE_BATTLE_STEP
,
1
)
end
end
\ No newline at end of file
end
script/c100257025.lua
View file @
869be725
...
...
@@ -13,6 +13,7 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e1
)
--effect
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
id
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_GRAVE
)
...
...
@@ -42,10 +43,9 @@ end
function
s
.
effcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetMatchingGroupCount
(
aux
.
TRUE
,
tp
,
LOCATION_HAND
,
0
,
nil
)
==
0
end
function
s
.
eff
p
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
effop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
b1
=
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
aux
.
TRUE
,
tp
,
0
,
LOCATION_DECK
,
1
,
nil
)
local
b2
=
true
local
op
=
0
if
b1
or
b2
then
...
...
@@ -56,10 +56,7 @@ function s.effpop(e,tp,eg,ep,ev,re,r,rp)
if
op
==
1
then
Duel
.
ConfirmDecktop
(
tp
,
1
)
local
g1
=
Duel
.
GetDecktopGroup
(
tp
,
1
)
Duel
.
ConfirmDecktop
(
1
-
tp
,
1
)
local
g2
=
Duel
.
GetDecktopGroup
(
1
-
tp
,
1
)
local
res1
=
g1
:
GetFirst
():
IsType
(
TYPE_MONSTER
)
local
res2
=
g2
:
GetFirst
():
IsType
(
TYPE_MONSTER
)
if
res1
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -70,21 +67,8 @@ function s.effpop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
else
Duel
.
Damage
(
tp
,
4000
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
tp
,
4000
,
REASON_EFFECT
)
end
if
res2
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EFFECT_REFLECT_DAMAGE
)
e1
:
SetTargetRange
(
0
,
1
)
e1
:
SetValue
(
s
.
val
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
else
Duel
.
Damage
(
1
-
tp
,
4000
,
REASON_EFFECT
,
true
)
end
Duel
.
RDComplete
()
elseif
op
==
2
then
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
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