Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-scripts
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
八宫一月
ygopro-scripts
Commits
e2eda631
Commit
e2eda631
authored
Aug 17, 2020
by
mercury233
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update souten effect monster material check
parent
90b593df
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
64 additions
and
15 deletions
+64
-15
c33026283.lua
c33026283.lua
+12
-0
c60237530.lua
c60237530.lua
+13
-2
c7631534.lua
c7631534.lua
+13
-2
c85360035.lua
c85360035.lua
+26
-11
No files found.
c33026283.lua
View file @
e2eda631
...
@@ -3,6 +3,12 @@ function c33026283.initial_effect(c)
...
@@ -3,6 +3,12 @@ function c33026283.initial_effect(c)
--fusion material
--fusion material
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
aux
.
AddFusionProcCodeFun
(
c
,
85360035
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
,
false
)
aux
.
AddFusionProcCodeFun
(
c
,
85360035
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
,
false
)
--effect monster material check
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_MATERIAL_CHECK
)
e0
:
SetValue
(
c33026283
.
matcheck
)
c
:
RegisterEffect
(
e0
)
--actlimit
--actlimit
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
)
...
@@ -38,6 +44,12 @@ function c33026283.initial_effect(c)
...
@@ -38,6 +44,12 @@ function c33026283.initial_effect(c)
e3
:
SetOperation
(
c33026283
.
disop
)
e3
:
SetOperation
(
c33026283
.
disop
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
end
end
function
c33026283
.
matcheck
(
e
,
c
)
local
g
=
c
:
GetMaterial
()
if
g
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
then
c
:
RegisterFlagEffect
(
85360035
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TOFIELD
,
0
,
1
)
end
end
function
c33026283
.
actcon
(
e
)
function
c33026283
.
actcon
(
e
)
return
Duel
.
GetAttacker
()
==
e
:
GetHandler
()
or
Duel
.
GetAttackTarget
()
==
e
:
GetHandler
()
return
Duel
.
GetAttacker
()
==
e
:
GetHandler
()
or
Duel
.
GetAttackTarget
()
==
e
:
GetHandler
()
end
end
...
...
c60237530.lua
View file @
e2eda631
...
@@ -3,6 +3,12 @@ function c60237530.initial_effect(c)
...
@@ -3,6 +3,12 @@ function c60237530.initial_effect(c)
--fusion material
--fusion material
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
aux
.
AddFusionProcFunRep
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
)
aux
.
AddFusionProcFunRep
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
)
--effect monster material check
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_MATERIAL_CHECK
)
e0
:
SetValue
(
c60237530
.
matcheck
)
c
:
RegisterEffect
(
e0
)
--destroy
--destroy
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetDescription
(
aux
.
Stringid
(
60237530
,
0
))
e1
:
SetDescription
(
aux
.
Stringid
(
60237530
,
0
))
...
@@ -28,6 +34,12 @@ function c60237530.initial_effect(c)
...
@@ -28,6 +34,12 @@ function c60237530.initial_effect(c)
e3
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
e3
:
SetCode
(
EFFECT_UPDATE_DEFENSE
)
c
:
RegisterEffect
(
e3
)
c
:
RegisterEffect
(
e3
)
end
end
function
c60237530
.
matcheck
(
e
,
c
)
local
g
=
c
:
GetMaterial
()
if
g
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
then
c
:
RegisterFlagEffect
(
85360035
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TOFIELD
,
0
,
1
)
end
end
function
c60237530
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
function
c60237530
.
target
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
,
chkc
)
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAttackPos
()
end
if
chkc
then
return
chkc
:
IsLocation
(
LOCATION_MZONE
)
and
chkc
:
IsControler
(
1
-
tp
)
and
chkc
:
IsAttackPos
()
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAttackPos
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
if
chk
==
0
then
return
Duel
.
IsExistingTarget
(
Card
.
IsAttackPos
,
tp
,
0
,
LOCATION_MZONE
,
1
,
nil
)
end
...
@@ -51,8 +63,7 @@ function c60237530.ffilter(e,c)
...
@@ -51,8 +63,7 @@ function c60237530.ffilter(e,c)
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
end
end
function
c60237530
.
fmfilter
(
c
)
function
c60237530
.
fmfilter
(
c
)
local
mg
=
c
:
GetMaterial
()
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsFaceup
()
and
c
:
GetFlagEffect
(
85360035
)
~=
0
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsFaceup
()
and
mg
and
mg
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
end
end
function
c60237530
.
adcon
(
e
)
function
c60237530
.
adcon
(
e
)
local
tp
=
e
:
GetHandlerPlayer
()
local
tp
=
e
:
GetHandlerPlayer
()
...
...
c7631534.lua
View file @
e2eda631
...
@@ -3,6 +3,12 @@ function c7631534.initial_effect(c)
...
@@ -3,6 +3,12 @@ function c7631534.initial_effect(c)
--fusion material
--fusion material
c
:
EnableReviveLimit
()
c
:
EnableReviveLimit
()
aux
.
AddFusionProcFunRep
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
)
aux
.
AddFusionProcFunRep
(
c
,
aux
.
FilterBoolFunction
(
Card
.
IsFusionSetCard
,
0x14f
),
2
,
true
)
--effect monster material check
local
e0
=
Effect
.
CreateEffect
(
c
)
e0
:
SetType
(
EFFECT_TYPE_SINGLE
)
e0
:
SetCode
(
EFFECT_MATERIAL_CHECK
)
e0
:
SetValue
(
c7631534
.
matcheck
)
c
:
RegisterEffect
(
e0
)
--destroy replace
--destroy replace
local
e1
=
Effect
.
CreateEffect
(
c
)
local
e1
=
Effect
.
CreateEffect
(
c
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
e1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
...
@@ -27,6 +33,12 @@ function c7631534.initial_effect(c)
...
@@ -27,6 +33,12 @@ function c7631534.initial_effect(c)
e2
:
SetOperation
(
c7631534
.
disop
)
e2
:
SetOperation
(
c7631534
.
disop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
end
end
function
c7631534
.
matcheck
(
e
,
c
)
local
g
=
c
:
GetMaterial
()
if
g
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
then
c
:
RegisterFlagEffect
(
85360035
,
RESET_EVENT
+
RESETS_STANDARD
-
RESET_TOFIELD
,
0
,
1
)
end
end
function
c7631534
.
repfilter
(
c
,
tp
)
function
c7631534
.
repfilter
(
c
,
tp
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsControler
(
tp
)
and
c
:
IsLocation
(
LOCATION_MZONE
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsControler
(
tp
)
and
c
:
IsLocation
(
LOCATION_MZONE
)
and
c
:
IsReason
(
REASON_EFFECT
)
and
not
c
:
IsReason
(
REASON_REPLACE
)
and
c
:
IsReason
(
REASON_EFFECT
)
and
not
c
:
IsReason
(
REASON_REPLACE
)
...
@@ -57,8 +69,7 @@ function c7631534.repop(e,tp,eg,ep,ev,re,r,rp)
...
@@ -57,8 +69,7 @@ function c7631534.repop(e,tp,eg,ep,ev,re,r,rp)
Duel
.
Destroy
(
tc
,
REASON_EFFECT
+
REASON_REPLACE
)
Duel
.
Destroy
(
tc
,
REASON_EFFECT
+
REASON_REPLACE
)
end
end
function
c7631534
.
fmfilter
(
c
)
function
c7631534
.
fmfilter
(
c
)
local
mg
=
c
:
GetMaterial
()
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsFaceup
()
and
c
:
GetFlagEffect
(
85360035
)
~=
0
return
c
:
IsType
(
TYPE_FUSION
)
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsFaceup
()
and
mg
and
mg
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
end
end
function
c7631534
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
function
c7631534
.
discon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
(
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
)
return
(
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN1
or
Duel
.
GetCurrentPhase
()
==
PHASE_MAIN2
)
...
...
c85360035.lua
View file @
e2eda631
...
@@ -17,13 +17,37 @@ function c85360035.initial_effect(c)
...
@@ -17,13 +17,37 @@ function c85360035.initial_effect(c)
e2
:
SetCategory
(
CATEGORY_TOHAND
)
e2
:
SetCategory
(
CATEGORY_TOHAND
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_TRIGGER_O
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DELAY
)
e2
:
SetProperty
(
EFFECT_FLAG_DAMAGE_STEP
+
EFFECT_FLAG_DELAY
)
e2
:
SetCode
(
EVENT_
DESTROYED
)
e2
:
SetCode
(
EVENT_
CUSTOM
+
85360035
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetRange
(
LOCATION_GRAVE
)
e2
:
SetCountLimit
(
1
,
85360036
)
e2
:
SetCountLimit
(
1
,
85360036
)
e2
:
SetCondition
(
c85360035
.
thcon
)
e2
:
SetTarget
(
c85360035
.
thtg
)
e2
:
SetTarget
(
c85360035
.
thtg
)
e2
:
SetOperation
(
c85360035
.
thop
)
e2
:
SetOperation
(
c85360035
.
thop
)
c
:
RegisterEffect
(
e2
)
c
:
RegisterEffect
(
e2
)
if
not
c85360035
.
global_check
then
c85360035
.
global_check
=
true
local
ge1
=
Effect
.
CreateEffect
(
c
)
ge1
:
SetType
(
EFFECT_TYPE_FIELD
+
EFFECT_TYPE_CONTINUOUS
)
ge1
:
SetCode
(
EVENT_LEAVE_FIELD_P
)
ge1
:
SetCondition
(
c85360035
.
regcon
)
ge1
:
SetOperation
(
c85360035
.
regop
)
Duel
.
RegisterEffect
(
ge1
,
0
)
end
end
function
c85360035
.
cfilter
(
c
,
tp
)
return
c
:
GetFlagEffect
(
85360035
)
~=
0
and
c
:
IsReason
(
REASON_DESTROY
)
and
c
:
IsControler
(
tp
)
and
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x14f
)
and
c
:
IsType
(
TYPE_FUSION
)
and
(
c
:
IsReason
(
REASON_BATTLE
)
or
c
:
IsReason
(
REASON_EFFECT
)
and
c
:
GetReasonPlayer
()
==
1
-
tp
)
end
function
c85360035
.
regcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
local
v
=
0
if
eg
:
IsExists
(
c85360035
.
cfilter
,
1
,
nil
,
0
)
then
v
=
v
+
1
end
if
eg
:
IsExists
(
c85360035
.
cfilter
,
1
,
nil
,
1
)
then
v
=
v
+
2
end
if
v
==
0
then
return
false
end
e
:
SetLabel
(({
0
,
1
,
PLAYER_ALL
})[
v
])
return
true
end
function
c85360035
.
regop
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
Duel
.
RaiseEvent
(
eg
,
EVENT_CUSTOM
+
85360035
,
re
,
r
,
rp
,
ep
,
e
:
GetLabel
())
end
end
function
c85360035
.
desfilter
(
c
)
function
c85360035
.
desfilter
(
c
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x14f
)
return
c
:
IsFaceup
()
and
c
:
IsSetCard
(
0x14f
)
...
@@ -51,15 +75,6 @@ function c85360035.operation(e,tp,eg,ep,ev,re,r,rp)
...
@@ -51,15 +75,6 @@ function c85360035.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
end
end
end
end
function
c85360035
.
thfilter1
(
c
,
tp
)
local
mg
=
c
:
GetMaterial
()
return
mg
and
c
:
IsPreviousPosition
(
POS_FACEUP
)
and
c
:
GetPreviousControler
()
==
tp
and
c
:
GetPreviousTypeOnField
()
&
TYPE_FUSION
~=
0
and
mg
:
IsExists
(
Card
.
IsType
,
1
,
nil
,
TYPE_EFFECT
)
and
(
c
:
IsReason
(
REASON_BATTLE
)
or
c
:
IsReason
(
REASON_EFFECT
)
and
c
:
GetReasonPlayer
()
==
1
-
tp
)
end
function
c85360035
.
thcon
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
)
return
eg
:
IsExists
(
c85360035
.
thfilter1
,
1
,
nil
,
tp
)
end
function
c85360035
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
function
c85360035
.
thtg
(
e
,
tp
,
eg
,
ep
,
ev
,
re
,
r
,
rp
,
chk
)
local
c
=
e
:
GetHandler
()
local
c
=
e
:
GetHandler
()
if
chk
==
0
then
return
c
:
IsAbleToHand
()
end
if
chk
==
0
then
return
c
:
IsAbleToHand
()
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