Commit 72b1a5eb authored by TanakaKotoha's avatar TanakaKotoha

888

parent 35cbe44a
...@@ -45,30 +45,28 @@ end ...@@ -45,30 +45,28 @@ end
function cm.operation(e,tp,eg,ep,ev,re,r,rp,chk) function cm.operation(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
--negate --negate
local e2=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_SOLVING) e5:SetCode(EVENT_CHAIN_SOLVING)
e2:SetOperation(cm.negop) e5:SetOperation(cm.negop)
e2:SetReset(RESET_EVENT+0x1fe0000+RESET_CHAIN) e5:SetReset(RESET_EVENT+0x1fe0000+RESET_CHAIN)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e5,tp)
--sps --sps
if Duel.GetCurrentPhase()==PHASE_MAIN2 or Duel.GetCurrentPhase()==PHASE_END or Duel.GetCurrentPhase()==PHASE_DRAW then local e6=Effect.CreateEffect(c)
local e1=Effect.CreateEffect(c) e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e6:SetCode(EVENT_PHASE+PHASE_STANDBY)
e1:SetCode(EVENT_PHASE+PHASE_STANDBY) e6:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e1:SetProperty(EFFECT_FLAG_NO_TURN_RESET) e6:SetCountLimit(1)
e1:SetCountLimit(1) e6:SetOperation(cm.spop)
e1:SetOperation(cm.spop) Duel.RegisterEffect(e6,tp)
Duel.RegisterEffect(e1,tp) local e7=Effect.CreateEffect(c)
else e7:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
local e1=Effect.CreateEffect(c) e7:SetCode(EVENT_PHASE+PHASE_BATTLE)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e7:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e1:SetCode(EVENT_PHASE+PHASE_BATTLE) e7:SetCountLimit(1)
e1:SetProperty(EFFECT_FLAG_NO_TURN_RESET) e7:SetOperation(cm.spop)
e1:SetCountLimit(1) Duel.RegisterEffect(e7,tp)
e1:SetOperation(cm.spop) c:RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD,0,0,0,0)
Duel.RegisterEffect(e1,tp)
end
end end
function cm.negop(e,tp,eg,ep,ev,re,r,rp) function cm.negop(e,tp,eg,ep,ev,re,r,rp)
if e:GetHandler():GetFlagEffect(m)>0 then return end if e:GetHandler():GetFlagEffect(m)>0 then return end
...@@ -86,7 +84,7 @@ function cm.spfilter1(c,e,tp) ...@@ -86,7 +84,7 @@ function cm.spfilter1(c,e,tp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if c:GetFlagEffect(m+1)>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,nil,e,tp) and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,nil,e,tp)
and Duel.SelectYesNo(tp,aux.Stringid(m,3))then and Duel.SelectYesNo(tp,aux.Stringid(m,3))then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
...@@ -94,6 +92,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,6 +92,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
c:ResetFlagEffect(m+1)
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