Commit 97e47de9 authored by mercury233's avatar mercury233

fix

parent dff8dc32
...@@ -7,6 +7,7 @@ function c100236109.initial_effect(c) ...@@ -7,6 +7,7 @@ function c100236109.initial_effect(c)
e1:SetCategory(CATEGORY_ATKCHANGE) e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,100236109+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,100236109+EFFECT_COUNT_CODE_OATH)
e1:SetTarget(c100236109.target) e1:SetTarget(c100236109.target)
e1:SetOperation(c100236109.operation) e1:SetOperation(c100236109.operation)
......
...@@ -37,13 +37,14 @@ function c100236112.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -37,13 +37,14 @@ function c100236112.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c100236112.spfilter),tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c100236112.spfilter),tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,e,tp)
local sc=g:GetFirst() local sc=g:GetFirst()
if sc and Duel.SpecialSummon(sc,0,tp,tp,false,false,POS_FACEUP)>0 then if sc and Duel.SpecialSummon(sc,0,tp,tp,false,false,POS_FACEUP)>0 then
local g=Duel.GetMatchingGroup(c100236112.setfilter,tp,LOCATION_DECK,0,nil) local g2=Duel.GetMatchingGroup(c100236112.setfilter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if g2:GetCount()>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.SelectYesNo(tp,aux.Stringid(100236112,0)) then and Duel.SelectYesNo(tp,aux.Stringid(100236112,0)) then
Duel.BreakEffect() Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local tc=g:Select(tp,1,1,nil) local tc=g2:Select(tp,1,1,nil)
Duel.SSet(tp,tc) Duel.SSet(tp,tc)
Duel.ConfirmCards(1-tp,tc)
end end
end end
end end
...@@ -38,7 +38,8 @@ function c100236115.thfilter(c) ...@@ -38,7 +38,8 @@ function c100236115.thfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x23) and c:IsAbleToHand() and not c:IsCode(100236115) return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x23) and c:IsAbleToHand() and not c:IsCode(100236115)
end end
function c100236115.target(e,tp,eg,ep,ev,re,r,rp,chk) function c100236115.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c100236115.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end if chk==0 then return Duel.GetMZoneCount(tp,e:GetHandler())>0
and Duel.IsExistingMatchingCard(c100236115.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end end
......
...@@ -23,7 +23,7 @@ function c100412002.initial_effect(c) ...@@ -23,7 +23,7 @@ function c100412002.initial_effect(c)
e3:SetType(EFFECT_TYPE_IGNITION) e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,101412104) e3:SetCountLimit(1,100412002+100)
e3:SetTarget(c100412002.lvtg) e3:SetTarget(c100412002.lvtg)
e3:SetOperation(c100412002.lvop) e3:SetOperation(c100412002.lvop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
......
...@@ -46,7 +46,7 @@ function c100412008.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -46,7 +46,7 @@ function c100412008.atkop(e,tp,eg,ep,ev,re,r,rp)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000) e1:SetValue(1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
......
...@@ -52,7 +52,7 @@ function c100412011.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -52,7 +52,7 @@ function c100412011.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(100412011,1)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(100412011,1))
local g2=Duel.SelectMatchingCard(tp,c100412011.matfilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g2=Duel.SelectMatchingCard(tp,c100412011.matfilter,tp,0,LOCATION_ONFIELD,1,1,nil)
g2:AddCard(g:GetFirst()) g2:Merge(g)
Duel.SetTargetCard(g2) Duel.SetTargetCard(g2)
end end
function c100412011.spop(e,tp,eg,ep,ev,re,r,rp) function c100412011.spop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -53,9 +53,9 @@ function c100412019.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,9 +53,9 @@ function c100412019.atkop(e,tp,eg,ep,ev,re,r,rp)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(#sg*1000) e1:SetValue(#sg*1000)
e1:SetReset(RESET_PHASE+PHASE_END+RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.Clone(e1) local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE) e2:SetCode(EFFECT_UPDATE_DEFENSE)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
end end
......
...@@ -37,6 +37,7 @@ function c101007081.initial_effect(c) ...@@ -37,6 +37,7 @@ function c101007081.initial_effect(c)
e4:SetCode(EVENT_PHASE+PHASE_END) e4:SetCode(EVENT_PHASE+PHASE_END)
e4:SetRange(LOCATION_GRAVE) e4:SetRange(LOCATION_GRAVE)
e4:SetCountLimit(1,101007081+EFFECT_COUNT_CODE_DUEL) e4:SetCountLimit(1,101007081+EFFECT_COUNT_CODE_DUEL)
e4:SetCondition(c101007081.spcon2)
e4:SetTarget(c101007081.sptg2) e4:SetTarget(c101007081.sptg2)
e4:SetOperation(c101007081.spop2) e4:SetOperation(c101007081.spop2)
c:RegisterEffect(e4) c:RegisterEffect(e4)
...@@ -78,6 +79,9 @@ end ...@@ -78,6 +79,9 @@ end
function c101007081.efilter(e,te) function c101007081.efilter(e,te)
return te:GetHandler():IsSetCard(0xd3) return te:GetHandler():IsSetCard(0xd3)
end end
function c101007081.spcon2(e,tp,eg,ep,ev,re,r,rp)
return tp==Duel.GetTurnPlayer()
end
function c101007081.sptg2(e,tp,eg,ep,ev,re,r,rp,chk) function c101007081.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
......
...@@ -36,17 +36,14 @@ function c101007089.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -36,17 +36,14 @@ function c101007089.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end end
function c101007089.thfilter(c) function c101007089.thfilter(c)
return (c:GetType()==TYPE_SPELL or c:GetType()==TYPE_TRAP) and c:IsAbleToHand() return c:GetType()==TYPE_SPELL or c:GetType()==TYPE_TRAP
end
function c101007089.thfilter0(c)
return (c:GetType()==TYPE_SPELL or c:GetType()==TYPE_TRAP)
end end
function c101007089.operation(e,tp,eg,ep,ev,re,r,rp) function c101007089.operation(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetMatchingGroupCount(c101007089.ctfilter,tp,LOCATION_MZONE,0,e:GetHandler()) local ct=Duel.GetMatchingGroupCount(c101007089.ctfilter,tp,LOCATION_MZONE,0,e:GetHandler())
if ct==0 then return end if ct==0 then return end
local g=Duel.GetDecktopGroup(tp,ct) local g=Duel.GetDecktopGroup(tp,ct)
Duel.ConfirmDecktop(tp,ct) Duel.ConfirmDecktop(tp,ct)
tg=g:Filter(c101007089.thfilter0,nil) tg=g:Filter(c101007089.thfilter,nil)
if tg:GetCount()>0 then if tg:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local tc=tg:Select(tp,1,1,nil):GetFirst() local tc=tg:Select(tp,1,1,nil):GetFirst()
......
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