Commit 52660621 authored by wind2009's avatar wind2009

Fix 贖罪神女

parent 21212e22
...@@ -54,13 +54,13 @@ function s.splimit(e,se,sp,st) ...@@ -54,13 +54,13 @@ function s.splimit(e,se,sp,st)
if c:IsLocation(LOCATION_EXTRA) then return st&SUMMON_TYPE_FUSION==SUMMON_TYPE_FUSION end if c:IsLocation(LOCATION_EXTRA) then return st&SUMMON_TYPE_FUSION==SUMMON_TYPE_FUSION end
return true return true
end end
function s.hspfilter1(c,tp,sc) function s.hspfilter1(c,tp,fc)
return c:IsCode(85065943) return c:IsCode(85065943)
and c:IsControler(tp) and Duel.GetLocationCountFromEx(tp,tp,c,sc)>0 and c:IsCanBeFusionMaterial(sc,SUMMON_TYPE_SPECIAL) and c:IsControler(tp) and Duel.GetLocationCountFromEx(tp,tp,c,fc)>0 and c:IsCanBeFusionMaterial(fc,SUMMON_TYPE_SPECIAL)
end end
function s.hspfilter2(c,tp,sc) function s.hspfilter2(c,tp,fc)
return c:IsFaceup() and c:IsReleasable(REASON_MATERIAL|REASON_SPSUMMON) return c:IsFaceup() and c:IsReleasable(REASON_MATERIAL|REASON_SPSUMMON)
and c:IsCanBeFusionMaterial(sc,SUMMON_TYPE_SPECIAL) and c:IsCanBeFusionMaterial(fc,SUMMON_TYPE_SPECIAL)
end end
function s.hspcon(e,c) function s.hspcon(e,c)
if c==nil then return true end if c==nil then return true end
...@@ -68,20 +68,28 @@ function s.hspcon(e,c) ...@@ -68,20 +68,28 @@ function s.hspcon(e,c)
and Duel.IsExistingMatchingCard(s.hspfilter2,c:GetControler(),0,LOCATION_MZONE,1,nil) and Duel.IsExistingMatchingCard(s.hspfilter2,c:GetControler(),0,LOCATION_MZONE,1,nil)
end end
function s.hsptg(e,tp,eg,ep,ev,re,r,rp,chk,c) function s.hsptg(e,tp,eg,ep,ev,re,r,rp,chk,c)
local g=Duel.GetReleaseGroup(tp,false,REASON_SPSUMMON):Filter(s.hspfilter1,nil,tp,c) local g1=Duel.GetReleaseGroup(tp,false,REASON_SPSUMMON):Filter(s.hspfilter1,nil,tp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local tc=g:SelectUnselect(nil,tp,false,true,1,1) local tc1=g1:SelectUnselect(nil,tp,false,true,1,1)
if tc then if tc1 then
local sg=Duel.SelectMatchingCard(tp,s.hspfilter2,tp,0,LOCATION_MZONE,1,1,nil) local g2=Duel.GetMatchingGroup(s.hspfilter2,tp,0,LOCATION_MZONE,tc1,tp,c)
sg:AddCard(tc) local tc2=g2:SelectUnselect(nil,tp,false,true,1,1)
e:SetLabelObject(sg) if tc2 then
return true local mg=Group.CreateGroup()
mg:AddCard(tc1)
mg:AddCard(tc2)
mg:KeepAlive()
e:SetLabelObject(mg)
return true
end
return false
else return false end else return false end
end end
function s.hspop(e,tp,eg,ep,ev,re,r,rp,c) function s.hspop(e,tp,eg,ep,ev,re,r,rp,c)
local sg=e:GetLabelObject() local sg=e:GetLabelObject()
c:SetMaterial(sg) c:SetMaterial(sg)
Duel.Release(sg,REASON_SPSUMMON|REASON_MATERIAL) Duel.Release(sg,REASON_SPSUMMON|REASON_MATERIAL)
sg:DeleteGroup()
end end
function s.regcon(e,tp,eg,ep,ev,re,r,rp) function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp return rp==1-tp
......
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