Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
no81cards
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nemo Ma
no81cards
Commits
0e6e97e7
Commit
0e6e97e7
authored
Jun 08, 2025
by
POLYMER
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
c43989e1
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
959 additions
and
5 deletions
+959
-5
expansions/script/c33201376.lua
expansions/script/c33201376.lua
+3
-5
expansions/script/c33201402.lua
expansions/script/c33201402.lua
+148
-0
expansions/script/c33201404.lua
expansions/script/c33201404.lua
+173
-0
expansions/script/c33201405.lua
expansions/script/c33201405.lua
+145
-0
expansions/script/c33201406.lua
expansions/script/c33201406.lua
+146
-0
expansions/script/c33201407.lua
expansions/script/c33201407.lua
+185
-0
expansions/script/c33201409.lua
expansions/script/c33201409.lua
+159
-0
No files found.
expansions/script/c33201376.lua
View file @
0e6e97e7
...
@@ -5,8 +5,8 @@ function s.initial_effect(c)
...
@@ -5,8 +5,8 @@ function s.initial_effect(c)
--Activate
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
id
,
0
))
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCategory
(
CATEGORY_TOHAND
)
e1
:
SetCategory
(
CATEGORY_TOHAND
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
id
+
EFFECT_COUNT_CODE_OATH
)
e1
:
SetCountLimit
(
1
,
id
+
EFFECT_COUNT_CODE_OATH
)
...
@@ -33,7 +33,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
...
@@ -33,7 +33,7 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
return
true
return
true
end
end
function
s
.
cfilter
(
c
)
function
s
.
cfilter
(
c
)
return
c
.
VHisc_HYZQ
and
c
:
IsType
(
TYPE_SPELL
)
and
c
:
CheckActivateEffect
(
true
,
true
,
false
)
~=
nil
and
not
c
:
IsCode
(
id
)
and
c
:
IsAbleToHand
()
return
c
.
VHisc_HYZQ
and
c
:
IsType
(
TYPE_SPELL
)
and
c
:
CheckActivateEffect
(
true
,
true
,
false
)
~=
nil
and
not
c
:
IsCode
(
id
)
end
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
s
.
cfilter
(
chkc
)
end
if
chkc
then
return
chkc
:
IsControler
(
tp
)
and
chkc
:
IsLocation
(
LOCATION_GRAVE
)
and
s
.
cfilter
(
chkc
)
end
...
@@ -49,6 +49,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
...
@@ -49,6 +49,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
e
:
SetProperty
(
te
:
GetProperty
())
e
:
SetProperty
(
te
:
GetProperty
())
local
tg
=
te
:
GetTarget
()
local
tg
=
te
:
GetTarget
()
if
tg
then
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
if
tg
then
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
Duel
.
HintSelection
(
g
)
Duel
.
ClearOperationInfo
(
0
)
Duel
.
ClearOperationInfo
(
0
)
end
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
...
@@ -56,9 +57,6 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
...
@@ -56,9 +57,6 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
if
not
te
then
return
end
if
not
te
then
return
end
local
op
=
te
:
GetOperation
()
local
op
=
te
:
GetOperation
()
if
op
then
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
if
op
then
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
local
g
=
Duel
.
GetChainInfo
(
0
,
CHAININFO_TARGET_CARDS
)
local
tg
=
g
:
Filter
(
Card
.
IsRelateToEffect
,
nil
,
e
)
Duel
.
SendtoHand
(
tg
,
nil
,
REASON_EFFECT
)
end
end
--Release effect
--Release effect
...
...
expansions/script/c33201402.lua
View file @
0e6e97e7
--晶导算使 差值麦纳斯
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
c33201402
.
initial_effect
(
c
)
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
)
--spsummon
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetDescription
(
aux
.
Stringid
(
33201402
,
0
))
e0
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetCountLimit
(
1
,
33201402
)
e0
:
SetCondition
(
c33201402
.
tdcon1
)
e0
:
SetTarget
(
c33201402
.
sptg
)
e0
:
SetOperation
(
c33201402
.
spop
)
c
:
RegisterEffect
(
e0
)
local
e5
=
e0
:
Clone
()
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCode
(
EVENT_FREE_CHAIN
)
e5
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e5
:
SetCondition
(
c33201402
.
tdcon2
)
c
:
RegisterEffect
(
e5
)
--to hand
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
33201402
,
1
))
e1
:
SetCategory
(
CATEGORY_ATKCHANGE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
+
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetCountLimit
(
1
,
33201402
+
10000
)
e1
:
SetTarget
(
c33201402
.
atktg
)
e1
:
SetOperation
(
c33201402
.
atkop
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--spsummon
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
33201402
,
2
))
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_CHAINING
)
e4
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCountLimit
(
1
)
e4
:
SetCondition
(
c33201402
.
descon
)
e4
:
SetTarget
(
c33201402
.
destg
)
e4
:
SetOperation
(
c33201402
.
desop
)
c
:
RegisterEffect
(
e4
)
VHisc_JDSS
.
addcheck
(
c
)
end
c33201402
.
SetCard_JDSS
=
true
function
c33201402
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201402
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201402
.
filter1
(
c
,
e
,
tp
)
return
c
:
IsLevelAbove
(
0
)
and
Duel
.
IsExistingMatchingCard
(
c33201402
.
filter2
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
,
e
,
tp
,
c
:
GetLevel
())
end
function
c33201402
.
filter2
(
c
,
e
,
tp
,
lv
)
return
c
:
IsLevelAbove
(
0
)
and
Duel
.
IsExistingMatchingCard
(
c33201402
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
e
,
tp
,
math.abs
(
c
:
GetLevel
()
-
lv
))
end
function
c33201402
.
spfilter
(
c
,
e
,
tp
,
lv
)
return
c
.
SetCard_JDSS
and
c
:
IsLevel
(
lv
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c33201402
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chkc
then
return
false
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c33201402
.
filter1
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c33201402
.
filter1
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c33201402
.
filter2
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
g1
:
GetFirst
(),
e
,
tp
,
g1
:
GetFirst
():
GetLevel
())
g1
:
Merge
(
g2
)
Duel
.
ConfirmCards
(
1
-
tp
,
g1
)
Duel
.
ShuffleHand
(
tp
)
--
local
x
=
math.abs
(
g1
:
GetFirst
():
GetOriginalLevel
()
-
g1
:
GetNext
():
GetOriginalLevel
())
e
:
SetLabel
(
x
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c33201402
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lv
=
e
:
GetLabel
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
c33201402
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
,
lv
)
if
#
sg
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
--
function
c33201402
.
releasefilter
(
c
)
return
c
.
SetCard_JDSS
and
c
:
IsFaceup
()
end
function
c33201402
.
atktg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
tp
)
and
c33201402
.
releasefilter
(
chkc
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c33201402
.
releasefilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c33201402
.
releasefilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
end
function
c33201402
.
atkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
and
tc
:
IsRelateToEffect
(
e
)
then
local
g
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
for
tc1
in
aux
.
Next
(
g
)
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e1
:
SetValue
(
-
tc
:
GetAttack
())
tc1
:
RegisterEffect
(
e1
)
end
end
end
--
function
c33201402
.
descon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetFlagEffect
(
33201401
)
~=
0
and
ep
==
1
-
tp
and
re
:
IsActiveType
(
TYPE_MONSTER
)
and
re
:
GetHandler
():
IsLocation
(
LOCATION_HAND
+
LOCATION_ONFIELD
)
and
re
:
GetHandler
():
GetAttack
()
<
e
:
GetHandler
():
GetAttack
()
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
end
function
c33201402
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
eg
,
1
,
0
,
0
)
end
function
c33201402
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
re
:
GetHandler
():
IsRelateToEffect
(
re
)
then
Duel
.
Destroy
(
eg
,
REASON_EFFECT
)
end
end
\ No newline at end of file
expansions/script/c33201404.lua
View file @
0e6e97e7
--晶导算使 倍联姆缇普莱
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
c33201404
.
initial_effect
(
c
)
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
)
VHisc_JDSS
.
addcheck
(
c
)
--spsummon
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetDescription
(
aux
.
Stringid
(
33201404
,
0
))
e0
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetCountLimit
(
1
,
33201404
)
e0
:
SetCondition
(
c33201404
.
tdcon1
)
e0
:
SetTarget
(
c33201404
.
sptg
)
e0
:
SetOperation
(
c33201404
.
spop
)
c
:
RegisterEffect
(
e0
)
local
e5
=
e0
:
Clone
()
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCode
(
EVENT_FREE_CHAIN
)
e5
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e5
:
SetCondition
(
c33201404
.
tdcon2
)
c
:
RegisterEffect
(
e5
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
33201404
,
1
))
e1
:
SetCategory
(
CATEGORY_ATKCHANGE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCode
(
EVENT_SUMMON_SUCCESS
)
e1
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e1
:
SetCountLimit
(
1
,
33201404
+
10000
)
e1
:
SetTarget
(
c33201404
.
sptg1
)
e1
:
SetOperation
(
c33201404
.
spop1
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
c
:
RegisterEffect
(
e2
)
--Destroy
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
33201404
,
2
))
e4
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e4
:
SetCode
(
EVENT_FREE_CHAIN
)
e4
:
SetCountLimit
(
1
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetHintTiming
(
0
,
TIMINGS_CHECK_MONSTER
+
TIMING_END_PHASE
)
e4
:
SetCondition
(
c33201404
.
stcon
)
e4
:
SetCost
(
c33201404
.
stcost
)
e4
:
SetTarget
(
c33201404
.
sttg
)
e4
:
SetOperation
(
c33201404
.
stop
)
c
:
RegisterEffect
(
e4
)
end
c33201404
.
SetCard_JDSS
=
true
function
c33201404
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201404
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201404
.
filter1
(
c
,
e
,
tp
)
return
c
:
IsLevelAbove
(
0
)
and
Duel
.
IsExistingMatchingCard
(
c33201404
.
filter2
,
tp
,
LOCATION_HAND
,
0
,
1
,
c
,
e
,
tp
,
c
:
GetLevel
())
end
function
c33201404
.
filter2
(
c
,
e
,
tp
,
lv
)
--if not math.mod(lv,c:GetLevel())==0 then return end
return
c
:
IsLevelAbove
(
0
)
and
Duel
.
IsExistingMatchingCard
(
c33201404
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
e
,
tp
,
lv
*
c
:
GetLevel
())
end
function
c33201404
.
spfilter
(
c
,
e
,
tp
,
lv
)
return
c
.
SetCard_JDSS
and
c
:
IsLevel
(
lv
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c33201404
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chkc
then
return
false
end
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c33201404
.
filter1
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
,
e
,
tp
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c33201404
.
filter1
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
e
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_CONFIRM
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c33201404
.
filter2
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
g1
:
GetFirst
(),
e
,
tp
,
g1
:
GetFirst
():
GetLevel
())
g1
:
Merge
(
g2
)
Duel
.
ConfirmCards
(
1
-
tp
,
g1
)
Duel
.
ShuffleHand
(
tp
)
--
local
x
=
0
local
y
=
0
local
tc
=
g1
:
GetFirst
():
GetOriginalLevel
()
local
tc2
=
g1
:
GetNext
():
GetOriginalLevel
()
if
tc
<
tc2
then
x
=
tc2
/
tc
else
x
=
tc
*
tc2
end
e
:
SetLabel
(
x
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
c33201404
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
lv
=
e
:
GetLabel
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
c33201404
.
spfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
e
,
tp
,
lv
)
if
#
sg
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
--
function
c33201404
.
desfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsLevelAbove
(
0
)
end
function
c33201404
.
sptg1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_PZONE
+
LOCATION_MZONE
)
and
c33201404
.
desfilter
(
chkc
)
end
if
chk
==
0
then
return
true
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TARGET
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c33201404
.
desfilter
,
tp
,
LOCATION_PZONE
+
LOCATION_MZONE
,
LOCATION_PZONE
+
LOCATION_MZONE
,
1
,
1
,
nil
)
end
function
c33201404
.
spop1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
then
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_SET_ATTACK_FINAL
)
e1
:
SetValue
(
c
:
GetLevel
()
*
tc
:
GetLevel
()
*
100
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_DISABLE
)
c
:
RegisterEffect
(
e1
)
end
end
--
function
c33201404
.
stcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetFlagEffect
(
33201401
)
~=
0
end
function
c33201404
.
refilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
GetOriginalType
()
&
TYPE_PENDULUM
~=
0
end
function
c33201404
.
stcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c33201404
.
refilter
,
tp
,
LOCATION_PZONE
,
0
,
1
,
nil
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c33201404
.
refilter
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
nil
)
e
:
SetLabel
(
g
:
GetFirst
():
GetLevel
())
Duel
.
Release
(
g
,
REASON_COST
)
end
function
c33201404
.
thfilter
(
c
,
lv
)
return
c
:
IsFaceup
()
and
c
.
SetCard_JDSS
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
GetOriginalLevel
()
~=
lv
and
not
c
:
IsForbidden
()
end
function
c33201404
.
sttg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
lv
=
e
:
GetLabel
()
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c33201404
.
thfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
lv
)
end
end
function
c33201404
.
stop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
lv
=
e
:
GetLabel
()
if
(
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
0
)
or
Duel
.
CheckLocation
(
tp
,
LOCATION_PZONE
,
1
))
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
aux
.
Stringid
(
33201404
,
3
))
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c33201404
.
thfilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
nil
,
lv
)
if
g
:
GetCount
()
>
0
then
Duel
.
MoveToField
(
g
:
GetFirst
(),
tp
,
tp
,
LOCATION_PZONE
,
POS_FACEUP
,
true
)
end
end
end
\ No newline at end of file
expansions/script/c33201405.lua
View file @
0e6e97e7
--晶导算使 逻辑与门
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
c33201405
.
initial_effect
(
c
)
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
)
VHisc_JDSS
.
addcheck
(
c
)
--pendulum set
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetCountLimit
(
1
,
32201405
)
e0
:
SetCondition
(
c33201405
.
tdcon1
)
e0
:
SetTarget
(
c33201405
.
sptg
)
e0
:
SetOperation
(
c33201405
.
spop
)
c
:
RegisterEffect
(
e0
)
local
e5
=
e0
:
Clone
()
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCode
(
EVENT_FREE_CHAIN
)
e5
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e5
:
SetCondition
(
c33201405
.
tdcon2
)
c
:
RegisterEffect
(
e5
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_DESTROY
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
33201405
+
10000
)
e1
:
SetCondition
(
c33201405
.
sdcon
)
e1
:
SetTarget
(
c33201405
.
sdtg
)
e1
:
SetOperation
(
c33201405
.
sdop
)
c
:
RegisterEffect
(
e1
)
--
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
33201405
,
2
))
e1
:
SetCategory
(
CATEGORY_DESTROY
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCountLimit
(
1
,
33201405
+
20000
)
e1
:
SetCondition
(
c33201405
.
descon
)
e1
:
SetTarget
(
c33201405
.
destg
)
e1
:
SetOperation
(
c33201405
.
desop
)
c
:
RegisterEffect
(
e1
)
end
c33201405
.
SetCard_JDSS
=
true
function
c33201405
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201405
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201405
.
cfilter1
(
c
,
e
,
tp
,
scale
)
return
c
.
SetCard_JDSS
and
c
:
GetLeftScale
()
==
scale
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c33201405
.
pencon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
return
Duel
.
IsExistingMatchingCard
(
c33201405
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
e
:
GetHandler
(),
e
,
tp
,
scale
)
end
function
c33201405
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c33201405
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
c
,
e
,
tp
,
scale
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
c33201405
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
c33201405
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
c
,
e
,
tp
,
scale
)
if
#
sg
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
end
end
--
function
c33201405
.
c3filter
(
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
end
function
c33201405
.
sdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c33201405
.
c3filter
,
e
:
GetHandlerPlayer
(),
LOCATION_PZONE
,
0
,
nil
)
if
g
:
GetCount
()
~=
2
then
return
false
end
local
cc
=
g
:
GetFirst
()
local
lsc
=
cc
:
GetLeftScale
()
local
dc
=
g
:
GetNext
()
local
l2sc
=
dc
:
GetLeftScale
()
return
lsc
==
l2sc
and
Duel
.
GetLocationCount
(
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
)
>
0
end
function
c33201405
.
sdtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
LOCATION_PZONE
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_PZONE
)
end
function
c33201405
.
sdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
~=
0
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToHand
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
e
:
GetHandler
()):
GetFirst
()
if
tc
then
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
end
end
end
--
function
c33201405
.
cfilter
(
c
,
scale
)
return
c
:
IsFaceup
()
and
c
.
SetCard_JDSS
and
c
:
GetLeftScale
()
==
scale
end
function
c33201405
.
descon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
scale
=
c
:
GetLeftScale
()
return
eg
:
IsExists
(
c33201405
.
cfilter
,
1
,
c
,
scale
)
and
re
and
re
:
GetHandler
().
SetCard_JDSS
end
function
c33201405
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
1
,
0
,
0
)
end
function
c33201405
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DESTROY
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
HintSelection
(
g
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
expansions/script/c33201406.lua
View file @
0e6e97e7
--晶导算使 逻辑与门
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
c33201406
.
initial_effect
(
c
)
--pendulum summon
VHisc_JDSS
.
addcheck
(
c
)
aux
.
EnablePendulumAttribute
(
c
)
--pendulum set
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
)
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetCountLimit
(
1
,
33201406
)
e0
:
SetCondition
(
c33201406
.
tdcon1
)
e0
:
SetTarget
(
c33201406
.
sptg
)
e0
:
SetOperation
(
c33201406
.
spop
)
c
:
RegisterEffect
(
e0
)
local
e5
=
e0
:
Clone
()
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCode
(
EVENT_FREE_CHAIN
)
e5
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e5
:
SetCondition
(
c33201406
.
tdcon2
)
c
:
RegisterEffect
(
e5
)
--spsummon
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_DESTROY
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_HAND
)
e1
:
SetCountLimit
(
1
,
33201406
+
10000
)
e1
:
SetCondition
(
c33201406
.
sdcon
)
e1
:
SetTarget
(
c33201406
.
sdtg
)
e1
:
SetOperation
(
c33201406
.
sdop
)
c
:
RegisterEffect
(
e1
)
--
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
33201406
,
2
))
e1
:
SetCategory
(
CATEGORY_DESTROY
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetProperty
(
EFFECT_FLAG_DELAY
)
e1
:
SetCountLimit
(
1
,
33201406
+
20000
)
e1
:
SetCondition
(
c33201406
.
descon
)
e1
:
SetTarget
(
c33201406
.
destg
)
e1
:
SetOperation
(
c33201406
.
desop
)
c
:
RegisterEffect
(
e1
)
end
c33201406
.
SetCard_JDSS
=
true
function
c33201406
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201406
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201406
.
cfilter1
(
c
,
e
,
tp
,
scale
)
return
c
.
SetCard_JDSS
and
c
:
GetLeftScale
()
~=
scale
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
end
function
c33201406
.
pencon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
return
Duel
.
IsExistingMatchingCard
(
c33201406
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
e
:
GetHandler
(),
e
,
tp
,
scale
)
end
function
c33201406
.
sptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
Duel
.
IsExistingMatchingCard
(
c33201406
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
c
,
e
,
tp
,
scale
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
g
,
1
,
0
,
0
)
end
function
c33201406
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
scale
=
e
:
GetHandler
():
GetLeftScale
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SPSUMMON
)
local
sg
=
Duel
.
SelectMatchingCard
(
tp
,
c33201406
.
cfilter1
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
c
,
e
,
tp
,
scale
)
if
#
sg
>
0
then
Duel
.
SpecialSummon
(
sg
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
sg
:
GetFirst
():
RegisterFlagEffect
(
33201401
,
RESET_EVENT
+
RESETS_STANDARD
,
EFFECT_FLAG_CLIENT_HINT
,
1
,
0
,
aux
.
Stringid
(
33201401
,
1
))
end
end
--
function
c33201406
.
c3filter
(
c
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
end
function
c33201406
.
sdcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
c33201406
.
c3filter
,
e
:
GetHandlerPlayer
(),
LOCATION_PZONE
,
0
,
nil
)
if
g
:
GetCount
()
~=
2
then
return
false
end
local
cc
=
g
:
GetFirst
()
local
lsc
=
cc
:
GetLeftScale
()
local
dc
=
g
:
GetNext
()
local
l2sc
=
dc
:
GetLeftScale
()
return
lsc
~=
l2sc
and
Duel
.
GetLocationCount
(
e
:
GetHandlerPlayer
(),
LOCATION_MZONE
)
>
0
end
function
c33201406
.
sdtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingMatchingCard
(
Card
.
IsAbleToHand
,
tp
,
LOCATION_PZONE
,
0
,
1
,
e
:
GetHandler
())
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_PZONE
)
end
function
c33201406
.
sdop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
not
c
:
IsRelateToEffect
(
e
)
then
return
end
if
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
~=
0
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RTOHAND
)
local
tc
=
Duel
.
SelectMatchingCard
(
tp
,
Card
.
IsAbleToHand
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
e
:
GetHandler
()):
GetFirst
()
if
tc
then
Duel
.
SendtoHand
(
tc
,
nil
,
REASON_EFFECT
)
end
end
end
--
function
c33201406
.
cfilter
(
c
,
scale
)
return
c
:
IsFaceup
()
and
c
.
SetCard_JDSS
and
c
:
GetLeftScale
()
~=
scale
end
function
c33201406
.
descon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
scale
=
c
:
GetLeftScale
()
return
eg
:
IsExists
(
c33201406
.
cfilter
,
1
,
c
,
scale
)
and
re
and
re
:
GetHandler
().
SetCard_JDSS
end
function
c33201406
.
destg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
end
local
g
=
Duel
.
GetMatchingGroup
(
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
nil
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DESTROY
,
g
,
1
,
0
,
0
)
end
function
c33201406
.
desop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DESTROY
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
nil
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
if
#
g
>
0
then
Duel
.
HintSelection
(
g
)
Duel
.
Destroy
(
g
,
REASON_EFFECT
)
end
end
expansions/script/c33201407.lua
View file @
0e6e97e7
--晶导算使 逻辑或门
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
c33201407
.
initial_effect
(
c
)
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
)
VHisc_JDSS
.
addcheck
(
c
)
--scale change
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetDescription
(
aux
.
Stringid
(
33201407
,
0
))
e0
:
SetType
(
EFFECT_TYPE_IGNITION
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetCountLimit
(
1
)
e0
:
SetCondition
(
c33201407
.
tdcon1
)
e0
:
SetTarget
(
c33201407
.
sctg
)
e0
:
SetOperation
(
c33201407
.
scop
)
c
:
RegisterEffect
(
e0
)
local
e5
=
e0
:
Clone
()
e5
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e5
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e5
:
SetCode
(
EVENT_FREE_CHAIN
)
e5
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e5
:
SetCondition
(
c33201407
.
tdcon2
)
c
:
RegisterEffect
(
e5
)
--cannot target
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_IGNORE_IMMUNE
)
e1
:
SetCode
(
EFFECT_CANNOT_BE_EFFECT_TARGET
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetTargetRange
(
LOCATION_MZONE
,
0
)
e1
:
SetTarget
(
c33201407
.
tgtg
)
e1
:
SetValue
(
1
)
c
:
RegisterEffect
(
e1
)
--spsummon
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
33201407
,
1
))
e2
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_RELEASE
+
CATEGORY_TODECK
)
e2
:
SetType
(
EFFECT_TYPE_IGNITION
)
e2
:
SetRange
(
LOCATION_EXTRA
)
e2
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e2
:
SetCountLimit
(
1
,
33201407
)
e2
:
SetCondition
(
c33201407
.
spcon1
)
e2
:
SetTarget
(
c33201407
.
sptg1
)
e2
:
SetOperation
(
c33201407
.
spop1
)
c
:
RegisterEffect
(
e2
)
--Destroy
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
33201407
,
2
))
e3
:
SetCategory
(
CATEGORY_DISABLE
)
e3
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e3
:
SetCode
(
EVENT_FREE_CHAIN
)
e3
:
SetCountLimit
(
1
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetHintTiming
(
0
,
TIMING_EQUIP
+
TIMING_END_PHASE
)
e3
:
SetCondition
(
c33201407
.
discon
)
e3
:
SetTarget
(
c33201407
.
distg
)
e3
:
SetOperation
(
c33201407
.
disop
)
c
:
RegisterEffect
(
e3
)
end
c33201407
.
SetCard_JDSS
=
true
function
c33201407
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201407
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
c33201407
.
sctg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
e
:
GetHandler
():
GetLeftScale
()
~=
0
end
end
function
c33201407
.
scop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_CHANGE_LSCALE
)
e1
:
SetValue
(
0
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
c
:
RegisterEffect
(
e1
)
local
e2
=
e1
:
Clone
()
e2
:
SetCode
(
EFFECT_CHANGE_RSCALE
)
c
:
RegisterEffect
(
e2
)
end
--
function
c33201407
.
tgtg
(
e
,
c
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
e
:
GetHandlerPlayer
(),
LOCATION_PZONE
,
0
,
nil
)
return
c
:
GetLeftScale
()
==
g
:
GetFirst
():
GetLeftScale
()
or
c
:
GetLeftScale
()
==
g
:
GetNext
():
GetLeftScale
()
end
--
function
c33201407
.
spcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
IsFaceup
()
end
function
c33201407
.
relfilter
(
c
,
sc
,
tp
)
return
c
:
IsReleasableByEffect
()
and
c
:
IsType
(
TYPE_PENDULUM
)
and
Duel
.
IsExistingMatchingCard
(
c33201407
.
tefilter
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
sc
,
c
:
GetLeftScale
())
end
function
c33201407
.
tefilter
(
c
,
scale
)
return
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
and
c
:
GetLeftScale
()
==
scale
and
c
.
SetCard_JDSS
and
c
:
IsAbleToDeck
()
end
function
c33201407
.
tefilter2
(
c
,
tc
,
scale
)
return
c
~=
tc
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsFaceup
()
and
c
:
GetLeftScale
()
==
scale
and
c
.
SetCard_JDSS
and
c
:
IsAbleToDeck
()
end
function
c33201407
.
sptg1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
c
=
e
:
GetHandler
()
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_PZONE
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
c33201407
.
relfilter
,
tp
,
LOCATION_PZONE
,
0
,
1
,
nil
,
e
:
GetHandler
(),
tp
)
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
nil
,
c
)
>
0
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
local
g
=
Duel
.
SelectTarget
(
tp
,
c33201407
.
relfilter
,
tp
,
LOCATION_PZONE
,
0
,
1
,
1
,
nil
,
e
:
GetHandler
(),
tp
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_RELEASE
,
g
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TODECK
,
nil
,
1
,
0
,
0
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_SPECIAL_SUMMON
,
e
:
GetHandler
(),
1
,
0
,
0
)
end
function
c33201407
.
spop1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
tc
=
Duel
.
GetFirstTarget
()
if
tc
:
IsRelateToEffect
(
e
)
and
c
:
IsRelateToEffect
(
e
)
and
Duel
.
Release
(
tc
,
REASON_EFFECT
)
~=
0
then
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_TODECK
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c33201407
.
tefilter2
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
1
,
c
,
tc
,
tc
:
GetLeftScale
())
if
Duel
.
SendtoDeck
(
g
,
nil
,
SEQ_DECKSHUFFLE
,
REASON_EFFECT
)
~=
0
then
Duel
.
SpecialSummon
(
e
:
GetHandler
(),
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EFFECT_LEAVE_FIELD_REDIRECT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_REDIRECT
)
e1
:
SetValue
(
LOCATION_REMOVED
)
e
:
GetHandler
():
RegisterEffect
(
e1
,
true
)
end
end
end
--
function
c33201407
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetFlagEffect
(
33201401
)
~=
0
end
function
c33201407
.
disfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_SPELL
+
TYPE_TRAP
)
and
not
c
:
IsDisabled
()
end
function
c33201407
.
distg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c33201407
.
disfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_DISABLE
,
nil
,
1
,
0
,
LOCATION_SZONE
)
end
function
c33201407
.
disop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_DISABLE
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c33201407
.
disfilter
,
tp
,
LOCATION_ONFIELD
,
LOCATION_ONFIELD
,
1
,
1
,
nil
)
Duel
.
HintSelection
(
g
)
local
tc
=
g
:
GetFirst
()
if
#
g
>
0
then
Duel
.
NegateRelatedChain
(
tc
,
RESET_TURN_SET
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e1
:
SetCode
(
EFFECT_DISABLE
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e1
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_SINGLE
)
e2
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e2
:
SetCode
(
EFFECT_DISABLE_EFFECT
)
e2
:
SetValue
(
RESET_TURN_SET
)
e2
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e2
)
if
tc
:
IsType
(
TYPE_TRAPMONSTER
)
then
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_SINGLE
)
e3
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
)
e3
:
SetCode
(
EFFECT_DISABLE_TRAPMONSTER
)
e3
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
+
RESET_PHASE
+
PHASE_END
)
tc
:
RegisterEffect
(
e3
)
end
end
end
expansions/script/c33201409.lua
View file @
0e6e97e7
--晶导算使 二极晶体管
if
not
require
and
loadfile
then
function
require
(
str
)
require_list
=
require_list
or
{}
if
not
require_list
[
str
]
then
if
string.find
(
str
,
"%."
)
then
require_list
[
str
]
=
loadfile
(
str
)
else
require_list
[
str
]
=
loadfile
(
str
..
".lua"
)
end
require_list
[
str
]()
return
require_list
[
str
]
end
return
require_list
[
str
]
end
end
local
m
=
33201409
local
cm
=
_G
[
"c"
..
m
]
xpcall
(
function
()
require
(
"expansions/script/c33201401"
)
end
,
function
()
require
(
"script/c33201401"
)
end
)
function
cm
.
initial_effect
(
c
)
--pendulum summon
aux
.
EnablePendulumAttribute
(
c
)
VHisc_JDSS
.
addcheck
(
c
)
--disable search
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_FIELD
)
e0
:
SetCode
(
EFFECT_CANNOT_TO_HAND
)
e0
:
SetRange
(
LOCATION_PZONE
)
e0
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e0
:
SetTargetRange
(
1
,
0
)
e0
:
SetTarget
(
aux
.
TargetBoolFunction
(
Card
.
IsLocation
,
LOCATION_EXTRA
))
c
:
RegisterEffect
(
e0
)
--tohand
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
m
,
0
))
e1
:
SetCategory
(
CATEGORY_TOHAND
)
e1
:
SetType
(
EFFECT_TYPE_IGNITION
)
e1
:
SetRange
(
LOCATION_PZONE
)
e1
:
SetCountLimit
(
1
,
m
)
e1
:
SetCondition
(
cm
.
tdcon1
)
e1
:
SetTarget
(
cm
.
thtg
)
e1
:
SetOperation
(
cm
.
thop
)
c
:
RegisterEffect
(
e1
)
local
e6
=
e1
:
Clone
()
e6
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e6
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e6
:
SetCode
(
EVENT_FREE_CHAIN
)
e6
:
SetHintTiming
(
TIMING_DAMAGE_STEP
,
TIMING_DAMAGE_STEP
+
TIMINGS_CHECK_MONSTER
)
e6
:
SetCondition
(
cm
.
tdcon2
)
c
:
RegisterEffect
(
e6
)
--ignore
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
m
,
1
))
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_CHAINING
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DAMAGE_CAL
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCountLimit
(
1
,
m
+
10000
)
e2
:
SetCondition
(
cm
.
condition
)
e2
:
SetTarget
(
cm
.
target
)
e2
:
SetOperation
(
cm
.
operation
)
c
:
RegisterEffect
(
e2
)
--disable spsummon
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCode
(
EFFECT_CANNOT_SPECIAL_SUMMON
)
e3
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e3
:
SetCondition
(
cm
.
econ
)
e3
:
SetTargetRange
(
0
,
1
)
e3
:
SetTarget
(
cm
.
sumlimit
)
c
:
RegisterEffect
(
e3
)
--remove
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetType
(
EFFECT_TYPE_FIELD
)
e4
:
SetProperty
(
EFFECT_FLAG_SET_AVAILABLE
+
EFFECT_FLAG_IGNORE_IMMUNE
)
e4
:
SetRange
(
LOCATION_MZONE
)
e4
:
SetCode
(
EFFECT_TO_HAND_REDIRECT
)
e4
:
SetTargetRange
(
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
e4
:
SetCondition
(
cm
.
econ
)
e4
:
SetValue
(
LOCATION_REMOVED
)
c
:
RegisterEffect
(
e4
)
local
e5
=
Effect
.
CreateEffect
(
c
)
e5
:
SetType
(
EFFECT_TYPE_FIELD
)
e5
:
SetProperty
(
EFFECT_FLAG_SET_AVAILABLE
+
EFFECT_FLAG_IGNORE_IMMUNE
)
e5
:
SetRange
(
LOCATION_MZONE
)
e5
:
SetCode
(
EFFECT_TO_DECK_REDIRECT
)
e5
:
SetTargetRange
(
0
,
LOCATION_ONFIELD
+
LOCATION_GRAVE
)
e5
:
SetCondition
(
cm
.
econ
)
e5
:
SetValue
(
LOCATION_REMOVED
)
c
:
RegisterEffect
(
e5
)
end
c33201409
.
SetCard_JDSS
=
true
function
cm
.
tdcon1
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
not
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
function
cm
.
tdcon2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
aux
.
dscon
()
and
Duel
.
IsPlayerAffectedByEffect
(
tp
,
33201408
)
end
--e1
function
cm
.
thfilter
(
c
,
code
)
return
c
.
SetCard_JDSS
and
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsAbleToHand
()
and
not
c
:
IsCode
(
code
)
end
function
cm
.
tdfilter
(
c
,
tp
)
return
c
.
SetCard_JDSS
and
c
:
IsType
(
TYPE_PENDULUM
)
and
c
:
IsAbleToExtra
()
and
Duel
.
IsExistingMatchingCard
(
cm
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
c
:
GetCode
())
end
function
cm
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
cm
.
tdfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
nil
,
tp
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
1
,
tp
,
LOCATION_DECK
)
end
function
cm
.
thop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_SELECT
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
tdfilter
,
tp
,
LOCATION_HAND
,
0
,
1
,
1
,
nil
,
tp
)
if
g
:
GetCount
()
>
0
then
local
code
=
g
:
GetFirst
():
GetCode
()
Duel
.
SendtoExtraP
(
g
,
nil
,
REASON_EFFECT
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
thg
=
Duel
.
SelectMatchingCard
(
tp
,
cm
.
thfilter
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
,
code
)
Duel
.
SendtoHand
(
thg
,
nil
,
REASON_EFFECT
)
end
end
--e2
function
cm
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
ep
==
1
-
tp
and
re
:
IsActiveType
(
TYPE_MONSTER
)
and
Duel
.
IsChainNegatable
(
ev
)
and
not
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
end
function
cm
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
end
function
cm
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
sg
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_MZONE
,
0
,
nil
)
if
sg
:
GetCount
()
==
0
then
return
end
for
tc
in
aux
.
Next
(
sg
)
do
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
)
e1
:
SetRange
(
LOCATION_MZONE
)
e1
:
SetCode
(
EFFECT_IMMUNE_EFFECT
)
e1
:
SetReset
(
RESET_EVENT
+
RESETS_STANDARD
)
e1
:
SetLabelObject
(
re
)
e1
:
SetValue
(
cm
.
efilter
)
tc
:
RegisterEffect
(
e1
)
end
end
function
cm
.
efilter
(
e
,
te
)
local
ige
=
e
:
GetLabelObject
()
return
te
==
ige
end
--e345
function
cm
.
sumlimit
(
e
,
c
,
sump
,
sumtype
,
sumpos
,
targetp
,
se
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsType
(
TYPE_MONSTER
)
end
function
cm
.
econ
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetFlagEffect
(
33201401
)
~=
0
end
\ No newline at end of file
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