Commit fbcc145f authored by POLYMER's avatar POLYMER

fix

parent 9d0195fd
...@@ -10,37 +10,29 @@ function c13000754.initial_effect(c) ...@@ -10,37 +10,29 @@ function c13000754.initial_effect(c)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e1:SetCode(EVENT_CHAINING) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_REMOVED) e1:SetRange(LOCATION_REMOVED)
e1:SetCost(s.cost)
e1:SetCountLimit(1,13000754) e1:SetCountLimit(1,13000754)
e1:SetCondition(s.negcon) e1:SetCondition(s.negcon)
e1:SetTarget(s.negtg) e1:SetTarget(s.negtg)
e1:SetOperation(s.negop) e1:SetOperation(s.negop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() and e:GetHandler():IsFaceup() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_RETURN)
end
function s.negcon(e,tp,eg,ep,ev,re,r,rp) function s.negcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() return rp==1-tp and Duel.IsChainNegatable(ev)
return ep~=tp and Duel.IsChainNegatable(ev) and c:IsSummonType(SUMMON_TYPE_SYNCHRO)
end end
function s.negtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
end end
end end
function s.negop(e,tp,eg,ep,ev,re,r,rp) function s.negop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler() local c=e:GetHandler()
Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP) if not c:IsRelateToEffect(e) or Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)==0 then return end
if not Duel.NegateActivation(ev) then return end if Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) and Duel.Destroy(eg,REASON_EFFECT)>0 then
Duel.Destroy(eg,REASON_EFFECT) Duel.BreakEffect()
Duel.SendtoGrave(e:GetHandler(),REASON_EFFECT) Duel.SendtoGrave(c,REASON_EFFECT)
end
end end
...@@ -80,4 +80,5 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,4 +80,5 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e2,true) c:RegisterEffect(e2,true)
end end
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
c:CompleteProcedure()
end end
\ No newline at end of file
...@@ -47,6 +47,7 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -47,6 +47,7 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
if tg:GetCount()>0 then if tg:GetCount()>0 then
if Duel.SendtoHand(tg,nil,REASON_EFFECT)>0 and c:IsRelateToEffect(e) then if Duel.SendtoHand(tg,nil,REASON_EFFECT)>0 and c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEDOWN_DEFENSE) Duel.SpecialSummon(c,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEDOWN_DEFENSE)
c:CompleteProcedure()
end end
end end
end end
...@@ -75,22 +76,18 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp) ...@@ -75,22 +76,18 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp)
tg=tg:Select(tp,1,ft,nil) tg=tg:Select(tp,1,ft,nil)
end end
Duel.SSet(tp,tg) Duel.SSet(tp,tg)
for tc in aux.Next(tg) do for tc in aux.Next(tg) do
if tc:IsType(TYPE_QUICKPLAY) then local e1=Effect.CreateEffect(c)
local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE) e1:SetCode(EFFECT_QP_ACT_IN_SET_TURN)
e1:SetCode(EFFECT_QP_ACT_IN_SET_TURN) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) tc:RegisterEffect(e1)
tc:RegisterEffect(e1) local e1=Effect.CreateEffect(c)
end e1:SetType(EFFECT_TYPE_SINGLE)
if tc:IsType(TYPE_TRAP) then e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
local e1=Effect.CreateEffect(c) e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN) tc:RegisterEffect(e1)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
end
end end
end end
\ No newline at end of file
...@@ -96,6 +96,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -96,6 +96,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
e2:SetOperation(s.ssop) e2:SetOperation(s.ssop)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
c:CompleteProcedure()
Duel.ChangeAttackTarget(c) Duel.ChangeAttackTarget(c)
end end
end end
......
...@@ -87,6 +87,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -87,6 +87,7 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.SSet(tp,sg,tp,false)==ct then if Duel.SSet(tp,sg,tp,false)==ct then
if tc:IsType(TYPE_RITUAL) then if tc:IsType(TYPE_RITUAL) then
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP) Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP)
tc:CompleteProcedure()
else else
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,false,POS_FACEUP)
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