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
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
Vee4
ygopro-scripts-888
Commits
c82a765b
Commit
c82a765b
authored
Jul 11, 2022
by
mercury233
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix aux.fus_mat_hack_check
parent
3d2e5726
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
29 additions
and
12 deletions
+29
-12
c5370235.lua
c5370235.lua
+11
-4
c72064891.lua
c72064891.lua
+10
-3
c86758746.lua
c86758746.lua
+8
-5
No files found.
c5370235.lua
View file @
c82a765b
...
@@ -23,24 +23,31 @@ function c5370235.initial_effect(c)
...
@@ -23,24 +23,31 @@ function c5370235.initial_effect(c)
e2
:
SetTarget
(
c5370235
.
tgtg
)
e2
:
SetTarget
(
c5370235
.
tgtg
)
e2
:
SetOperation
(
c5370235
.
tgop
)
e2
:
SetOperation
(
c5370235
.
tgop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--
--
workaround
if
not
aux
.
fus_mat_hack_check
then
if
not
aux
.
fus_mat_hack_check
then
aux
.
fus_mat_hack_check
=
true
aux
.
fus_mat_hack_check
=
true
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
end
end
_GetFusionMaterial
=
Duel
.
GetFusionMaterial
function
Duel
.
GetFusionMaterial
(
tp
,
loc
)
if
loc
==
nil
then
loc
=
LOCATION_HAND
+
LOCATION_MZONE
end
local
g
=
_GetFusionMaterial
(
tp
,
loc
)
local
exg
=
Duel
.
GetMatchingGroup
(
aux
.
fus_mat_hack_exmat_filter
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
return
g
+
exg
end
_SendtoGrave
=
Duel
.
SendtoGrave
_SendtoGrave
=
Duel
.
SendtoGrave
function
Duel
.
SendtoGrave
(
tg
,
reason
)
function
Duel
.
SendtoGrave
(
tg
,
reason
)
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
return
_SendtoGrave
(
tg
,
reason
)
return
_SendtoGrave
(
tg
,
reason
)
end
end
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
local
tc
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
+
LOCATION_GRAVE
):
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
tg
:
Sub
(
rg
)
local
tc
=
rg
:
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
if
tc
then
if
tc
then
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
end
end
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
tg
:
Sub
(
rg
)
local
ct1
=
_SendtoGrave
(
tg
,
reason
)
local
ct1
=
_SendtoGrave
(
tg
,
reason
)
local
ct2
=
Duel
.
Remove
(
rg
,
POS_FACEUP
,
reason
)
local
ct2
=
Duel
.
Remove
(
rg
,
POS_FACEUP
,
reason
)
return
ct1
+
ct2
return
ct1
+
ct2
...
...
c72064891.lua
View file @
c82a765b
...
@@ -32,18 +32,25 @@ function c72064891.initial_effect(c)
...
@@ -32,18 +32,25 @@ function c72064891.initial_effect(c)
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
end
end
_GetFusionMaterial
=
Duel
.
GetFusionMaterial
function
Duel
.
GetFusionMaterial
(
tp
,
loc
)
if
loc
==
nil
then
loc
=
LOCATION_HAND
+
LOCATION_MZONE
end
local
g
=
_GetFusionMaterial
(
tp
,
loc
)
local
exg
=
Duel
.
GetMatchingGroup
(
aux
.
fus_mat_hack_exmat_filter
,
tp
,
LOCATION_EXTRA
,
0
,
nil
)
return
g
+
exg
end
_SendtoGrave
=
Duel
.
SendtoGrave
_SendtoGrave
=
Duel
.
SendtoGrave
function
Duel
.
SendtoGrave
(
tg
,
reason
)
function
Duel
.
SendtoGrave
(
tg
,
reason
)
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
return
_SendtoGrave
(
tg
,
reason
)
return
_SendtoGrave
(
tg
,
reason
)
end
end
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
local
tc
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
+
LOCATION_GRAVE
):
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
tg
:
Sub
(
rg
)
local
tc
=
rg
:
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
if
tc
then
if
tc
then
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
end
end
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
tg
:
Sub
(
rg
)
local
ct1
=
_SendtoGrave
(
tg
,
reason
)
local
ct1
=
_SendtoGrave
(
tg
,
reason
)
local
ct2
=
Duel
.
Remove
(
rg
,
POS_FACEUP
,
reason
)
local
ct2
=
Duel
.
Remove
(
rg
,
POS_FACEUP
,
reason
)
return
ct1
+
ct2
return
ct1
+
ct2
...
...
c86758746.lua
View file @
c82a765b
...
@@ -23,8 +23,8 @@ function s.initial_effect(c)
...
@@ -23,8 +23,8 @@ function s.initial_effect(c)
e2
:
SetOperation
(
s
.
fusop
)
e2
:
SetOperation
(
s
.
fusop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
--workaround
--workaround
if
not
aux
.
fus_mat_hack_check
2
then
if
not
aux
.
fus_mat_hack_check
then
aux
.
fus_mat_hack_check
2
=
true
aux
.
fus_mat_hack_check
=
true
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
function
aux
.
fus_mat_hack_exmat_filter
(
c
)
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
return
c
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
c
:
GetControler
())
end
end
...
@@ -40,13 +40,16 @@ function s.initial_effect(c)
...
@@ -40,13 +40,16 @@ function s.initial_effect(c)
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
if
reason
~=
REASON_EFFECT
+
REASON_MATERIAL
+
REASON_FUSION
or
aux
.
GetValueType
(
tg
)
~=
"Group"
then
return
_SendtoGrave
(
tg
,
reason
)
return
_SendtoGrave
(
tg
,
reason
)
end
end
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
)
local
tc
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_EXTRA
+
LOCATION_GRAVE
):
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
local
tc
=
rg
:
Filter
(
aux
.
fus_mat_hack_exmat_filter
,
nil
):
GetFirst
()
if
tc
then
if
tc
then
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
local
te
=
tc
:
IsHasEffect
(
EFFECT_EXTRA_FUSION_MATERIAL
,
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
te
:
UseCountLimit
(
tc
:
GetControler
())
end
end
return
_SendtoGrave
(
tg
,
reason
)
local
rg
=
tg
:
Filter
(
Card
.
IsLocation
,
nil
,
LOCATION_GRAVE
)
tg
:
Sub
(
rg
)
local
ct1
=
_SendtoGrave
(
tg
,
reason
)
local
ct2
=
Duel
.
Remove
(
rg
,
POS_FACEUP
,
reason
)
return
ct1
+
ct2
end
end
end
end
end
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