Commit d94c1045 authored by Momobako's avatar Momobako

Push by Appveyor

parent 4d5068cc
...@@ -28,7 +28,7 @@ end ...@@ -28,7 +28,7 @@ end
function c13254094.filter4(c,e) function c13254094.filter4(c,e)
return c:IsFaceup() and c:IsCanBeFusionMaterial() return c:IsFaceup() and c:IsCanBeFusionMaterial()
end end
function c13254094.filter5(c) function c13254094.filter5(c,e)
return c:IsFaceup() and c:IsCanBeFusionMaterial() and not c:IsImmuneToEffect(e) return c:IsFaceup() and c:IsCanBeFusionMaterial() and not c:IsImmuneToEffect(e)
end end
function c13254094.target(e,tp,eg,ep,ev,re,r,rp,chk) function c13254094.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -1739,7 +1739,7 @@ function cm.Fusion_3L(c,mf,f,min,max,myon,sub) ...@@ -1739,7 +1739,7 @@ function cm.Fusion_3L(c,mf,f,min,max,myon,sub)
e1:SetOperation(cm.FusionOperation_3L(mf,f,min,max,myon,sub)) e1:SetOperation(cm.FusionOperation_3L(mf,f,min,max,myon,sub))
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function cm.MyonCheckFilter(c,ec,chkfnf,myon) function cm.MyonCheckFilter(c,ec,myon)
return (c:IsHasEffect(37564841) or myon) and c:IsFaceup() and c:IsCanBeFusionMaterial(ec) return (c:IsHasEffect(37564841) or myon) and c:IsFaceup() and c:IsCanBeFusionMaterial(ec)
end end
function cm.FusionFilter_3L(c,fc,mf,sub) function cm.FusionFilter_3L(c,fc,mf,sub)
...@@ -1747,6 +1747,7 @@ function cm.FusionFilter_3L(c,fc,mf,sub) ...@@ -1747,6 +1747,7 @@ function cm.FusionFilter_3L(c,fc,mf,sub)
end end
function cm.FusionCheck_3L(g,min,tp,fc,f,chkf,sub) function cm.FusionCheck_3L(g,min,tp,fc,f,chkf,sub)
--check sayuri_3L --check sayuri_3L
if not Senya.master_rule_3_flag and g:IsExists(aux.FCheckTuneMagicianX,1,nil,g) then return false end
if chkf~=PLAYER_NONE and Duel.GetLocationCountFromEx(chkf,tp,g,fc)<=0 then return false end if chkf~=PLAYER_NONE and Duel.GetLocationCountFromEx(chkf,tp,g,fc)<=0 then return false end
if aux.FCheckAdditional and not aux.FCheckAdditional(tp,g,fc) then return false end if aux.FCheckAdditional and not aux.FCheckAdditional(tp,g,fc) then return false end
local ct=g:GetCount() local ct=g:GetCount()
...@@ -1765,7 +1766,7 @@ return function(e,g,gc,chkfnf) ...@@ -1765,7 +1766,7 @@ return function(e,g,gc,chkfnf)
if not cm.FusionFilter_3L(gc,fc,mf,sub) then return false end if not cm.FusionFilter_3L(gc,fc,mf,sub) then return false end
sg:AddCard(gc) sg:AddCard(gc)
end end
local exg=Duel.GetMatchingGroup(cm.MyonCheckFilter,tp,0,LOCATION_MZONE,nil,c,chkf,myon) local exg=Duel.GetMatchingGroup(cm.MyonCheckFilter,tp,0,LOCATION_MZONE,nil,c,myon)
mg:Merge(exg) mg:Merge(exg)
return cm.CheckGroup(mg,cm.FusionCheck_3L,sg,1,max,min,tp,c,f,chkfnf,sub) return cm.CheckGroup(mg,cm.FusionCheck_3L,sg,1,max,min,tp,c,f,chkfnf,sub)
end end
...@@ -1777,7 +1778,7 @@ return function(e,tp,eg,ep,ev,re,r,rp,gc,chkfnf) ...@@ -1777,7 +1778,7 @@ return function(e,tp,eg,ep,ev,re,r,rp,gc,chkfnf)
local mg=eg:Filter(cm.FusionFilter_3L,nil,e:GetHandler(),mf,sub) local mg=eg:Filter(cm.FusionFilter_3L,nil,e:GetHandler(),mf,sub)
local sg=Group.CreateGroup() local sg=Group.CreateGroup()
if gc then sg:AddCard(gc) end if gc then sg:AddCard(gc) end
local exg=Duel.GetMatchingGroup(cm.MyonCheckFilter,tp,0,LOCATION_MZONE,nil,c,chkf,myon) local exg=Duel.GetMatchingGroup(cm.MyonCheckFilter,tp,0,LOCATION_MZONE,nil,c,myon)
mg:Merge(exg) mg:Merge(exg)
local g=cm.SelectGroup(tp,HINTMSG_FMATERIAL,mg,cm.FusionCheck_3L,sg,1,max,min,tp,c,f,chkf,sub) local g=cm.SelectGroup(tp,HINTMSG_FMATERIAL,mg,cm.FusionCheck_3L,sg,1,max,min,tp,c,f,chkf,sub)
Duel.SetFusionMaterial(g) Duel.SetFusionMaterial(g)
......
...@@ -24,7 +24,7 @@ function cm.effect_operation_3L(c,ctlm) ...@@ -24,7 +24,7 @@ function cm.effect_operation_3L(c,ctlm)
end end
function cm.flimit(gc) function cm.flimit(gc)
return function(tp,g,fc) return function(tp,g,fc)
return not g:IsExists(Senya.NOT(Senya.check_set_3L),1,gc) return not g:IsExists(Senya.NOT(Senya.check_fusion_set_3L),1,gc)
end end
end end
function cm.fcheck(c,m,gc,chkf) function cm.fcheck(c,m,gc,chkf)
......
...@@ -117,10 +117,9 @@ function cm.DiscardHandCost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -117,10 +117,9 @@ function cm.DiscardHandCost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function cm.cfilter(c,tp) function cm.cfilter(c,tp)
local ty=c:GetSummonType()
if c:GetSummonPlayer()==tp or c:GetMaterialCount()<=0 then return false end if c:GetSummonPlayer()==tp or c:GetMaterialCount()<=0 then return false end
for i,tty in pairs({SUMMON_TYPE_FUSION+SUMMON_TYPE_SYNCHRO+SUMMON_TYPE_XYZ+SUMMON_TYPE_LINK}) do for i,tty in pairs({SUMMON_TYPE_FUSION,SUMMON_TYPE_SYNCHRO,SUMMON_TYPE_XYZ,SUMMON_TYPE_LINK}) do
if bit.band(ty,tty)==tty then return true end if c:IsSummonType(tty) then return true end
end end
return false return false
end end
......
...@@ -50,7 +50,7 @@ function cm.mfilter(c) ...@@ -50,7 +50,7 @@ function cm.mfilter(c)
return c:IsAbleToRemove() and Senya.check_set_3L(c) return c:IsAbleToRemove() and Senya.check_set_3L(c)
end end
function cm.flimit(tp,g,fc) function cm.flimit(tp,g,fc)
return not g:IsExists(Senya.NOT(Senya.check_set_3L),1,nil) return not g:IsExists(Senya.NOT(Senya.check_fusion_set_3L),1,nil)
end end
function cm.fcheck(c,mg,chkf) function cm.fcheck(c,mg,chkf)
aux.FCheckAdditional=cm.flimit aux.FCheckAdditional=cm.flimit
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment