Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-THC-cards
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
1
Issues
1
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
HiiragiGuardians
ygopro-THC-cards
Commits
7eba87b3
Commit
7eba87b3
authored
Jul 27, 2025
by
wyykak
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix dots
Signed-off-by:
wyykak
<
wyy_1414@126.com
>
parent
a0998e51
Pipeline
#39559
passed with stage
in 1 minute and 26 seconds
Changes
21
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
465 additions
and
430 deletions
+465
-430
expansions/script/nef/dot.lua
expansions/script/nef/dot.lua
+7
-1
script/c19047.lua
script/c19047.lua
+2
-1
script/c21024.lua
script/c21024.lua
+98
-97
script/c21091.lua
script/c21091.lua
+105
-104
script/c21146.lua
script/c21146.lua
+64
-63
script/c21161.lua
script/c21161.lua
+120
-116
script/c22111.lua
script/c22111.lua
+25
-11
script/c22174.lua
script/c22174.lua
+4
-3
script/c24055.lua
script/c24055.lua
+2
-1
script/c24059.lua
script/c24059.lua
+2
-1
script/c24066.lua
script/c24066.lua
+2
-1
script/c24074.lua
script/c24074.lua
+2
-1
script/c24171.lua
script/c24171.lua
+2
-1
script/c25043.lua
script/c25043.lua
+2
-1
script/c25048.lua
script/c25048.lua
+2
-1
script/c25050.lua
script/c25050.lua
+2
-1
script/c25051.lua
script/c25051.lua
+2
-1
script/c27507.lua
script/c27507.lua
+3
-2
script/c31013.lua
script/c31013.lua
+2
-1
script/c31093.lua
script/c31093.lua
+2
-1
script/c888174.lua
script/c888174.lua
+15
-21
No files found.
expansions/script/nef/dot.lua
View file @
7eba87b3
...
@@ -23,7 +23,13 @@ if not DOT.DotCounter then
...
@@ -23,7 +23,13 @@ if not DOT.DotCounter then
num1
=
num1
+
dmg1
num1
=
num1
+
dmg1
num2
=
num2
+
dmg2
num2
=
num2
+
dmg2
end
end
Debug
.
Message
(
'下一波持续伤害:'
..
num1
..
local
name
if
tp
==
0
then
name
=
'先手玩家'
else
name
=
'后手玩家'
end
Debug
.
Message
(
name
..
'下一波持续伤害:'
..
num1
..
'剩余持续伤害:'
..
num2
)
'剩余持续伤害:'
..
num2
)
class
.
_n
[
tp
]
=
{
52001
,
num1
,
num2
}
class
.
_n
[
tp
]
=
{
52001
,
num1
,
num2
}
end
end
...
...
script/c19047.lua
View file @
7eba87b3
...
@@ -86,9 +86,10 @@ function c19047.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -86,9 +86,10 @@ function c19047.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
end
end
end
end
end
end
...
...
script/c21024.lua
View file @
7eba87b3
--藤原妹红
--藤原妹红
function
c21024
.
initial_effect
(
c
)
function
c21024
.
initial_effect
(
c
)
--synchro summon
--synchro summon
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
c21024
.
synfilter
),
1
)
aux
.
AddSynchroProcedure
(
c
,
nil
,
aux
.
NonTuner
(
c21024
.
synfilter
),
1
)
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
--damage
--damage
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
21024
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
21024
,
0
))
e1
:
SetCategory
(
CATEGORY_DAMAGE
)
e1
:
SetCategory
(
CATEGORY_DAMAGE
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetTarget
(
c21024
.
dtg
)
e1
:
SetTarget
(
c21024
.
dtg
)
e1
:
SetOperation
(
c21024
.
dop
)
e1
:
SetOperation
(
c21024
.
dop
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
--special summon
--special summon
local
e2
=
Effect
.
CreateEffect
(
c
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
)
e2
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e2
:
SetCode
(
EFFECT_SPSUMMON_PROC
)
e2
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e2
:
SetProperty
(
EFFECT_FLAG_UNCOPYABLE
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCondition
(
c21024
.
spcon
)
e2
:
SetCondition
(
c21024
.
spcon
)
e2
:
SetOperation
(
c21024
.
spop
)
e2
:
SetOperation
(
c21024
.
spop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--attack up
--attack up
local
e3
=
Effect
.
CreateEffect
(
c
)
local
e3
=
Effect
.
CreateEffect
(
c
)
e3
:
SetDescription
(
aux
.
Stringid
(
21024
,
1
))
e3
:
SetDescription
(
aux
.
Stringid
(
21024
,
1
))
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetRange
(
LOCATION_MZONE
)
e3
:
SetCode
(
EVENT_DAMAGE
)
e3
:
SetCode
(
EVENT_DAMAGE
)
e3
:
SetCondition
(
c21024
.
cd
)
e3
:
SetCondition
(
c21024
.
cd
)
e3
:
SetOperation
(
c21024
.
op
)
e3
:
SetOperation
(
c21024
.
op
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
end
end
function
c21024
.
synfilter
(
c
)
function
c21024
.
synfilter
(
c
)
return
c
:
IsSetCard
(
0x208
)
and
c
:
IsType
(
TYPE_DUAL
)
return
c
:
IsSetCard
(
0x208
)
and
c
:
IsType
(
TYPE_DUAL
)
end
end
function
c21024
.
dtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c21024
.
dtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
true
end
end
end
function
c21024
.
dop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21024
.
dop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetLabel
(
0
)
e1
:
SetLabel
(
0
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetOperation
(
c21024
.
damop
)
e1
:
SetOperation
(
c21024
.
damop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
3
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
3
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
400
,
1200
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
400
,
1200
,
e
)
end
end
function
c21024
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21024
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
ct
=
e
:
GetLabel
()
local
ct
=
e
:
GetLabel
()
if
(
ct
<
3
)
then
if
(
ct
<
3
)
then
ct
=
ct
+
1
ct
=
ct
+
1
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
RDComplete
()
Duel
.
RDComplete
()
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
else
end
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
end
end
end
end
function
c21024
.
spfilter
(
c
)
end
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x208
)
and
c
:
IsReleasable
()
function
c21024
.
spfilter
(
c
)
end
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x208
)
and
c
:
IsReleasable
()
function
c21024
.
spcon
(
e
,
c
)
end
if
c
==
nil
then
return
true
end
function
c21024
.
spcon
(
e
,
c
)
return
Duel
.
GetFlagEffect
(
c
:
GetControler
(),
21024
)
==
0
if
c
==
nil
then
return
true
end
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
return
Duel
.
GetFlagEffect
(
c
:
GetControler
(),
21024
)
==
0
and
Duel
.
GetLocationCount
(
c
:
GetControler
(),
LOCATION_MZONE
)
>-
1
and
c
:
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
Duel
.
IsExistingMatchingCard
(
c21024
.
spfilter
,
c
:
GetControler
(),
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
GetLocationCount
(
c
:
GetControler
(),
LOCATION_MZONE
)
>-
1
end
and
Duel
.
IsExistingMatchingCard
(
c21024
.
spfilter
,
c
:
GetControler
(),
LOCATION_MZONE
,
0
,
1
,
nil
)
function
c21024
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
end
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
function
c21024
.
spop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c21024
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_RELEASE
)
Duel
.
Release
(
g
,
nil
,
REASON_COST
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c21024
.
spfilter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
1
,
nil
)
Duel
.
RegisterFlagEffect
(
tp
,
21024
,
RESET_PHASE
+
PHASE_END
,
EFFECT_FLAG_OATH
,
1
)
Duel
.
Release
(
g
,
nil
,
REASON_COST
)
end
Duel
.
RegisterFlagEffect
(
tp
,
21024
,
RESET_PHASE
+
PHASE_END
,
EFFECT_FLAG_OATH
,
1
)
function
c21024
.
cd
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
if
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
then
return
false
end
function
c21024
.
cd
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
tp
==
ep
if
e
:
GetHandler
():
IsStatus
(
STATUS_BATTLE_DESTROYED
)
then
return
false
end
end
return
tp
==
ep
function
c21024
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
local
c
=
e
:
GetHandler
()
function
c21024
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
e1
=
Effect
.
CreateEffect
(
c
)
local
c
=
e
:
GetHandler
()
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetValue
(
300
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e1
:
SetReset
(
RESET_EVENT
+
0x1ff0000
+
RESET_PHASE
+
PHASE_END
+
RESET_OPPO_TURN
)
e1
:
SetValue
(
300
)
c
:
RegisterEffect
(
e1
)
e1
:
SetReset
(
RESET_EVENT
+
0x1ff0000
+
RESET_PHASE
+
PHASE_END
+
RESET_OPPO_TURN
)
end
c
:
RegisterEffect
(
e1
)
end
script/c21091.lua
View file @
7eba87b3
--烧不死的人类✿藤原妹红
--烧不死的人类✿藤原妹红
function
c21091
.
initial_effect
(
c
)
function
c21091
.
initial_effect
(
c
)
--recover?
--recover?
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
21091
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
21091
,
0
))
e1
:
SetCategory
(
CATEGORY_DAMAGE
)
e1
:
SetCategory
(
CATEGORY_DAMAGE
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EVENT_BATTLE_DESTROYING
)
e1
:
SetCode
(
EVENT_BATTLE_DESTROYING
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
+
EFFECT_TYPE_TRIGGER_F
)
e1
:
SetCondition
(
c21091
.
reccon
)
e1
:
SetCondition
(
c21091
.
reccon
)
e1
:
SetTarget
(
c21091
.
rectg
)
e1
:
SetTarget
(
c21091
.
rectg
)
e1
:
SetOperation
(
c21091
.
recop
)
e1
:
SetOperation
(
c21091
.
recop
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
--special summon
--special summon
local
e4
=
Effect
.
CreateEffect
(
c
)
local
e4
=
Effect
.
CreateEffect
(
c
)
e4
:
SetDescription
(
aux
.
Stringid
(
21091
,
1
))
e4
:
SetDescription
(
aux
.
Stringid
(
21091
,
1
))
e4
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e4
:
SetCategory
(
CATEGORY_SPECIAL_SUMMON
+
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e4
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e4
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
e4
:
SetType
(
EFFECT_TYPE_IGNITION
)
e4
:
SetType
(
EFFECT_TYPE_IGNITION
)
e4
:
SetRange
(
LOCATION_GRAVE
)
e4
:
SetRange
(
LOCATION_GRAVE
)
e4
:
SetCountLimit
(
1
,
21091
+
EFFECT_FLAG_OATH
)
e4
:
SetCountLimit
(
1
,
21091
+
EFFECT_FLAG_OATH
)
e4
:
SetCondition
(
c21091
.
condition
)
e4
:
SetCondition
(
c21091
.
condition
)
e4
:
SetCost
(
c21091
.
hspcost
)
e4
:
SetCost
(
c21091
.
hspcost
)
e4
:
SetTarget
(
c21091
.
hsptg
)
e4
:
SetTarget
(
c21091
.
hsptg
)
e4
:
SetOperation
(
c21091
.
hspop
)
e4
:
SetOperation
(
c21091
.
hspop
)
c
:
RegisterEffect
(
e4
)
c
:
RegisterEffect
(
e4
)
end
end
function
c21091
.
reccon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21091
.
reccon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
t
=
Duel
.
GetAttackTarget
()
local
t
=
Duel
.
GetAttackTarget
()
if
ev
==
1
then
t
=
Duel
.
GetAttacker
()
end
if
ev
==
1
then
t
=
Duel
.
GetAttacker
()
end
if
not
c
:
IsRelateToBattle
()
or
c
:
IsFacedown
()
then
return
false
end
if
not
c
:
IsRelateToBattle
()
or
c
:
IsFacedown
()
then
return
false
end
e
:
SetLabel
(
t
:
GetLevel
()
*
200
)
e
:
SetLabel
(
t
:
GetLevel
()
*
200
)
return
t
:
GetLocation
()
==
LOCATION_GRAVE
and
t
:
IsType
(
TYPE_MONSTER
)
return
t
:
GetLocation
()
==
LOCATION_GRAVE
and
t
:
IsType
(
TYPE_MONSTER
)
end
end
function
c21091
.
rectg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c21091
.
rectg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
true
end
end
end
function
c21091
.
recop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21091
.
recop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetLabel
(
0
,
e
:
GetLabel
())
e1
:
SetLabel
(
0
,
e
:
GetLabel
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetOperation
(
c21091
.
damop
)
e1
:
SetOperation
(
c21091
.
damop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
3
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
3
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
e
:
GetLabel
(),
e
:
GetLabel
()
*
3
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
e
:
GetLabel
(),
e
:
GetLabel
()
*
3
,
e
)
end
end
function
c21091
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21091
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
ct
,
dam
=
e
:
GetLabel
()
local
ct
,
dam
=
e
:
GetLabel
()
if
(
ct
<
3
)
then
if
(
ct
<
3
)
then
ct
=
ct
+
1
ct
=
ct
+
1
e
:
SetLabel
(
ct
,
dam
)
e
:
SetLabel
(
ct
,
dam
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
tp
,
dam
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
tp
,
dam
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
1
-
tp
,
dam
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
1
-
tp
,
dam
,
REASON_EFFECT
,
true
)
Duel
.
RDComplete
()
Duel
.
RDComplete
()
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
dam
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
dam
,
-
dam
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
dam
,
-
dam
,
e
)
else
end
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
dam
,
e
)
end
end
end
end
function
c21091
.
filter
(
c
)
end
return
not
(
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x137
))
function
c21091
.
filter
(
c
)
end
return
not
(
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x137
))
function
c21091
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
return
not
Duel
.
IsExistingMatchingCard
(
c21091
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
>
0
function
c21091
.
condition
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
return
not
Duel
.
IsExistingMatchingCard
(
c21091
.
filter
,
tp
,
LOCATION_MZONE
,
0
,
1
,
nil
)
and
Duel
.
GetFieldGroupCount
(
tp
,
LOCATION_MZONE
,
0
)
>
0
function
c21091
.
hspcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
end
if
chk
==
0
then
return
true
end
function
c21091
.
hspcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
cost
=
math.floor
(
Duel
.
GetLP
(
tp
)
/
2
)
if
chk
==
0
then
return
true
end
Duel
.
PayLPCost
(
tp
,
cost
)
local
cost
=
math.floor
(
Duel
.
GetLP
(
tp
)
/
2
)
end
Duel
.
PayLPCost
(
tp
,
cost
)
function
c21091
.
hsptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
end
if
chkc
then
return
chkc
:
GetLocation
()
==
LOCATION_MZONE
end
function
c21091
.
hsptg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
aux
.
TRUE
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
if
chkc
then
return
chkc
:
GetLocation
()
==
LOCATION_MZONE
end
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
e
:
GetHandler
():
IsReason
(
REASON_EFFECT
+
REASON_BATTLE
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
aux
.
TRUE
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
nil
)
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
and
e
:
GetHandler
():
IsCanBeSpecialSummoned
(
e
,
0
,
tp
,
false
,
false
)
and
e
:
GetHandler
():
IsReason
(
REASON_EFFECT
+
REASON_BATTLE
)
end
local
g
=
Duel
.
SelectTarget
(
tp
,
aux
.
TRUE
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FACEUP
)
end
local
g
=
Duel
.
SelectTarget
(
tp
,
aux
.
TRUE
,
tp
,
LOCATION_MZONE
,
LOCATION_MZONE
,
1
,
1
,
nil
)
function
c21091
.
hspop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
function
c21091
.
hspop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
if
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
<=
0
then
return
end
local
tc
=
Duel
.
GetFirstTarget
()
local
c
=
e
:
GetHandler
()
if
tc
:
IsRelateToEffect
(
e
)
and
c
:
IsRelateToEffect
(
e
)
then
local
tc
=
Duel
.
GetFirstTarget
()
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
if
tc
:
IsRelateToEffect
(
e
)
and
c
:
IsRelateToEffect
(
e
)
then
if
tc
:
IsFaceup
()
then
Duel
.
SpecialSummon
(
c
,
0
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
if
tc
:
IsFaceup
()
then
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
e1
:
SetCode
(
EFFECT_SET_ATTACK_FINAL
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
)
e1
:
SetCode
(
EFFECT_SET_ATTACK_FINAL
)
e1
:
SetValue
(
tc
:
GetAttack
()
/
2
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
)
tc
:
RegisterEffect
(
e1
)
e1
:
SetValue
(
tc
:
GetAttack
()
/
2
)
local
e2
=
e1
:
Clone
()
tc
:
RegisterEffect
(
e1
)
e2
:
SetCode
(
EFFECT_SET_DEFENSE_FINAL
)
local
e2
=
e1
:
Clone
()
e2
:
SetValue
(
tc
:
GetDefense
()
/
2
)
e2
:
SetCode
(
EFFECT_SET_DEFENSE_FINAL
)
tc
:
RegisterEffect
(
e2
)
e2
:
SetValue
(
tc
:
GetDefense
()
/
2
)
end
tc
:
RegisterEffect
(
e2
)
end
end
end
end
end
script/c21146.lua
View file @
7eba87b3
--猛毒『毒蛾的黑暗演舞』
--猛毒『毒蛾的黑暗演舞』
function
c21146
.
initial_effect
(
c
)
function
c21146
.
initial_effect
(
c
)
--Activate
--Activate
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetCategory
(
CATEGORY_REMOVE
+
CATEGORY_DAMAGE
)
e1
:
SetCategory
(
CATEGORY_REMOVE
+
CATEGORY_DAMAGE
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCode
(
EVENT_FREE_CHAIN
)
e1
:
SetCost
(
c21146
.
cost
)
e1
:
SetCost
(
c21146
.
cost
)
e1
:
SetTarget
(
c21146
.
target
)
e1
:
SetTarget
(
c21146
.
target
)
e1
:
SetOperation
(
c21146
.
activate
)
e1
:
SetOperation
(
c21146
.
activate
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
end
end
function
c21146
.
filter
(
c
)
function
c21146
.
filter
(
c
)
return
(
math.abs
(
c
:
GetAttack
()
-
c
:
GetDefense
())
==
200
or
math.abs
(
c
:
GetAttack
()
-
c
:
GetDefense
())
==
2000
)
return
(
math.abs
(
c
:
GetAttack
()
-
c
:
GetDefense
())
==
200
or
math.abs
(
c
:
GetAttack
()
-
c
:
GetDefense
())
==
2000
)
and
not
c
:
IsType
(
TYPE_LINK
)
and
c
:
IsReleasable
()
and
not
c
:
IsType
(
TYPE_LINK
)
and
c
:
IsReleasable
()
end
end
function
c21146
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c21146
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
if
chk
==
0
then
local
a
,
b
,
dot
=
DOT
.
DotCounter
.
Get
(
1
-
tp
)
local
a
,
b
,
dot
=
DOT
.
DotCounter
.
Get
(
1
-
tp
)
local
LO
=
0x6
local
LO
=
0x6
if
dot
>
0
then
LO
=
0x7
end
if
dot
>
0
then
LO
=
0x7
end
return
Duel
.
IsExistingMatchingCard
(
c21146
.
filter
,
tp
,
LO
,
0
,
1
,
nil
)
end
return
Duel
.
IsExistingMatchingCard
(
c21146
.
filter
,
tp
,
LO
,
0
,
1
,
nil
)
end
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c21146
.
filter
,
tp
,
LO
,
0
,
1
,
1
,
nil
)
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
c21146
.
filter
,
tp
,
LO
,
0
,
1
,
1
,
nil
)
Duel
.
Release
(
g
,
REASON_COST
)
Duel
.
Release
(
g
,
REASON_COST
)
end
end
function
c21146
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c21146
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
true
end
end
end
function
c21146
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21146
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
TRUE
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
1
,
e
:
GetHandler
())
local
g
=
Duel
.
SelectMatchingCard
(
tp
,
aux
.
TRUE
,
tp
,
0
,
LOCATION_ONFIELD
,
1
,
1
,
e
:
GetHandler
())
if
#
g
>
0
then
if
#
g
>
0
then
Duel
.
Remove
(
g
,
POS_FACEDOWN
,
REASON_EFFECT
)
Duel
.
Remove
(
g
,
POS_FACEDOWN
,
REASON_EFFECT
)
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetLabel
(
0
)
e1
:
SetLabel
(
0
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_STANDBY
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_STANDBY
)
e1
:
SetCondition
(
c21146
.
damcon
)
e1
:
SetCondition
(
c21146
.
damcon
)
e1
:
SetOperation
(
c21146
.
damop
)
e1
:
SetOperation
(
c21146
.
damop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_STANDBY
+
RESET_OPPO_TURN
,
4
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_STANDBY
+
RESET_OPPO_TURN
,
4
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
300
,
1200
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
300
,
1200
,
e
)
end
end
end
end
function
c21146
.
damcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21146
.
damcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
~=
tp
return
Duel
.
GetTurnPlayer
()
~=
tp
end
end
function
c21146
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21146
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
ct
=
e
:
GetLabel
()
local
ct
=
e
:
GetLabel
()
if
(
ct
<
4
)
then
if
(
ct
<
4
)
then
ct
=
ct
+
1
ct
=
ct
+
1
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
if
ct
==
4
then
if
ct
==
4
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
else
end
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
end
end
end
end
end
script/c21161.lua
View file @
7eba87b3
--人类地狱火✿藤原妹红
--人类地狱火✿藤原妹红
function
c21161
.
initial_effect
(
c
)
function
c21161
.
initial_effect
(
c
)
--xyz summon
--xyz summon
aux
.
AddXyzProcedure
(
c
,
nil
,
5
,
2
)
aux
.
AddXyzProcedure
(
c
,
nil
,
5
,
2
)
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
--search
--search
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
21161
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
21161
,
0
))
e1
:
SetCategory
(
CATEGORY_DAMAGE
+
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetCategory
(
CATEGORY_DAMAGE
+
CATEGORY_TOHAND
+
CATEGORY_SEARCH
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetType
(
EFFECT_TYPE_TRIGGER_O
+
EFFECT_TYPE_SINGLE
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCode
(
EVENT_SPSUMMON_SUCCESS
)
e1
:
SetCondition
(
c21161
.
con
)
e1
:
SetCondition
(
c21161
.
con
)
e1
:
SetTarget
(
c21161
.
tg
)
e1
:
SetTarget
(
c21161
.
tg
)
e1
:
SetOperation
(
c21161
.
op
)
e1
:
SetOperation
(
c21161
.
op
)
c
:
RegisterEffect
(
e1
)
c
:
RegisterEffect
(
e1
)
--addown
--addown
local
e2
=
Effect
.
CreateEffect
(
c
)
local
e2
=
Effect
.
CreateEffect
(
c
)
e2
:
SetDescription
(
aux
.
Stringid
(
21161
,
1
))
e2
:
SetDescription
(
aux
.
Stringid
(
21161
,
1
))
e2
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e2
:
SetCategory
(
CATEGORY_ATKCHANGE
+
CATEGORY_DEFCHANGE
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetType
(
EFFECT_TYPE_QUICK_O
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetCode
(
EVENT_FREE_CHAIN
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetRange
(
LOCATION_MZONE
)
e2
:
SetCost
(
c21161
.
adcost
)
e2
:
SetCost
(
c21161
.
adcost
)
e2
:
SetTarget
(
c21161
.
adtg
)
e2
:
SetTarget
(
c21161
.
adtg
)
e2
:
SetOperation
(
c21161
.
adop
)
e2
:
SetOperation
(
c21161
.
adop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
end
end
function
c21161
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21161
.
con
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
e
:
GetHandler
():
GetSummonType
()
==
SUMMON_TYPE_XYZ
return
e
:
GetHandler
():
GetSummonType
()
==
SUMMON_TYPE_XYZ
end
end
function
c21161
.
sfilter1
(
c
)
function
c21161
.
sfilter1
(
c
)
return
c
:
IsCode
(
21099
)
and
c
:
IsAbleToHand
()
return
c
:
IsCode
(
21099
)
and
c
:
IsAbleToHand
()
end
end
function
c21161
.
sfilter2
(
c
)
function
c21161
.
sfilter2
(
c
)
return
c
:
IsCode
(
21100
)
and
c
:
IsAbleToHand
()
return
c
:
IsCode
(
21100
)
and
c
:
IsAbleToHand
()
end
end
function
c21161
.
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c21161
.
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c21161
.
sfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
if
chk
==
0
then
return
Duel
.
IsExistingMatchingCard
(
c21161
.
sfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
c21161
.
sfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
and
Duel
.
IsExistingMatchingCard
(
c21161
.
sfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
end
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
2
,
tp
,
LOCATION_DECK
)
Duel
.
SetOperationInfo
(
0
,
CATEGORY_TOHAND
,
nil
,
2
,
tp
,
LOCATION_DECK
)
end
end
function
c21161
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c21161
.
op
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_ATOHAND
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c21161
.
sfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g1
=
Duel
.
SelectMatchingCard
(
tp
,
c21161
.
sfilter1
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c21161
.
sfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
local
g2
=
Duel
.
SelectMatchingCard
(
tp
,
c21161
.
sfilter2
,
tp
,
LOCATION_DECK
,
0
,
1
,
1
,
nil
)
g1
:
Merge
(
g2
)
g1
:
Merge
(
g2
)
if
g1
:
GetCount
()
>
0
then
if
g1
:
GetCount
()
>
0
then
Duel
.
SendtoHand
(
g1
,
nil
,
REASON_EFFECT
)
Duel
.
SendtoHand
(
g1
,
nil
,
REASON_EFFECT
)
Duel
.
ConfirmCards
(
1
-
tp
,
g1
)
Duel
.
ConfirmCards
(
1
-
tp
,
g1
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetLabel
(
0
)
e1
:
SetLabel
(
0
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetOperation
(
c21161
.
damop
)
e1
:
SetOperation
(
c21161
.
damop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
2
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
2
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
400
,
800
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
tp
,
0
,
400
,
800
,
e
)
end
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
400
,
800
,
e
)
end
end
function
c21161
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
local
c
=
e
:
GetHandler
()
function
c21161
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
ct
=
e
:
GetLabel
()
local
c
=
e
:
GetHandler
()
if
(
ct
<
2
)
then
local
ct
=
e
:
GetLabel
()
ct
=
ct
+
1
if
(
ct
<
2
)
then
e
:
SetLabel
(
ct
)
ct
=
ct
+
1
c
:
SetTurnCounter
(
ct
)
e
:
SetLabel
(
ct
)
Duel
.
Damage
(
tp
,
400
,
REASON_EFFECT
,
true
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
Damage
(
tp
,
400
,
REASON_EFFECT
,
true
)
Duel
.
RDComplete
()
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
,
true
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
Duel
.
RDComplete
()
if
ct
==
2
then
if
ct
==
2
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
tp
,
0
,
-
400
,
-
400
,
e
)
end
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
end
else
end
DOT
.
DotCounter
.
Add
(
nil
,
tp
,
0
,
0
,
-
400
,
e
)
function
c21161
.
adcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
end
end
end
function
c21161
.
filter
(
c
)
function
c21161
.
adcost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
return
c
:
IsAbleToGrave
()
and
c
:
IsSetCard
(
0x137
)
and
c
:
IsType
(
TYPE_MONSTER
)
if
chk
==
0
then
return
e
:
GetHandler
():
CheckRemoveOverlayCard
(
tp
,
1
,
REASON_COST
)
end
end
e
:
GetHandler
():
RemoveOverlayCard
(
tp
,
1
,
1
,
REASON_COST
)
function
c21161
.
adtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
end
if
chk
==
0
then
function
c21161
.
filter
(
c
)
local
g1
=
e
:
GetHandler
():
GetOverlayGroup
()
return
c
:
IsAbleToGrave
()
and
c
:
IsSetCard
(
0x137
)
and
c
:
IsType
(
TYPE_MONSTER
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_DECK
,
0
,
nil
)
end
g
:
Merge
(
g1
)
function
c21161
.
adtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
return
g
:
FilterCount
(
c21161
.
filter
,
nil
)
>
0
end
if
chk
==
0
then
end
local
g1
=
e
:
GetHandler
():
GetOverlayGroup
()
function
c21161
.
adop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_DECK
,
0
,
nil
)
local
g1
=
e
:
GetHandler
():
GetOverlayGroup
()
g
:
Merge
(
g1
)
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_DECK
,
0
,
nil
)
return
g
:
FilterCount
(
c21161
.
filter
,
nil
)
>
0
end
g
:
Merge
(
g1
)
end
if
g
:
FilterCount
(
c21161
.
filter
,
nil
)
==
0
then
return
end
function
c21161
.
adop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
sg
=
g
:
FilterSelect
(
tp
,
c21161
.
filter
,
1
,
1
,
nil
)
local
g1
=
e
:
GetHandler
():
GetOverlayGroup
()
local
sc
=
sg
:
GetFirst
()
local
g
=
Duel
.
GetMatchingGroup
(
aux
.
TRUE
,
tp
,
LOCATION_DECK
,
0
,
nil
)
Duel
.
SendtoGrave
(
sc
,
REASON_EFFECT
)
g
:
Merge
(
g1
)
local
dg
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
if
g
:
FilterCount
(
c21161
.
filter
,
nil
)
==
0
then
return
end
local
ct
=-
200
*
2
^
math.floor
(
sc
:
GetAttack
()
/
1000
)
local
sg
=
g
:
FilterSelect
(
tp
,
c21161
.
filter
,
1
,
1
,
nil
)
local
tc
=
dg
:
GetFirst
()
local
sc
=
sg
:
GetFirst
()
while
tc
do
Duel
.
SendtoGrave
(
sc
,
REASON_EFFECT
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
local
dg
=
Duel
.
GetMatchingGroup
(
Card
.
IsFaceup
,
tp
,
0
,
LOCATION_MZONE
,
nil
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
local
ct
=-
200
*
2
^
math.floor
(
sc
:
GetAttack
()
/
1000
)
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
local
tc
=
dg
:
GetFirst
()
e1
:
SetValue
(
ct
)
while
tc
do
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
)
local
e1
=
Effect
.
CreateEffect
(
e
:
GetHandler
())
tc
:
RegisterEffect
(
e1
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
local
e2
=
e1
:
Clone
()
e1
:
SetCode
(
EFFECT_UPDATE_ATTACK
)
e2
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e1
:
SetValue
(
ct
)
tc
:
RegisterEffect
(
e2
)
e1
:
SetReset
(
RESET_EVENT
+
0x1fe0000
)
tc
=
dg
:
GetNext
()
tc
:
RegisterEffect
(
e1
)
end
local
e2
=
e1
:
Clone
()
end
e2
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
tc
:
RegisterEffect
(
e2
)
tc
=
dg
:
GetNext
()
end
end
script/c22111.lua
View file @
7eba87b3
...
@@ -87,15 +87,29 @@ end
...
@@ -87,15 +87,29 @@ end
function
c22111
.
dmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c22111
.
dmop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
if
not
e
:
GetHandler
():
IsRelateToEffect
(
e
)
then
return
end
local
rt
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_HAND
)
*
200
local
rt
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_HAND
)
*
200
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCountLimit
(
1
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_END
)
e1
:
SetLabel
(
0
)
e1
:
SetLabel
(
0
,
rt
)
e1
:
SetCondition
(
c24066
.
damcon
)
e1
:
SetOperation
(
c22111
.
damop
)
e1
:
SetOperation
(
c24066
.
damop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
7
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
,
7
)
Duel
.
RegisterEffect
(
e1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
rt
,
rt
*
7
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
rt
,
rt
*
7
,
e
)
end
end
function
c22111
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
ct
,
rt
=
e
:
GetLabel
()
if
(
ct
<
7
)
then
ct
=
ct
+
1
e
:
SetLabel
(
ct
,
rt
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
rt
,
REASON_EFFECT
)
if
ct
==
7
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
rt
,
-
rt
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
rt
,
e
)
end
end
end
\ No newline at end of file
script/c22174.lua
View file @
7eba87b3
...
@@ -92,11 +92,12 @@ function c22174.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -92,11 +92,12 @@ function c22174.damop(e,tp,eg,ep,ev,re,r,rp)
ct
=
ct
+
1
ct
=
ct
+
1
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Hint
(
HINT_CARD
,
0
,
22174
)
Duel
.
Hint
(
HINT_CARD
,
0
,
22174
)
Duel
.
Damage
(
1
-
tp
,
1000
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
1000
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
1000
,
e
)
if
ct
==
4
then
if
ct
==
4
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
1000
,
-
1000
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
1000
,
-
1000
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
1000
,
e
)
end
end
end
end
end
end
script/c24055.lua
View file @
7eba87b3
...
@@ -55,9 +55,10 @@ function c24055.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -55,9 +55,10 @@ function c24055.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
end
end
end
end
end
end
...
...
script/c24059.lua
View file @
7eba87b3
...
@@ -69,9 +69,10 @@ function c24059.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -69,9 +69,10 @@ function c24059.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
600
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
600
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
600
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
600
,
-
600
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
600
,
-
600
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
600
,
e
)
end
end
end
end
end
end
script/c24066.lua
View file @
7eba87b3
...
@@ -44,9 +44,10 @@ function c24066.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -44,9 +44,10 @@ function c24066.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
if
ct
==
5
then
if
ct
==
5
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
300
,
-
300
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
300
,
e
)
end
end
end
end
end
end
script/c24074.lua
View file @
7eba87b3
...
@@ -79,9 +79,10 @@ function c24074.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -79,9 +79,10 @@ function c24074.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
end
end
end
end
end
end
script/c24171.lua
View file @
7eba87b3
...
@@ -80,9 +80,10 @@ function s.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -80,9 +80,10 @@ function s.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
300
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
700
,
e
)
if
ct
==
2
then
if
ct
==
2
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
700
,
-
700
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
700
,
-
700
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
700
,
e
)
end
end
end
end
end
end
script/c25043.lua
View file @
7eba87b3
...
@@ -121,9 +121,10 @@ function c25043.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -121,9 +121,10 @@ function c25043.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
end
end
end
end
end
end
script/c25048.lua
View file @
7eba87b3
...
@@ -42,9 +42,10 @@ function c25048.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -42,9 +42,10 @@ function c25048.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
if
ct
==
5
then
if
ct
==
5
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
end
end
end
end
end
end
script/c25050.lua
View file @
7eba87b3
...
@@ -56,9 +56,10 @@ function c25050.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -56,9 +56,10 @@ function c25050.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
800
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
800
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
800
,
e
)
if
ct
==
2
then
if
ct
==
2
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
800
,
-
800
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
800
,
-
800
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
800
,
e
)
end
end
end
end
end
end
script/c25051.lua
View file @
7eba87b3
...
@@ -54,9 +54,10 @@ function c25051.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -54,9 +54,10 @@ function c25051.damop(e,tp,eg,ep,ev,re,r,rp)
local
ct
=
e
:
GetLabel
()
local
ct
=
e
:
GetLabel
()
if
(
ct
<
3
)
then
if
(
ct
<
3
)
then
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
400
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
400
,
-
400
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
400
,
e
)
end
end
end
end
end
end
...
...
script/c27507.lua
View file @
7eba87b3
...
@@ -84,9 +84,10 @@ function s.damop1(e,tp,eg,ep,ev,re,r,rp)
...
@@ -84,9 +84,10 @@ function s.damop1(e,tp,eg,ep,ev,re,r,rp)
if
(
ct
>
0
)
then
if
(
ct
>
0
)
then
e
:
GetHandler
():
SetTurnCounter
(
ct
-
1
)
e
:
GetHandler
():
SetTurnCounter
(
ct
-
1
)
Duel
.
Damage
(
1
-
tp
,
dam
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
dam
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
dam
,
e
)
if
ct
==
1
then
if
ct
==
1
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
dam
,
0
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
dam
,
-
dam
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
dam
,
e
)
end
end
end
end
end
end
...
...
script/c31013.lua
View file @
7eba87b3
...
@@ -94,9 +94,10 @@ function c31013.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -94,9 +94,10 @@ function c31013.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
end
end
end
end
end
end
script/c31093.lua
View file @
7eba87b3
...
@@ -95,9 +95,10 @@ function s.damop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -95,9 +95,10 @@ function s.damop(e,tp,eg,ep,ev,re,r,rp)
e
:
SetLabel
(
ct
)
e
:
SetLabel
(
ct
)
c
:
SetTurnCounter
(
ct
)
c
:
SetTurnCounter
(
ct
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
Duel
.
Damage
(
1
-
tp
,
500
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
if
ct
==
3
then
if
ct
==
3
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
500
,
-
500
,
e
)
else
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
500
,
e
)
end
end
end
end
end
end
script/c888174.lua
View file @
7eba87b3
...
@@ -21,6 +21,7 @@ function c888174.initial_effect(c)
...
@@ -21,6 +21,7 @@ function c888174.initial_effect(c)
Duel
.
RegisterEffect
(
e1
,
0
)
Duel
.
RegisterEffect
(
e1
,
0
)
local
e2
=
e1
:
Clone
()
local
e2
=
e1
:
Clone
()
Duel
.
RegisterEffect
(
e2
,
1
)
Duel
.
RegisterEffect
(
e2
,
1
)
c888174
.
burn_cts
=
{{},{}}
end
end
end
end
function
c888174
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c888174
.
cost
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
...
@@ -31,35 +32,28 @@ function c888174.target(e,tp,eg,ep,ev,re,r,rp,chk)
...
@@ -31,35 +32,28 @@ function c888174.target(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
return
true
end
if
chk
==
0
then
return
true
end
end
end
function
c888174
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c888174
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
cts
=
c888174
.
burn_cts
[
tp
+
1
]
local
e1
=
Effect
.
CreateEffect
(
c
)
table.insert
(
cts
,
4
)
e1
:
SetLabel
(
0
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetProperty
(
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
+
RESET_OPPO_TURN
,
4
)
e1
:
SetCode
(
EFFECT_FLAG_EFFECT
+
888174
)
Duel
.
RegisterEffect
(
e1
,
tp
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
1000
,
4000
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
1000
,
4000
,
e
)
end
end
function
c888174
.
damcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c888174
.
damcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
Duel
.
GetTurnPlayer
()
~=
tp
and
Duel
.
GetFlagEffect
(
tp
,
888174
)
>
0
local
cts
=
c888174
.
burn_cts
[
tp
+
1
]
return
Duel
.
GetTurnPlayer
()
~=
tp
and
#
cts
>
0
end
end
function
c888174
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c888174
.
damop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
local
ct
=
e
:
GetLabel
()
local
cts
=
c888174
.
burn_cts
[
tp
+
1
]
if
(
ct
<
4
)
then
local
new_cts
=
{}
ct
=
ct
+
1
for
_
,
ct
in
ipairs
(
cts
)
do
e
:
SetLabel
(
ct
)
ct
=
ct
-
1
c
:
SetTurnCounter
(
ct
)
Duel
.
Hint
(
HINT_CARD
,
0
,
888174
)
local
n
=
Duel
.
GetFlagEffect
(
tp
,
888174
)
Duel
.
Damage
(
1
-
tp
,
1000
,
REASON_EFFECT
)
for
i
=
1
,
n
do
if
ct
>
0
then
Duel
.
Hint
(
HINT_CARD
,
0
,
888174
)
table.insert
(
new_cts
,
ct
)
Duel
.
Damage
(
1
-
tp
,
1000
,
REASON_EFFECT
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
1000
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
0
,
-
1000
,
e
)
end
else
if
ct
==
4
then
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
1000
,
-
1000
,
e
)
DOT
.
DotCounter
.
Add
(
nil
,
1
-
tp
,
0
,
-
1000
,
-
1000
,
e
)
end
end
end
end
c888174
.
burn_cts
[
tp
+
1
]
=
new_cts
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment