Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
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
1
Merge Requests
1
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
nanahira
ygopro
Commits
c1deebe6
Commit
c1deebe6
authored
May 15, 2021
by
kamijyoeast
Committed by
GitHub
May 15, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update_20210513_18:55 (#47)
* Add files via upload * Add files via upload
parent
0d4ab585
Changes
23
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
484 additions
and
79 deletions
+484
-79
expansions/script/c100730022.lua
expansions/script/c100730022.lua
+5
-5
expansions/script/c100730023.lua
expansions/script/c100730023.lua
+3
-3
expansions/script/c100730024.lua
expansions/script/c100730024.lua
+3
-3
expansions/script/c100730025.lua
expansions/script/c100730025.lua
+3
-3
expansions/script/c100730074.lua
expansions/script/c100730074.lua
+4
-7
expansions/script/c100730109.lua
expansions/script/c100730109.lua
+2
-2
expansions/script/c100730126.lua
expansions/script/c100730126.lua
+5
-0
expansions/script/c100730129.lua
expansions/script/c100730129.lua
+23
-8
expansions/script/c100730130.lua
expansions/script/c100730130.lua
+23
-9
expansions/script/c100730189.lua
expansions/script/c100730189.lua
+4
-3
expansions/script/c100730192.lua
expansions/script/c100730192.lua
+2
-1
expansions/script/c100730195.lua
expansions/script/c100730195.lua
+1
-0
expansions/script/c100730259.lua
expansions/script/c100730259.lua
+4
-7
expansions/script/c100730307.lua
expansions/script/c100730307.lua
+37
-0
expansions/script/c100730308.lua
expansions/script/c100730308.lua
+21
-0
expansions/script/c100730309.lua
expansions/script/c100730309.lua
+26
-0
expansions/script/c100730310.lua
expansions/script/c100730310.lua
+23
-0
expansions/script/c100730311.lua
expansions/script/c100730311.lua
+46
-0
expansions/script/c150690129.lua
expansions/script/c150690129.lua
+92
-0
expansions/script/c151124303.lua
expansions/script/c151124303.lua
+128
-0
expansions/script/c187054946.lua
expansions/script/c187054946.lua
+23
-23
expansions/script/special.lua
expansions/script/special.lua
+6
-5
expansions/speed-duel.cdb
expansions/speed-duel.cdb
+0
-0
No files found.
expansions/script/c100730022.lua
View file @
c1deebe6
...
...
@@ -9,10 +9,10 @@ function c100730022.skill(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730022
)
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
+
3500
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_HAND
,
0
,
nil
)
g
=
g
:
RandomSelect
(
tp
,
1
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
c
=
Duel
.
CreateToken
(
tp
,
20871001
)
aux
.
SpeedDuelSendToHandWithExile
(
tp
,
c
)
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
nil
)
local
c
=
g
:
Select
(
tp
,
1
,
1
,
nil
)
Duel
.
SendtoDeck
(
c
,
nil
,
1
,
REASON_RULE
)
local
d
=
Duel
.
CreateToken
(
tp
,
20871001
)
aux
.
SpeedDuelSendToHandWithExile
(
tp
,
d
)
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730023.lua
View file @
c1deebe6
...
...
@@ -9,9 +9,9 @@ function c100730023.skill(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730023
)
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
+
5000
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_HAND
,
0
,
nil
)
g
=
g
:
RandomSelect
(
tp
,
2
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
nil
)
local
c
=
g
:
Select
(
tp
,
2
,
2
,
nil
)
Duel
.
SendtoDeck
(
c
,
nil
,
1
,
REASON_RULE
)
local
c
=
Duel
.
CreateToken
(
tp
,
38199696
)
aux
.
SpeedDuelSendToHandWithExile
(
tp
,
c
)
local
c
=
Duel
.
CreateToken
(
tp
,
38199696
)
...
...
expansions/script/c100730024.lua
View file @
c1deebe6
...
...
@@ -9,9 +9,9 @@ function c100730024.skill(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730024
)
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
+
7500
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_HAND
,
0
,
nil
)
g
=
g
:
RandomSelect
(
tp
,
3
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
nil
)
local
c
=
g
:
Select
(
tp
,
3
,
3
,
nil
)
Duel
.
SendtoDeck
(
c
,
nil
,
1
,
REASON_RULE
)
local
c
=
Duel
.
CreateToken
(
tp
,
98535702
)
aux
.
SpeedDuelSendToHandWithExile
(
tp
,
c
)
local
c
=
Duel
.
CreateToken
(
tp
,
98535702
)
...
...
expansions/script/c100730025.lua
View file @
c1deebe6
...
...
@@ -9,9 +9,9 @@ function c100730025.skill(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730025
)
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
+
10000
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_HAND
,
0
,
nil
)
g
=
g
:
RandomSelect
(
tp
,
4
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
nil
)
local
c
=
g
:
Select
(
tp
,
4
,
4
,
nil
)
Duel
.
SendtoDeck
(
c
,
nil
,
1
,
REASON_RULE
)
local
c
=
Duel
.
CreateToken
(
tp
,
29389368
)
aux
.
SpeedDuelSendToHandWithExile
(
tp
,
c
)
local
c
=
Duel
.
CreateToken
(
tp
,
29389368
)
...
...
expansions/script/c100730074.lua
View file @
c1deebe6
--高速决斗技能-一手起动器
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730074
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToDeckCommon
(
72896720
,
c
)
aux
.
SpeedDuelMoveCardToDeckCommon
(
38904695
,
c
)
aux
.
SpeedDuelMoveCardToDeckCommon
(
81020646
,
c
)
aux
.
SpeedDuelBeforeDraw
(
c
,
c100730074
.
skill
)
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
...
...
@@ -13,10 +10,10 @@ function c100730074.skill(e,tp,eg,ep,ev,re,r,rp)
if
Duel
.
IsExistingMatchingCard
(
Card
.
IsAttribute
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
0x5f
)
then
Duel
.
Hint
(
HINT_MESSAGE
,
tp
,
aux
.
Stringid
(
100730074
,
0
))
else
local
g
=
Duel
.
Get
FieldGroup
(
tp
,
LOCATION_HAND
,
0
)
local
c
=
g
:
RandomSelect
(
tp
,
1
)
g
:
RemoveCard
(
c
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g
=
Duel
.
Get
MatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_HAND
,
0
,
nil
)
local
c
t
=
g
:
GetCount
(
)
local
c
=
g
:
Select
(
tp
,
ct
-
1
,
ct
-
1
,
nil
)
Duel
.
SendtoDeck
(
c
,
nil
,
2
,
REASON_RULE
)
local
e1
=
Effect
.
GlobalEffect
()
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetCode
(
EFFECT_DRAW_COUNT
)
...
...
expansions/script/c100730109.lua
View file @
c1deebe6
...
...
@@ -15,8 +15,8 @@ function c100730109.skill(e,tp,c)
local
c
=
g
:
Select
(
tp
,
2
,
4
,
nil
)
if
c
then
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730109
)
Duel
.
HintSelection
(
g
)
Duel
.
SendtoDeck
(
c
,
nil
,
2
,
REASON_EFFECT
)
Duel
.
HintSelection
(
c
)
Duel
.
SendtoDeck
(
c
,
nil
,
0
,
REASON_EFFECT
)
Duel
.
Recover
(
tp
,
2000
,
REASON_EFFECT
)
e
:
Reset
()
end
...
...
expansions/script/c100730126.lua
View file @
c1deebe6
...
...
@@ -21,5 +21,10 @@ function c100730126.skill(e,tp,c)
local
d
=
Duel
.
CreateToken
(
tp
,
24094653
)
Duel
.
SendtoHand
(
d
,
nil
,
REASON_RULE
)
Duel
.
ConfirmCards
(
1
-
tp
,
d
)
if
g
:
GetCount
()
==
3
then
local
c
=
Duel
.
CreateToken
(
tp
,
53347303
)
Duel
.
SendtoHand
(
c
,
nil
,
REASON_RULE
)
Duel
.
ConfirmCards
(
1
-
tp
,
c
)
end
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730129.lua
View file @
c1deebe6
--高速决斗技能-空手组合技无限
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730129
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
66957584
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
45313724
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
40555959
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
67616300
,
c
)
aux
.
SpeedDuelBeforeDraw
(
c
,
c100730129
.
skill
)
aux
.
RegisterSpeedDuelSkillCardCommon
()
...
...
@@ -11,16 +8,34 @@ end
function
c100730129
.
skill
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730129
)
local
c
=
Duel
.
CreateToken
(
tp
,
81020646
)
Duel
.
SendtoDeck
(
c
,
nil
,
0
,
REASON_RULE
)
local
d
=
Duel
.
CreateToken
(
tp
,
13582837
)
Duel
.
SendtoDeck
(
d
,
nil
,
0
,
REASON_RULE
)
local
xc
=
Duel
.
CreateToken
(
tp
,
82434071
)
Duel
.
SendtoDeck
(
xc
,
nil
,
0
,
REASON_RULE
)
local
d1
=
Duel
.
CreateToken
(
tp
,
45313724
)
Duel
.
SendtoDeck
(
d1
,
nil
,
0
,
REASON_RULE
)
local
d2
=
Duel
.
CreateToken
(
tp
,
18712704
)
Duel
.
SendtoDeck
(
d2
,
nil
,
0
,
REASON_RULE
)
local
d3
=
Duel
.
CreateToken
(
tp
,
40555959
)
Duel
.
SendtoDeck
(
d3
,
nil
,
0
,
REASON_RULE
)
local
d4
=
Duel
.
CreateToken
(
tp
,
14550855
)
Duel
.
SendtoDeck
(
d4
,
nil
,
0
,
REASON_RULE
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_HAND
,
0
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
72896720
)
if
g2
:
GetCount
()
>
0
then
local
tc
=
g2
:
GetFirst
()
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
c
=
Duel
.
CreateToken
(
tp
,
81020646
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
d
=
Duel
.
CreateToken
(
tp
,
13582837
)
Duel
.
SpecialSummon
(
g2
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP_ATTACK
,
0x60
)
local
sc
=
Duel
.
CreateToken
(
tp
,
5560911
)
Duel
.
SpecialSummon
(
sc
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
g3
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
13582837
,
82434071
)
local
tc
=
g3
:
GetFirst
()
Duel
.
Summon
(
tp
,
tc
,
false
,
nil
)
Duel
.
Summon
(
tp
,
d
,
false
,
nil
)
local
sg
=
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_DECK
,
0
,
nil
,
45313724
,
66957584
,
40555959
,
14550855
,
18712704
)
local
g1
=
sg
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
3
,
3
)
Duel
.
SSet
(
tp
,
g1
)
end
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730130.lua
View file @
c1deebe6
--高速决斗技能-空手组合技100
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730130
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
33904024
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
77859858
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
40555959
,
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
80921533
,
c
)
aux
.
SpeedDuelBeforeDraw
(
c
,
c100730130
.
skill
)
aux
.
RegisterSpeedDuelSkillCardCommon
()
...
...
@@ -11,16 +8,33 @@ end
function
c100730130
.
skill
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730130
)
local
c
=
Duel
.
CreateToken
(
tp
,
81020646
)
Duel
.
SendtoDeck
(
c
,
nil
,
0
,
REASON_RULE
)
local
d
=
Duel
.
CreateToken
(
tp
,
13582837
)
Duel
.
SendtoDeck
(
d
,
nil
,
0
,
REASON_RULE
)
local
xc
=
Duel
.
CreateToken
(
tp
,
46263076
)
Duel
.
SendtoDeck
(
xc
,
nil
,
0
,
REASON_RULE
)
local
d1
=
Duel
.
CreateToken
(
tp
,
18739764
)
Duel
.
SendtoDeck
(
d1
,
nil
,
0
,
REASON_RULE
)
local
d2
=
Duel
.
CreateToken
(
tp
,
39967326
)
Duel
.
SendtoDeck
(
d2
,
nil
,
0
,
REASON_RULE
)
local
d3
=
Duel
.
CreateToken
(
tp
,
40555959
)
Duel
.
SendtoDeck
(
d3
,
nil
,
0
,
REASON_RULE
)
local
d4
=
Duel
.
CreateToken
(
tp
,
77859858
)
Duel
.
SendtoDeck
(
d4
,
nil
,
0
,
REASON_RULE
)
local
g
=
Duel
.
GetFieldGroup
(
tp
,
LOCATION_HAND
,
0
)
aux
.
SpeedDuelSendToDeckWithExile
(
tp
,
g
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
95453143
)
if
g2
:
GetCount
()
>
0
then
local
tc
=
g2
:
GetFirst
()
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
c
=
Duel
.
CreateToken
(
tp
,
81020646
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
d
=
Duel
.
CreateToken
(
tp
,
13582837
)
Duel
.
Summon
(
tp
,
d
,
false
,
nil
)
Duel
.
SpecialSummon
(
g2
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP_ATTACK
,
0x60
)
local
sc
=
Duel
.
CreateToken
(
tp
,
5560911
)
Duel
.
SpecialSummon
(
sc
,
0
,
tp
,
tp
,
true
,
true
,
POS_FACEUP_ATTACK
)
local
g3
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
13582837
,
82434071
)
local
tc
=
g3
:
GetFirst
()
Duel
.
Summon
(
tp
,
tc
,
false
,
nil
)
local
sg
=
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_DECK
,
0
,
nil
,
18739764
,
66957584
,
40555959
,
77859858
,
39967326
)
local
g1
=
sg
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
3
,
3
)
Duel
.
SSet
(
tp
,
g1
)
end
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730189.lua
View file @
c1deebe6
...
...
@@ -12,6 +12,7 @@ function c100730189.con(e,tp)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
aux
.
SpeedDuelAtMainPhaseCondition
(
e
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
c100730189
.
Isfairy
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
c100730189
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
and
Duel
.
IsPlayerCanSpecialSummon
(
tp
)
and
Duel
.
GetLP
(
tp
)
<=
6000
end
...
...
@@ -19,7 +20,7 @@ end
function
c100730189
.
skill
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730189
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
45939611
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c100730189
.
Isfairy
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_XMATERIAL
)
local
tc1
=
g1
:
GetFirst
()
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c100730189
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
)
...
...
@@ -50,6 +51,6 @@ function c100730189.skill(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetOwnerPlayer
(
tp
)
end
end
function
c100730189
.
filter
(
c
,
tp
)
return
c
:
IsCode
(
51960178
)
or
c
:
IsCode
(
23454876
)
function
c100730189
.
filter
(
c
)
return
c
:
IsCode
(
51960178
,
23454876
)
end
\ No newline at end of file
expansions/script/c100730192.lua
View file @
c1deebe6
...
...
@@ -7,7 +7,8 @@ end
function
c100730192
.
skill
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730192
)
Duel
.
Recover
(
1
-
tp
,
2000
,
REASON_EFFECT
)
Duel
.
Recover
(
1
-
tp
,
2000
,
REASON_EFFECT
)
Duel
.
Recover
(
tp
,
2000
,
REASON_EFFECT
)
local
count
=
1
if
Duel
.
GetTurnPlayer
()
~=
tp
then
count
=
2
...
...
expansions/script/c100730195.lua
View file @
c1deebe6
...
...
@@ -20,6 +20,7 @@ function c100730195.skill(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
sg
=
mg
:
Select
(
tp
,
1
,
1
,
nil
)
Duel
.
SendtoHand
(
sg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
end
end
end
...
...
expansions/script/c100730259.lua
View file @
c1deebe6
...
...
@@ -7,19 +7,16 @@ end
function
c100730259
.
skill
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
3
,
nil
,
6
5743
242
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
3
,
nil
,
6
7105
242
)
if
g1
:
GetCount
()
==
0
then
return
end
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730259
)
Duel
.
S
Set
(
tp
,
g1
)
Duel
.
S
endtoGrave
(
g1
,
REASON_RULE
)
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_DECK
)
-
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_DECK
,
0
)
if
ct
>
0
then
Duel
.
DiscardDeck
(
1
-
tp
,
ct
,
REASON_RULE
)
local
g
=
Group
.
CreateGroup
()
while
ct
>
0
do
local
c
=
Duel
.
CreateToken
(
tp
,
67105242
)
g
:
AddCard
(
c
)
aux
.
CardAddedBySkill
:
AddCard
(
c
)
Duel
.
SendtoGrave
(
g
,
REASON_RULE
)
local
c
=
Duel
.
CreateToken
(
tp
,
65743242
)
Duel
.
SendtoDeck
(
c
,
tp
,
1
,
REASON_RULE
)
ct
=
ct
-
1
end
end
...
...
expansions/script/c100730307.lua
0 → 100644
View file @
c1deebe6
--高速决斗技能-骰子爆发
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730307
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
39454112
,
c
)
aux
.
SpeedDuelAtMainPhase
(
c
,
c100730307
.
skill
,
c100730307
.
con
,
aux
.
Stringid
(
100730307
,
0
))
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
function
c100730307
.
filter
(
c
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsFaceup
()
end
function
c100730307
.
con
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
aux
.
SpeedDuelAtMainPhaseCondition
(
e
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
c100730307
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c100730307
.
skill
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730307
)
local
g
=
Duel
.
GetMatchingGroup
(
c100730307
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
if
g
:
GetCount
()
==
0
then
return
end
local
ct
=
Duel
.
TossDice
(
tp
,
1
)
local
tc
=
g
:
GetFirst
()
while
tc
do
local
e1
=
Effect
.
CreateEffect
(
tc
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
e1
:
SetValue
(
ct
*
50
)
tc
:
RegisterEffect
(
e1
)
tc
=
g
:
GetNext
()
end
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
+
LOCATION_GRAVE
,
0
,
0
,
1
,
nil
,
74137509
)
Duel
.
SendtoHand
(
g1
,
tp
,
REASON_RULE
)
if
ct
=
1
or
ct
=
6
then
return
end
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730308.lua
0 → 100644
View file @
c1deebe6
--高速决斗技能-骰子回复
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730308
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
39454112
,
c
)
aux
.
SpeedDuelAtMainPhase
(
c
,
c100730308
.
skill
,
c100730308
.
con
,
aux
.
Stringid
(
100730308
,
0
))
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
function
c100730308
.
con
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
aux
.
SpeedDuelAtMainPhaseCondition
(
e
,
tp
)
end
function
c100730308
.
skill
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730308
)
local
ct
=
Duel
.
TossDice
(
tp
,
1
)
Duel
.
Recover
(
tp
,
ct
*
200
,
REASON_EFFECT
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsCode
,
tp
,
LOCATION_DECK
+
LOCATION_GRAVE
,
0
,
0
,
1
,
nil
,
43061293
)
Duel
.
SendtoHand
(
g1
,
tp
,
REASON_RULE
)
if
ct
==
1
or
ct
==
6
then
return
end
e
:
Reset
()
end
\ No newline at end of file
expansions/script/c100730309.lua
0 → 100644
View file @
c1deebe6
--高速决斗技能-抽卡预感:骰子
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730309
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
76895648
,
c
)
aux
.
SpeedDuelReplaceDraw
(
c
,
c100730309
.
skill
,
c100730309
.
con
,
aux
.
Stringid
(
100730185
,
0
))
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
function
c100730309
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
Duel
.
GetTurnPlayer
()
==
tp
and
Duel
.
GetTurnCount
()
>=
2
and
Duel
.
GetMatchingGroupCount
(
c100730309
.
filter
,
tp
,
LOCATION_DECK
,
0
,
nil
)
>
5
end
function
c100730309
.
skill
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
if
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
100730309
,
0
))
then
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730309
)
local
g
=
Duel
.
GetMatchingGroup
(
c100730309
.
filter
,
tp
,
LOCATION_DECK
,
0
,
nil
)
if
not
g
or
g
:
GetCount
()
==
0
then
return
end
g
=
g
:
RandomSelect
(
tp
,
1
)
Duel
.
MoveSequence
(
g
:
GetFirst
(),
0
)
end
end
function
c100730309
.
filter
(
c
)
return
c
.
toss_dice
end
\ No newline at end of file
expansions/script/c100730310.lua
0 → 100644
View file @
c1deebe6
--高速决斗技能-骰子回归
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730310
.
initial_effect
(
c
)
aux
.
SpeedDuelAtMainPhase
(
c
,
c100730310
.
skill
,
c100730310
.
con
,
aux
.
Stringid
(
100730310
,
0
))
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
function
c100730310
.
con
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
aux
.
SpeedDuelAtMainPhaseCondition
(
e
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
)
end
function
c100730310
.
skill
(
e
,
tp
,
c
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsAbleToDeck
,
tp
,
LOCATION_GRAVE
,
0
,
nil
)
local
ct
=
Duel
.
TossDice
(
tp
,
1
)
local
c
=
g
:
Select
(
tp
,
1
,
ct
,
nil
)
if
c
then
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730310
)
Duel
.
HintSelection
(
c
)
Duel
.
SendtoDeck
(
c
,
nil
,
0
,
REASON_EFFECT
)
e
:
Reset
()
end
end
\ No newline at end of file
expansions/script/c100730311.lua
0 → 100644
View file @
c1deebe6
--高速决斗技能-神鬼食人魔·骰子
Duel
.
LoadScript
(
"speed_duel_common.lua"
)
function
c100730311
.
initial_effect
(
c
)
aux
.
SpeedDuelMoveCardToFieldCommon
(
31863912
,
c
)
aux
.
SpeedDuelBeforeDraw
(
c
,
c100730311
.
skill1
)
aux
.
SpeedDuelAtMainPhase
(
c
,
c100730311
.
skill
,
c100730311
.
con
,
aux
.
Stringid
(
100730171
,
1
))
aux
.
RegisterSpeedDuelSkillCardCommon
()
end
function
c100730311
.
skill1
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
local
c
=
Duel
.
CreateToken
(
tp
,
15744417
)
Duel
.
SendtoDeck
(
c
,
tp
,
0
,
REASON_RULE
)
e
:
Reset
()
end
function
c100730311
.
Isfairy
(
c
)
return
c
:
IsCode
(
81755371
)
and
c
:
IsFaceup
()
end
function
c100730311
.
con
(
e
,
tp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
return
aux
.
SpeedDuelAtMainPhaseCondition
(
e
,
tp
)
and
Duel
.
IsExistingMatchingCard
(
c100730311
.
Isfairy
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
c100730311
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
)
and
Duel
.
IsPlayerCanSpecialSummon
(
tp
)
end
function
c100730311
.
skill
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
tp
=
e
:
GetLabelObject
():
GetOwner
()
Duel
.
Hint
(
HINT_CARD
,
1
-
tp
,
100730311
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c100730311
.
Isfairy
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_XMATERIAL
)
local
tc1
=
g1
:
GetFirst
()
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c100730311
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tc2
=
g2
:
GetFirst
()
if
tc2
then
Duel
.
BreakEffect
()
tc2
:
SetMaterial
(
g1
)
Duel
.
Overlay
(
tc2
,
g1
)
Duel
.
SpecialSummon
(
tc2
,
SUMMON_TYPE_XYZ
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
tc2
:
CompleteProcedure
()
end
end
function
c100730311
.
filter
(
c
)
return
c
:
IsCode
(
42421606
)
end
\ No newline at end of file
expansions/script/c150690129.lua
0 → 100644
View file @
c1deebe6
--魔偶甜点·两面包夹芝士
function
c150690129
.
initial_effect
(
c
)
--spsummon from hand
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
150690129
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
150690129
)
e1
:
SetCondition
(
c150690129
.
spcon1
)
e1
:
SetTarget
(
c150690129
.
sptg1
)
e1
:
SetOperation
(
c150690129
.
spop1
)
c
:
RegisterEffect
(
e1
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
150690129
,
1
))
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetCountLimit
(
1
,
150690130
)
e2
:
SetTarget
(
c150690129
.
sptg2
)
e2
:
SetOperation
(
c150690129
.
spop2
)
c
:
RegisterEffect
(
e2
)
--to deck
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
150690129
,
0
))
e3
:
SetCategory
(
CATEGORY_TODECK
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e3
:
SetCode
(
EVENT_TO_GRAVE
)
e3
:
SetCondition
(
c150690129
.
retcon
)
e3
:
SetTarget
(
c150690129
.
rettg
)
e3
:
SetOperation
(
c150690129
.
retop
)
c
:
RegisterEffect
(
e3
)
end
function
c150690129
.
spcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
c150690129
.
spfilter1
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c150690129
.
spfilter1
(
c
)
return
c
:
IsSetCard
(
0x71
)
and
c
:
IsPosition
(
POS_DEFENSE
)
end
function
c150690129
.
sptg1
(
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
,
false
,
false
)
and
Duel
.
IsExistingTarget
(
c150690129
.
spfilter1
,
tp
,
LOCATION_MZONE
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_POSCHANGE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c150690129
.
spfilter1
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_POSITION
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c150690129
.
spop1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsPosition
(
POS_DEFENSE
)
and
c
:
IsRelateToEffect
(
e
)
then
Duel
.
ChangePosition
(
tc
,
POS_FACEUP_ATTACK
)
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c150690129
.
spfilter2
(
c
,
e
,
tp
)
return
c
:
IsCode
(
49374988
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c150690129
.
sptg2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c150690129
.
spfilter2
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
)
end
function
c150690129
.
spop2
(
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
,
c150690129
.
spfilter2
,
tp
,
LOCATION_DECK
+
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
and
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
>
0
then
local
tc
=
g
:
GetFirst
()
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_ADD_TYPE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e1
:
SetValue
(
TYPE_TUNER
)
tc
:
RegisterEffect
(
e1
)
end
end
function
c150690129
.
retcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsReason
(
REASON_DESTROY
)
and
e
:
GetHandler
():
GetReasonPlayer
()
==
1
-
tp
and
e
:
GetHandler
():
GetPreviousControler
()
==
tp
end
function
c150690129
.
rettg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c150690129
.
retop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
Duel
.
SendtoDeck
(
e
:
GetHandler
(),
nil
,
2
,
REASON_EFFECT
)
end
end
\ No newline at end of file
expansions/script/c151124303.lua
0 → 100644
View file @
c1deebe6
--邪遗式的觉醒
function
c151124303
.
initial_effect
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetTarget
(
c151124303
.
target
)
e1
:
SetOperation
(
c151124303
.
activate
)
c
:
RegisterEffect
(
e1
)
--to hand
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
22398665
,
1
))
e2
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCountLimit
(
1
,
151124303
)
e2
:
SetCondition
(
c151124303
.
thcon
)
e2
:
SetTarget
(
c151124303
.
thtg
)
e2
:
SetOperation
(
c151124303
.
thop
)
c
:
RegisterEffect
(
e2
)
end
function
c151124303
.
spfilter
(
c
,
e
,
tp
,
mc
)
return
c
:
IsSetCard
(
0x3a
)
and
bit
.
band
(
c
:
GetType
(),
0x81
)
==
0x81
and
(
not
c
.
mat_filter
or
c
.
mat_filter
(
mc
,
tp
))
and
c
:
IsCanBeSpecialSummoned
(
e
,
SUMMON_TYPE_RITUAL
,
tp
,
false
,
true
)
and
mc
:
IsCanBeRitualMaterial
(
c
)
end
function
c151124303
.
rfilter
(
c
,
mc
)
local
mlv
=
mc
:
GetRitualLevel
(
c
)
if
mlv
==
mc
:
GetLevel
()
then
return
false
end
local
lv
=
c
:
GetLevel
()
return
lv
==
bit
.
band
(
mlv
,
0xffff
)
or
lv
==
bit
.
rshift
(
mlv
,
16
)
end
function
c151124303
.
filter
(
c
,
e
,
tp
)
local
sg
=
Duel
.
GetMatchingGroup
(
c151124303
.
spfilter
,
tp
,
LOCATION_HAND
,
0
,
c
,
e
,
tp
,
c
)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
c
:
IsLocation
(
LOCATION_MZONE
)
then
ft
=
ft
+
1
end
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
ft
=
1
end
return
sg
:
IsExists
(
c151124303
.
rfilter
,
1
,
nil
,
c
)
or
sg
:
CheckWithSumEqual
(
Card
.
GetLevel
,
c
:
GetLevel
(),
1
,
ft
)
end
function
c151124303
.
mfilter
(
c
)
return
c
:
GetLevel
()
>
0
and
c
:
IsAbleToGrave
()
end
function
c151124303
.
mzfilter
(
c
,
tp
)
return
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsControler
(
tp
)
and
c
:
GetSequence
()
<
5
end
function
c151124303
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
ft
<
0
then
return
false
end
local
mg
=
Duel
.
GetRitualMaterial
(
tp
)
if
ft
>
0
then
local
mg2
=
Duel
.
GetMatchingGroup
(
c151124303
.
mfilter
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
mg
:
Merge
(
mg2
)
else
mg
=
mg
:
Filter
(
c151124303
.
mzfilter
,
nil
,
tp
)
end
return
mg
:
IsExists
(
c151124303
.
filter
,
1
,
nil
,
e
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_HAND
)
end
function
c151124303
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
ft
<
0
then
return
end
local
mg
=
Duel
.
GetRitualMaterial
(
tp
)
if
ft
>
0
then
local
mg2
=
Duel
.
GetMatchingGroup
(
c151124303
.
mfilter
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
mg
:
Merge
(
mg2
)
else
mg
=
mg
:
Filter
(
c151124303
.
mzfilter
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
mat
=
mg
:
FilterSelect
(
tp
,
c151124303
.
filter
,
1
,
1
,
nil
,
e
,
tp
)
local
mc
=
mat
:
GetFirst
()
if
not
mc
then
return
end
local
sg
=
Duel
.
GetMatchingGroup
(
c151124303
.
spfilter
,
tp
,
LOCATION_HAND
,
0
,
mc
,
e
,
tp
,
mc
)
if
mc
:
IsLocation
(
LOCATION_MZONE
)
then
ft
=
ft
+
1
end
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
ft
=
1
end
local
b1
=
sg
:
IsExists
(
c151124303
.
rfilter
,
1
,
nil
,
mc
)
local
b2
=
sg
:
CheckWithSumEqual
(
Card
.
GetLevel
,
mc
:
GetLevel
(),
1
,
ft
)
if
b1
and
(
not
b2
or
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
151124303
,
0
)))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tg
=
sg
:
FilterSelect
(
tp
,
c151124303
.
rfilter
,
1
,
1
,
nil
,
mc
)
local
tc
=
tg
:
GetFirst
()
tc
:
SetMaterial
(
mat
)
if
not
mc
:
IsLocation
(
LOCATION_EXTRA
)
then
Duel
.
ReleaseRitualMaterial
(
mat
)
else
Duel
.
SendtoGrave
(
mat
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_RITUAL
)
end
Duel
.
BreakEffect
()
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_RITUAL
,
tp
,
tp
,
false
,
true
,
POS_FACEUP
)
tc
:
CompleteProcedure
()
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
tg
=
sg
:
SelectWithSumEqual
(
tp
,
Card
.
GetLevel
,
mc
:
GetLevel
(),
1
,
ft
)
local
tc
=
tg
:
GetFirst
()
while
tc
do
tc
:
SetMaterial
(
mat
)
tc
=
tg
:
GetNext
()
end
if
not
mc
:
IsLocation
(
LOCATION_EXTRA
)
then
Duel
.
ReleaseRitualMaterial
(
mat
)
else
Duel
.
SendtoGrave
(
mat
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_RITUAL
)
end
Duel
.
BreakEffect
()
tc
=
tg
:
GetFirst
()
while
tc
do
Duel
.
SpecialSummonStep
(
tc
,
SUMMON_TYPE_RITUAL
,
tp
,
tp
,
false
,
true
,
POS_FACEUP
)
tc
:
CompleteProcedure
()
tc
=
tg
:
GetNext
()
end
Duel
.
SpecialSummonComplete
()
end
end
function
c151124303
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
==
0
end
function
c151124303
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToHand
()
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c151124303
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
SendtoHand
(
c
,
nil
,
REASON_EFFECT
)
end
\ No newline at end of file
expansions/script/c187054946.lua
View file @
c1deebe6
...
...
@@ -12,15 +12,17 @@ function c187054946.initial_effect(c)
e1
:
SetOperation
(
c187054946
.
regop
)
c
:
RegisterEffect
(
e1
)
--special summon
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e5
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e5
:
SetCode
(
EVENT_LEAVE_FIELD
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCondition
(
c187054946
.
spcon
)
e5
:
SetTarget
(
c187054946
.
sptg
)
e5
:
SetOperation
(
c187054946
.
spop
)
c
:
RegisterEffect
(
e5
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
187054946
,
0
))
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCost
(
c187054946
.
spcost1
)
e2
:
SetTarget
(
c187054946
.
sptg1
)
e2
:
SetOperation
(
c187054946
.
spop1
)
c
:
RegisterEffect
(
e2
)
end
function
c187054946
.
lcheck
(
g
,
lc
)
return
g
:
IsExists
(
Card
.
IsLinkType
,
1
,
nil
,
TYPE_FUSION
)
...
...
@@ -37,7 +39,7 @@ function c187054946.regop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetCode
(
EFFECT_CANNOT_REMOVE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
1
)
e1
:
SetTargetRange
(
0
,
1
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterFlagEffect
(
0
,
RESET_EVENT
+
RESETS_STANDARD
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
87054946
,
0
))
end
...
...
@@ -58,8 +60,7 @@ function c187054946.regop(e,tp,eg,ep,ev,re,r,rp)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e3
:
SetTargetRange
(
1
,
1
)
e3
:
SetTargetRange
(
0
,
1
)
e3
:
SetTarget
(
c187054946
.
sumlimit
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterFlagEffect
(
0
,
RESET_EVENT
+
RESETS_STANDARD
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
87054946
,
2
))
...
...
@@ -68,23 +69,22 @@ end
function
c187054946
.
sumlimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
)
return
c
:
IsAttackAbove
(
2300
)
end
function
c187054946
.
spco
n
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
return
c
:
IsPreviousPosition
(
POS_FACEUP
)
function
c187054946
.
spco
st1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
IsAbleToExtraAsCost
()
end
Duel
.
SendtoDeck
(
e
:
GetHandler
(),
nil
,
0
,
REASON_COST
)
end
function
c187054946
.
filter
(
c
,
e
,
tp
)
function
c187054946
.
spfilter
(
c
,
e
,
tp
,
ec
)
return
c
:
IsCode
(
83866861
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
true
,
false
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
ec
,
c
,
0x60
)
>
0
end
function
c187054946
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c187054946
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
)
end
function
c187054946
.
sptg1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c187054946
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
,
e
:
GetHandler
())
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_EXTRA
)
end
function
c187054946
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
function
c187054946
.
spop1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
c187054946
.
filter
),
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c187054946
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
,
e
:
GetHandler
()
)
if
g
:
GetCount
()
>
0
then
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
true
,
false
,
POS_FACEUP
,
0x60
)
end
end
\ No newline at end of file
expansions/script/special.lua
View file @
c1deebe6
...
...
@@ -165,7 +165,7 @@ function aux.DisableBigDamage()
Duel
.
RegisterEffect
(
e1
,
0
)
end
function
aux
.
DisableBigDamageValue
(
e
,
re
,
val
,
r
,
rp
,
rc
)
if
r
&
REASON_EFFECT
==
REASON_EFFECT
and
val
>=
2000
then
return
0
end
if
r
&
REASON_EFFECT
==
REASON_EFFECT
and
val
>=
3000
then
return
300
0
end
return
val
end
function
aux
.
CheckDesDeckFilter
(
c
,
tp
)
...
...
@@ -179,7 +179,7 @@ end
function
aux
.
CheckDesDeckOperation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
eg
:
Filter
(
aux
.
CheckDesDeckFilter
,
nil
,
tp
)
aux
.
DeckDesCount
[
tp
]
=
aux
.
DeckDesCount
[
tp
]
+
g
:
GetCount
()
if
aux
.
DeckDesCount
[
tp
]
>=
6
then
if
aux
.
DeckDesCount
[
tp
]
>=
8
then
Duel
.
SetLP
(
1
-
tp
,
0
)
end
end
...
...
@@ -208,10 +208,10 @@ end
function
aux
.
CannotActivate
(
tp
)
if
not
aux
.
SP4
then
aux
.
SP4
=
{
73915051
,
78785392
}
aux
.
SP3
=
{
18027138
,
18322364
,
33298291
,
34707034
,
49808196
,
50750868
,
56051648
,
65664792
,
67949763
,
72537897
,
73199638
,
93224848
,
96383838
,
97433739
,
97926515
}
aux
.
SP3
=
{
18027138
,
40975243
,
18322364
,
33298291
,
34707034
,
49808196
,
50750868
,
56051648
,
65664792
,
7949763
,
72537897
,
73199638
,
93224848
,
96383838
,
97433739
}
aux
.
SP3Ex
=
{
7392745
,
29843091
,
42956963
}
aux
.
SP2
=
{
1969506
,
6148016
,
7161742
,
9925982
,
9929398
,
10698416
,
10971759
,
10971759
,
13482262
,
13504844
,
14604710
,
15341821
,
15394083
,
17418744
,
17502671
,
20285786
,
21007444
,
21179143
,
22110647
,
23536866
,
29087919
,
31986288
,
33551032
,
39998992
,
40450317
,
40844552
,
41197012
,
41442341
,
43140791
,
44161893
,
46005939
,
46173679
,
48411996
,
51205763
,
51987571
,
55416843
,
56337500
,
56597272
,
57288708
,
58531587
,
58787301
,
60764581
,
60930169
,
61314842
,
61840587
,
61948106
,
62376646
,
64496451
,
66393507
,
71541986
,
71867500
,
73906480
,
74875003
,
75252099
,
76930964
,
77642288
,
77847678
,
79783880
,
80802524
,
81587028
,
82324105
,
86174055
,
92781606
}
aux
.
SP2Ex
=
{
14470845
,
28062325
,
41141943
,
93749093
,
93775296
}
aux
.
SP2
=
{
1969506
,
6148016
,
7161742
,
9925982
,
9929398
,
10698416
,
10971759
,
10971759
,
13482262
,
13504844
,
14604710
,
15341821
,
15394083
,
17418744
,
17502671
,
20285786
,
21007444
,
21179143
,
22110647
,
23536866
,
29087919
,
31986288
,
33551032
,
39998992
,
40450317
,
40844552
,
41197012
,
41442341
,
43140791
,
44161893
,
46005939
,
46173679
,
48411996
,
51205763
,
51987571
,
55416843
,
56337500
,
56597272
,
57288708
,
58531587
,
58787301
,
60764581
,
60930169
,
61314842
,
61840587
,
61948106
,
62376646
,
64496451
,
66393507
,
71541986
,
71867500
,
73906480
,
74875003
,
80701178
,
76930964
,
77642288
,
77847678
,
80802524
,
81587028
,
82324105
,
86174055
,
92781606
}
aux
.
SP2Ex
=
{
14470845
,
28062325
,
41141943
,
75252099
,
93749093
,
93775296
}
end
--cannot activate
local
e1
=
Effect
.
GlobalEffect
()
...
...
@@ -243,6 +243,7 @@ function aux.CannotActivateValue(e,te,tp)
if
mon
>
1
and
aux
.
IsTableContainValue
(
aux
.
SP2
,
code
)
then
return
true
end
if
enemymon
>
1
and
aux
.
IsTableContainValue
(
aux
.
SP2Ex
,
code
)
then
return
true
end
if
mon
>
1
and
code
==
22227683
and
te
:
GetCode
()
==
EVENT_BATTLE_DESTROYING
then
return
true
end
if
mon
>
1
and
code
==
58054262
and
te
:
GetCategory
()
==
CATEGORY_SPECIAL_SUMMON
then
return
true
end
if
mon
>
1
and
code
==
25669282
and
te
:
GetHandler
():
IsLocation
(
LOCATION_GRAVE
)
then
return
true
end
if
mon
>
1
and
code
==
27198001
and
te
:
GetCode
()
==
EVENT_TO_GRAVE
then
return
true
end
if
mon
>
1
and
code
==
34767865
and
te
:
GetRange
()
==
LOCATION_GRAVE
then
return
true
end
...
...
expansions/speed-duel.cdb
View file @
c1deebe6
No preview for this file type
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