Commit 80bf5ea2 authored by mercury233's avatar mercury233

fix

parent 4c351604
...@@ -69,7 +69,7 @@ function c100200149.ctop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,7 +69,7 @@ function c100200149.ctop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then if tc:IsFaceup() and tc:IsRelateToEffect(e) then
tc:AddCounter(0x1049,1) tc:AddCounter(0x1049,1)
if tc:GetFlagEffect(100200149)~=0 then return end if tc:GetFlagEffect(100200249)~=0 then return end
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EFFECT_DESTROY_REPLACE) e1:SetCode(EFFECT_DESTROY_REPLACE)
...@@ -77,7 +77,7 @@ function c100200149.ctop(e,tp,eg,ep,ev,re,r,rp) ...@@ -77,7 +77,7 @@ function c100200149.ctop(e,tp,eg,ep,ev,re,r,rp)
e1:SetOperation(c100200149.repop) e1:SetOperation(c100200149.repop)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
tc:RegisterFlagEffect(100200149,RESET_EVENT+RESETS_STANDARD,0,0) tc:RegisterFlagEffect(100200249,RESET_EVENT+RESETS_STANDARD,0,0)
end end
end end
function c100200149.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c100200149.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -57,6 +57,7 @@ function c100200151.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -57,6 +57,7 @@ function c100200151.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end end
function c100200151.spop1(e,tp,eg,ep,ev,re,r,rp) function c100200151.spop1(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local lv=e:GetLabel() local lv=e:GetLabel()
local code=e:GetValue() local code=e:GetValue()
......
...@@ -16,10 +16,6 @@ function c100409046.initial_effect(c) ...@@ -16,10 +16,6 @@ function c100409046.initial_effect(c)
e1:SetOperation(c100409046.ctop) e1:SetOperation(c100409046.ctop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--avoid damage --avoid damage
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_NO_BATTLE_DAMAGE)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_AVOID_BATTLE_DAMAGE) e3:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
...@@ -64,6 +60,7 @@ function c100409046.cttg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -64,6 +60,7 @@ function c100409046.cttg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0)
end end
function c100409046.ctop(e,tp,eg,ep,ev,re,r,rp) function c100409046.ctop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local a=g:GetFirst() local a=g:GetFirst()
local b=g:GetNext() local b=g:GetNext()
......
...@@ -28,7 +28,7 @@ end ...@@ -28,7 +28,7 @@ end
function c100409047.spfilter(c,e,tp,hc) function c100409047.spfilter(c,e,tp,hc)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x10ec) return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x10ec)
and c:GetOriginalCode()~=hc:GetOriginalCode() and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) and c:GetOriginalCode()~=hc:GetOriginalCode() and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
and Duel.GetLocationCountFromEx(tp,tp,c,hc)>0 and Duel.GetLocationCountFromEx(tp,tp,hc,c)>0
end end
function c100409047.target(e,tp,eg,ep,ev,re,r,rp,chk) function c100409047.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c100409047.thfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(c100409047.thfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
......
...@@ -69,26 +69,29 @@ function c100409048.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,26 +69,29 @@ function c100409048.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c100409048.chcon1(e,tp,eg,ep,ev,re,r,rp) function c100409048.chcon1(e,tp,eg,ep,ev,re,r,rp)
return ep~=tp and re:IsActiveType(TYPE_MONSTER) return ep==1-tp and re:IsActiveType(TYPE_MONSTER)
and Duel.IsExistingMatchingCard(c100409048.confilter,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingMatchingCard(c100409048.confilter,tp,LOCATION_MZONE,0,1,nil)
end end
function c100409048.chop1(e,tp,eg,ep,ev,re,r,rp) function c100409048.chop1(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():RegisterFlagEffect(100409048,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) re:GetHandler():RegisterFlagEffect(100409048,RESET_CHAIN,0,1)
end end
function c100409048.confilter(c) function c100409048.confilter(c)
return c:IsFaceup() and c:IsSetCard(0x10ec) and c:IsSummonType(SUMMON_TYPE_PENDULUM) return c:IsFaceup() and c:IsSetCard(0x10ec) and c:IsSummonType(SUMMON_TYPE_PENDULUM)
end end
function c100409048.chcon2(e,tp,eg,ep,ev,re,r,rp) function c100409048.chcon2(e,tp,eg,ep,ev,re,r,rp)
return ev==1 and e:GetHandler():GetFlagEffect(100409048)>0 return re:GetHandler():GetFlagEffect(100409048)>0
and Duel.IsExistingMatchingCard(c100409048.confilter,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingMatchingCard(c100409048.confilter,tp,LOCATION_MZONE,0,1,nil)
end end
function c100409048.chop2(e,tp,eg,ep,ev,re,r,rp) function c100409048.chop2(e,tp,eg,ep,ev,re,r,rp)
return Duel.ChangeChainOperation(1,c100409048.repop) local g=Group.CreateGroup()
Duel.ChangeTargetCard(ev,g)
return Duel.ChangeChainOperation(ev,c100409048.repop)
end end
function c100409048.desfilter(c) function c100409048.desfilter(c)
return c:IsFacedown() and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsFacedown() and c:IsType(TYPE_SPELL+TYPE_TRAP)
end end
function c100409048.repop(e,tp,eg,ep,ev,re,r,rp) function c100409048.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,0,100409048)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,c100409048.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectMatchingCard(tp,c100409048.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
......
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