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
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
八宫一月
ygopro-THC-cards
Commits
638402c6
Commit
638402c6
authored
Feb 25, 2022
by
wyykak
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix season mechanism
Provided by: kritosoft Signed-off-by:
wyykak
<
wyy_1414@126.com
>
parent
773b50ff
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
100 additions
and
103 deletions
+100
-103
expansions/script/nef/nef.lua
expansions/script/nef/nef.lua
+80
-67
script/c1192020.lua
script/c1192020.lua
+6
-1
script/c999104.lua
script/c999104.lua
+9
-28
script/c999107.lua
script/c999107.lua
+5
-7
No files found.
expansions/script/nef/nef.lua
View file @
638402c6
...
...
@@ -3,17 +3,17 @@ Nef = Nef or {}
local
os
=
require
(
"os"
)
-- require "nef/cardList"
function
Nef
.
unpack
(
t
,
i
)
i
=
i
or
1
if
t
[
i
]
then
return
t
[
i
],
Nef
.
unpack
(
t
,
i
+
1
)
end
i
=
i
or
1
if
t
[
i
]
then
return
t
[
i
],
Nef
.
unpack
(
t
,
i
+
1
)
end
end
function
Nef
.
unpackOneMember
(
t
,
member
,
i
)
i
=
i
or
1
if
t
[
i
]
and
t
[
i
][
member
]
then
return
t
[
i
][
member
],
Nef
.
unpackOneMember
(
t
,
member
,
i
+
1
)
end
i
=
i
or
1
if
t
[
i
]
and
t
[
i
][
member
]
then
return
t
[
i
][
member
],
Nef
.
unpackOneMember
(
t
,
member
,
i
+
1
)
end
end
function
Nef
.
AddSynchroProcedureWithDesc
(
c
,
f1
,
f2
,
ct
,
desc
)
...
...
@@ -120,7 +120,7 @@ function Nef.EnablePendulumAttributeSP(c,num,filter,argTable,reg,tag)
c
:
RegisterEffect
(
e1
)
-- 由于utility处加载nef,不需要再无效效果
-- --disable HINTMSG_SPSUMMON
-- --disable HINTMSG_SPSUMMON
-- local e2=Effect.CreateEffect(c)
-- e2:SetType(EFFECT_TYPE_FIELD)
-- e2:SetRange(LOCATION_PZONE)
...
...
@@ -172,7 +172,7 @@ function Nef.PConditionFilterSP(c,e,tp,lscale,rscale,filter,argTable,filter2,arg
end
local
normalCondition
=
(
c
:
IsLocation
(
LOCATION_HAND
)
or
(
c
:
IsFaceup
()
and
c
:
IsType
(
TYPE_PENDULUM
)))
and
lv
>
lscale
and
lv
<
rscale
and
not
c
:
IsForbidden
()
and
Nef
.
PendSummonCheck
(
c
,
e
,
tp
,
lscale
,
rscale
,
filter
,
argTable
,
filter2
,
argTable2
,
lpz
,
rpz
)
and
Nef
.
PendSummonCheck
(
c
,
e
,
tp
,
lscale
,
rscale
,
filter
,
argTable
,
filter2
,
argTable2
,
lpz
,
rpz
)
local
spCondition
=
filter
(
c
,
Nef
.
unpack
(
argTable
))
and
filter2
(
c
,
Nef
.
unpack
(
argTable2
))
return
spCondition
and
normalCondition
end
...
...
@@ -191,7 +191,7 @@ function Nef.PConditionFilterSP2(c,e,tp,lscale,rscale,filter,argTable,filter2,ar
end
function
Nef
.
PendConditionSP
()
return
function
(
e
,
c
,
og
)
return
function
(
e
,
c
,
og
)
if
c
==
nil
then
return
true
end
local
tp
=
c
:
GetControler
()
...
...
@@ -232,13 +232,13 @@ function Nef.PendConditionSP()
end
function
Nef
.
PendOperationSP
()
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
,
sg
,
og
)
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
c
,
sg
,
og
)
local
lpz
=
Duel
.
GetFieldCard
(
tp
,
LOCATION_PZONE
,
0
)
local
rpz
=
Duel
.
GetFieldCard
(
tp
,
LOCATION_PZONE
,
1
)
local
n1
,
filter1
,
argTable1
,
tag1
,
pexfunc1
=
Nef
.
GetPendSPInfo
(
lpz
)
local
n2
,
filter2
,
argTable2
,
tag2
,
pexfunc2
=
Nef
.
GetPendSPInfo
(
rpz
)
local
lscale
=
lpz
:
GetLeftScale
()
local
rscale
=
rpz
:
GetRightScale
()
if
lscale
>
rscale
then
lscale
,
rscale
=
rscale
,
lscale
end
...
...
@@ -366,7 +366,7 @@ function Nef.GetPendSPInfo(c)
local
pnum
=
type
(
mt
.
pend_num
)
==
"number"
and
mt
.
pend_num
or
mt
.
pend_num
(
c
)
pend_num
=
math.min
(
pend_num
,
pnum
)
end
if
mt
.
pend_filter
then
if
mt
.
pend_filter
then
local
f1
=
pend_filter
local
arg
=
mt
.
pend_arg
or
{
1
}
local
f2_ori
=
mt
.
pend_filter
...
...
@@ -395,7 +395,7 @@ end
function
Nef
.
GetFieldLeftScale
(
tp
)
local
lpz
=
Duel
.
GetFieldCard
(
tp
,
LOCATION_PZONE
,
0
)
if
lpz
then
if
lpz
then
return
lpz
:
GetLeftScale
()
else
return
...
...
@@ -404,7 +404,7 @@ end
function
Nef
.
GetFieldRightScale
(
tp
)
local
rpz
=
Duel
.
GetFieldCard
(
tp
,
LOCATION_PZONE
,
1
)
if
rpz
then
if
rpz
then
return
rpz
:
GetRightScale
()
else
return
...
...
@@ -412,10 +412,10 @@ function Nef.GetFieldRightScale(tp)
end
-- function Nef.PendSummonLimitTarget(e,c,sump,sumtype,sumpos,targetp)
--
local c = nil
--
if e then c = e:GetHandler() end
--
return c and sumtype==SUMMON_TYPE_PENDULUM and _G["c" .. c:GetOriginalCode()].pend_filter==nil
--
and (c == Duel.GetFieldCard(tp,LOCATION_SZONE, 6) or c == Duel.GetFieldCard(tp,LOCATION_SZONE, 7))
--
local c = nil
--
if e then c = e:GetHandler() end
--
return c and sumtype==SUMMON_TYPE_PENDULUM and _G["c" .. c:GetOriginalCode()].pend_filter==nil
--
and (c == Duel.GetFieldCard(tp,LOCATION_SZONE, 6) or c == Duel.GetFieldCard(tp,LOCATION_SZONE, 7))
-- end
function
Nef
.
EnableDualAttributeSP
(
c
)
...
...
@@ -466,13 +466,13 @@ end
function
Nef
.
GetRandomCardCode
(
num
,
command
)
-- local result = {}
-- local commandList = {
--
[0] = "Main",
--
[1] = "Extra"
--
[0] = "Main",
--
[1] = "Extra"
-- }
-- local cardType = commandList[command]
-- for i=1,num do
--
local r = math.random(1,#CardList[cardType])
--
result[i] = CardList[cardType][r]
--
local r = math.random(1,#CardList[cardType])
--
result[i] = CardList[cardType][r]
-- end
-- return result
end
...
...
@@ -525,7 +525,7 @@ function Nef.SelectGroup(tp,desc,g,f,cg,min,max,...)
local
cg
=
cg
or
Group
.
CreateGroup
()
sg
:
Merge
(
cg
)
local
ct
=
sg
:
GetCount
()
local
ag
=
g
:
Filter
(
Nef
.
CheckGroupRecursive
,
sg
,
sg
,
g
,
f
,
min
,
max
,
ext_params
)
local
ag
=
g
:
Filter
(
Nef
.
CheckGroupRecursive
,
sg
,
sg
,
g
,
f
,
min
,
max
,
ext_params
)
while
ct
<
max
and
ag
:
GetCount
()
>
0
do
local
finish
=
(
ct
>=
min
and
ct
<=
max
and
f
(
sg
,
...
))
local
seg
=
sg
:
Clone
()
...
...
@@ -553,7 +553,7 @@ function Nef.SelectGroupWithCancel(tp,desc,g,f,cg,min,max,...)
local
cg
=
cg
or
Group
.
CreateGroup
()
sg
:
Merge
(
cg
)
local
ct
=
sg
:
GetCount
()
local
ag
=
g
:
Filter
(
Nef
.
CheckGroupRecursive
,
sg
,
sg
,
g
,
f
,
min
,
max
,
ext_params
)
local
ag
=
g
:
Filter
(
Nef
.
CheckGroupRecursive
,
sg
,
sg
,
g
,
f
,
min
,
max
,
ext_params
)
while
ct
<
max
and
ag
:
GetCount
()
>
0
do
local
finish
=
(
ct
>=
min
and
ct
<=
max
and
f
(
sg
,
...
))
local
cancel
=
finish
or
ct
==
0
...
...
@@ -626,7 +626,7 @@ function Nef.AddXyzProcedureCustom(c,func,gf,minc,maxc,xm,...)
local
mt
=
_G
[
"c"
..
code
]
mt
.
xyz_filter
=
func
or
aux
.
TRUE
mt
.
xyz_count
=
minc
end
end
local
maxc
=
maxc
or
minc
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
...
@@ -758,7 +758,7 @@ function Nef.AddCommonCounter(num, code, tp)
if
tc
:
IsControler
(
tp
)
then
tc
:
ResetFlagEffect
(
999900
+
code
)
if
tc
:
IsLocation
(
LOCATION_ONFIELD
)
and
tag
>
0
then
tc
:
RegisterFlagEffect
(
999900
+
code
,
RESET_EVENT
+
0xfe0000
,
EFFECT_FLAG_CLIENT_HINT
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
,
0
,
0
,
tc
:
RegisterFlagEffect
(
999900
+
code
,
RESET_EVENT
+
0xfe0000
,
EFFECT_FLAG_CLIENT_HINT
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
,
0
,
0
,
aux
.
Stringid
(
code
,
tag
))
end
end
...
...
@@ -791,7 +791,7 @@ function Nef.RefreshCommonCounter(c, code)
local
tag
=
math.min
(
Nef
.
counter
[
c
:
GetControler
()][
code
],
11
)
c
:
ResetFlagEffect
(
999900
+
code
)
if
tag
>
0
then
c
:
RegisterFlagEffect
(
999900
+
code
,
RESET_EVENT
+
0xfe0000
,
EFFECT_FLAG_CLIENT_HINT
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
,
0
,
0
,
c
:
RegisterFlagEffect
(
999900
+
code
,
RESET_EVENT
+
0xfe0000
,
EFFECT_FLAG_CLIENT_HINT
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
,
0
,
0
,
aux
.
Stringid
(
code
,
tag
))
end
end
...
...
@@ -868,7 +868,7 @@ end
-- this group include cards in szone
function
Nef
.
GetLinkArrowGroup
(
c
)
local
g
=
Group
.
CreateGroup
()
if
c
:
IsOnField
()
then
if
c
:
IsOnField
()
then
local
tp
=
c
:
GetControler
()
local
loc
=
c
:
GetLocation
()
local
seq
=
c
:
GetSequence
()
...
...
@@ -1041,12 +1041,12 @@ function Nef.RegisterBigFiendEffect(c,e)
ex
:
SetCode
(
EVENT_FREE_CHAIN
)
ex
:
SetHintTiming
(
0
,
0x1c0
)
end
c
:
RegisterEffect
(
ex
)
c
:
RegisterEffect
(
ex
)
end
function
Auxiliary
.
NonTuner
(
f
,
...
)
local
ext_params
=
{
...
}
return
function
(
target
,
syncard
)
return
function
(
target
,
syncard
)
return
(
not
syncard
or
target
:
IsNotTuner
(
syncard
))
and
(
not
f
or
f
(
target
,
table.unpack
(
ext_params
)))
end
end
...
...
@@ -1055,7 +1055,7 @@ if not Nef.SeedField then
local
class
=
{}
class
.
seeds
=
{}
class
.
hint
=
true
function
class
.
readZone
(
zone
)
local
zone0
=
zone
&
0xff
local
zone1
=
zone
>>
16
...
...
@@ -1095,14 +1095,14 @@ if not Nef.SeedField then
return
1
<<
(
seq
-
16
)
else
return
1
<<
(
seq
+
16
)
end
end
end
end
end
--[[
tp
种子持有者
zone
目标区域
--[[
tp
种子持有者
zone 目标区域
]]
function
class
.
addSeed
(
e
,
tp
,
zoneTP
)
local
zone
=
class
.
fmtZone
(
tp
,
zoneTP
)
...
...
@@ -1135,10 +1135,10 @@ if not Nef.SeedField then
return
true
end
--[[
tp
种子持有者
p
seq的玩家
seq
相对玩家p目标区域序号
--[[
tp
种子持有者
p
seq的玩家
seq
相对玩家p目标区域序号
]]
function
class
.
addSeedWithSeq
(
e
,
tp
,
p
,
seq
)
local
fix
=
p
==
tp
and
0
or
16
...
...
@@ -1151,36 +1151,36 @@ if not Nef.SeedField then
local
zone00
,
zone01
=
0
,
0
local
zone10
,
zone11
=
0
,
0
for
i
=
0
,
4
do
if
class
.
seeds
[
i
]
then
if
class
.
seeds
[
i
]
then
local
p
=
class
.
seeds
[
i
][
1
]
if
p
==
0
then
zone00
=
zone00
|
1
<<
i
zone00
=
zone00
|
1
<<
i
zone10
=
zone10
|
1
<<
(
i
+
16
)
else
zone01
=
zone01
|
1
<<
i
zone01
=
zone01
|
1
<<
i
zone11
=
zone11
|
1
<<
(
i
+
16
)
end
end
if
class
.
seeds
[
i
+
16
]
then
if
class
.
seeds
[
i
+
16
]
then
local
p
=
class
.
seeds
[
i
+
16
][
1
]
if
p
==
0
then
zone00
=
zone00
|
1
<<
(
i
+
16
)
zone00
=
zone00
|
1
<<
(
i
+
16
)
zone10
=
zone10
|
1
<<
i
else
zone01
=
zone01
|
1
<<
(
i
+
16
)
zone01
=
zone01
|
1
<<
(
i
+
16
)
zone11
=
zone11
|
1
<<
i
end
end
end
end
for
i
=
5
,
6
do
if
class
.
seeds
[
i
]
then
if
class
.
seeds
[
i
]
then
local
p
=
class
.
seeds
[
i
][
1
]
if
p
==
0
then
zone00
=
zone00
|
1
<<
i
|
1
<<
(
i
+
16
)
zone10
=
zone10
|
1
<<
i
|
1
<<
(
i
+
16
)
zone00
=
zone00
|
1
<<
i
|
1
<<
(
i
+
16
)
zone10
=
zone10
|
1
<<
i
|
1
<<
(
i
+
16
)
else
zone01
=
zone01
|
1
<<
i
|
1
<<
(
i
+
16
)
zone11
=
zone11
|
1
<<
i
|
1
<<
(
i
+
16
)
zone01
=
zone01
|
1
<<
i
|
1
<<
(
i
+
16
)
zone11
=
zone11
|
1
<<
i
|
1
<<
(
i
+
16
)
end
end
end
...
...
@@ -1266,7 +1266,7 @@ if not Nef.SeedField then
if
c
:
IsLocation
(
LOCATION_MZONE
)
then
local
p
=
c
:
GetControler
()
local
cseq
=
c
:
GetSequence
()
if
p
==
1
then
if
p
==
1
then
p
=
0
if
cseq
<
5
then
cseq
=
cseq
+
16
...
...
@@ -1279,7 +1279,7 @@ if not Nef.SeedField then
end
function
class
.
tg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
if
chk
==
0
then
local
seq
=
e
:
GetLabel
()
return
eg
:
IsExists
(
class
.
cfilter
,
1
,
nil
,
seq
)
end
...
...
@@ -1366,29 +1366,22 @@ if not Nef.PLCounter then
function
class
.
Add
(
tp
,
code
,
num
)
local
eg
=
class
.
_e
[
tp
][
code
]
if
eg
then
local
e
=
eg
:
GetLabelObject
()
e
:
Reset
()
eg
:
Reset
()
end
local
e1
=
Effect
.
GlobalEffect
()
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
+
EFFECT_FLAG_CLIENT_HINT
)
e1
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
+
EFFECT_FLAG_CLIENT_HINT
+
EFFECT_FLAG_PLAYER_TARGET
)
e1
:
SetTargetRange
(
1
,
0
)
local
eg1
=
Effect
.
GlobalEffect
()
eg1
:
SetType
(
EFFECT_TYPE_FIELD
|
EFFECT_TYPE_GRANT
)
eg1
:
SetTargetRange
(
0xff
,
0
)
eg1
:
SetTarget
(
aux
.
TRUE
)
local
count
=
(
class
.
_n
[
tp
][
code
]
or
0
)
+
num
class
.
_e
[
tp
][
code
]
=
e
g
1
class
.
_e
[
tp
][
code
]
=
e1
class
.
_n
[
tp
][
code
]
=
count
e1
:
SetDescription
(
aux
.
Stringid
(
code
,
count
))
eg1
:
SetLabelObject
(
e1
)
Duel
.
RegisterEffect
(
eg1
,
tp
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
function
class
.
Get
(
tp
,
code
)
...
...
@@ -1396,4 +1389,24 @@ if not Nef.PLCounter then
end
Nef
.
PLCounter
=
class
end
--seasonchange
function
Nef
.
SeasonChange
(
c
)
if
Nef
.
Seasoncounter
==
nil
then
Nef
.
Seasoncounter
=
true
local
sea
=
Effect
.
CreateEffect
(
c
)
sea
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
sea
:
SetCode
(
EVENT_PHASE_START
+
PHASE_STANDBY
)
sea
:
SetOperation
(
Nef
.
addcount
)
Duel
.
RegisterEffect
(
sea
,
0
)
end
end
function
Nef
.
addcount
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Nef
.
PLCounter
.
Get
(
tp
,
999104
)
<
4
then
Nef
.
PLCounter
.
Add
(
tp
,
999104
,
1
)
Nef
.
PLCounter
.
Add
(
1
-
tp
,
999104
,
1
)
else
Nef
.
PLCounter
.
Add
(
tp
,
999104
,
-
3
)
Nef
.
PLCounter
.
Add
(
1
-
tp
,
999104
,
-
3
)
end
end
\ No newline at end of file
script/c1192020.lua
View file @
638402c6
...
...
@@ -71,7 +71,12 @@ function c1192020.ofilter2(c)
end
function
c1192020
.
op2
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
--
if
Duel
.
IsExistingMatchingCard
(
c1192020
.
ofilter2
,
tp
,
0xff
,
0xff
,
1
,
nil
)
then
Nef
.
SetCommonCounter
(
1
,
999104
,
tp
)
end
Debug
.
Message
(
Nef
.
PLCounter
.
Get
(
tp
,
999104
))
if
Nef
.
PLCounter
.
Get
(
tp
,
999104
)
~=
0
then
local
a
=
Nef
.
PLCounter
.
Get
(
tp
,
999104
)
Nef
.
PLCounter
.
Add
(
tp
,
999104
,
1
-
a
)
Nef
.
PLCounter
.
Add
(
1
-
tp
,
999104
,
1
-
a
)
end
--
if
Duel
.
Recover
(
tp
,
1500
,
REASON_EFFECT
)
<
1
then
return
end
--
...
...
script/c999104.lua
View file @
638402c6
--幻想时令『四时之兆』
local
M
=
c999104
local
Mid
=
999104
require
(
"expansions/script/nef/nef"
)
function
M
.
initial_effect
(
c
)
--
--
aux
.
AddCodeList
(
c
,
1192020
)
--
Nef
.
CommonCounterGroup
(
c
,
Mid
)
if
M
.
counter
==
nil
then
M
.
counter
=
true
local
ge0
=
Effect
.
CreateEffect
(
c
)
ge0
:
SetType
(
EFFECT_TYPE_CONTINUOUS
+
EFFECT_TYPE_FIELD
)
ge0
:
SetCode
(
EVENT_PHASE_START
+
PHASE_STANDBY
)
ge0
:
SetOperation
(
M
.
addcount
)
Duel
.
RegisterEffect
(
ge0
,
0
)
end
Nef
.
SeasonChange
(
c
)
--Activate
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
e0
:
SetCode
(
EVENT_FREE_CHAIN
)
e0
:
SetOperation
(
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Nef
.
RefreshCommonCounter
(
c
,
Mid
)
end
)
c
:
RegisterEffect
(
e0
)
--
...
...
@@ -54,16 +42,6 @@ function M.initial_effect(c)
c
:
RegisterEffect
(
e3
)
end
function
M
.
addcount
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
for
p
=
0
,
1
do
if
Nef
.
GetCommonCounter
(
Mid
,
p
)
<
4
then
Nef
.
AddCommonCounter
(
1
,
Mid
,
p
)
else
Nef
.
AddCommonCounter
(
-
3
,
Mid
,
p
)
end
end
end
function
M
.
filter1
(
c
)
return
c
:
IsSetCard
(
0x123
)
and
c
:
IsAbleToHand
()
end
...
...
@@ -92,7 +70,7 @@ end
function
M
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
local
flag
=
Nef
.
GetCommonCounter
(
Mid
,
tp
)
local
flag
=
Nef
.
PLCounter
.
Get
(
tp
,
Mid
)
local
list
=
{
20200
,
22400
,
23300
,
10100
}
return
flag
>
0
and
Duel
.
IsExistingMatchingCard
(
M
[
"filter"
..
flag
],
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
M
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
list
[
flag
])
...
...
@@ -101,7 +79,7 @@ function M.target(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
M
.
operation
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
flag
=
Nef
.
GetCommonCounter
(
Mid
,
tp
)
local
flag
=
Nef
.
PLCounter
.
Get
(
tp
,
Mid
)
local
list
=
{
20200
,
22400
,
23300
,
10100
}
if
flag
>
0
and
Duel
.
IsExistingMatchingCard
(
M
[
"filter"
..
flag
],
tp
,
LOCATION_DECK
,
0
,
1
,
nil
)
and
Duel
.
IsExistingMatchingCard
(
M
.
filter
,
tp
,
LOCATION_DECK
,
0
,
1
,
nil
,
list
[
flag
])
then
...
...
@@ -129,6 +107,9 @@ function M.seasonop(e,tp,eg,ep,ev,re,r,rp)
[
10100
]
=
4
,
}
if
list
[
code
]
then
Nef
.
SetCommonCounter
(
list
[
code
],
Mid
,
tp
)
local
a
=
Nef
.
PLCounter
.
Get
(
tp
,
Mid
)
local
b
=
list
[
code
]
Nef
.
PLCounter
.
Add
(
tp
,
Mid
,
b
-
a
)
Nef
.
PLCounter
.
Add
(
1
-
tp
,
Mid
,
b
-
a
)
end
end
script/c999107.lua
View file @
638402c6
...
...
@@ -102,8 +102,6 @@ function M.activate(e,tp,eg,ep,ev,re,r,rp)
local
cost
=
te
:
GetCost
()
if
cost
then
cost
(
te
,
tep
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
1
)
end
Duel
.
RaiseEvent
(
tc
,
EVENT_CHAIN_SOLVED
,
tc
:
GetActivateEffect
(),
0
,
tp
,
tp
,
Duel
.
GetCurrentChain
())
Nef
.
RefreshCommonCounter
(
tc
,
999104
)
end
-- immune
...
...
@@ -136,11 +134,11 @@ end
function
M
.
tokentg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
local
flag
=
Nef
.
GetCommonCounter
(
999104
,
tp
)
local
flag
=
Nef
.
PLCounter
.
Get
(
tp
,
999104
)
local
list
=
{
[
1
]
=
{
25161
,
0x208
,
0x4011
,
2000
,
2000
,
5
,
RACE_PLANT
,
ATTRIBUTE_LIGHT
},
[
2
]
=
{
25160
,
0x208
,
0x4011
,
1000
,
1000
,
1
,
RACE_PLANT
,
ATTRIBUTE_LIGHT
},
[
3
]
=
{
999300
,
0x208
,
0x4011
,
0
,
0
,
2
,
RACE_PLANT
,
ATTRIBUTE_EARTH
},
[
3
]
=
{
999300
,
0x208
,
0x4011
,
0
,
0
,
2
,
RACE_PLANT
,
ATTRIBUTE_EARTH
},
[
4
]
=
{
999999
,
0x208
,
0x4011
,
900
,
900
,
9
,
RACE_AQUA
,
ATTRIBUTE_WATER
},
}
return
flag
>
0
and
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
>
0
...
...
@@ -151,12 +149,12 @@ function M.tokentg(e,tp,eg,ep,ev,re,r,rp,chk)
end
function
M
.
tokenop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
flag
=
Nef
.
GetCommonCounter
(
999104
,
tp
)
local
flag
=
Nef
.
PLCounter
.
Get
(
tp
,
999104
)
local
list
=
{
[
1
]
=
{
25161
,
0x208
,
0x4011
,
2000
,
2000
,
5
,
RACE_PLANT
,
ATTRIBUTE_LIGHT
},
[
2
]
=
{
25160
,
0x208
,
0x4011
,
1000
,
1000
,
1
,
RACE_PLANT
,
ATTRIBUTE_LIGHT
},
[
3
]
=
{
999300
,
0x208
,
0x4011
,
0
,
0
,
2
,
RACE_PLANT
,
ATTRIBUTE_EARTH
},
[
4
]
=
{
999999
,
0x208
,
0x4011
,
900
,
900
,
9
,
0x40
,
ATTRIBUTE_WATER
},
[
3
]
=
{
999300
,
0x208
,
0x4011
,
0
,
0
,
2
,
RACE_PLANT
,
ATTRIBUTE_EARTH
},
[
4
]
=
{
999999
,
0x208
,
0x4011
,
900
,
900
,
9
,
0x40
,
ATTRIBUTE_WATER
},
}
local
ft
=
Duel
.
GetLocationCount
(
tp
,
LOCATION_MZONE
)
local
c
=
e
:
GetHandler
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment