Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
P
pre-release-database-cdb
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
Crescent/毛虫
pre-release-database-cdb
Commits
6a3fbca0
Commit
6a3fbca0
authored
Sep 11, 2024
by
fallenstardust
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix 重融合
parent
ad19f93c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
13 deletions
+25
-13
script/c100226150.lua
script/c100226150.lua
+25
-13
No files found.
script/c100226150.lua
View file @
6a3fbca0
...
...
@@ -12,9 +12,14 @@ function s.initial_effect(c)
c
:
RegisterEffect
(
e1
)
end
s
.
fusion_effect
=
true
function
s
.
fcheck
(
tp
,
sg
,
fc
)
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_MZONE
)
return
#
sg
>=
3
and
sg
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
)
<=
ct
function
s
.
fcheck
(
ct
)
return
function
(
tp
,
sg
,
fc
)
if
ct
>
0
and
sg
:
FilterCount
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
)
>
ct
then
return
false
end
return
#
sg
>=
3
end
end
function
s
.
filter0
(
c
)
return
c
:
IsType
(
TYPE_MONSTER
)
and
c
:
IsCanBeFusionMaterial
()
and
c
:
IsAbleToRemove
()
...
...
@@ -27,11 +32,14 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if
chk
==
0
then
local
chkf
=
tp
local
mg
=
Duel
.
GetFusionMaterial
(
tp
):
Filter
(
aux
.
NOT
(
Card
.
IsImmuneToEffect
),
nil
,
e
)
local
mg2
=
Duel
.
GetMatchingGroup
(
s
.
filter0
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
if
mg2
:
GetCount
()
>
0
then
mg
:
Merge
(
mg2
)
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_MZONE
)
if
ct
>
0
then
local
mg2
=
Duel
.
GetMatchingGroup
(
s
.
filter0
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
if
mg2
:
GetCount
()
>
0
then
mg
:
Merge
(
mg2
)
end
end
aux
.
FGoalCheckAdditional
=
s
.
fcheck
aux
.
FGoalCheckAdditional
=
s
.
fcheck
(
ct
)
local
res
=
Duel
.
IsExistingMatchingCard
(
s
.
filter2
,
tp
,
LOCATION_EXTRA
,
0
,
1
,
nil
,
e
,
tp
,
mg
,
nil
,
chkf
)
aux
.
FGoalCheckAdditional
=
nil
if
not
res
then
...
...
@@ -49,11 +57,14 @@ end
function
s
.
activate
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
chkf
=
tp
local
mg1
=
Duel
.
GetFusionMaterial
(
tp
):
Filter
(
aux
.
NOT
(
Card
.
IsImmuneToEffect
),
nil
,
e
)
local
mg2
=
Duel
.
GetMatchingGroup
(
s
.
filter0
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
if
mg2
:
GetCount
()
>
0
then
mg1
:
Merge
(
mg2
)
local
ct
=
Duel
.
GetFieldGroupCount
(
tp
,
0
,
LOCATION_MZONE
)
if
ct
>
0
then
local
mg2
=
Duel
.
GetMatchingGroup
(
s
.
filter0
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
if
mg2
:
GetCount
()
>
0
then
mg1
:
Merge
(
mg2
)
end
end
aux
.
FGoalCheckAdditional
=
s
.
fcheck
aux
.
FGoalCheckAdditional
=
s
.
fcheck
(
ct
)
local
sg1
=
Duel
.
GetMatchingGroup
(
s
.
filter2
,
tp
,
LOCATION_EXTRA
,
0
,
nil
,
e
,
tp
,
mg1
,
nil
,
chkf
)
aux
.
FGoalCheckAdditional
=
nil
local
mg2
=
nil
...
...
@@ -81,13 +92,12 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SendtoGrave
(
mat1
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
)
Duel
.
Remove
(
rg
,
POS_FACEUP
,
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
)
Duel
.
BreakEffect
()
Duel
.
SpecialSummon
(
tc
,
SUMMON_TYPE_FUSION
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
Duel
.
SpecialSummon
Step
(
tc
,
SUMMON_TYPE_FUSION
,
tp
,
tp
,
false
,
false
,
POS_FACEUP
)
elseif
ce
then
local
mat2
=
Duel
.
SelectFusionMaterial
(
tp
,
tc
,
mg2
,
nil
,
chkf
)
local
fop
=
ce
:
GetOperation
()
fop
(
ce
,
e
,
tp
,
tc
,
mat2
)
end
tc
:
CompleteProcedure
()
local
exmat
=
tc
:
GetMaterial
():
Filter
(
Card
.
IsPreviousLocation
,
nil
,
LOCATION_EXTRA
)
if
#
exmat
>
0
then
local
dam
=
exmat
:
GetSum
(
Card
.
GetAttack
)
...
...
@@ -98,4 +108,6 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
Duel
.
SetLP
(
tp
,
0
)
end
end
Duel
.
SpecialSummonComplete
()
tc
:
CompleteProcedure
()
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