Skip to content

Commit 394d281

Browse files
committed
Filter out cards with level zero from being possible synchro materials
1 parent 26adf05 commit 394d281

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

proc_synchro.lua

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ function Synchro.Condition(f1,min1,max1,f2,min2,max2,sub1,sub2,req1,req2,reqm)
104104
g=dg:Filter(Card.IsCanBeSynchroMaterial,nil,c)
105105
mgchk=false
106106
end
107+
g:Remove(function(c,sc)return c:GetSynchroLevel(sc) < 1 end,nil,c)
107108
local pg=Auxiliary.GetMustBeMaterialGroup(tp,dg,tp,c,g,REASON_SYNCHRO)
108109
if not g:Includes(pg) or pg:IsExists(aux.NOT(Card.IsCanBeSynchroMaterial),1,nil,c) then return false end
109110
if smat then
@@ -485,6 +486,7 @@ function Synchro.Target(f1,min1,max1,f2,min2,max2,sub1,sub2,req1,req2,reqm)
485486
dg=Duel.GetMatchingGroup(synchmatfilter,tp,LOCATION_MZONE|LOCATION_HAND,LOCATION_MZONE,c)
486487
g=dg:Filter(Card.IsCanBeSynchroMaterial,nil,c)
487488
end
489+
g:Remove(function(c,sc)return c:GetSynchroLevel(sc) < 1 end,nil,c)
488490
local pg=Auxiliary.GetMustBeMaterialGroup(tp,dg,tp,c,g,REASON_SYNCHRO)
489491
if smat then
490492
pg:Merge(smat)
@@ -889,6 +891,7 @@ function Synchro.MajesticCondition(f1,cbt1,f2,cbt2,f3,cbt3,...)
889891
dg=Duel.GetMatchingGroup(function(mc) return mc:IsFaceup() and (mc:IsControler(tp) or mc:IsCanBeSynchroMaterial(c)) end,tp,LOCATION_MZONE,LOCATION_MZONE,c)
890892
g=dg:Filter(Card.IsCanBeSynchroMaterial,nil,c)
891893
end
894+
g:Remove(function(c,sc)return c:GetSynchroLevel(sc) < 1 end,nil,c)
892895
local pg=Auxiliary.GetMustBeMaterialGroup(tp,dg,tp,c,g,REASON_SYNCHRO)
893896
if not g:Includes(pg) or pg:IsExists(aux.NOT(Card.IsCanBeSynchroMaterial),1,nil,c) then return false end
894897
if smat then
@@ -934,6 +937,7 @@ function Synchro.MajesticTarget(f1,cbt1,f2,cbt2,f3,cbt3,...)
934937
dg=Duel.GetMatchingGroup(function(mc) return mc:IsFaceup() and (mc:IsControler(tp) or mc:IsCanBeSynchroMaterial(c)) end,tp,LOCATION_MZONE,LOCATION_MZONE,c)
935938
g=dg:Filter(Card.IsCanBeSynchroMaterial,nil,c)
936939
end
940+
g:Remove(function(c,sc)return c:GetSynchroLevel(sc) < 1 end,nil,c)
937941
local pg=Auxiliary.GetMustBeMaterialGroup(tp,dg,tp,c,g,REASON_SYNCHRO)
938942
if smat then
939943
pg:Merge(smat)

0 commit comments

Comments
 (0)