Commit 600e4db6 authored by 八宫一月's avatar 八宫一月 Committed by GitHub

fix--S:Pリトルナイト (#2277)

* Update c29301450.lua

* Update c29301450.lua
parent d9023826
...@@ -105,6 +105,9 @@ end ...@@ -105,6 +105,9 @@ end
function s.retfilter(c) function s.retfilter(c)
return c:GetFlagEffect(id)~=0 return c:GetFlagEffect(id)~=0
end end
function s.retfilter1(c,tp)
return c:GetFlagEffect(id)~=0 and c:IsControler(tp)
end
function s.retcon(e,tp,eg,ep,ev,re,r,rp) function s.retcon(e,tp,eg,ep,ev,re,r,rp)
if not e:GetLabelObject():IsExists(s.retfilter,1,nil) then if not e:GetLabelObject():IsExists(s.retfilter,1,nil) then
e:GetLabelObject():DeleteGroup() e:GetLabelObject():DeleteGroup()
...@@ -114,8 +117,29 @@ function s.retcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -114,8 +117,29 @@ function s.retcon(e,tp,eg,ep,ev,re,r,rp)
return true return true
end end
function s.retop(e,tp,eg,ep,ev,re,r,rp) function s.retop(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetLabelObject():Filter(s.retfilter,nil) local g1=e:GetLabelObject():Filter(s.retfilter1,nil,tp)
for tc in aux.Next(g) do local g2=e:GetLabelObject():Filter(s.retfilter1,nil,1-tp)
Duel.ReturnToField(tc) local turnp=Duel.GetTurnPlayer()
if #g2==0 then
if #g1==1 then
Duel.ReturnToField(g1:GetFirst())
else
local tc=g1:Select(tp,1,1,nil):GetFirst()
Duel.ReturnToField(tc)
g1=g1-tc
Duel.ReturnToField(g1:GetFirst())
end
else
if turnp==tp then
if #g1>0 then
Duel.ReturnToField(g1:GetFirst())
end
Duel.ReturnToField(g2:GetFirst())
else
Duel.ReturnToField(g2:GetFirst())
if #g1>0 then
Duel.ReturnToField(g1:GetFirst())
end
end
end end
end end
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