Commit fb22df53 authored by mercury233's avatar mercury233

fix

parent 81b21654
...@@ -25,11 +25,11 @@ function c100200178.initial_effect(c) ...@@ -25,11 +25,11 @@ function c100200178.initial_effect(c)
e1:SetOperation(c100200178.atkop) e1:SetOperation(c100200178.atkop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c100200178.cfilter(c) function c100200178.filter(c)
return c:IsFaceup() and c:IsAttribute(ATTRIBUTE_WIND) return c:IsFaceup() and c:IsAttribute(ATTRIBUTE_WIND)
end end
function c100200178.spcon(e,tp,eg,ep,ev,re,r,rp) function c100200178.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c100200178.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c100200178.filter,tp,LOCATION_MZONE,0,1,nil)
end end
function c100200178.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c100200178.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
...@@ -64,15 +64,12 @@ function c100200178.atkcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -64,15 +64,12 @@ function c100200178.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
g:AddCard(c) g:AddCard(c)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.Remove(g,POS_FACEUP,REASON_COST)
end end
function c100200178.atkfilter(c)
return c:IsFaceup() and c:IsAttribute(ATTRIBUTE_WIND)
end
function c100200178.atktg(e,tp,eg,ep,ev,re,r,rp,chk) function c100200178.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c100200178.atkfilter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c100200178.filter,tp,LOCATION_MZONE,0,1,nil) end
end end
function c100200178.atkop(e,tp,eg,ep,ev,re,r,rp) function c100200178.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c100200178.atkfilter,tp,LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c100200178.filter,tp,LOCATION_MZONE,0,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
......
...@@ -54,6 +54,7 @@ function c100200179.disop1(e,tp,eg,ep,ev,re,r,rp) ...@@ -54,6 +54,7 @@ function c100200179.disop1(e,tp,eg,ep,ev,re,r,rp)
e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetValue(RESET_TURN_SET) e2:SetValue(RESET_TURN_SET)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
if c:IsRelateToEffect(e) and c:IsLocation(LOCATION_PZONE) then if c:IsRelateToEffect(e) and c:IsLocation(LOCATION_PZONE) then
Duel.BreakEffect() Duel.BreakEffect()
Duel.Destroy(c,REASON_EFFECT) Duel.Destroy(c,REASON_EFFECT)
......
...@@ -30,14 +30,16 @@ function c100310034.initial_effect(c) ...@@ -30,14 +30,16 @@ function c100310034.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c100310034.desfilter(c,e,tp) function c100310034.desfilter(c,e,tp)
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and Duel.IsExistingMatchingCard(c100310034.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,e,tp,c:GetCode()) return c:IsFaceup() and c:IsRace(RACE_MACHINE)
and Duel.IsExistingMatchingCard(c100310034.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,e,tp,c:GetCode())
end end
function c100310034.spfilter(c,e,tp,code) function c100310034.spfilter(c,e,tp,code)
return c:IsSetCard(0x36) and not c:IsCode(code) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x36) and not c:IsCode(code) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c100310034.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c100310034.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c100310034.desfilter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c100310034.desfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingTarget(c100310034.desfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c100310034.desfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c100310034.desfilter,tp,LOCATION_MZONE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c100310034.desfilter,tp,LOCATION_MZONE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK)
...@@ -60,9 +62,10 @@ function c100310034.tdfilter(c) ...@@ -60,9 +62,10 @@ function c100310034.tdfilter(c)
end end
function c100310034.drtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c100310034.drtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and c100310034.tdfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and c100310034.tdfilter(chkc) end
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.IsExistingTarget(c100310034.tdfilter,tp,LOCATION_GRAVE,0,3,nil) end if chk==0 then return Duel.IsPlayerCanDraw(tp,1)
and Duel.IsExistingTarget(c100310034.tdfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,3,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,c100310034.tdfilter,tp,LOCATION_GRAVE,0,3,3,nil) local g=Duel.SelectTarget(tp,c100310034.tdfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,3,3,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,3,0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,3,0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end end
......
...@@ -41,9 +41,6 @@ end ...@@ -41,9 +41,6 @@ end
function c101101004.rfilter(c,tp) function c101101004.rfilter(c,tp)
return Duel.GetMZoneCount(tp,c)>0 and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_FUSION) return Duel.GetMZoneCount(tp,c)>0 and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_FUSION)
end end
function c101101004.spfilter(c,e,tp)
return (c:IsSetCard(0xbd) or c:IsLevel(5) and c:IsRace(RACE_DRAGON)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c101101004.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function c101101004.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c101101004.rfilter,1,nil,tp) end if chk==0 then return Duel.CheckReleaseGroup(tp,c101101004.rfilter,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
......
...@@ -80,6 +80,7 @@ function c101101050.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,6 +80,7 @@ function c101101050.activate(e,tp,eg,ep,ev,re,r,rp)
e2:SetCode(EFFECT_EXTRA_ATTACK_MONSTER) e2:SetCode(EFFECT_EXTRA_ATTACK_MONSTER)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetValue(1) e2:SetValue(1)
tc:RegisterEffect(e2,true) tc:RegisterEffect(e2,true)
end end
......
...@@ -33,9 +33,6 @@ function c101101059.initial_effect(c) ...@@ -33,9 +33,6 @@ function c101101059.initial_effect(c)
e3:SetOperation(c101101059.rmop) e3:SetOperation(c101101059.rmop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c101101059.tpfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0xfb) and c:IsAbleToHand()
end
function c101101059.activate(e,tp,eg,ep,ev,re,r,rp) function c101101059.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsAttribute,tp,LOCATION_DECK,0,nil,ATTRIBUTE_WATER) local g=Duel.GetMatchingGroup(Card.IsAttribute,tp,LOCATION_DECK,0,nil,ATTRIBUTE_WATER)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(101101059,2)) then if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(101101059,2)) then
......
...@@ -35,7 +35,7 @@ function c101101069.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -35,7 +35,7 @@ function c101101069.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE) e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET) e1:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCondition(c100414011.imcon) e1:SetCondition(c101101069.imcon)
e1:SetValue(aux.tgoval) e1:SetValue(aux.tgoval)
e1:SetOwnerPlayer(tp) e1:SetOwnerPlayer(tp)
tc:RegisterEffect(e1,true) tc:RegisterEffect(e1,true)
......
...@@ -39,8 +39,8 @@ function c6007213.initial_effect(c) ...@@ -39,8 +39,8 @@ function c6007213.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c6007213.spfilter(c,check) function c6007213.spfilter(c,check)
return c:IsAbleToGraveAsCost() return c:IsAbleToGraveAsCost() and c:IsType(TYPE_TRAP)
and (c:IsFaceup() and c:GetType()==TYPE_TRAP+TYPE_CONTINUOUS or check and c:IsFacedown() and c:IsType(TYPE_TRAP)) and (c:IsFaceup() or check and c:IsFacedown())
end end
function c6007213.spcon(e,c) function c6007213.spcon(e,c)
if c==nil then return true end if c==nil then return true 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