Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-scripts-888
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
3
Merge Requests
3
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
ygopro-scripts-888
Commits
6975d6f4
Commit
6975d6f4
authored
Jun 04, 2024
by
salix5
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' into INFO
parents
82261818
11f6d8d8
Changes
135
Hide whitespace changes
Inline
Side-by-side
Showing
135 changed files
with
1047 additions
and
1017 deletions
+1047
-1017
c13455674.lua
c13455674.lua
+1
-1
c15005145.lua
c15005145.lua
+1
-1
c15171722.lua
c15171722.lua
+1
-1
c15335853.lua
c15335853.lua
+1
-4
c15862758.lua
c15862758.lua
+2
-2
c15982593.lua
c15982593.lua
+1
-1
c16404809.lua
c16404809.lua
+1
-1
c16943770.lua
c16943770.lua
+1
-4
c17228908.lua
c17228908.lua
+2
-1
c17272964.lua
c17272964.lua
+1
-1
c17462320.lua
c17462320.lua
+1
-1
c17550376.lua
c17550376.lua
+1
-1
c18158393.lua
c18158393.lua
+1
-1
c18494511.lua
c18494511.lua
+1
-1
c19403423.lua
c19403423.lua
+1
-1
c1942635.lua
c1942635.lua
+1
-4
c19671433.lua
c19671433.lua
+1
-1
c197042.lua
c197042.lua
+1
-1
c20368763.lua
c20368763.lua
+1
-4
c20515672.lua
c20515672.lua
+1
-1
c20560620.lua
c20560620.lua
+6
-6
c2116237.lua
c2116237.lua
+1
-1
c21368273.lua
c21368273.lua
+1
-1
c22110647.lua
c22110647.lua
+1
-4
c22404675.lua
c22404675.lua
+2
-2
c23776077.lua
c23776077.lua
+1
-1
c25774450.lua
c25774450.lua
+1
-1
c26118970.lua
c26118970.lua
+2
-0
c26211048.lua
c26211048.lua
+1
-1
c27345070.lua
c27345070.lua
+1
-1
c2819435.lua
c2819435.lua
+4
-6
c28677304.lua
c28677304.lua
+1
-1
c29280200.lua
c29280200.lua
+128
-128
c29301450.lua
c29301450.lua
+1
-1
c29302858.lua
c29302858.lua
+109
-109
c29510428.lua
c29510428.lua
+1
-1
c29884951.lua
c29884951.lua
+1
-16
c30095833.lua
c30095833.lua
+1
-1
c30811116.lua
c30811116.lua
+1
-4
c31480215.lua
c31480215.lua
+1
-4
c31533704.lua
c31533704.lua
+1
-4
c31600513.lua
c31600513.lua
+1
-1
c31987203.lua
c31987203.lua
+1
-1
c32828635.lua
c32828635.lua
+1
-1
c33099732.lua
c33099732.lua
+2
-1
c35026117.lua
c35026117.lua
+1
-1
c36730805.lua
c36730805.lua
+2
-0
c37343995.lua
c37343995.lua
+2
-2
c38041940.lua
c38041940.lua
+2
-0
c38273745.lua
c38273745.lua
+9
-3
c38495396.lua
c38495396.lua
+1
-16
c38798785.lua
c38798785.lua
+1
-1
c39185163.lua
c39185163.lua
+1
-1
c40785230.lua
c40785230.lua
+1
-1
c41329458.lua
c41329458.lua
+1
-4
c41790641.lua
c41790641.lua
+10
-9
c42741437.lua
c42741437.lua
+1
-1
c42822433.lua
c42822433.lua
+1
-1
c43944080.lua
c43944080.lua
+1
-1
c44026393.lua
c44026393.lua
+1
-4
c4417407.lua
c4417407.lua
+1
-4
c44760562.lua
c44760562.lua
+1
-1
c45065541.lua
c45065541.lua
+1
-1
c47873397.lua
c47873397.lua
+1
-1
c48452496.lua
c48452496.lua
+1
-1
c51779204.lua
c51779204.lua
+1
-1
c53485634.lua
c53485634.lua
+1
-1
c53754104.lua
c53754104.lua
+1
-1
c54594017.lua
c54594017.lua
+1
-1
c54851325.lua
c54851325.lua
+1
-1
c55501446.lua
c55501446.lua
+1
-1
c55688914.lua
c55688914.lua
+123
-123
c56510115.lua
c56510115.lua
+1
-1
c56518311.lua
c56518311.lua
+1
-1
c56727340.lua
c56727340.lua
+1
-1
c57357130.lua
c57357130.lua
+1
-1
c57416183.lua
c57416183.lua
+1
-1
c57769391.lua
c57769391.lua
+1
-1
c58884063.lua
c58884063.lua
+6
-6
c60023855.lua
c60023855.lua
+1
-1
c601193.lua
c601193.lua
+1
-1
c60168186.lua
c60168186.lua
+1
-1
c60681103.lua
c60681103.lua
+1
-1
c65187687.lua
c65187687.lua
+1
-1
c65305978.lua
c65305978.lua
+1
-1
c66150724.lua
c66150724.lua
+1
-1
c66200210.lua
c66200210.lua
+1
-4
c66401502.lua
c66401502.lua
+110
-110
c66736715.lua
c66736715.lua
+1
-1
c67489919.lua
c67489919.lua
+1
-4
c67922702.lua
c67922702.lua
+1
-4
c71164684.lua
c71164684.lua
+1
-1
c71277255.lua
c71277255.lua
+1
-1
c71948047.lua
c71948047.lua
+1
-1
c7206349.lua
c7206349.lua
+1
-1
c72291078.lua
c72291078.lua
+1
-4
c73355951.lua
c73355951.lua
+3
-3
c7336745.lua
c7336745.lua
+1
-1
c74906081.lua
c74906081.lua
+1
-1
c75728539.lua
c75728539.lua
+1
-1
c76403456.lua
c76403456.lua
+1
-1
c76840111.lua
c76840111.lua
+1
-1
c76902476.lua
c76902476.lua
+1
-4
c77765207.lua
c77765207.lua
+1
-1
c78098950.lua
c78098950.lua
+1
-1
c79210531.lua
c79210531.lua
+1
-1
c81978611.lua
c81978611.lua
+1
-1
c82090807.lua
c82090807.lua
+1
-1
c82112494.lua
c82112494.lua
+1
-1
c83308376.lua
c83308376.lua
+1
-1
c83334932.lua
c83334932.lua
+1
-1
c83827392.lua
c83827392.lua
+1
-1
c84384943.lua
c84384943.lua
+1
-1
c86852702.lua
c86852702.lua
+67
-46
c87639778.lua
c87639778.lua
+5
-0
c89907227.lua
c89907227.lua
+1
-1
c90452877.lua
c90452877.lua
+3
-16
c91073013.lua
c91073013.lua
+128
-128
c91300233.lua
c91300233.lua
+1
-1
c91584698.lua
c91584698.lua
+1
-1
c91706817.lua
c91706817.lua
+5
-1
c92895501.lua
c92895501.lua
+116
-116
c9336190.lua
c9336190.lua
+3
-1
c94973028.lua
c94973028.lua
+1
-4
c95243515.lua
c95243515.lua
+1
-1
c95816395.lua
c95816395.lua
+1
-1
c96239878.lua
c96239878.lua
+1
-1
c97417863.lua
c97417863.lua
+1
-1
c97697678.lua
c97697678.lua
+1
-1
c98020526.lua
c98020526.lua
+1
-1
c98301564.lua
c98301564.lua
+1
-1
c98905.lua
c98905.lua
+4
-4
constant.lua
constant.lua
+1
-0
procedure.lua
procedure.lua
+44
-7
utility.lua
utility.lua
+41
-0
No files found.
c13455674.lua
View file @
6975d6f4
...
...
@@ -43,7 +43,7 @@ function c13455674.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
+
LOCATION_MZONE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
c13455674
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
ct
>
0
and
Duel
.
IsExistingTarget
(
c13455674
.
rmfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c13455674
.
rmfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
ct
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c13455674
.
rmfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
ct
,
nil
)
if
g
:
IsExists
(
Card
.
IsLocation
,
1
,
nil
,
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
g
:
GetCount
(),
1
-
tp
,
LOCATION_GRAVE
)
else
...
...
c15005145.lua
View file @
6975d6f4
...
...
@@ -84,4 +84,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
\ No newline at end of file
end
c15171722.lua
View file @
6975d6f4
...
...
@@ -98,4 +98,4 @@ function s.tgop(e,tp,eg,ep,ev,re,r,rp)
end
end
end
end
\ No newline at end of file
end
c15335853.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c15335853.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c15335853
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -47,9 +47,6 @@ function c15335853.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c15335853
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c15335853
.
rmcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
CheckReleaseGroup
(
tp
,
Card
.
IsType
,
1
,
nil
,
TYPE_TOKEN
)
end
local
g
=
Duel
.
SelectReleaseGroup
(
tp
,
Card
.
IsType
,
1
,
1
,
nil
,
TYPE_TOKEN
)
...
...
c15862758.lua
View file @
6975d6f4
...
...
@@ -52,7 +52,7 @@ function c15862758.operation(e,tp,eg,ep,ev,re,r,rp)
e2
:
SetTargetRange
(
0
,
LOCATION_MZONE
)
e2
:
SetCondition
(
c15862758
.
effcon
)
e2
:
SetLabel
(
turn
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_
WITHOUT_TEMP_REMOVE
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_
STANDARD
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
e3
:
SetCode
(
EFFECT_MUST_ATTACK_MONSTER
)
...
...
@@ -66,7 +66,7 @@ function c15862758.operation(e,tp,eg,ep,ev,re,r,rp)
e4
:
SetCondition
(
c15862758
.
wincon
)
e4
:
SetOperation
(
c15862758
.
winop
)
e4
:
SetLabel
(
turn
)
e4
:
SetReset
(
RESET_EVENT
+
RESETS_
WITHOUT_TEMP_REMOVE
)
e4
:
SetReset
(
RESET_EVENT
+
RESETS_
STANDARD
)
c
:
RegisterEffect
(
e4
)
end
function
c15862758
.
atkcon
(
e
)
...
...
c15982593.lua
View file @
6975d6f4
...
...
@@ -82,4 +82,4 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetValue
(
TYPE_TRAP
+
TYPE_CONTINUOUS
)
tc
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c16404809.lua
View file @
6975d6f4
...
...
@@ -9,7 +9,7 @@ function c16404809.initial_effect(c)
c
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
16404809
,
0
))
e2
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_DECKDES
)
e2
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_
TOHAND
+
CATEGORY_DECKDES
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
...
...
c16943770.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c16943770.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c16943770
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -36,9 +36,6 @@ function c16943770.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c16943770
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c16943770
.
cfilter
(
c
)
return
c
:
IsSetCard
(
0x101b
)
and
not
c
:
IsCode
(
16943770
)
and
c
:
IsAbleToRemoveAsCost
()
end
...
...
c17228908.lua
View file @
6975d6f4
...
...
@@ -81,7 +81,8 @@ function c17228908.tkop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c17228908
.
tgcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
0
,
LOCATION_ONFIELD
,
1
,
nil
,
TYPE_TOKEN
)
local
tp
=
e
:
GetHandlerPlayer
()
return
aux
.
tkfcon
(
e
,
1
-
tp
)
end
function
c17228908
.
tglimit
(
e
,
c
)
return
not
c
:
IsType
(
TYPE_TOKEN
)
...
...
c17272964.lua
View file @
6975d6f4
...
...
@@ -67,4 +67,4 @@ function s.atkcon(e)
end
function
s
.
atktg
(
e
,
c
)
return
c
:
IsType
(
TYPE_SYNCHRO
)
and
c
:
IsFaceup
()
end
\ No newline at end of file
end
c17462320.lua
View file @
6975d6f4
...
...
@@ -72,4 +72,4 @@ function c17462320.thop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c17550376.lua
View file @
6975d6f4
...
...
@@ -55,4 +55,4 @@ function c17550376.atkop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c18158393.lua
View file @
6975d6f4
...
...
@@ -63,4 +63,4 @@ function s.tdop(e,tp,eg,ep,ev,re,r,rp)
if
g
:
GetCount
()
>
0
then
Duel
.
SendtoDeck
(
g
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c18494511.lua
View file @
6975d6f4
...
...
@@ -56,4 +56,4 @@ function c18494511.splimit(e,c)
end
function
c18494511
.
codecon
(
e
)
return
e
:
GetHandler
():
GetEquipCount
()
>
0
end
\ No newline at end of file
end
c19403423.lua
View file @
6975d6f4
...
...
@@ -81,4 +81,4 @@ function c19403423.nsumsuc(e,tp,eg,ep,ev,re,r,rp)
end
function
c19403423
.
efun
(
e
,
ep
,
tp
)
return
ep
==
tp
or
not
e
:
IsActiveType
(
TYPE_MONSTER
)
end
\ No newline at end of file
end
c1942635.lua
View file @
6975d6f4
...
...
@@ -11,7 +11,7 @@ function c1942635.initial_effect(c)
e2
:
SetCode
(
EFFECT_CANNOT_SELECT_BATTLE_TARGET
)
e2
:
SetRange
(
LOCATION_SZONE
)
e2
:
SetTargetRange
(
0
,
LOCATION_MZONE
)
e2
:
SetCondition
(
c1942635
.
atk
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
c1942635
.
atkval
)
c
:
RegisterEffect
(
e2
)
--draw
...
...
@@ -27,9 +27,6 @@ function c1942635.initial_effect(c)
e3
:
SetOperation
(
c1942635
.
drop
)
c
:
RegisterEffect
(
e3
)
end
function
c1942635
.
atkcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c1942635
.
atkval
(
e
,
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x134
)
and
c
:
IsType
(
TYPE_EFFECT
)
end
...
...
c19671433.lua
View file @
6975d6f4
...
...
@@ -77,4 +77,4 @@ function s.tunop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c197042.lua
View file @
6975d6f4
...
...
@@ -54,7 +54,7 @@ function c197042.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAbleToRemove
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c197042
.
xyzfilter
(
c
)
...
...
c20368763.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c20368763.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c20368763
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -49,9 +49,6 @@ function c20368763.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c20368763
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c20368763
.
cfilter
(
c
,
tp
)
return
c
:
IsPreviousLocation
(
LOCATION_MZONE
)
and
c
:
IsPreviousControler
(
tp
)
and
c
:
IsReason
(
REASON_COST
)
end
...
...
c20515672.lua
View file @
6975d6f4
...
...
@@ -70,4 +70,4 @@ function c20515672.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
\ No newline at end of file
end
c20560620.lua
View file @
6975d6f4
...
...
@@ -25,17 +25,17 @@ function s.initial_effect(c)
--workaround
if
not
aux
.
rit_mat_hack_check
then
aux
.
rit_mat_hack_check
=
true
function
aux
.
rit_mat_hack_exmat_filter
(
c
)
return
c
:
IsHasEffect
(
EFFECT_EXTRA_RITUAL_MATERIAL
,
c
:
GetControler
())
and
c
:
IsLocation
(
LOCATION_EXTRA
)
function
aux
.
rit_mat_hack_exmat_filter
(
t
c
)
return
tc
:
IsHasEffect
(
EFFECT_EXTRA_RITUAL_MATERIAL
,
tc
:
GetControler
())
and
t
c
:
IsLocation
(
LOCATION_EXTRA
)
end
function
aux
.
RitualCheckGreater
(
g
,
c
,
lv
)
function
aux
.
RitualCheckGreater
(
g
,
r
c
,
lv
)
if
g
:
FilterCount
(
aux
.
rit_mat_hack_exmat_filter
,
nil
)
>
1
then
return
false
end
Duel
.
SetSelectedCard
(
g
)
return
g
:
CheckWithSumGreater
(
Card
.
GetRitualLevel
,
lv
,
c
)
return
g
:
CheckWithSumGreater
(
Card
.
GetRitualLevel
,
lv
,
r
c
)
end
function
aux
.
RitualCheckEqual
(
g
,
c
,
lv
)
function
aux
.
RitualCheckEqual
(
g
,
r
c
,
lv
)
if
g
:
FilterCount
(
aux
.
rit_mat_hack_exmat_filter
,
nil
)
>
1
then
return
false
end
return
g
:
CheckWithSumEqual
(
Card
.
GetRitualLevel
,
lv
,
#
g
,
#
g
,
c
)
return
g
:
CheckWithSumEqual
(
Card
.
GetRitualLevel
,
lv
,
#
g
,
#
g
,
r
c
)
end
_ReleaseRitualMaterial
=
Duel
.
ReleaseRitualMaterial
function
Duel
.
ReleaseRitualMaterial
(
mat
)
...
...
c2116237.lua
View file @
6975d6f4
...
...
@@ -129,4 +129,4 @@ function c2116237.thop(e,tp,eg,ep,ev,re,r,rp)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoHand
(
c
,
nil
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c21368273.lua
View file @
6975d6f4
...
...
@@ -90,4 +90,4 @@ function c21368273.lvop(e,tp,eg,ep,ev,re,r,rp)
end
function
c21368273
.
splimit
(
e
,
c
)
return
not
c
:
IsType
(
TYPE_SYNCHRO
)
and
c
:
IsLocation
(
LOCATION_EXTRA
)
end
\ No newline at end of file
end
c22110647.lua
View file @
6975d6f4
...
...
@@ -9,7 +9,7 @@ function c22110647.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c22110647
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -39,9 +39,6 @@ function c22110647.initial_effect(c)
e5
:
SetOperation
(
c22110647
.
desop
)
c
:
RegisterEffect
(
e5
)
end
function
c22110647
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c22110647
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
...
...
c22404675.lua
View file @
6975d6f4
...
...
@@ -31,10 +31,10 @@ function c22404675.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
c22404675
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
c
:
IsRelateToEffect
(
e
)
then
if
c
:
IsRelateToEffect
(
e
)
then
if
Duel
.
SpecialSummonStep
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
then
if
Duel
.
GetLocationCount
(
1
-
tp
,
LOCATION_MZONE
,
tp
)
>
0
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
22404676
,
0
,
TYPES_TOKEN_MONSTER
,
800
,
1000
,
1
,
RACE_THUNDER
,
ATTRIBUTE_LIGHT
,
POS_FACEUP_DEFENSE
)
then
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
22404676
,
0
,
TYPES_TOKEN_MONSTER
,
800
,
1000
,
1
,
RACE_THUNDER
,
ATTRIBUTE_LIGHT
,
POS_FACEUP_DEFENSE
)
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
local
token
=
Duel
.
CreateToken
(
tp
,
22404676
)
Duel
.
SpecialSummonStep
(
token
,
0
,
tp
,
1
-
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
end
...
...
c23776077.lua
View file @
6975d6f4
...
...
@@ -57,7 +57,7 @@ function c23776077.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
)
and
c23776077
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c23776077
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c23776077
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c23776077
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
if
g
:
GetFirst
():
IsLocation
(
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
1
-
tp
,
LOCATION_GRAVE
)
else
...
...
c25774450.lua
View file @
6975d6f4
...
...
@@ -35,4 +35,4 @@ function c25774450.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
GetControl
(
cc
,
1
-
tp
)
end
end
end
\ No newline at end of file
end
c26118970.lua
View file @
6975d6f4
...
...
@@ -26,8 +26,10 @@ function c26118970.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_HAND
+
LOCATION_DECK
)
local
rc
=
e
:
GetHandler
():
GetReasonCard
()
if
rc
and
(
rc
:
IsCode
(
73580471
)
or
(
rc
:
IsRace
(
RACE_PLANT
)
and
rc
:
IsType
(
TYPE_SYNCHRO
)))
then
e
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_SEARCH
+
CATEGORY_TOHAND
)
e
:
SetLabel
(
1
)
else
e
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e
:
SetLabel
(
0
)
end
end
...
...
c26211048.lua
View file @
6975d6f4
...
...
@@ -28,7 +28,7 @@ function c26211048.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_SZONE
)
>
0
and
Duel
.
IsExistingTarget
(
c26211048
.
eqfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_EQUIP
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c26211048
.
eqfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c26211048
.
eqfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
if
g
:
GetFirst
():
IsLocation
(
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
1
,
0
,
0
)
end
...
...
c27345070.lua
View file @
6975d6f4
...
...
@@ -40,4 +40,4 @@ function c27345070.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
end
end
end
\ No newline at end of file
end
c2819435.lua
View file @
6975d6f4
...
...
@@ -27,9 +27,10 @@ function c2819435.initial_effect(c)
e6
:
SetDescription
(
aux
.
Stringid
(
2819435
,
1
))
e6
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_TOKEN
)
e6
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e6
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e6
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_ACTIVATE_CONDITION
)
e6
:
SetCode
(
EVENT_CHAINING
)
e6
:
SetRange
(
LOCATION_FZONE
)
e6
:
SetCountLimit
(
1
,
EFFECT_COUNT_CODE_CHAIN
)
e6
:
SetCondition
(
c2819435
.
spcon
)
e6
:
SetCost
(
c2819435
.
cost
)
e6
:
SetTarget
(
c2819435
.
sptg
)
...
...
@@ -81,14 +82,11 @@ function c2819435.thop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c2819435
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
rp
==
1
-
tp
return
rp
==
1
-
tp
and
not
aux
.
tkfcon
(
e
,
tp
)
end
function
c2819435
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
2819436
,
0xfa
,
TYPES_TOKEN_MONSTER
,
2000
,
2000
,
6
,
RACE_WYRM
,
ATTRIBUTE_WATER
)
and
e
:
GetHandler
():
GetFlagEffect
(
2819435
)
==
0
and
not
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
e
:
GetHandler
():
RegisterFlagEffect
(
2819435
,
RESET_EVENT
+
RESETS_STANDARD
+
RESET_CHAIN
,
0
,
1
)
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
2819436
,
0xfa
,
TYPES_TOKEN_MONSTER
,
2000
,
2000
,
6
,
RACE_WYRM
,
ATTRIBUTE_WATER
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOKEN
,
nil
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
0
,
0
)
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
...
...
c28677304.lua
View file @
6975d6f4
...
...
@@ -49,7 +49,7 @@ end
function
c28677304
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
c
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
and
tc
:
IsRelateToEffect
(
e
)
then
if
c
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
and
tc
:
IsRelateToEffect
(
e
)
and
not
tc
:
IsImmuneToEffect
(
e
)
then
c
:
SetCardTarget
(
tc
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
...
...
c29280200.lua
View file @
6975d6f4
--VS Dr.マッドラヴ
function
c29280200
.
initial_effect
(
c
)
--search
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
29280200
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
29280200
)
e1
:
SetTarget
(
c29280200
.
thtg
)
e1
:
SetOperation
(
c29280200
.
thop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--show dark for atk/def down
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
29280200
,
1
))
e3
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
29280201
)
e3
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e3
:
SetCondition
(
aux
.
dscon
)
e3
:
SetCost
(
c29280200
.
adcost
)
e3
:
SetTarget
(
c29280200
.
adtg
)
e3
:
SetOperation
(
c29280200
.
adop
)
c
:
RegisterEffect
(
e3
)
--show earth and dark for rtohand
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
29280200
,
2
))
e4
:
SetCategory
(
CATEGORY_TOHAND
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
,
29280201
)
e4
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e4
:
SetCost
(
c29280200
.
rthcost
)
e4
:
SetTarget
(
c29280200
.
rthtg
)
e4
:
SetOperation
(
c29280200
.
rthop
)
c
:
RegisterEffect
(
e4
)
end
function
c29280200
.
thfilter
(
c
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
c
:
IsAbleToHand
()
end
function
c29280200
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29280200
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c29280200
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29280200
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
function
c29280200
.
adcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29280200
.
adcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29280200
.
adcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29280200
.
adcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29280200
.
adtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
end
function
c29280200
.
adop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
):
GetFirst
()
if
not
tc
then
return
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
-
500
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
tc
:
RegisterEffect
(
e2
)
end
function
c29280200
.
rthcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29280200
.
rthcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29280200
.
rthtgfilter
(
c
)
return
c
:
IsFaceup
()
and
not
c
:
IsType
(
TYPE_LINK
)
end
function
c29280200
.
rthtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthtgfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
)
local
tg
=
g
:
GetMinGroup
(
Card
.
GetDefense
)
if
chk
==
0
then
return
tg
:
IsExists
(
Card
.
IsAbleToHand
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
tg
,
1
,
PLAYER_ALL
,
LOCATION_MZONE
)
end
function
c29280200
.
rthop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthtgfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
)
if
#
g
>
0
then
local
tg
=
g
:
GetMinGroup
(
Card
.
GetDefense
)
if
#
tg
>
1
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
tg
=
tg
:
FilterSelect
(
tp
,
Card
.
IsAbleToHand
,
1
,
1
,
nil
)
Duel
.
HintSelection
(
tg
)
end
Duel
.
SendtoHand
(
tg
,
nil
,
REASON_EFFECT
)
end
end
--VS Dr.マッドラヴ
function
c29280200
.
initial_effect
(
c
)
--search
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
29280200
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
29280200
)
e1
:
SetTarget
(
c29280200
.
thtg
)
e1
:
SetOperation
(
c29280200
.
thop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--show dark for atk/def down
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
29280200
,
1
))
e3
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
29280201
)
e3
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e3
:
SetCondition
(
aux
.
dscon
)
e3
:
SetCost
(
c29280200
.
adcost
)
e3
:
SetTarget
(
c29280200
.
adtg
)
e3
:
SetOperation
(
c29280200
.
adop
)
c
:
RegisterEffect
(
e3
)
--show earth and dark for rtohand
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
29280200
,
2
))
e4
:
SetCategory
(
CATEGORY_TOHAND
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
,
29280201
)
e4
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e4
:
SetCost
(
c29280200
.
rthcost
)
e4
:
SetTarget
(
c29280200
.
rthtg
)
e4
:
SetOperation
(
c29280200
.
rthop
)
c
:
RegisterEffect
(
e4
)
end
function
c29280200
.
thfilter
(
c
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
c
:
IsAbleToHand
()
end
function
c29280200
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29280200
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c29280200
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29280200
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
function
c29280200
.
adcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29280200
.
adcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29280200
.
adcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29280200
.
adcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29280200
.
adtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
end
function
c29280200
.
adop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
1
,
1
,
nil
):
GetFirst
()
if
not
tc
then
return
end
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
-
500
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
tc
:
RegisterEffect
(
e2
)
end
function
c29280200
.
rthcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29280200
.
rthcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29280200
.
rthtgfilter
(
c
)
return
c
:
IsFaceup
()
and
not
c
:
IsType
(
TYPE_LINK
)
end
function
c29280200
.
rthtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthtgfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
)
local
tg
=
g
:
GetMinGroup
(
Card
.
GetDefense
)
if
chk
==
0
then
return
tg
:
IsExists
(
Card
.
IsAbleToHand
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29280200
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29280200
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
tg
,
1
,
PLAYER_ALL
,
LOCATION_MZONE
)
end
function
c29280200
.
rthop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c29280200
.
rthtgfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
nil
)
if
#
g
>
0
then
local
tg
=
g
:
GetMinGroup
(
Card
.
GetDefense
)
if
#
tg
>
1
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
tg
=
tg
:
FilterSelect
(
tp
,
Card
.
IsAbleToHand
,
1
,
1
,
nil
)
Duel
.
HintSelection
(
tg
)
end
Duel
.
SendtoHand
(
tg
,
nil
,
REASON_EFFECT
)
end
end
c29301450.lua
View file @
6975d6f4
...
...
@@ -44,7 +44,7 @@ function s.srmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
+
LOCATION_ONFIELD
)
and
chkc
:
IsAbleToRemove
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
s
.
srmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c29302858.lua
View file @
6975d6f4
--VS ラゼン
function
c29302858
.
initial_effect
(
c
)
--search
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
29302858
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
29302858
)
e1
:
SetTarget
(
c29302858
.
thtg
)
e1
:
SetOperation
(
c29302858
.
thop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--show fire for indes
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
29302858
,
1
))
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
29302859
)
e3
:
SetCost
(
c29302858
.
indescost
)
e3
:
SetTarget
(
c29302858
.
indestg
)
e3
:
SetOperation
(
c29302858
.
indesop
)
c
:
RegisterEffect
(
e3
)
--show fire and dark for destroy
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
29302858
,
2
))
e4
:
SetCategory
(
CATEGORY_DESTROY
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
,
29302859
)
e4
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e4
:
SetCost
(
c29302858
.
descost
)
e4
:
SetTarget
(
c29302858
.
destg
)
e4
:
SetOperation
(
c29302858
.
desop
)
c
:
RegisterEffect
(
e4
)
end
function
c29302858
.
thfilter
(
c
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
not
c
:
IsRace
(
RACE_WARRIOR
)
and
c
:
IsAbleToHand
()
end
function
c29302858
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29302858
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c29302858
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29302858
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
function
c29302858
.
indescfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c29302858
.
indescost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29302858
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29302858
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29302858
.
indestg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
end
function
c29302858
.
indesop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_EFFECT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
1
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
1
)
c
:
RegisterEffect
(
e1
)
end
function
c29302858
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29302858
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29302858
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_FIRE
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_FIRE
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29302858
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
#
g
,
0
,
0
)
end
function
c29302858
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
--VS ラゼン
function
c29302858
.
initial_effect
(
c
)
--search
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
29302858
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
29302858
)
e1
:
SetTarget
(
c29302858
.
thtg
)
e1
:
SetOperation
(
c29302858
.
thop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--show fire for indes
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
29302858
,
1
))
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
29302859
)
e3
:
SetCost
(
c29302858
.
indescost
)
e3
:
SetTarget
(
c29302858
.
indestg
)
e3
:
SetOperation
(
c29302858
.
indesop
)
c
:
RegisterEffect
(
e3
)
--show fire and dark for destroy
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
29302858
,
2
))
e4
:
SetCategory
(
CATEGORY_DESTROY
)
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
,
29302859
)
e4
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e4
:
SetCost
(
c29302858
.
descost
)
e4
:
SetTarget
(
c29302858
.
destg
)
e4
:
SetOperation
(
c29302858
.
desop
)
c
:
RegisterEffect
(
e4
)
end
function
c29302858
.
thfilter
(
c
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
not
c
:
IsRace
(
RACE_WARRIOR
)
and
c
:
IsAbleToHand
()
end
function
c29302858
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29302858
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c29302858
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29302858
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
function
c29302858
.
indescfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c29302858
.
indescost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c29302858
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c29302858
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29302858
.
indestg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
end
function
c29302858
.
indesop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_EFFECT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
1
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
1
)
c
:
RegisterEffect
(
e1
)
end
function
c29302858
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c29302858
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c29302858
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_FIRE
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_FIRE
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c29302858
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
29302858
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
29302858
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
#
g
,
0
,
0
)
end
function
c29302858
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_MZONE
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
c29510428.lua
View file @
6975d6f4
...
...
@@ -84,4 +84,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
Duel
.
ConfirmCards
(
1
-
tp
,
tc
)
end
end
end
\ No newline at end of file
end
c29884951.lua
View file @
6975d6f4
...
...
@@ -89,23 +89,8 @@ end
function
c29884951
.
remtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
and
c29884951
.
remfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c29884951
.
remfilter
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
nil
)
end
local
b1
=
Duel
.
IsExistingTarget
(
c29884951
.
remfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
local
b2
=
Duel
.
IsExistingTarget
(
c29884951
.
remfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
nil
)
local
op
=
0
if
b1
and
b2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
29884951
,
3
),
aux
.
Stringid
(
29884951
,
4
))
else
op
=
2
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
nil
if
op
==
0
then
g
=
Duel
.
SelectTarget
(
tp
,
c29884951
.
remfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
elseif
op
==
1
then
g
=
Duel
.
SelectTarget
(
tp
,
c29884951
.
remfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
else
g
=
Duel
.
SelectTarget
(
tp
,
c29884951
.
remfilter
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
end
local
g
=
aux
.
SelectTargetFromFieldFirst
(
tp
,
c29884951
.
remfilter
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c29884951
.
remop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c30095833.lua
View file @
6975d6f4
...
...
@@ -102,4 +102,4 @@ function c30095833.penop(e,tp,eg,ep,ev,re,r,rp)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
end
end
\ No newline at end of file
end
c30811116.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c30811116.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c30811116
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -47,9 +47,6 @@ function c30811116.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c30811116
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c30811116
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
ep
~=
tp
end
...
...
c31480215.lua
View file @
6975d6f4
...
...
@@ -6,7 +6,7 @@ function c31480215.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetCondition
(
c31480215
.
ind
con
)
e1
:
SetCondition
(
aux
.
tkf
con
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
...
...
@@ -33,9 +33,6 @@ function c31480215.initial_effect(c)
e4
:
SetOperation
(
c31480215
.
lvop
)
c
:
RegisterEffect
(
e4
)
end
function
c31480215
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c31480215
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsLocation
(
LOCATION_GRAVE
)
and
r
==
REASON_SYNCHRO
and
e
:
GetHandler
():
GetReasonCard
():
IsRace
(
RACE_MACHINE
)
...
...
c31533704.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c31533704.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c31533704
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -48,9 +48,6 @@ function c31533704.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c31533704
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c31533704
.
spfilter
(
c
,
tp
)
return
c
:
IsControler
(
tp
)
and
c
:
IsType
(
TYPE_TOKEN
)
end
...
...
c31600513.lua
View file @
6975d6f4
...
...
@@ -74,4 +74,4 @@ function c31600513.thop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToBattle
()
and
tc
:
IsControler
(
1
-
tp
)
then
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c31987203.lua
View file @
6975d6f4
...
...
@@ -75,4 +75,4 @@ function c31987203.penop(e,tp,eg,ep,ev,re,r,rp)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
end
end
\ No newline at end of file
end
c32828635.lua
View file @
6975d6f4
...
...
@@ -4,7 +4,7 @@ function c32828635.initial_effect(c)
--salvage
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
32828635
,
0
))
e2
:
SetCategory
(
CATEGORY_TOHAND
)
e2
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_
TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCondition
(
aux
.
exccon
)
...
...
c33099732.lua
View file @
6975d6f4
...
...
@@ -40,6 +40,7 @@ end
function
s
.
tgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
tp
):
GetFirst
()
if
not
tc
then
return
end
Duel
.
ConfirmCards
(
1
-
tp
,
tc
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TOGRAVE
)
local
sc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
sfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
tc
):
GetFirst
()
...
...
@@ -55,7 +56,7 @@ function s.tgop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_CANNOT_ACTIVATE
)
e2
:
Set
Target
(
s
.
alimit
)
e2
:
Set
Value
(
s
.
alimit
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
end
...
...
c35026117.lua
View file @
6975d6f4
...
...
@@ -71,4 +71,4 @@ function c35026117.tfop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Destroy
(
tg
,
REASON_EFFECT
)
end
end
end
\ No newline at end of file
end
c36730805.lua
View file @
6975d6f4
...
...
@@ -35,6 +35,8 @@ function c36730805.activate(e,tp,eg,ep,ev,re,r,rp)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e2
:
SetCode
(
EVENT_CHAIN_END
)
e2
:
SetOperation
(
c36730805
.
limitop
)
e2
:
SetCountLimit
(
1
)
e2
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e2
,
tp
)
end
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
...
...
c37343995.lua
View file @
6975d6f4
...
...
@@ -64,8 +64,8 @@ function c37343995.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
c37343995
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
or
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
return
end
if
Duel
.
SpecialSummonStep
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
then
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
Duel
.
SpecialSummonStep
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c37343995
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
)
if
g
:
GetCount
()
>
0
then
...
...
c38041940.lua
View file @
6975d6f4
...
...
@@ -23,6 +23,7 @@ end
function
c38041940
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
tp
)
and
c38041940
.
spfilter
(
chkc
,
e
,
tp
)
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
GetLocationCount
(
1
-
tp
,
LOCATION_MZONE
)
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
Duel
.
IsExistingTarget
(
c38041940
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
38041941
,
0
,
TYPES_TOKEN_MONSTER
,
0
,
0
,
1
,
RACE_PLANT
,
ATTRIBUTE_EARTH
,
POS_FACEUP_DEFENSE
,
1
-
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
@@ -34,6 +35,7 @@ function c38041940.operation(e,tp,eg,ep,ev,re,r,rp)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsRace
(
RACE_PLANT
)
and
Duel
.
SpecialSummonStep
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
then
if
Duel
.
GetLocationCount
(
1
-
tp
,
LOCATION_MZONE
)
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
38041941
,
0
,
TYPES_TOKEN_MONSTER
,
0
,
0
,
1
,
RACE_PLANT
,
ATTRIBUTE_EARTH
,
POS_FACEUP_DEFENSE
,
1
-
tp
)
then
local
token
=
Duel
.
CreateToken
(
tp
,
38041941
)
Duel
.
SpecialSummonStep
(
token
,
0
,
tp
,
1
-
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
...
...
c38273745.lua
View file @
6975d6f4
...
...
@@ -26,15 +26,21 @@ function c38273745.tg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
return
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
chkc
:
IsAbleToRemove
()
end
end
local
b1
=
Duel
.
IsExistingTarget
(
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
local
b2
=
Duel
.
GetFieldGroupCount
(
1
-
tp
,
LOCATION_HAND
,
0
)
~=
0
local
b3
=
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
,
1
,
nil
)
local
c
=
e
:
GetHandler
()
local
flag
=
c
:
GetFlagEffectLabel
(
38273745
)
or
0
local
b1
=
(
flag
&
2
==
0
)
and
Duel
.
IsExistingTarget
(
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
local
b2
=
(
flag
&
4
==
0
)
and
Duel
.
GetFieldGroupCount
(
1
-
tp
,
LOCATION_HAND
,
0
)
~=
0
local
b3
=
(
flag
&
8
==
0
)
and
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
,
1
,
nil
)
if
chk
==
0
then
return
b1
or
b2
or
b3
end
local
op
=
aux
.
SelectFromOptions
(
tp
,
{
b1
,
aux
.
Stringid
(
38273745
,
1
)},
{
b2
,
aux
.
Stringid
(
38273745
,
2
)},
{
b3
,
aux
.
Stringid
(
38273745
,
3
)})
e
:
SetLabel
(
op
)
if
flag
==
0
then
c
:
RegisterFlagEffect
(
38273745
,
RESET_EVENT
+
RESETS_STANDARD
,
0
,
1
)
end
c
:
SetFlagEffectLabel
(
38273745
,
flag
|
(
1
<<
op
))
if
op
==
1
then
e
:
SetCategory
(
CATEGORY_TOHAND
)
e
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
...
...
c38495396.lua
View file @
6975d6f4
...
...
@@ -34,23 +34,8 @@ function c38495396.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
)
and
c38495396
.
thfilter
(
chkc
)
end
if
chk
==
0
then
return
e
:
GetHandler
():
GetFlagEffect
(
38495396
)
==
0
and
Duel
.
IsExistingTarget
(
c38495396
.
thfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
end
local
b1
=
Duel
.
IsExistingTarget
(
c38495396
.
thfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
local
b2
=
Duel
.
IsExistingTarget
(
c38495396
.
thfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
nil
)
local
op
=
0
if
b1
and
b2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
38495396
,
2
),
aux
.
Stringid
(
38495396
,
3
))
else
op
=
2
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
nil
if
op
==
0
then
g
=
Duel
.
SelectTarget
(
tp
,
c38495396
.
thfilter
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
elseif
op
==
1
then
g
=
Duel
.
SelectTarget
(
tp
,
c38495396
.
thfilter
,
tp
,
LOCATION_GRAVE
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
else
g
=
Duel
.
SelectTarget
(
tp
,
c38495396
.
thfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
end
local
g
=
aux
.
SelectTargetFromFieldFirst
(
tp
,
c38495396
.
thfilter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
end
function
c38495396
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c38798785.lua
View file @
6975d6f4
...
...
@@ -155,4 +155,4 @@ end
function
s
.
resetop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
ResetFlagEffect
(
tp
,
id
)
e
:
Reset
()
end
\ No newline at end of file
end
c39185163.lua
View file @
6975d6f4
...
...
@@ -52,7 +52,7 @@ function c39185163.disrmop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
RegisterFlagEffect
(
tp
,
39185163
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c39185163
.
filter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectCardFromFieldFirst
(
tp
,
c39185163
.
filter
,
tp
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
)
Duel
.
RegisterFlagEffect
(
tp
,
39185164
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
...
...
c40785230.lua
View file @
6975d6f4
...
...
@@ -148,4 +148,4 @@ function c40785230.thop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
end
\ No newline at end of file
end
c41329458.lua
View file @
6975d6f4
...
...
@@ -17,7 +17,7 @@ function c41329458.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c41329458
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -35,9 +35,6 @@ function c41329458.initial_effect(c)
e4
:
SetOperation
(
c41329458
.
spop2
)
c
:
RegisterEffect
(
e4
)
end
function
c41329458
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c41329458
.
rfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x101b
)
and
(
c
:
IsControler
(
tp
)
or
c
:
IsFaceup
())
end
...
...
c41790641.lua
View file @
6975d6f4
...
...
@@ -57,6 +57,16 @@ function s.splim(e,c)
return
c
:
GetRace
()
~=
RACE_THUNDER
end
function
s
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsFaceup
()
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
,
tc
:
GetCode
()):
GetFirst
()
if
sc
and
Duel
.
SpecialSummon
(
sc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
>
0
and
aux
.
nzatk
(
sc
)
then
Duel
.
BreakEffect
()
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
-
sc
:
GetAttack
())
end
end
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -66,13 +76,4 @@ function s.operation(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetTarget
(
s
.
splim
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
not
tc
:
IsRelateToEffect
(
e
)
or
tc
:
IsFacedown
()
or
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sc
=
Duel
.
SelectMatchingCard
(
tp
,
s
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
,
tc
:
GetCode
()):
GetFirst
()
if
sc
and
Duel
.
SpecialSummon
(
sc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
>
0
and
aux
.
nzatk
(
sc
)
then
Duel
.
BreakEffect
()
local
lp
=
Duel
.
GetLP
(
tp
)
Duel
.
SetLP
(
tp
,
lp
-
sc
:
GetAttack
())
end
end
c42741437.lua
View file @
6975d6f4
...
...
@@ -69,7 +69,7 @@ function c42741437.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
+
LOCATION_ONFIELD
)
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAbleToRemove
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_ONFIELD
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c42741437
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c42822433.lua
View file @
6975d6f4
...
...
@@ -74,4 +74,4 @@ function c42822433.spop(e,tp,eg,ep,ev,re,r,rp)
end
function
c42822433
.
atktg
(
e
,
c
)
return
not
c
:
IsType
(
TYPE_XYZ
)
end
\ No newline at end of file
end
c43944080.lua
View file @
6975d6f4
...
...
@@ -56,4 +56,4 @@ function c43944080.distg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
c43944080
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
NegateActivation
(
ev
)
end
\ No newline at end of file
end
c44026393.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c44026393.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c44026393
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -35,9 +35,6 @@ function c44026393.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c44026393
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c44026393
.
spcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsDiscardable
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
DiscardHand
(
tp
,
Card
.
IsDiscardable
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
)
...
...
c4417407.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c4417407.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c4417407
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -48,9 +48,6 @@ function c4417407.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c4417407
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c4417407
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOKEN
,
nil
,
1
,
0
,
0
)
...
...
c44760562.lua
View file @
6975d6f4
...
...
@@ -62,4 +62,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c45065541.lua
View file @
6975d6f4
...
...
@@ -68,4 +68,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
if
#
g
>
0
then
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
end
c47873397.lua
View file @
6975d6f4
...
...
@@ -87,4 +87,4 @@ function s.damval(e,re,val,r,rp,rc)
if
r
&
REASON_EFFECT
==
REASON_EFFECT
then
return
val
*
2
else
return
val
end
end
\ No newline at end of file
end
c48452496.lua
View file @
6975d6f4
...
...
@@ -48,7 +48,7 @@ function s.mvtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
+
LOCATION_MZONE
)
and
s
.
filter
(
chkc
,
tp
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
nil
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
s
.
filter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
,
tp
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
s
.
filter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
,
tp
)
if
g
:
GetFirst
():
IsLocation
(
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_LEAVE_GRAVE
,
g
,
1
,
0
,
0
)
end
...
...
c51779204.lua
View file @
6975d6f4
...
...
@@ -75,4 +75,4 @@ function c51779204.effcon(e)
end
function
c51779204
.
damcon
(
e
)
return
e
:
GetHandler
():
GetBattleTarget
()
~=
nil
end
\ No newline at end of file
end
c53485634.lua
View file @
6975d6f4
...
...
@@ -45,7 +45,7 @@ end
function
c53485634
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_CARDS
):
Filter
(
c53485634
.
filter
,
nil
,
e
,
tp
)
if
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
c
:
IsRelateToEffect
(
e
)
then
if
c
:
IsRelateToEffect
(
e
)
then
if
Duel
.
SpecialSummonStep
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP_DEFENSE
)
then
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
if
ft
>
0
and
g
:
GetCount
()
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
...
...
c53754104.lua
View file @
6975d6f4
...
...
@@ -71,4 +71,4 @@ function c53754104.posop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
ChangePosition
(
tc
,
POS_FACEUP_DEFENSE
,
POS_FACEUP_ATTACK
,
POS_FACEUP_ATTACK
,
POS_FACEUP_ATTACK
)
end
end
\ No newline at end of file
end
c54594017.lua
View file @
6975d6f4
...
...
@@ -50,4 +50,4 @@ function c54594017.desop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
Destroy
(
tc
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c54851325.lua
View file @
6975d6f4
...
...
@@ -86,4 +86,4 @@ function c54851325.desop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
HintSelection
(
g
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c55501446.lua
View file @
6975d6f4
...
...
@@ -23,7 +23,7 @@ function c55501446.spcon(e,tp,eg,ep,ev,re,r,rp)
return
e
:
GetHandler
():
IsPreviousLocation
(
LOCATION_HAND
)
end
function
c55501446
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsRelateToEffect
(
e
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
...
...
c55688914.lua
View file @
6975d6f4
--VS プルトンHG
function
c55688914
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
55688914
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
55688914
)
e1
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e1
:
SetCondition
(
c55688914
.
spcon
)
e1
:
SetTarget
(
c55688914
.
sptg
)
e1
:
SetOperation
(
c55688914
.
spop
)
c
:
RegisterEffect
(
e1
)
--show fire for def up
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
55688914
,
1
))
e2
:
SetCategory
(
CATEGORY_DEFCHANGE
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
55688915
)
e2
:
SetHintTiming
(
TIMING_DAMAGE_STEP
)
e2
:
SetCondition
(
aux
.
dscon
)
e2
:
SetCost
(
c55688914
.
defcost
)
e2
:
SetTarget
(
c55688914
.
deftg
)
e2
:
SetOperation
(
c55688914
.
defop
)
c
:
RegisterEffect
(
e2
)
--show earth and dark for atk up
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
55688914
,
2
))
e3
:
SetCategory
(
CATEGORY_ATKCHANGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
55688915
)
e3
:
SetHintTiming
(
TIMING_DAMAGE_STEP
)
e3
:
SetCondition
(
aux
.
dscon
)
e3
:
SetCost
(
c55688914
.
atkcost
)
e3
:
SetTarget
(
c55688914
.
atktg
)
e3
:
SetOperation
(
c55688914
.
atkop
)
c
:
RegisterEffect
(
e3
)
end
function
c55688914
.
spcfilter1
(
c
)
return
c
:
GetSequence
()
<
5
end
function
c55688914
.
spcfilter2
(
c
)
return
c
:
GetSequence
()
<
5
and
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
end
function
c55688914
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetTurnPlayer
()
~=
1
-
tp
then
return
false
end
local
ct1
=
Duel
.
GetMatchingGroupCount
(
c55688914
.
spcfilter1
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
ct2
=
Duel
.
GetMatchingGroupCount
(
c55688914
.
spcfilter2
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
return
ct1
==
0
or
ct1
==
ct2
end
function
c55688914
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c55688914
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c55688914
.
defcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c55688914
.
defcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c55688914
.
defcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c55688914
.
defcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c55688914
.
deftg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
end
function
c55688914
.
defop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e1
:
SetValue
(
3000
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
end
function
c55688914
.
atkcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c55688914
.
atkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c55688914
.
atkcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c55688914
.
atktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
end
function
c55688914
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetValue
(
3000
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
end
--VS プルトンHG
function
c55688914
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
55688914
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
55688914
)
e1
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e1
:
SetCondition
(
c55688914
.
spcon
)
e1
:
SetTarget
(
c55688914
.
sptg
)
e1
:
SetOperation
(
c55688914
.
spop
)
c
:
RegisterEffect
(
e1
)
--show fire for def up
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
55688914
,
1
))
e2
:
SetCategory
(
CATEGORY_DEFCHANGE
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
55688915
)
e2
:
SetHintTiming
(
TIMING_DAMAGE_STEP
)
e2
:
SetCondition
(
aux
.
dscon
)
e2
:
SetCost
(
c55688914
.
defcost
)
e2
:
SetTarget
(
c55688914
.
deftg
)
e2
:
SetOperation
(
c55688914
.
defop
)
c
:
RegisterEffect
(
e2
)
--show earth and dark for atk up
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
55688914
,
2
))
e3
:
SetCategory
(
CATEGORY_ATKCHANGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
55688915
)
e3
:
SetHintTiming
(
TIMING_DAMAGE_STEP
)
e3
:
SetCondition
(
aux
.
dscon
)
e3
:
SetCost
(
c55688914
.
atkcost
)
e3
:
SetTarget
(
c55688914
.
atktg
)
e3
:
SetOperation
(
c55688914
.
atkop
)
c
:
RegisterEffect
(
e3
)
end
function
c55688914
.
spcfilter1
(
c
)
return
c
:
GetSequence
()
<
5
end
function
c55688914
.
spcfilter2
(
c
)
return
c
:
GetSequence
()
<
5
and
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
end
function
c55688914
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetTurnPlayer
()
~=
1
-
tp
then
return
false
end
local
ct1
=
Duel
.
GetMatchingGroupCount
(
c55688914
.
spcfilter1
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
local
ct2
=
Duel
.
GetMatchingGroupCount
(
c55688914
.
spcfilter2
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
return
ct1
==
0
or
ct1
==
ct2
end
function
c55688914
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c55688914
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c55688914
.
defcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c55688914
.
defcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c55688914
.
defcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c55688914
.
defcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c55688914
.
deftg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
end
function
c55688914
.
defop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e1
:
SetValue
(
3000
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
end
function
c55688914
.
atkcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c55688914
.
atkcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c55688914
.
atkcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_DARK
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c55688914
.
atktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
55688914
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
55688914
,
RESET_CHAIN
,
0
,
1
)
end
function
c55688914
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetValue
(
3000
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
+
RESET_PHASE
+
PHASE_END
)
c
:
RegisterEffect
(
e1
)
end
c56510115.lua
View file @
6975d6f4
...
...
@@ -70,4 +70,4 @@ function c56510115.atktg(e,c)
end
function
c56510115
.
atkval
(
e
,
c
)
return
c
:
GetCurrentScale
()
*
300
end
\ No newline at end of file
end
c56518311.lua
View file @
6975d6f4
...
...
@@ -94,7 +94,7 @@ function c56518311.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
c56518311
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c56518311
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c56518311
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c56518311
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c56518311
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c56727340.lua
View file @
6975d6f4
...
...
@@ -75,4 +75,4 @@ function c56727340.spop(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
\ No newline at end of file
end
c57357130.lua
View file @
6975d6f4
...
...
@@ -78,4 +78,4 @@ function s.spdpop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
BreakEffect
()
Duel
.
Draw
(
tp
,
1
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c57416183.lua
View file @
6975d6f4
...
...
@@ -36,7 +36,7 @@ function c57416183.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SELF
)
local
g1
=
Duel
.
SelectTarget
(
tp
,
c57416183
.
cfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_OPPO
)
local
g2
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g2
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToHand
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
g1
:
Merge
(
g2
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g1
,
g1
:
GetCount
(),
0
,
0
)
end
...
...
c57769391.lua
View file @
6975d6f4
...
...
@@ -3,7 +3,7 @@ function c57769391.initial_effect(c)
--mill
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
57769391
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_DECKDES
)
e1
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_
TOHAND
+
CATEGORY_DECKDES
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCountLimit
(
1
,
57769391
)
...
...
c58884063.lua
View file @
6975d6f4
...
...
@@ -45,14 +45,14 @@ function s.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
s
.
desfilter
(
c
,
tp
,
seq
)
local
sseq
=
c
:
GetSequence
()
if
c
:
IsControler
(
tp
)
then
return
sseq
==
5
and
seq
==
3
or
sseq
==
6
and
seq
==
1
if
c
:
IsControler
(
tp
)
and
c
:
IsLocation
(
LOCATION_MZONE
)
then
return
sseq
==
5
and
seq
==
3
or
sseq
==
6
and
seq
==
1
or
sseq
==
3
and
seq
==
5
or
sseq
==
1
and
seq
==
6
end
if
c
:
IsLocation
(
LOCATION_SZONE
)
then
if
c
:
Is
Controler
(
tp
)
and
c
:
Is
Location
(
LOCATION_SZONE
)
then
return
sseq
<
5
and
sseq
==
seq
end
if
sseq
<
5
then
return
math.abs
(
sseq
-
seq
)
==
1
return
math.abs
(
sseq
-
seq
)
==
1
or
sseq
==
1
and
seq
==
5
or
sseq
==
3
and
seq
==
6
end
if
sseq
>=
5
then
return
sseq
==
5
and
seq
==
1
or
sseq
==
6
and
seq
==
3
...
...
@@ -60,8 +60,8 @@ function s.desfilter(c,tp,seq)
end
function
s
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
local
cg
=
Duel
.
GetMatchingGroup
(
s
.
desfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
tc
,
tp
,
tc
:
GetSequence
())
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
IsType
(
TYPE_MONSTER
)
then
local
cg
=
Duel
.
GetMatchingGroup
(
s
.
desfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
tc
,
1
-
tc
:
GetControler
()
,
tc
:
GetSequence
())
if
Duel
.
Destroy
(
tc
,
REASON_EFFECT
)
~=
0
and
Duel
.
GetLP
(
tp
)
<
Duel
.
GetLP
(
1
-
tp
)
and
#
cg
>
0
and
Duel
.
SelectYesNo
(
tp
,
aux
.
Stringid
(
id
,
1
))
then
Duel
.
BreakEffect
()
...
...
c60023855.lua
View file @
6975d6f4
...
...
@@ -85,4 +85,4 @@ function c60023855.spop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
end
c601193.lua
View file @
6975d6f4
...
...
@@ -40,7 +40,7 @@ function c601193.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAbleToDeck
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
g
,
1
,
0
,
0
)
end
function
c601193
.
tdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c60168186.lua
View file @
6975d6f4
...
...
@@ -108,7 +108,7 @@ function c60168186.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
c60168186
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectCardFromFieldFirst
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
if
g
:
GetCount
()
>
0
then
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
)
end
...
...
c60681103.lua
View file @
6975d6f4
...
...
@@ -31,7 +31,7 @@ function c60681103.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
c60681103
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c60681103
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c60681103
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c60681103
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
tc
=
g
:
GetFirst
()
if
tc
:
IsLocation
(
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
1
-
tp
,
LOCATION_GRAVE
)
...
...
c65187687.lua
View file @
6975d6f4
...
...
@@ -39,7 +39,7 @@ function c65187687.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
+
LOCATION_GRAVE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
c65187687
.
rmfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c65187687
.
rmfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c65187687
.
rmfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c65187687
.
rmfilter
,
tp
,
0
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
if
g
:
GetFirst
():
IsLocation
(
LOCATION_GRAVE
)
then
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
1
-
tp
,
LOCATION_GRAVE
)
else
...
...
c65305978.lua
View file @
6975d6f4
...
...
@@ -100,4 +100,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
local
xyz
=
xyzg
:
Select
(
tp
,
1
,
1
,
nil
):
GetFirst
()
Duel
.
XyzSummon
(
tp
,
xyz
,
g
,
1
,
6
)
end
end
\ No newline at end of file
end
c66150724.lua
View file @
6975d6f4
...
...
@@ -124,4 +124,4 @@ function c66150724.disop(e,tp,eg,ep,ev,re,r,rp)
if
re
:
GetActiveType
()
==
TYPE_PENDULUM
+
TYPE_SPELL
and
p
==
tp
and
bit
.
band
(
loc
,
LOCATION_PZONE
)
~=
0
then
Duel
.
NegateEffect
(
ev
)
end
end
\ No newline at end of file
end
c66200210.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c66200210.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c66200210
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -46,9 +46,6 @@ function c66200210.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c66200210
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c66200210
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOKEN
,
nil
,
2
,
0
,
0
)
...
...
c66401502.lua
View file @
6975d6f4
--VS パンテラ
function
c66401502
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
66401502
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
66401502
)
e1
:
SetCondition
(
c66401502
.
spcon
)
e1
:
SetTarget
(
c66401502
.
sptg
)
e1
:
SetOperation
(
c66401502
.
spop
)
c
:
RegisterEffect
(
e1
)
--show earth for indes
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
66401502
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
66401503
)
e2
:
SetCost
(
c66401502
.
indescost
)
e2
:
SetCondition
(
aux
.
bpcon
)
e2
:
SetTarget
(
c66401502
.
indestg
)
e2
:
SetOperation
(
c66401502
.
indesop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire for destroy
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
66401502
,
2
))
e3
:
SetCategory
(
CATEGORY_DESTROY
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
66401503
)
e3
:
SetHintTiming
(
0
,
TIMING_EQUIP
+
TIMING_END_PHASE
)
e3
:
SetCost
(
c66401502
.
descost
)
e3
:
SetTarget
(
c66401502
.
destg
)
e3
:
SetOperation
(
c66401502
.
desop
)
c
:
RegisterEffect
(
e3
)
end
function
c66401502
.
spcfilter
(
c
)
return
c
:
GetSequence
()
<
5
end
function
c66401502
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsExistingMatchingCard
(
c66401502
.
spcfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c66401502
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c66401502
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c66401502
.
indescfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
)
and
not
c
:
IsPublic
()
end
function
c66401502
.
indescost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c66401502
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c66401502
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c66401502
.
indestg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
end
function
c66401502
.
indesop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
1
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
1
)
c
:
RegisterEffect
(
e1
)
end
function
c66401502
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c66401502
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c66401502
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c66401502
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsType
,
nil
,
TYPE_SPELL
+
TYPE_TRAP
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
#
g
,
0
,
0
)
end
function
c66401502
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsType
,
nil
,
TYPE_SPELL
+
TYPE_TRAP
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
--VS パンテラ
function
c66401502
.
initial_effect
(
c
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
66401502
,
0
))
e1
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
66401502
)
e1
:
SetCondition
(
c66401502
.
spcon
)
e1
:
SetTarget
(
c66401502
.
sptg
)
e1
:
SetOperation
(
c66401502
.
spop
)
c
:
RegisterEffect
(
e1
)
--show earth for indes
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
66401502
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
66401503
)
e2
:
SetCost
(
c66401502
.
indescost
)
e2
:
SetCondition
(
aux
.
bpcon
)
e2
:
SetTarget
(
c66401502
.
indestg
)
e2
:
SetOperation
(
c66401502
.
indesop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire for destroy
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
66401502
,
2
))
e3
:
SetCategory
(
CATEGORY_DESTROY
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
66401503
)
e3
:
SetHintTiming
(
0
,
TIMING_EQUIP
+
TIMING_END_PHASE
)
e3
:
SetCost
(
c66401502
.
descost
)
e3
:
SetTarget
(
c66401502
.
destg
)
e3
:
SetOperation
(
c66401502
.
desop
)
c
:
RegisterEffect
(
e3
)
end
function
c66401502
.
spcfilter
(
c
)
return
c
:
GetSequence
()
<
5
end
function
c66401502
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsExistingMatchingCard
(
c66401502
.
spcfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c66401502
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c66401502
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c66401502
.
indescfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
)
and
not
c
:
IsPublic
()
end
function
c66401502
.
indescost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c66401502
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c66401502
.
indescfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c66401502
.
indestg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
end
function
c66401502
.
indesop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetValue
(
1
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
,
1
)
c
:
RegisterEffect
(
e1
)
end
function
c66401502
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c66401502
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c66401502
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c66401502
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsType
,
nil
,
TYPE_SPELL
+
TYPE_TRAP
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
66401502
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
66401502
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
#
g
,
0
,
0
)
end
function
c66401502
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
local
g
=
c
:
GetColumnGroup
():
Filter
(
Card
.
IsType
,
nil
,
TYPE_SPELL
+
TYPE_TRAP
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
c66736715.lua
View file @
6975d6f4
...
...
@@ -65,4 +65,4 @@ function s.expop(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
pendvalue
(
e
,
c
)
return
c
:
IsLocation
(
LOCATION_HAND
)
end
\ No newline at end of file
end
c67489919.lua
View file @
6975d6f4
...
...
@@ -6,7 +6,7 @@ function c67489919.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetCondition
(
c67489919
.
ind
con
)
e1
:
SetCondition
(
aux
.
tkf
con
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
...
...
@@ -38,9 +38,6 @@ function c67489919.initial_effect(c)
e6
:
SetValue
(
LOCATION_MZONE
+
LOCATION_HAND
)
c
:
RegisterEffect
(
e6
)
end
function
c67489919
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c67489919
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
==
0
and
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_MZONE
)
>
0
...
...
c67922702.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c67922702.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c67922702
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -47,9 +47,6 @@ function c67922702.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c67922702
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c67922702
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOKEN
,
nil
,
1
,
0
,
0
)
...
...
c71164684.lua
View file @
6975d6f4
...
...
@@ -68,4 +68,4 @@ function s.repval(e,c)
end
function
s
.
repop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Remove
(
e
:
GetHandler
(),
POS_FACEUP
,
REASON_EFFECT
+
REASON_REPLACE
)
end
\ No newline at end of file
end
c71277255.lua
View file @
6975d6f4
...
...
@@ -69,4 +69,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
end
\ No newline at end of file
end
c71948047.lua
View file @
6975d6f4
...
...
@@ -87,4 +87,4 @@ function c71948047.setop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SSet
(
tp
,
tc
)
end
end
\ No newline at end of file
end
c7206349.lua
View file @
6975d6f4
...
...
@@ -84,7 +84,7 @@ function c7206349.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_GRAVE
+
LOCATION_MZONE
)
and
c7206349
.
thfilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c7206349
.
thfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
c7206349
.
thfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
c7206349
.
thfilter
,
tp
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
LOCATION_GRAVE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
end
function
c7206349
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c72291078.lua
View file @
6975d6f4
...
...
@@ -6,7 +6,7 @@ function c72291078.initial_effect(c)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e1
:
SetCondition
(
c72291078
.
ind
con
)
e1
:
SetCondition
(
aux
.
tkf
con
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
...
...
@@ -34,9 +34,6 @@ function c72291078.initial_effect(c)
e4
:
SetOperation
(
c72291078
.
spop
)
c
:
RegisterEffect
(
e4
)
end
function
c72291078
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c72291078
.
filter
(
c
)
return
c
:
IsSetCard
(
0x101b
)
and
c
:
IsSummonable
(
true
,
nil
)
end
...
...
c73355951.lua
View file @
6975d6f4
...
...
@@ -23,7 +23,8 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
GetLocationCount
(
1
-
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
nil
,
e
,
tp
)
and
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
0
,
LOCATION_REMOVED
,
1
,
nil
,
e
,
tp
)
end
and
Duel
.
IsExistingTarget
(
s
.
filter
,
tp
,
0
,
LOCATION_REMOVED
,
1
,
nil
,
e
,
tp
)
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g1
=
Duel
.
SelectTarget
(
tp
,
s
.
filter
,
tp
,
LOCATION_REMOVED
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
...
...
@@ -33,10 +34,9 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetTargetsRelateToChain
()
if
#
g
==
2
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
return
end
local
sc1
=
g
:
Filter
(
Card
.
IsControler
,
nil
,
tp
):
GetFirst
()
local
sc2
=
g
:
Filter
(
Card
.
IsControler
,
nil
,
1
-
tp
):
GetFirst
()
if
sc1
and
Duel
.
SpecialSummonStep
(
sc1
,
0
,
tp
,
1
-
tp
,
false
,
false
,
POS_FACEUP
)
and
sc2
then
if
sc1
and
Duel
.
SpecialSummonStep
(
sc1
,
0
,
tp
,
1
-
tp
,
false
,
false
,
POS_FACEUP
)
and
sc2
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
Duel
.
SpecialSummonStep
(
sc2
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
Duel
.
SpecialSummonComplete
()
...
...
c7336745.lua
View file @
6975d6f4
...
...
@@ -64,4 +64,4 @@ function c7336745.damop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_DAMAGE
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
\ No newline at end of file
end
c74906081.lua
View file @
6975d6f4
...
...
@@ -48,7 +48,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
e
:
SetCategory
(
0
)
e
:
SetOperation
(
s
.
mvop
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
Duel
.
SelectTarge
t
(
tp
,
s
.
mfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
,
tp
,
0
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
s
.
mfilter
,
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
,
tp
,
0
)
else
e
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e
:
SetOperation
(
s
.
spop
)
...
...
c75728539.lua
View file @
6975d6f4
...
...
@@ -95,4 +95,4 @@ function c75728539.thop(e,tp,eg,ep,ev,re,r,rp)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
SendtoHand
(
c
,
nil
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c76403456.lua
View file @
6975d6f4
...
...
@@ -15,7 +15,7 @@ function c76403456.condition(e,tp,eg,ep,ev,re,r,rp)
end
function
c76403456
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
val
=
math.ceil
(
Duel
.
GetBattleDamage
(
tp
)
/
500
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDiscardDeck
(
tp
,
val
)
if
chk
==
0
then
return
val
>
0
and
Duel
.
IsPlayerCanDiscardDeck
(
tp
,
val
)
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
EFFECT_AVOID_BATTLE_DAMAGE
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DECKDES
,
nil
,
0
,
tp
,
0
)
end
...
...
c76840111.lua
View file @
6975d6f4
...
...
@@ -120,4 +120,4 @@ function c76840111.efilter3(c)
end
function
c76840111
.
efilter4
(
c
)
return
c
:
IsSetCard
(
0x1046
)
and
c
:
IsFaceup
()
end
\ No newline at end of file
end
c76902476.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c76902476.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c76902476
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -35,9 +35,6 @@ function c76902476.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c76902476
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c76902476
.
indtg
(
e
,
c
)
return
c
:
IsCode
(
31533705
)
end
...
...
c77765207.lua
View file @
6975d6f4
...
...
@@ -81,4 +81,4 @@ function s.activate2(e,tp,eg,ep,ev,re,r,rp)
if
g
:
GetCount
()
>
0
then
Duel
.
SSet
(
tp
,
g
:
GetFirst
())
end
end
\ No newline at end of file
end
c78098950.lua
View file @
6975d6f4
...
...
@@ -77,4 +77,4 @@ function c78098950.todop(e,tp,eg,ep,ev,re,r,rp)
if
#
g
==
0
then
return
end
Duel
.
Hint
(
HINT_CARD
,
0
,
78098950
)
Duel
.
SendtoDeck
(
g
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
end
\ No newline at end of file
end
c79210531.lua
View file @
6975d6f4
...
...
@@ -58,4 +58,4 @@ function c79210531.thop(e,tp,eg,ep,ev,re,r,rp)
if
#
g
==
0
then
return
end
Duel
.
SendtoHand
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
end
\ No newline at end of file
end
c81978611.lua
View file @
6975d6f4
...
...
@@ -80,4 +80,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
end
c82090807.lua
View file @
6975d6f4
...
...
@@ -80,4 +80,4 @@ function c82090807.dhop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
and
tc
:
GetOverlayCount
()
>
0
then
tc
:
RemoveOverlayCard
(
tp
,
1
,
2
,
REASON_EFFECT
)
end
end
\ No newline at end of file
end
c82112494.lua
View file @
6975d6f4
...
...
@@ -107,4 +107,4 @@ function c82112494.penop(e,tp,eg,ep,ev,re,r,rp)
if
c
:
IsRelateToEffect
(
e
)
then
Duel
.
MoveToField
(
c
,
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
end
end
\ No newline at end of file
end
c83308376.lua
View file @
6975d6f4
...
...
@@ -37,7 +37,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
and
chkc
:
IsAbleToRemove
()
and
chkc
~=
c
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
c
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
c
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
c
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c83334932.lua
View file @
6975d6f4
...
...
@@ -66,4 +66,4 @@ function c83334932.lvop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
tc
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c83827392.lua
View file @
6975d6f4
...
...
@@ -60,7 +60,7 @@ function s.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToDeck
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
g
,
1
,
0
,
0
)
end
function
s
.
tdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c84384943.lua
View file @
6975d6f4
...
...
@@ -62,4 +62,4 @@ end
function
s
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
end
\ No newline at end of file
end
c86852702.lua
View file @
6975d6f4
...
...
@@ -7,63 +7,84 @@ function c86852702.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCountLimit
(
1
,
86852702
+
EFFECT_COUNT_CODE_OATH
)
e1
:
SetCost
(
c86852702
.
cost
1
)
e1
:
SetTarget
(
c86852702
.
target
1
)
e1
:
SetOperation
(
c86852702
.
activate
1
)
e1
:
SetCost
(
c86852702
.
cost
)
e1
:
SetTarget
(
c86852702
.
target
)
e1
:
SetOperation
(
c86852702
.
activate
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetDescription
(
aux
.
Stringid
(
86852702
,
1
))
e2
:
SetCost
(
c86852702
.
cost2
)
e2
:
SetTarget
(
c86852702
.
target2
)
e2
:
SetOperation
(
c86852702
.
activate2
)
c
:
RegisterEffect
(
e2
)
end
function
c86852702
.
cost1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsDiscardable
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
)
end
Duel
.
DiscardHand
(
tp
,
Card
.
IsDiscardable
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
,
nil
)
end
function
c86852702
.
thfilter1
(
c
)
return
c
:
IsSetCard
(
0x36
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToHand
()
end
function
c86852702
.
target1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter1
,
tp
,
LOCATION_DECK
,
0
,
nil
)
if
chk
==
0
then
return
g
:
GetClassCount
(
Card
.
GetCode
)
>=
2
end
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
2
,
tp
,
LOCATION_DECK
)
end
function
c86852702
.
activate1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter1
,
tp
,
LOCATION_DECK
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
hg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
2
,
2
)
if
hg
then
Duel
.
SendtoHand
(
hg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
hg
)
end
function
c86852702
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
e
:
SetLabel
(
1
)
if
chk
==
0
then
return
true
end
end
function
c86852702
.
costfilter
(
c
)
return
c
:
IsSetCard
(
0x36
)
and
c
:
IsDiscardable
()
end
function
c86852702
.
cost2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c86852702
.
costfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
)
end
Duel
.
DiscardHand
(
tp
,
c86852702
.
costfilter
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
,
nil
)
function
c86852702
.
thfilter1
(
c
)
return
c
:
IsSetCard
(
0x36
)
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToHand
()
end
function
c86852702
.
thfilter2
(
c
)
return
c
:
IsSetCard
(
0x36
)
and
not
c
:
IsCode
(
86852702
)
and
c
:
IsAbleToHand
()
end
function
c86852702
.
target2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
nil
)
if
chk
==
0
then
return
g
:
GetClassCount
(
Card
.
GetCode
)
>=
2
end
Duel
.
Hint
(
HINT_OPSELECTED
,
1
-
tp
,
e
:
GetDescription
())
function
c86852702
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
count1
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter1
,
tp
,
LOCATION_DECK
,
0
,
nil
):
GetClassCount
(
Card
.
GetCode
)
local
count2
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
nil
):
GetClassCount
(
Card
.
GetCode
)
local
b1
=
Duel
.
IsExistingMatchingCard
(
Card
.
IsDiscardable
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
)
and
count1
>=
2
local
b2
=
Duel
.
IsExistingMatchingCard
(
c86852702
.
costfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
)
and
count2
>=
2
if
chk
==
0
then
if
e
:
GetLabel
()
==
1
then
e
:
SetLabel
(
0
)
return
b1
or
b2
else
return
count1
>=
2
or
count2
>=
2
end
end
if
e
:
GetLabel
()
==
1
then
e
:
SetLabel
(
0
)
local
op
=
0
if
b1
and
b2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
0
),
aux
.
Stringid
(
86852702
,
1
))
elseif
b1
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
0
))
else
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
1
))
+
1
end
if
op
==
0
then
Duel
.
DiscardHand
(
tp
,
Card
.
IsDiscardable
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
,
nil
)
else
Duel
.
DiscardHand
(
tp
,
c86852702
.
costfilter
,
1
,
1
,
REASON_COST
+
REASON_DISCARD
,
nil
)
end
e
:
SetLabel
(
0
,
op
)
else
local
op
=
0
if
count1
>=
2
and
count2
>=
2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
0
),
aux
.
Stringid
(
86852702
,
1
))
elseif
count1
>=
2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
0
))
else
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
86852702
,
1
))
+
1
end
e
:
SetLabel
(
0
,
op
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
2
,
tp
,
LOCATION_DECK
)
end
function
c86852702
.
activate2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
hg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
2
,
2
)
if
hg
then
Duel
.
SendtoHand
(
hg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
hg
)
function
c86852702
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
label
,
op
=
e
:
GetLabel
()
if
op
==
0
then
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter1
,
tp
,
LOCATION_DECK
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
hg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
2
,
2
)
if
hg
then
Duel
.
SendtoHand
(
hg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
hg
)
end
else
local
g
=
Duel
.
GetMatchingGroup
(
c86852702
.
thfilter2
,
tp
,
LOCATION_DECK
,
0
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
hg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dncheck
,
false
,
2
,
2
)
if
hg
then
Duel
.
SendtoHand
(
hg
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
hg
)
end
end
end
c87639778.lua
View file @
6975d6f4
...
...
@@ -5,6 +5,7 @@ function c87639778.initial_effect(c)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCondition
(
c87639778
.
condition
)
e1
:
SetTarget
(
c87639778
.
target
)
e1
:
SetOperation
(
c87639778
.
activate
)
c
:
RegisterEffect
(
e1
)
--act in hand
...
...
@@ -32,6 +33,9 @@ end
function
c87639778
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
IsExistingMatchingCard
(
c87639778
.
disfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
end
function
c87639778
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
87639778
)
==
0
end
end
function
c87639778
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
...
@@ -40,6 +44,7 @@ function c87639778.activate(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetOperation
(
c87639778
.
disop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterFlagEffect
(
tp
,
87639778
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
end
function
c87639778
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
re
:
IsActiveType
(
TYPE_MONSTER
)
and
rp
==
1
-
tp
...
...
c89907227.lua
View file @
6975d6f4
...
...
@@ -56,7 +56,7 @@ function c89907227.tkop(e,tp,eg,ep,ev,re,r,rp)
end
end
function
c89907227
.
tkcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
~=
tp
and
not
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
return
Duel
.
IsTurnPlayer
(
1
-
tp
)
and
not
aux
.
tkfcon
(
e
,
tp
)
end
function
c89907227
.
tkop2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
...
...
c90452877.lua
View file @
6975d6f4
...
...
@@ -27,23 +27,10 @@ end
function
c90452877
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
Duel
.
Destroy
(
tc
,
REASON_EFFECT
)
~=
0
then
local
b1
=
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
nil
)
local
b2
=
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
,
1
,
nil
)
local
op
=
0
if
b1
and
b2
then
op
=
Duel
.
SelectOption
(
tp
,
aux
.
Stringid
(
90452877
,
0
),
aux
.
Stringid
(
90452877
,
1
))
else
op
=
2
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
nil
if
op
==
0
then
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
elseif
op
==
1
then
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_GRAVE
,
1
,
1
,
nil
)
else
g
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectCardFromFieldFirst
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
)
end
Duel
.
Remove
(
g
,
POS_FACEUP
,
REASON_EFFECT
)
end
end
c91073013.lua
View file @
6975d6f4
--VS 龍帝ヴァリウス
function
c91073013
.
initial_effect
(
c
)
--return and spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
91073013
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
91073013
)
e1
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
e1
:
SetCondition
(
c91073013
.
spcon
)
e1
:
SetTarget
(
c91073013
.
sptg
)
e1
:
SetOperation
(
c91073013
.
spop
)
c
:
RegisterEffect
(
e1
)
--show earth to immune
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
91073013
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
91073014
)
e2
:
SetCost
(
c91073013
.
imcost
)
e2
:
SetTarget
(
c91073013
.
imtg
)
e2
:
SetOperation
(
c91073013
.
imop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire and dark for destroy
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
91073013
,
2
))
e3
:
SetCategory
(
CATEGORY_DESTROY
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
91073014
)
e3
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e3
:
SetCost
(
c91073013
.
descost
)
e3
:
SetTarget
(
c91073013
.
destg
)
e3
:
SetOperation
(
c91073013
.
desop
)
c
:
RegisterEffect
(
e3
)
end
function
c91073013
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
end
function
c91073013
.
spfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToHand
()
and
not
c
:
IsRace
(
RACE_DRAGON
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
c91073013
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c91073013
.
spfilter
(
chkc
,
tp
)
end
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingTarget
(
c91073013
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
and
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c91073013
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c91073013
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToChain
()
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c91073013
.
imcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
)
and
not
c
:
IsPublic
()
end
function
c91073013
.
imcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c91073013
.
imcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c91073013
.
imcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c91073013
.
imtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
end
function
c91073013
.
imop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
--immune
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_IMMUNE_EFFECT
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
+
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetValue
(
c91073013
.
efilter
)
c
:
RegisterEffect
(
e1
)
end
function
c91073013
.
efilter
(
e
,
re
)
return
e
:
GetHandlerPlayer
()
~=
re
:
GetOwnerPlayer
()
and
re
:
IsActivated
()
end
function
c91073013
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c91073013
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c91073013
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
dabcheck
,
3
,
3
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dabcheck
,
false
,
3
,
3
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c91073013
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
c
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
1
,
0
,
0
)
end
function
c91073013
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
e
:
GetHandler
():
IsRelateToChain
()
then
c
=
nil
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DESTROY
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
TRUE
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
c
)
if
#
g
>
0
then
Duel
.
HintSelection
(
g
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
--VS 龍帝ヴァリウス
function
c91073013
.
initial_effect
(
c
)
--return and spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
91073013
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
91073013
)
e1
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
e1
:
SetCondition
(
c91073013
.
spcon
)
e1
:
SetTarget
(
c91073013
.
sptg
)
e1
:
SetOperation
(
c91073013
.
spop
)
c
:
RegisterEffect
(
e1
)
--show earth to immune
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
91073013
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
91073014
)
e2
:
SetCost
(
c91073013
.
imcost
)
e2
:
SetTarget
(
c91073013
.
imtg
)
e2
:
SetOperation
(
c91073013
.
imop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire and dark for destroy
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
91073013
,
2
))
e3
:
SetCategory
(
CATEGORY_DESTROY
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
91073014
)
e3
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e3
:
SetCost
(
c91073013
.
descost
)
e3
:
SetTarget
(
c91073013
.
destg
)
e3
:
SetOperation
(
c91073013
.
desop
)
c
:
RegisterEffect
(
e3
)
end
function
c91073013
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
end
function
c91073013
.
spfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToHand
()
and
not
c
:
IsRace
(
RACE_DRAGON
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
c91073013
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c91073013
.
spfilter
(
chkc
,
tp
)
end
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingTarget
(
c91073013
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
and
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c91073013
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c91073013
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToChain
()
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c91073013
.
imcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
)
and
not
c
:
IsPublic
()
end
function
c91073013
.
imcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c91073013
.
imcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c91073013
.
imcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c91073013
.
imtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
end
function
c91073013
.
imop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToChain
()
then
return
end
--immune
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_IMMUNE_EFFECT
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
+
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetValue
(
c91073013
.
efilter
)
c
:
RegisterEffect
(
e1
)
end
function
c91073013
.
efilter
(
e
,
re
)
return
e
:
GetHandlerPlayer
()
~=
re
:
GetOwnerPlayer
()
and
re
:
IsActivated
()
end
function
c91073013
.
descfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_DARK
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c91073013
.
descost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c91073013
.
descfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
dabcheck
,
3
,
3
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
dabcheck
,
false
,
3
,
3
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c91073013
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
c
)
if
chk
==
0
then
return
#
g
>
0
and
Duel
.
GetFlagEffect
(
tp
,
91073013
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
91073013
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
1
,
0
,
0
)
end
function
c91073013
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
e
:
GetHandler
():
IsRelateToChain
()
then
c
=
nil
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DESTROY
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
TRUE
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
c
)
if
#
g
>
0
then
Duel
.
HintSelection
(
g
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
c91300233.lua
View file @
6975d6f4
...
...
@@ -80,4 +80,4 @@ function c91300233.spop(e,tp,eg,ep,ev,re,r,rp)
if
tc
:
IsRelateToEffect
(
e
)
then
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
\ No newline at end of file
end
c91584698.lua
View file @
6975d6f4
...
...
@@ -13,7 +13,7 @@ function c91584698.initial_effect(c)
c
:
RegisterEffect
(
e2
)
--tohand
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetCategory
(
CATEGORY_TOHAND
)
e3
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_
TOHAND
)
e3
:
SetType
(
EFFECT_TYPE_IGNITION
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCost
(
c91584698
.
thcost
)
...
...
c91706817.lua
View file @
6975d6f4
--青い涙の天使
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
--same effect send this card to grave and summon another card check
local
e0
=
aux
.
AddThisCardInGraveAlreadyCheck
(
c
)
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
...
...
@@ -20,6 +22,7 @@ function s.initial_effect(c)
e2
:
SetCode
(
EVENT_DAMAGE
)
e2
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e2
:
SetCountLimit
(
1
,
id
)
e2
:
SetLabelObject
(
e0
)
e2
:
SetCondition
(
s
.
setcon
)
e2
:
SetCost
(
aux
.
bfgcost
)
e2
:
SetTarget
(
s
.
settg
)
...
...
@@ -67,7 +70,8 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function
s
.
setcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
bit
.
band
(
r
,
REASON_EFFECT
)
~=
0
local
se
=
e
:
GetLabelObject
():
GetLabelObject
()
return
bit
.
band
(
r
,
REASON_EFFECT
)
~=
0
and
(
se
==
nil
or
e
:
GetHandler
():
GetReasonEffect
()
~=
se
)
end
function
s
.
setfilter
(
c
)
return
c
:
GetType
()
==
TYPE_TRAP
and
c
:
IsSSetable
()
...
...
c92895501.lua
View file @
6975d6f4
--VS ヘヴィ・ボーガー
function
c92895501
.
initial_effect
(
c
)
--return and spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
92895501
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
92895501
)
e1
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
e1
:
SetCondition
(
c92895501
.
spcon
)
e1
:
SetTarget
(
c92895501
.
sptg
)
e1
:
SetOperation
(
c92895501
.
spop
)
c
:
RegisterEffect
(
e1
)
--show dark for draw
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
92895501
,
1
))
e2
:
SetCategory
(
CATEGORY_DRAW
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
92895502
)
e2
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e2
:
SetCost
(
c92895501
.
drcost
)
e2
:
SetTarget
(
c92895501
.
drtg
)
e2
:
SetOperation
(
c92895501
.
drop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire for damage
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
92895501
,
2
))
e3
:
SetCategory
(
CATEGORY_DAMAGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
92895502
)
e3
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e3
:
SetCost
(
c92895501
.
dmgcost
)
e3
:
SetTarget
(
c92895501
.
dmgtg
)
e3
:
SetOperation
(
c92895501
.
dmgop
)
c
:
RegisterEffect
(
e3
)
end
function
c92895501
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
end
function
c92895501
.
spfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToHand
()
and
not
c
:
IsRace
(
RACE_MACHINE
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
c92895501
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c92895501
.
spfilter
(
chkc
,
tp
)
end
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingTarget
(
c92895501
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
and
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c92895501
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c92895501
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToChain
()
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c92895501
.
drcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c92895501
.
drcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c92895501
.
drcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c92895501
.
drcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c92895501
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDraw
(
tp
,
1
)
and
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetTargetPlayer
(
tp
)
Duel
.
SetTargetParam
(
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
1
)
end
function
c92895501
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Draw
(
p
,
d
,
REASON_EFFECT
)
end
function
c92895501
.
dmgcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c92895501
.
dmgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c92895501
.
dmgcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c92895501
.
dmgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetTargetPlayer
(
1
-
tp
)
Duel
.
SetTargetParam
(
1500
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
1500
)
end
function
c92895501
.
dmgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
end
--VS ヘヴィ・ボーガー
function
c92895501
.
initial_effect
(
c
)
--return and spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
92895501
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SPECIAL_SUMMON
)
e1
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
92895501
)
e1
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_MAIN_END
)
e1
:
SetCondition
(
c92895501
.
spcon
)
e1
:
SetTarget
(
c92895501
.
sptg
)
e1
:
SetOperation
(
c92895501
.
spop
)
c
:
RegisterEffect
(
e1
)
--show dark for draw
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
92895501
,
1
))
e2
:
SetCategory
(
CATEGORY_DRAW
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
92895502
)
e2
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e2
:
SetCost
(
c92895501
.
drcost
)
e2
:
SetTarget
(
c92895501
.
drtg
)
e2
:
SetOperation
(
c92895501
.
drop
)
c
:
RegisterEffect
(
e2
)
--show earth and fire for damage
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
92895501
,
2
))
e3
:
SetCategory
(
CATEGORY_DAMAGE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCountLimit
(
1
,
92895502
)
e3
:
SetHintTiming
(
0
,
TIMING_END_PHASE
)
e3
:
SetCost
(
c92895501
.
dmgcost
)
e3
:
SetTarget
(
c92895501
.
dmgtg
)
e3
:
SetOperation
(
c92895501
.
dmgop
)
c
:
RegisterEffect
(
e3
)
end
function
c92895501
.
spcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
end
function
c92895501
.
spfilter
(
c
,
tp
)
return
c
:
IsSetCard
(
0x195
)
and
c
:
IsFaceup
()
and
c
:
IsAbleToHand
()
and
not
c
:
IsRace
(
RACE_MACHINE
)
and
Duel
.
GetMZoneCount
(
tp
,
c
)
>
0
end
function
c92895501
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
c92895501
.
spfilter
(
chkc
,
tp
)
end
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingTarget
(
c92895501
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
,
tp
)
and
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c92895501
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
,
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
c
,
1
,
0
,
0
)
end
function
c92895501
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToChain
()
and
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
>
0
and
tc
:
IsLocation
(
LOCATION_HAND
)
and
c
:
IsRelateToChain
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
function
c92895501
.
drcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_DARK
)
and
not
c
:
IsPublic
()
end
function
c92895501
.
drcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c92895501
.
drcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c92895501
.
drcfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
)
Duel
.
ConfirmCards
(
1
-
tp
,
g
)
Duel
.
RaiseEvent
(
g
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c92895501
.
drtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsPlayerCanDraw
(
tp
,
1
)
and
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetTargetPlayer
(
tp
)
Duel
.
SetTargetParam
(
1
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DRAW
,
nil
,
0
,
tp
,
1
)
end
function
c92895501
.
drop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Draw
(
p
,
d
,
REASON_EFFECT
)
end
function
c92895501
.
dmgcfilter
(
c
)
return
c
:
IsAttribute
(
ATTRIBUTE_EARTH
+
ATTRIBUTE_FIRE
)
and
not
c
:
IsPublic
()
end
function
c92895501
.
dmgcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
g
=
Duel
.
GetMatchingGroup
(
c92895501
.
dmgcfilter
,
tp
,
LOCATION_HAND
,
0
,
nil
)
if
chk
==
0
then
return
g
:
CheckSubGroup
(
aux
.
gfcheck
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
sg
=
g
:
SelectSubGroup
(
tp
,
aux
.
gfcheck
,
false
,
2
,
2
,
Card
.
IsAttribute
,
ATTRIBUTE_EARTH
,
ATTRIBUTE_FIRE
)
Duel
.
ConfirmCards
(
1
-
tp
,
sg
)
Duel
.
RaiseEvent
(
sg
,
EVENT_CUSTOM
+
9091064
,
e
,
REASON_COST
,
tp
,
tp
,
0
)
Duel
.
ShuffleHand
(
tp
)
end
function
c92895501
.
dmgtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetFlagEffect
(
tp
,
92895501
)
==
0
end
Duel
.
RegisterFlagEffect
(
tp
,
92895501
,
RESET_CHAIN
,
0
,
1
)
Duel
.
SetTargetPlayer
(
1
-
tp
)
Duel
.
SetTargetParam
(
1500
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DAMAGE
,
nil
,
0
,
1
-
tp
,
1500
)
end
function
c92895501
.
dmgop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
p
,
d
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_PLAYER
,
CHAININFO_TARGET_PARAM
)
Duel
.
Damage
(
p
,
d
,
REASON_EFFECT
)
end
c9336190.lua
View file @
6975d6f4
...
...
@@ -51,7 +51,8 @@ function c9336190.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chk
==
0
then
return
not
e
:
GetHandler
():
IsStatus
(
STATUS_CHAINING
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
1
and
Duel
.
IsPlayerCanSpecialSummonCount
(
tp
,
2
)
and
Duel
.
IsExistingTarget
(
c9336190
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
end
and
Duel
.
IsExistingTarget
(
c9336190
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
nil
,
e
,
tp
)
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c9336190
.
spfilter
,
tp
,
LOCATION_GRAVE
,
0
,
1
,
1
,
nil
,
e
,
tp
)
g
:
AddCard
(
e
:
GetHandler
())
...
...
@@ -61,6 +62,7 @@ function c9336190.spop(e,tp,eg,ep,ev,re,r,rp)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
Duel
.
SpecialSummon
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
c
:
IsRelateToEffect
(
e
)
and
Duel
.
IsPlayerCanSpecialSummonMonster
(
tp
,
9336190
,
0x10db
,
TYPES_NORMAL_TRAP_MONSTER
,
0
,
0
,
tc
:
GetLevel
(),
RACE_WARRIOR
,
ATTRIBUTE_DARK
)
then
c
:
AddMonsterAttribute
(
TYPE_NORMAL
,
0
,
0
,
tc
:
GetLevel
(),
0
,
0
)
...
...
c94973028.lua
View file @
6975d6f4
...
...
@@ -14,7 +14,7 @@ function c94973028.initial_effect(c)
e2
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCode
(
EFFECT_INDESTRUCTABLE_BATTLE
)
e2
:
SetCondition
(
c94973028
.
ind
con
)
e2
:
SetCondition
(
aux
.
tkf
con
)
e2
:
SetValue
(
1
)
c
:
RegisterEffect
(
e2
)
local
e3
=
e2
:
Clone
()
...
...
@@ -47,9 +47,6 @@ function c94973028.lvval(e,c)
local
tp
=
c
:
GetControler
()
return
Duel
.
GetMatchingGroup
(
Card
.
IsCode
,
tp
,
LOCATION_MZONE
,
0
,
nil
,
31533705
):
GetSum
(
Card
.
GetLevel
)
end
function
c94973028
.
indcon
(
e
)
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
function
c94973028
.
cfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x101b
)
end
...
...
c95243515.lua
View file @
6975d6f4
...
...
@@ -89,4 +89,4 @@ function c95243515.disop(e,tp,eg,ep,ev,re,r,rp)
tc
:
RegisterEffect
(
e2
)
end
end
end
\ No newline at end of file
end
c95816395.lua
View file @
6975d6f4
...
...
@@ -16,7 +16,7 @@ function c95816395.regop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetCategory
(
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
,
95816395
)
e1
:
SetRange
(
LOCATION_GRAVE
)
e1
:
SetTarget
(
c95816395
.
thtg
)
e1
:
SetOperation
(
c95816395
.
thop
)
...
...
c96239878.lua
View file @
6975d6f4
...
...
@@ -64,7 +64,7 @@ function c96239878.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if
chkc
then
return
(
chkc
:
IsOnField
()
or
chkc
:
IsLocation
(
LOCATION_GRAVE
))
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAbleToRemove
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
g
=
Duel
.
SelectTarge
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
g
=
aux
.
SelectTargetFromFieldFirs
t
(
tp
,
Card
.
IsAbleToRemove
,
tp
,
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_REMOVE
,
g
,
1
,
0
,
0
)
end
function
c96239878
.
rmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
...
c97417863.lua
View file @
6975d6f4
...
...
@@ -135,4 +135,4 @@ function c97417863.atkop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
)
c
:
RegisterEffect
(
e1
)
end
end
\ No newline at end of file
end
c97697678.lua
View file @
6975d6f4
...
...
@@ -2,7 +2,7 @@
function
c97697678
.
initial_effect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
97697678
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
)
e1
:
SetCategory
(
CATEGORY_
SEARCH
+
CATEGORY_
TOHAND
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_PREDRAW
)
e1
:
SetRange
(
LOCATION_MZONE
)
...
...
c98020526.lua
View file @
6975d6f4
...
...
@@ -80,7 +80,7 @@ function c98020526.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
RegisterFlagEffect
(
tp
,
98020526
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
elseif
opval
[
op
]
==
2
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_REMOVE
)
local
rg
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
NecroValleyFilter
(
c98020526
.
rfilter
),
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
local
rg
=
aux
.
SelectCardFromFieldFirst
(
tp
,
aux
.
NecroValleyFilter
(
c98020526
.
rfilter
),
tp
,
0
,
LOCATION_MZONE
+
LOCATION_GRAVE
,
1
,
1
,
nil
)
Duel
.
HintSelection
(
rg
)
Duel
.
Remove
(
rg
,
POS_FACEUP
,
REASON_EFFECT
)
Duel
.
RegisterFlagEffect
(
tp
,
98020527
,
RESET_PHASE
+
PHASE_END
,
0
,
1
)
...
...
c98301564.lua
View file @
6975d6f4
...
...
@@ -30,7 +30,7 @@ function c98301564.initial_effect(c)
c
:
RegisterEffect
(
e4
)
end
function
c98301564
.
costchange
(
e
,
re
,
rp
,
val
)
if
re
and
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
and
re
:
GetHandler
():
IsType
(
TYPE_TRAP
)
and
re
:
GetHandler
():
IsType
(
TYPE_COUNTER
)
then
if
re
and
(
re
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
or
re
:
GetCode
()
==
EFFECT_TRAP_ACT_IN_HAND
or
re
:
GetCode
()
==
EFFECT_TRAP_ACT_IN_SET_TURN
)
and
re
:
GetHandler
():
IsType
(
TYPE_TRAP
)
and
re
:
GetHandler
():
IsType
(
TYPE_COUNTER
)
then
return
0
else
return
val
...
...
c98905.lua
View file @
6975d6f4
...
...
@@ -30,15 +30,15 @@ function c98905.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
c98905
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
return
end
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
if
not
tc
:
IsRelateToEffect
(
e
)
then
return
end
if
Duel
.
SpecialSummonStep
(
tc
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
59822133
)
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c98905
.
spfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
e
,
tp
,
tc
:
GetCode
())
if
g
:
GetCount
()
>
0
then
g
:
AddCard
(
tc
)
Duel
.
SpecialSummon
(
g
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummonStep
(
g
:
GetFirst
(),
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
Duel
.
SpecialSummonComplete
()
end
constant.lua
View file @
6975d6f4
...
...
@@ -807,6 +807,7 @@ HINTMSG_TOZONE =571 --请选择要移动到的位置
HINTMSG_COUNTER
=
572
--请选择要放置指示物的卡
HINTMSG_DISABLE
=
573
--请选择要无效的卡
HINTMSG_OPERATECARD
=
574
--请选择要操作的卡
HINTMSG_FIELD_FIRST
=
575
--请选择场上的卡(按取消可选择其他区域的卡)
--Select --请选择
SELECT_HEADS
=
60
--正面
SELECT_TAILS
=
61
--反面
...
...
procedure.lua
View file @
6975d6f4
...
...
@@ -928,11 +928,16 @@ function Auxiliary.FOperationMix(insf,sub,...)
local
notfusion
=
chkfnf
&
0x100
>
0
local
concat_fusion
=
chkfnf
&
0x200
>
0
local
sub2
=
(
sub
or
notfusion
)
and
not
concat_fusion
local
cancel
=
concat_fusion
local
mg
=
eg
:
Filter
(
Auxiliary
.
FConditionFilterMix
,
c
,
c
,
sub2
,
concat_fusion
,
table.unpack
(
funs
))
if
gc
then
Duel
.
SetSelectedCard
(
gc
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
local
sg
=
mg
:
SelectSubGroup
(
tp
,
Auxiliary
.
FCheckMixGoal
,
false
,
#
funs
,
#
funs
,
tp
,
c
,
sub2
,
chkfnf
,
table.unpack
(
funs
))
Duel
.
SetFusionMaterial
(
sg
)
local
sg
=
mg
:
SelectSubGroup
(
tp
,
Auxiliary
.
FCheckMixGoal
,
cancel
,
#
funs
,
#
funs
,
tp
,
c
,
sub2
,
chkfnf
,
table.unpack
(
funs
))
if
sg
then
Duel
.
SetFusionMaterial
(
sg
)
else
Duel
.
SetFusionMaterial
(
Group
.
CreateGroup
())
end
end
end
function
Auxiliary
.
FConditionFilterMix
(
c
,
fc
,
sub
,
concat_fusion
,
...
)
...
...
@@ -1050,6 +1055,7 @@ function Auxiliary.FOperationMixRep(insf,sub,fun1,minc,maxc,...)
local
notfusion
=
chkfnf
&
0x100
>
0
local
concat_fusion
=
chkfnf
&
0x200
>
0
local
sub2
=
(
sub
or
notfusion
)
and
not
concat_fusion
local
cancel
=
concat_fusion
local
mg
=
eg
:
Filter
(
Auxiliary
.
FConditionFilterMix
,
c
,
c
,
sub2
,
concat_fusion
,
fun1
,
table.unpack
(
funs
))
local
sg
=
Group
.
CreateGroup
()
if
gc
then
sg
:
AddCard
(
gc
)
end
...
...
@@ -1060,8 +1066,11 @@ function Auxiliary.FOperationMixRep(insf,sub,fun1,minc,maxc,...)
local
cancel_group
=
sg
:
Clone
()
if
gc
then
cancel_group
:
RemoveCard
(
gc
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
local
tc
=
cg
:
SelectUnselect
(
cancel_group
,
tp
,
finish
,
false
,
minc
+#
funs
,
maxc
+#
funs
)
if
not
tc
then
break
end
local
tc
=
cg
:
SelectUnselect
(
cancel_group
,
tp
,
finish
,
cancel
,
minc
+#
funs
,
maxc
+#
funs
)
if
not
tc
then
if
not
finish
then
sg
:
Clear
()
end
break
end
if
sg
:
IsContains
(
tc
)
then
sg
:
RemoveCard
(
tc
)
else
...
...
@@ -1680,7 +1689,8 @@ function Auxiliary.AddContactFusionProcedure(c,filter,self_location,opponent_loc
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e2
:
SetRange
(
LOCATION_EXTRA
)
e2
:
SetCondition
(
Auxiliary
.
ContactFusionCondition
(
filter
,
self_location
,
opponent_location
))
e2
:
SetOperation
(
Auxiliary
.
ContactFusionOperation
(
filter
,
self_location
,
opponent_location
,
mat_operation
,
operation_params
))
e2
:
SetTarget
(
Auxiliary
.
ContactFusionTarget
(
filter
,
self_location
,
opponent_location
))
e2
:
SetOperation
(
Auxiliary
.
ContactFusionOperation
(
mat_operation
,
operation_params
))
c
:
RegisterEffect
(
e2
)
return
e2
end
...
...
@@ -1696,12 +1706,23 @@ function Auxiliary.ContactFusionCondition(filter,self_location,opponent_location
return
c
:
CheckFusionMaterial
(
mg
,
nil
,
tp
|
0x200
)
end
end
function
Auxiliary
.
ContactFusion
Operation
(
filter
,
self_location
,
opponent_location
,
mat_operation
,
operation_params
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
function
Auxiliary
.
ContactFusion
Target
(
filter
,
self_location
,
opponent_location
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
hk
,
c
)
local
mg
=
Duel
.
GetMatchingGroup
(
Auxiliary
.
ContactFusionMaterialFilter
,
tp
,
self_location
,
opponent_location
,
c
,
c
,
filter
)
local
g
=
Duel
.
SelectFusionMaterial
(
tp
,
c
,
mg
,
nil
,
tp
|
0x200
)
if
#
g
>
0
then
g
:
KeepAlive
()
e
:
SetLabelObject
(
g
)
return
true
else
return
false
end
end
end
function
Auxiliary
.
ContactFusionOperation
(
mat_operation
,
operation_params
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
local
g
=
e
:
GetLabelObject
()
c
:
SetMaterial
(
g
)
mat_operation
(
g
,
table.unpack
(
operation_params
))
g
:
DeleteGroup
()
end
end
--send to deck of contact fusion
...
...
@@ -1733,13 +1754,29 @@ function Auxiliary.AddRitualProcUltimate(c,filter,level_function,greater_or_equa
end
return
e1
end
---@param g Group
---@param c Card
---@param lv integer
---@return boolean
function
Auxiliary
.
RitualCheckGreater
(
g
,
c
,
lv
)
Duel
.
SetSelectedCard
(
g
)
return
g
:
CheckWithSumGreater
(
Card
.
GetRitualLevel
,
lv
,
c
)
end
---@param g Group
---@param c Card
---@param lv integer
---@return boolean
function
Auxiliary
.
RitualCheckEqual
(
g
,
c
,
lv
)
return
g
:
CheckWithSumEqual
(
Card
.
GetRitualLevel
,
lv
,
#
g
,
#
g
,
c
)
end
---@param g Group
---@param tp integer
---@param c Card
---@param lv integer
---@param greater_or_equal string
---|"'Greater'"
---|"'Equal'"
---@return boolean
function
Auxiliary
.
RitualCheck
(
g
,
tp
,
c
,
lv
,
greater_or_equal
)
return
Auxiliary
[
"RitualCheck"
..
greater_or_equal
](
g
,
c
,
lv
)
and
Duel
.
GetMZoneCount
(
tp
,
g
,
tp
)
>
0
and
(
not
c
.
mat_group_check
or
c
.
mat_group_check
(
g
,
tp
))
and
(
not
Auxiliary
.
RCheckAdditional
or
Auxiliary
.
RCheckAdditional
(
tp
,
g
,
c
))
...
...
utility.lua
View file @
6975d6f4
...
...
@@ -729,6 +729,11 @@ function Auxiliary.MaterialReasonCardReg(e,tp,eg,ep,ev,re,r,rp)
local
te
=
e
:
GetLabelObject
()
c
:
GetReasonCard
():
CreateEffectRelation
(
te
)
end
--the player tp has token on the field
function
Auxiliary
.
tkfcon
(
e
,
tp
)
if
tp
==
nil
and
e
~=
nil
then
tp
=
e
:
GetHandlerPlayer
()
end
return
Duel
.
IsExistingMatchingCard
(
Card
.
IsType
,
tp
,
LOCATION_ONFIELD
,
0
,
1
,
nil
,
TYPE_TOKEN
)
end
--effects inflicting damage to tp
function
Auxiliary
.
damcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Duel
.
IsPlayerAffectedByEffect
(
tp
,
EFFECT_REVERSE_DAMAGE
)
...
...
@@ -1229,6 +1234,42 @@ function Group.SelectSubGroupEach(g,tp,checks,cancelable,f,...)
return
nil
end
end
--for effects that player usually select card from field, avoid showing panel
function
Auxiliary
.
SelectCardFromFieldFirst
(
tp
,
f
,
player
,
s
,
o
,
min
,
max
,
ex
,
...
)
local
ext_params
=
{
...
}
local
g
=
Duel
.
GetMatchingGroup
(
f
,
player
,
s
,
o
,
ex
,
ext_params
)
local
fg
=
g
:
Filter
(
Card
.
IsOnField
,
nil
)
g
:
Sub
(
fg
)
if
#
fg
>=
min
and
#
g
>
0
then
local
last_hint
=
Duel
.
GetLastSelectHint
(
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FIELD_FIRST
)
local
sg
=
fg
:
CancelableSelect
(
tp
,
min
,
max
,
nil
)
if
sg
then
return
sg
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
last_hint
)
end
end
return
Duel
.
SelectMatchingCard
(
tp
,
f
,
player
,
s
,
o
,
min
,
max
,
ex
,
ext_params
)
end
function
Auxiliary
.
SelectTargetFromFieldFirst
(
tp
,
f
,
player
,
s
,
o
,
min
,
max
,
ex
,
...
)
local
ext_params
=
{
...
}
local
g
=
Duel
.
GetMatchingGroup
(
f
,
player
,
s
,
o
,
ex
,
ext_params
):
Filter
(
Card
.
IsCanBeEffectTarget
,
nil
)
local
fg
=
g
:
Filter
(
Card
.
IsOnField
,
nil
)
g
:
Sub
(
fg
)
if
#
fg
>=
min
and
#
g
>
0
then
local
last_hint
=
Duel
.
GetLastSelectHint
(
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FIELD_FIRST
)
local
sg
=
fg
:
CancelableSelect
(
tp
,
min
,
max
,
nil
)
if
sg
then
Duel
.
SetTargetCard
(
sg
)
return
sg
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
last_hint
)
end
end
return
Duel
.
SelectTarget
(
tp
,
f
,
player
,
s
,
o
,
min
,
max
,
ex
,
ext_params
)
end
--condition of "negate activation and banish"
function
Auxiliary
.
nbcon
(
tp
,
re
)
local
rc
=
re
:
GetHandler
()
...
...
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