Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-222DIY-cards
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
alstroemeria-silentlove
ygopro-222DIY-cards
Commits
b59f31ce
Commit
b59f31ce
authored
Dec 04, 2023
by
Huangnan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
01fd2bb0
Pipeline
#24243
passed with stages
in 24 minutes and 58 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
44 additions
and
37 deletions
+44
-37
expansions/script/c17055000.lua
expansions/script/c17055000.lua
+44
-37
No files found.
expansions/script/c17055000.lua
View file @
b59f31ce
--
local
m
=
17055000
local
cm
=
_G
[
"c"
..
m
]
cm
.
dfc_front_side
=
m
cm
.
dfc_back_side1
=
17055010
cm
.
dfc_back_side2
=
17055020
function
cm
.
initial_effect
(
c
)
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
c
:
EnableReviveLimit
()
--special summon
local
e1
=
Effect
.
CreateEffect
(
c
)
...
...
@@ -12,56 +8,67 @@ function cm.initial_effect(c)
e1
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCondition
(
cm
.
spcon
)
e1
:
SetOperation
(
cm
.
spop
)
e1
:
SetCondition
(
s
.
spcon
)
e1
:
SetOperation
(
s
.
spop
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_GRANT
)
e2
:
SetRange
(
LOCATION_HAND
)
e2
:
SetTargetRange
(
LOCATION_HAND
,
0
)
e2
:
SetTarget
(
cm
.
eftg
)
e2
:
SetTarget
(
s
.
eftg
)
e2
:
SetLabelObject
(
e1
)
c
:
RegisterEffect
(
e2
)
if
not
cm
.
global_flag
then
cm
.
global_flag
=
true
if
not
s
.
global_flag
then
s
.
global_flag
=
true
s
[
0
]
=
0
s
[
1
]
=
0
local
ge0
=
Effect
.
CreateEffect
(
c
)
ge0
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
ge0
:
SetCode
(
EVENT_CHAINING
)
ge0
:
SetCondition
(
cm
.
atcon
)
ge0
:
SetOperation
(
cm
.
atop
)
ge0
:
SetCondition
(
s
.
atcon
)
ge0
:
SetOperation
(
s
.
atop
)
Duel
.
RegisterEffect
(
ge0
,
0
)
local
ge1
=
Effect
.
CreateEffect
(
c
)
ge1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge1
:
SetCode
(
EVENT_CHAIN_SOLVED
)
ge1
:
SetCondition
(
cm
.
regcon
)
ge1
:
SetOperation
(
cm
.
regop
)
ge1
:
SetCondition
(
s
.
regcon
)
ge1
:
SetOperation
(
s
.
regop
)
Duel
.
RegisterEffect
(
ge1
,
0
)
end
end
function
cm
.
eftg
(
e
,
c
)
s
.
dfc_front_side
=
id
s
.
dfc_back_side1
=
17055010
s
.
dfc_back_side2
=
17055020
function
s
.
eftg
(
e
,
c
)
return
c
==
e
:
GetHandler
()
end
function
cm
.
atcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
atcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
and
re
:
IsActiveType
(
TYPE_SPELL
)
end
function
cm
.
atop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
RegisterFlagEffect
(
rp
,
17061154
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
+
RESET_CHAIN
,
0
,
1
)
function
s
.
atop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
RegisterFlagEffect
(
rp
,
id
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
+
RESET_CHAIN
,
0
,
1
)
end
function
cm
.
regcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
regcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
Duel
.
GetFlagEffect
(
rp
,
17061154
)
>
0
and
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
return
Duel
.
GetFlagEffect
(
rp
,
id
)
>
0
and
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
end
function
cm
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
RegisterFlagEffect
(
rp
,
17055000
,
0
,
0
,
0
)
function
s
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetFlagEffect
(
rp
,
id
+
1
)
==
0
then
s
[
rp
]
=
s
[
rp
]
+
1
if
s
[
rp
]
>=
10
then
Duel
.
Hint
(
HINT_CARD
,
0
,
id
)
Duel
.
RegisterFlagEffect
(
rp
,
id
+
1
,
0
,
0
,
0
)
end
end
end
function
cm
.
spcon
(
e
,
c
)
function
s
.
spcon
(
e
,
c
)
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
local
b1
=
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
17055010
,
0
,
0x21
,
4000
,
4000
,
10
,
RACE_DRAGON
,
ATTRIBUTE_LIGHT
)
local
b2
=
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
17055020
,
0
,
0x21
,
4000
,
4000
,
10
,
RACE_DRAGON
,
ATTRIBUTE_DARK
)
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
(
b1
or
b2
)
and
Duel
.
GetFlagEffect
(
tp
,
17055000
)
>=
1
0
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
(
b1
or
b2
)
and
Duel
.
GetFlagEffect
(
tp
,
id
+
1
)
>
0
end
function
cm
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
function
s
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
local
b1
=
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
17055010
,
0
,
0x21
,
4000
,
4000
,
10
,
RACE_DRAGON
,
ATTRIBUTE_LIGHT
)
local
b2
=
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
17055020
,
0
,
0x21
,
4000
,
4000
,
10
,
RACE_DRAGON
,
ATTRIBUTE_DARK
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
(
b1
or
b2
)
end
...
...
@@ -69,17 +76,18 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
local
ops
=
{}
local
opval
=
{}
if
b1
then
ops
[
off
]
=
aux
.
Stringid
(
17055000
,
1
)
ops
[
off
]
=
aux
.
Stringid
(
id
,
1
)
opval
[
off
-
1
]
=
1
off
=
off
+
1
end
if
b2
then
ops
[
off
]
=
aux
.
Stringid
(
17055000
,
2
)
ops
[
off
]
=
aux
.
Stringid
(
id
,
2
)
opval
[
off
-
1
]
=
2
off
=
off
+
1
end
local
op
=
Duel
.
SelectOption
(
tp
,
table.unpack
(
ops
))
Duel
.
Hint
(
HINT_CARD
,
0
,
17055010
+
op
*
10
)
local
tcode
=
17055010
+
op
*
10
Duel
.
Hint
(
HINT_CARD
,
0
,
tcode
)
--back
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
...
@@ -88,25 +96,24 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_SET_AVAILABLE
)
e1
:
SetCountLimit
(
1
)
e1
:
SetLabel
(
e
:
GetHandler
():
GetOriginalCode
())
e1
:
SetCondition
(
cm
.
backon
)
e1
:
SetOperation
(
cm
.
backop
)
e1
:
SetCondition
(
s
.
backon
)
e1
:
SetOperation
(
s
.
backop
)
e
:
GetHandler
():
RegisterEffect
(
e1
)
local
tcode
=
17055010
+
op
*
10
e
:
GetHandler
():
SetEntityCode
(
tcode
,
true
)
e
:
GetHandler
():
ReplaceEffect
(
tcode
,
0
,
0
)
Duel
.
ConfirmCards
(
1
-
tp
,
e
:
GetHandler
())
e
:
GetHandler
():
RegisterFlagEffect
(
17055000
,
0
,
0
,
0
)
e
:
GetHandler
():
RegisterFlagEffect
(
id
+
1
,
0
,
0
,
0
)
end
function
cm
.
backon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
backon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
e
:
GetHandler
():
GetFlagEffect
(
17055000
)
>
0
return
e
:
GetHandler
():
GetFlagEffect
(
id
+
1
)
>
0
end
function
cm
.
backop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
backop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tcode
=
e
:
GetLabel
()
c
:
SetEntityCode
(
tcode
)
Duel
.
ConfirmCards
(
tp
,
Group
.
FromCards
(
c
))
Duel
.
ConfirmCards
(
1
-
tp
,
Group
.
FromCards
(
c
))
c
:
ReplaceEffect
(
tcode
,
0
,
0
)
e
:
GetHandler
():
ResetFlagEffect
(
17055000
)
e
:
GetHandler
():
ResetFlagEffect
(
id
+
1
)
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