Commit e6f4e06b authored by salix5's avatar salix5

fix 機巧嘴-八咫御先

parent 916711a8
...@@ -75,39 +75,45 @@ function c13224603.sumop(e,tp,eg,ep,ev,re,r,rp) ...@@ -75,39 +75,45 @@ function c13224603.sumop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c13224603.sumfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c13224603.sumfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.Summon(tp,tc,true,nil)
local c=e:GetHandler() local c=e:GetHandler()
--sp-summon limit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetTargetRange(1,0) e1:SetReset(RESET_PHASE+PHASE_MAIN1+RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD)
e1:SetLabel(tc:GetOriginalRace(),0) e1:SetOperation(c13224603.regop)
e1:SetTarget(c13224603.splimit) tc:RegisterEffect(e1,true)
e1:SetCondition(c13224603.lmcon) --reset when negated
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_SUMMON_SUCCESS) e2:SetCode(EVENT_SUMMON_NEGATED)
e2:SetRange(LOCATION_MZONE) e2:SetOperation(c13224603.rstop)
e2:SetReset(RESET_EVENT+0xff0000)
e2:SetLabelObject(e1) e2:SetLabelObject(e1)
e2:SetOperation(c13224603.regop) e2:SetReset(RESET_PHASE+PHASE_MAIN1)
tc:RegisterEffect(e2) Duel.RegisterEffect(e2,tp)
Duel.Summon(tp,tc,true,nil)
end end
end end
function c13224603.splimit(e,c) function c13224603.splimit(e,c)
return bit.band(c:GetOriginalRace(),e:GetLabel())==0 return c:GetOriginalRace()&e:GetLabel()==0
end
function c13224603.lmcon(e)
local l1,l2=e:GetLabel()
return l2==1
end end
function c13224603.regop(e,tp,eg,ep,ev,re,r,rp) function c13224603.regop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,0)
e1:SetLabel(c:GetOriginalRace())
e1:SetTarget(c13224603.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
e:Reset()
end
function c13224603.rstop(e,tp,eg,ep,ev,re,r,rp)
local e1=e:GetLabelObject() local e1=e:GetLabelObject()
local l1=e1:GetLabel() e1:Reset()
e1:SetLabel(l1,1)
e:Reset() e:Reset()
end end
function c13224603.reccon(e,tp,eg,ep,ev,re,r,rp) function c13224603.reccon(e,tp,eg,ep,ev,re,r,rp)
......
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