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
4
Merge Requests
4
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
aad48c7b
Commit
aad48c7b
authored
Nov 02, 2025
by
wind2009
1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove FusionSpell.GetFusionMaterial, FusionSpell.IsCanBeFusionMaterial
parent
bd1c7ef1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
46 deletions
+5
-46
procedure.lua
procedure.lua
+5
-46
No files found.
procedure.lua
View file @
aad48c7b
...
...
@@ -895,7 +895,7 @@ function Auxiliary.FOperationMix(insf,sub,...)
end
function
Auxiliary
.
FConditionFilterMix
(
c
,
fc
,
sub
,
notfusion
,
...
)
local
check_type
=
notfusion
and
SUMMON_TYPE_SPECIAL
or
SUMMON_TYPE_FUSION
if
not
FusionSpell
.
IsCanBeFusionMaterial
(
c
,
fc
,
check_type
)
then
return
false
end
if
not
c
:
IsCanBeFusionMaterial
(
fc
,
check_type
)
then
return
false
end
for
i
,
f
in
ipairs
({
...
})
do
if
f
(
c
,
fc
,
sub
)
then
return
true
end
end
...
...
@@ -1291,7 +1291,7 @@ end
--Fusion Summon Effect
function
Auxiliary
.
FMaterialFilter
(
c
,
e
,
tp
)
return
FusionSpell
.
IsCanBeFusionMaterial
(
c
)
return
c
:
IsCanBeFusionMaterial
(
)
end
function
Auxiliary
.
FMaterialRemoveFilter
(
c
,
e
,
tp
)
return
c
:
IsAbleToRemove
()
...
...
@@ -1562,7 +1562,7 @@ function Auxiliary.AddContactFusionProcedure(c,filter,self_location,opponent_loc
return
e2
end
function
Auxiliary
.
ContactFusionMaterialFilter
(
c
,
fc
,
filter
)
return
FusionSpell
.
IsCanBeFusionMaterial
(
c
,
fc
,
SUMMON_TYPE_SPECIAL
)
and
(
not
filter
or
filter
(
c
,
fc
))
return
c
:
IsCanBeFusionMaterial
(
fc
,
SUMMON_TYPE_SPECIAL
)
and
(
not
filter
or
filter
(
c
,
fc
))
end
function
Auxiliary
.
ContactFusionCondition
(
filter
,
self_location
,
opponent_location
)
return
function
(
e
,
c
)
...
...
@@ -2256,45 +2256,6 @@ FusionSpell = {}
--- Whether skip the location count check, default false, used for 叛逆の堕天使, only works for cost/target function
--- @field skip_location_count_check? boolean
--- Add LOCATION_EXTRA and opponent mzone to EFFECT_EXTRA_FUSION_MATERIAL list, remove once core updated
function
FusionSpell
.
GetFusionMaterial
(
tp
,
locations
)
local
res
=
Duel
.
GetFusionMaterial
(
tp
,
locations
)
local
g_from_extra
=
Duel
.
GetMatchingGroup
(
Card
.
IsHasEffect
,
tp
,
LOCATION_EXTRA
,
0
,
nil
,
EFFECT_EXTRA_FUSION_MATERIAL
)
if
#
g_from_extra
>
0
then
res
:
Merge
(
g_from_extra
)
end
local
g_from_opponent_field
=
Duel
.
GetMatchingGroup
(
Card
.
IsHasEffect
,
tp
,
0
,
LOCATION_ONFIELD
,
nil
,
EFFECT_EXTRA_FUSION_MATERIAL
)
if
#
g_from_opponent_field
>
0
then
res
:
Merge
(
g_from_opponent_field
)
end
return
res
end
--- Workaround for IsCanBeFusionMaterial, remove once core fixes
--- @param c Card
--- @param tc Card
--- @param sumtype? integer
function
FusionSpell
.
IsCanBeFusionMaterial
(
c
,
tc
,
sumtype
)
sumtype
=
sumtype
or
SUMMON_TYPE_FUSION
--- Prohibition will prevent card to be fusion material
if
c
:
IsForbidden
()
==
true
then
return
false
end
local
can_not_be_fusion_material_effects
=
{
c
:
IsHasEffect
(
EFFECT_CANNOT_BE_FUSION_MATERIAL
)}
for
_
,
effect
in
ipairs
(
can_not_be_fusion_material_effects
)
do
local
value
=
effect
:
GetValue
()
if
value
~=
nil
then
if
type
(
value
)
==
'function'
and
value
(
effect
,
tc
,
sumtype
)
==
true
then
return
false
elseif
value
==
1
or
value
==
true
then
return
false
end
end
end
return
true
end
--- Get possible materials from opponent locations, must be face-up
function
FusionSpell
.
GetFusionMaterialFromOpponentLocation
(
tp
,
locations
)
return
Duel
.
GetMatchingGroup
(
Card
.
IsFaceupEx
,
tp
,
0
,
locations
,
nil
)
...
...
@@ -2813,7 +2774,7 @@ function FusionSpell.GetMaterialsGroupForTargetCard(
fusion_spell_matfilter
)
local
all_locations
=
FusionSpell
.
GetAllLocationsForTargetCard
(
tc
,
tp
,
pre_select_mat_location
,
post_select_mat_location
)
local
mg
=
FusionSpel
l
.
GetFusionMaterial
(
tp
,
all_locations
)
local
mg
=
Due
l
.
GetFusionMaterial
(
tp
,
all_locations
)
local
calculated_mat_opponent_location
=
FusionSpell
.
GetAllLocationsForTargetCard
(
tc
,
tp
,
pre_select_mat_opponent_location
,
post_select_mat_opponent_location
)
local
opponent_mg
=
FusionSpell
.
GetFusionMaterialFromOpponentLocation
(
tp
,
calculated_mat_opponent_location
)
if
#
opponent_mg
>
0
then
...
...
@@ -2828,9 +2789,7 @@ function FusionSpell.GetMaterialsGroupForTargetCard(
mg
=
mg
:
Filter
(
function
(
c
)
return
not
(
c
:
IsLocation
(
LOCATION_REMOVED
)
and
c
:
IsFacedown
())
end
,
nil
)
--- filter out card can not be material
--- comment out, currently core can not return correct value if affected by EFFECT_EXTRA_FUSION_MATERIAL.
--mg=mg:Filter(Card.IsCanBeFusionMaterial,nil,tc,sumtype)
--- workaround until core fixes
mg
=
mg
:
Filter
(
function
(
mc
)
return
FusionSpell
.
IsCanBeFusionMaterial
(
mc
,
tc
,
sumtype
)
end
,
nil
)
mg
=
mg
:
Filter
(
Card
.
IsCanBeFusionMaterial
,
nil
,
tc
,
sumtype
)
--- a material must come from at least one source, either from fusion spell or EXTRA_FUSION_MATERIAL
mg
=
mg
:
Filter
(
function
(
mc
)
local
effects
=
FusionSpell
.
GetMaterialEffects
(
mc
,
tp
,
tc
,
pre_select_mat_location
,
post_select_mat_location
,
pre_select_mat_opponent_location
,
post_select_mat_opponent_location
,
fusion_spell_matfilter
,
e
,
mat_operation_code_map
)
...
...
wind2009
@wind2009
mentioned in commit
f3d39397
·
Dec 08, 2025
mentioned in commit
f3d39397
mentioned in commit f3d393972d698cd0626837de23cd1bc69c50c8d4
Toggle commit list
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