Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-scripts-888
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
3
Merge Requests
3
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
MyCard
ygopro-scripts-888
Commits
79c7b5cd
Commit
79c7b5cd
authored
Mar 16, 2025
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Revert "add AddFusionProcUltimate (#2852)"
screw it This reverts commit
84b54d39
.
parent
e34e16d2
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
344 additions
and
374 deletions
+344
-374
c93053159.lua
c93053159.lua
+79
-23
procedure.lua
procedure.lua
+265
-351
No files found.
c93053159.lua
View file @
79c7b5cd
--白の枢機竜
--白の枢機竜
local
s
,
id
,
o
=
GetID
()
local
s
,
id
,
o
=
GetID
()
function
s
.
initial_effect
(
c
)
function
s
.
initial_effect
(
c
)
aux
.
AddFusionProcCodeFun
(
c
,
68468459
,
s
.
mfilter
,
6
,
true
,
true
)
aux
.
AddCodeList
(
c
,
68468459
)
aux
.
AddMaterialCodeList
(
c
,
68468459
)
--aux.AddFusionProcCodeFun(c,68468459,s.mfilter,6,true,true)
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetProperty
(
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e0
:
SetCode
(
EFFECT_FUSION_MATERIAL
)
e0
:
SetCondition
(
s
.
Alba_System_Drugmata_Fusion_Condition
())
e0
:
SetOperation
(
s
.
Alba_System_Drugmata_Fusion_Operation
())
c
:
RegisterEffect
(
e0
)
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetType
(
EFFECT_TYPE_SINGLE
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
e1
:
SetProperty
(
EFFECT_FLAG_SINGLE_RANGE
+
EFFECT_FLAG_CANNOT_DISABLE
+
EFFECT_FLAG_UNCOPYABLE
)
...
@@ -36,32 +45,79 @@ end
...
@@ -36,32 +45,79 @@ end
function
s
.
splimit
(
e
,
se
,
sp
,
st
)
function
s
.
splimit
(
e
,
se
,
sp
,
st
)
return
bit
.
band
(
st
,
SUMMON_TYPE_FUSION
)
==
SUMMON_TYPE_FUSION
return
bit
.
band
(
st
,
SUMMON_TYPE_FUSION
)
==
SUMMON_TYPE_FUSION
end
end
function
s
.
samecheck
(
c
,
sg
)
function
s
.
Alba_System_Drugmata_Fusion_Filter
(
c
,
mg
,
fc
,
tp
,
chkf
,
gc
)
local
fuscodes
=
{
c
:
GetFusionCode
()}
if
not
c
:
IsFusionCode
(
68468459
)
and
not
c
:
IsHasEffect
(
EFFECT_FUSION_SUBSTITUTE
)
then
return
false
end
for
_
,
code
in
ipairs
(
fuscodes
)
do
local
g
=
mg
:
Filter
(
s
.
matfilter
,
c
,
tp
)
if
not
sg
:
IsExists
(
Card
.
IsCode
,
1
,
nil
,
code
)
then
return
true
end
aux
.
GCheckAdditional
=
aux
.
dncheck
end
local
res
=
g
:
CheckSubGroup
(
s
.
Alba_System_Drugmata_Fusion_Gcheck
,
6
,
6
,
fc
,
tp
,
c
,
chkf
,
gc
)
return
false
aux
.
GCheckAdditional
=
nil
return
res
end
end
function
s
.
m
igfilter
(
c
,
fc
)
function
s
.
m
atfilter
(
c
,
tp
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsControler
(
fc
:
GetControler
()
)
return
c
:
IsLocation
(
LOCATION_GRAVE
)
and
c
:
IsControler
(
tp
)
and
not
c
:
IsHasEffect
(
6205579
)
end
end
function
s
.
Alba_System_Drugmata_Fusion_Gcheck
(
g
,
fc
,
tp
,
ec
,
chkf
,
gc
)
if
not
s
.
abs_list
then
local
sg
=
g
:
Clone
()
s
.
abs_list
=
{}
sg
:
AddCard
(
ec
)
if
sg
:
IsExists
(
aux
.
TuneMagicianCheckX
,
1
,
nil
,
sg
,
EFFECT_TUNE_MAGICIAN_F
)
then
return
false
end
if
gc
and
not
sg
:
IsContains
(
gc
)
then
return
false
end
if
aux
.
FCheckAdditional
and
not
aux
.
FCheckAdditional
(
tp
,
sg
,
fc
)
or
aux
.
FGoalCheckAdditional
and
not
aux
.
FGoalCheckAdditional
(
tp
,
sg
,
fc
)
then
return
false
end
return
g
:
GetClassCount
(
Card
.
GetFusionCode
)
==
g
:
GetCount
()
and
(
chkf
==
PLAYER_NONE
or
Duel
.
GetLocationCountFromEx
(
tp
,
tp
,
sg
,
fc
)
>
0
)
end
end
function
s
.
Alba_System_Drugmata_Fusion_Condition
()
function
s
.
mfilter
(
c
,
fc
,
sub
,
mg
,
sg
)
return
function
(
e
,
g
,
gc
,
chkf
)
if
not
s
.
migfilter
(
c
,
fc
)
then
return
false
end
if
g
==
nil
then
return
aux
.
MustMaterialCheck
(
nil
,
e
:
GetHandlerPlayer
(),
EFFECT_MUST_BE_FMATERIAL
)
end
if
sg
then
local
fc
=
e
:
GetHandler
()
if
#
sg
==
0
then
return
false
end
-- must select at 2nd place, to determine which one is abs
local
tp
=
e
:
GetHandlerPlayer
()
if
#
sg
==
1
then
if
gc
then
s
.
abs_list
[
fc
]
=
sg
:
GetFirst
()
if
not
g
:
IsContains
(
gc
)
then
return
false
end
return
true
return
g
:
IsExists
(
s
.
Alba_System_Drugmata_Fusion_Filter
,
1
,
nil
,
g
,
fc
,
tp
,
chkf
,
gc
)
end
return
g
:
IsExists
(
s
.
Alba_System_Drugmata_Fusion_Filter
,
1
,
nil
,
g
,
fc
,
tp
,
chkf
,
nil
)
end
end
function
s
.
Alba_System_Drugmata_Fusion_Operation
()
return
function
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
gc
,
chkf
)
local
fc
=
e
:
GetHandler
()
local
tp
=
e
:
GetHandlerPlayer
()
local
fg
=
eg
:
Clone
()
local
g
=
nil
local
sg
=
nil
while
not
sg
do
if
g
then
fg
:
AddCard
(
g
:
GetFirst
())
end
if
gc
then
if
s
.
Alba_System_Drugmata_Fusion_Filter
(
gc
,
fg
,
fc
,
tp
,
chkf
)
then
g
=
Group
.
FromCards
(
gc
)
fg
:
RemoveCard
(
gc
)
local
mg
=
fg
:
Filter
(
s
.
matfilter
,
fc
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
sg
=
mg
:
SelectSubGroup
(
tp
,
s
.
Alba_System_Drugmata_Fusion_Gcheck
,
false
,
6
,
6
,
fc
,
tp
,
g
:
GetFirst
(),
chkf
,
gc
)
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g
=
fg
:
FilterSelect
(
tp
,
s
.
Alba_System_Drugmata_Fusion_Filter
,
1
,
1
,
nil
,
fg
,
fc
,
tp
,
chkf
,
gc
)
fg
:
Sub
(
g
)
local
mg
=
fg
:
Filter
(
s
.
matfilter
,
fc
,
tp
)
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
sg
=
mg
:
SelectSubGroup
(
tp
,
s
.
Alba_System_Drugmata_Fusion_Gcheck
,
true
,
6
,
6
,
fc
,
tp
,
g
:
GetFirst
(),
chkf
,
gc
)
end
else
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
g
=
fg
:
FilterSelect
(
tp
,
s
.
Alba_System_Drugmata_Fusion_Filter
,
1
,
1
,
nil
,
fg
,
fc
,
tp
,
chkf
,
nil
)
fg
:
Sub
(
g
)
local
mg
=
fg
:
Filter
(
s
.
matfilter
,
fc
,
tp
)
aux
.
GCheckAdditional
=
aux
.
dncheck
Duel
.
Hint
(
HINT_SELECTMSG
,
tp
,
HINTMSG_FMATERIAL
)
sg
=
mg
:
SelectSubGroup
(
tp
,
s
.
Alba_System_Drugmata_Fusion_Gcheck
,
true
,
6
,
6
,
fc
,
tp
,
g
:
GetFirst
(),
chkf
)
aux
.
GCheckAdditional
=
nil
end
end
g
:
Merge
(
sg
)
Duel
.
SetFusionMaterial
(
g
)
end
end
return
s
.
samecheck
(
c
,
sg
-
s
.
abs_list
[
fc
])
end
return
true
end
end
function
s
.
costfilter
(
c
)
function
s
.
costfilter
(
c
)
return
c
:
IsAbleToGraveAsCost
()
return
c
:
IsAbleToGraveAsCost
()
...
...
procedure.lua
View file @
79c7b5cd
This diff is collapsed.
Click to expand it.
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