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
Huangnan
no81cards
Commits
b23f3ae5
Commit
b23f3ae5
authored
Jul 03, 2023
by
Nemo Ma
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update c65131000.lua
parent
f6f7763c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
86 additions
and
26 deletions
+86
-26
expansions/script/c65131000.lua
expansions/script/c65131000.lua
+86
-26
No files found.
expansions/script/c65131000.lua
View file @
b23f3ae5
...
...
@@ -9,12 +9,28 @@ function s.initial_effect(c)
e1
:
SetTarget
(
s
.
target
)
e1
:
SetOperation
(
s
.
activate
)
c
:
RegisterEffect
(
e1
)
if
not
s
.
global_check
then
s
.
global_check
=
true
local
ge1
=
Effect
.
CreateEffect
(
c
)
ge1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge1
:
SetCode
(
EVENT_CHAIN_DISABLED
)
ge1
:
SetOperation
(
s
.
checkop
)
Duel
.
RegisterEffect
(
ge1
,
0
)
end
end
local
distable
=
{}
local
effectable
=
{}
function
s
.
checkop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
if
Duel
.
GetFlagEffectLabel
(
re
:
GetOwnerPlayer
(),
id
+
1
)
==
re
:
GetFieldID
()
then
table.insert
(
distable
,
re
)
Duel
.
ResetFlagEffect
(
re
:
GetOwnerPlayer
(),
id
+
1
)
end
end
function
s
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
if
chk
==
0
then
return
true
end
end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
--change
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
...
@@ -30,6 +46,7 @@ function s.changecon(e,tp,eg,ep,ev,re,r,rp)
end
function
s
.
changeop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
c
=
e
:
GetHandler
()
Duel
.
RegisterFlagEffect
(
re
:
GetOwnerPlayer
(),
id
+
1
,
RESET_PHASE
+
PHASE_END
,
0
,
1
,
re
:
GetFieldID
())
--negate
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
...
@@ -38,7 +55,7 @@ function s.changeop(e,tp,eg,ep,ev,re,r,rp)
e1
:
SetLabel
(
rp
)
e1
:
SetLabelObject
(
re
)
e1
:
SetCondition
(
s
.
necon
)
e1
:
SetOperation
(
s
.
neop
)
e1
:
SetOperation
(
s
.
neop
)
e1
:
SetReset
(
RESET_PHASE
+
PHASE_END
)
Duel
.
RegisterEffect
(
e1
,
tp
)
end
...
...
@@ -56,63 +73,106 @@ function s.neop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Hint
(
HINT_CARD
,
0
,
id
+
i
)
end
local
c
=
e
:
GetHandler
()
local
fop
=
te
:
GetOperation
()
local
tlabel1
,
tlabel2
,
tlabel3
=
te
:
GetLabel
()
local
fid
=
c
:
GetFieldID
()
local
tg
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TARGET_CARDS
)
if
tg
then
local
ftgpy
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TARGET_PLAYER
)
local
ftgpr
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TARGET_PARAM
)
local
ftgc
=
Duel
.
GetChainInfo
(
ev
,
CHAININFO_TARGET_CARDS
)
if
ftgc
then
local
tc
=
tg
:
GetFirst
()
while
tc
do
tc
:
RegisterFlagEffect
(
id
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TURN_SET
,
0
,
1
,
fid
)
tc
=
tg
:
GetNext
()
end
end
end
table.insert
(
effectable
,{
re
,
te
:
GetLabelObject
(),
ftgc
})
local
e1
=
Effect
.
CreateEffect
(
e
:
GetLabelObject
():
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetCode
(
EVENT_PHASE
+
PHASE_STANDBY
)
e1
:
SetCountLimit
(
1
)
e1
:
SetLabel
(
fid
)
e1
:
SetLabel
(
fid
,
ftgpy
,
ftgpr
,
tlabel1
,
tlabel2
,
tlabel3
,
Duel
.
GetTurnCount
()
)
e1
:
SetLabelObject
(
re
)
if
Duel
.
GetCurrentPhase
()
<=
PHASE_STANDBY
then
e1
:
SetReset
(
RESET_PHASE
+
PHASE_STANDBY
,
2
)
else
e1
:
SetReset
(
RESET_PHASE
+
PHASE_STANDBY
)
end
e1
:
SetCondition
(
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
fid
,
ftgpy
,
ftgpr
,
tlabel1
,
tlabel2
,
tlabel3
,
turn
=
e
:
GetLabel
()
return
Duel
.
GetTurnCount
()
~=
turn
end
)
e1
:
SetTarget
(
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
local
fe
=
e
:
GetLabelObject
()
local
f
tg
=
fe
:
GetTarget
()
local
fe
=
e
:
GetLabelObject
()
local
f
id
,
ftgpy
,
ftgpr
=
e
:
GetLabel
()
if
chkc
then
return
true
end
if
chk
==
0
then
return
not
fe
:
IsHasCategory
(
CATEGORY_DISABLE_SUMMON
)
end
e
:
GetHandler
():
CreateEffectRelation
(
e
)
if
fe
:
IsHasProperty
(
EFFECT_FLAG_CARD_TARGET
)
then
e
:
SetProperty
(
EFFECT_FLAG_CARD_TARGET
)
local
fg
=
Duel
.
GetFieldGroup
(
tp
,
0xff
,
0xff
):
Filter
(
s
.
cfilter
,
nil
,
e
:
GetLabel
())
--因为SetLabelObject只能有一个所以采用了这个笨方法来记录对象
if
fg
then
Duel
.
SetTargetCard
(
fg
)
local
tc
=
fg
:
GetFirst
()
while
tc
do
tc
:
CreateEffectRelation
(
e
)
tc
=
fg
:
GetNext
()
end
if
chk
==
0
then
local
ftg
=
fe
:
GetTarget
()
local
r1
,
r2
=
true
if
ftg
then
local
e1
=
Effect
.
CreateEffect
(
e
:
GetLabelObject
():
GetHandler
())
e1
:
SetType
(
EFFECT_TYPE_ACTIVATE
)
r1
=
ftg
(
e1
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
,
false
)
local
e2
=
Effect
.
CreateEffect
(
e
:
GetLabelObject
():
GetHandler
())
r2
=
ftg
(
e2
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
0
,
false
)
end
--防连锁素材的”这张卡的发动回合“效果
--总之连锁素材能防
return
r1
==
r2
and
not
fe
:
IsHasCategory
(
CATEGORY_DISABLE_SUMMON
)
end
if
ftg
then
ftg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
e
:
GetHandler
():
CreateEffectRelation
(
e
)
local
fg
=
Duel
.
GetFieldGroup
(
tp
,
0xff
,
0xff
):
Filter
(
s
.
cfilter
,
nil
,
fid
)
--因为SetLabelObject只能有一个所以采用了这个笨方法来记录对象
if
fg
then
Duel
.
SetTargetCard
(
fg
)
local
tc
=
fg
:
GetFirst
()
while
tc
do
tc
:
CreateEffectRelation
(
e
)
tc
=
fg
:
GetNext
()
end
end
--谢谢黑莲哥谢谢黑莲哥
Duel
.
SetTargetPlayer
(
ftgpy
)
Duel
.
SetTargetParam
(
ftgpr
)
end
)
e1
:
SetOperation
(
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
e
:
Reset
()
local
fe
=
e
:
GetLabelObject
()
for
i
,
value
in
ipairs
(
distable
)
do
if
value
==
fe
then
table.remove
(
distable
,
i
)
return
end
end
local
fid
,
ftgpy
,
ftgpr
,
tlabel1
,
tlabel2
,
tlabel3
=
e
:
GetLabel
()
for
i
=
9
,
13
do
Duel
.
Hint
(
HINT_CARD
,
0
,
id
+
i
)
end
local
fe
=
e
:
GetLabelObject
()
if
e
:
GetHandler
():
IsType
(
TYPE_EQUIP
+
TYPE_CONTINUOUS
+
TYPE_FIELD
)
and
fe
:
IsHasType
(
EFFECT_TYPE_ACTIVATE
)
then
return
end
e
:
SetLabel
(
tlabel1
,
tlabel2
,
tlabel3
)
local
tlbo
=
getlbo
(
fe
)
--把原来的labelobject塞回去
if
tlbo
~=
nil
then
e
:
SetLabelObject
(
tlbo
)
end
local
fop
=
fe
:
GetOperation
()
fop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
end
)
Duel
.
RegisterEffect
(
e1
,
p
)
Duel
.
ChangeChainOperation
(
ev
,
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
end
)
end
function
getlbo
(
e
)
for
i
,
value
in
ipairs
(
effectable
)
do
if
value
[
1
]
==
e
then
local
tlbo
=
value
[
2
]
table.remove
(
effectable
,
i
)
return
tlbo
end
end
return
nil
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