Commit db931ed8 authored by DailyShana's avatar DailyShana

fix

for Forbidden
parent b9f60344
...@@ -9,23 +9,26 @@ function c11136371.initial_effect(c) ...@@ -9,23 +9,26 @@ function c11136371.initial_effect(c)
e1:SetOperation(c11136371.plop) e1:SetOperation(c11136371.plop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c11136371.plfilter(c) function c11136371.cfilter(c)
return c:GetSequence()<5 and c:IsAbleToGraveAsCost() return c:GetSequence()<5 and c:IsAbleToGraveAsCost()
end end
function c11136371.plcost(e,tp,eg,ep,ev,re,r,rp,chk) function c11136371.plcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c11136371.plfilter,tp,LOCATION_SZONE,0,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(c11136371.cfilter,tp,LOCATION_SZONE,0,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(c11136371.plfilter,tp,LOCATION_SZONE,0,e:GetHandler()) local g=Duel.GetMatchingGroup(c11136371.cfilter,tp,LOCATION_SZONE,0,e:GetHandler())
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function c11136371.plfilter(c)
return c:IsSetCard(0x1034) and not c:IsForbidden()
end
function c11136371.pltg(e,tp,eg,ep,ev,re,r,rp,chk) function c11136371.pltg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_GRAVE,0,1,nil,0x1034) end if chk==0 then return Duel.IsExistingMatchingCard(c11136371.plfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE)
end end
function c11136371.plop(e,tp,eg,ep,ev,re,r,rp) function c11136371.plop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE) local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
if ft<=0 then return end if ft<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,Card.IsSetCard,tp,LOCATION_GRAVE,0,ft,ft,nil,0x1034) local g=Duel.SelectMatchingCard(tp,c11136371.plfilter,tp,LOCATION_GRAVE,0,ft,ft,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
......
...@@ -62,7 +62,7 @@ function c11790356.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,7 +62,7 @@ function c11790356.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp return Duel.GetTurnPlayer()~=tp
end end
function c11790356.filter2(c) function c11790356.filter2(c)
return c:IsSetCard(0xd6) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0xd6) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c11790356.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c11790356.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c11790356.cfilter(chkc) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c11790356.cfilter(chkc) end
......
...@@ -112,7 +112,7 @@ function c14756848.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -112,7 +112,7 @@ function c14756848.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.HintSelection(g) Duel.HintSelection(g)
if Duel.Destroy(g,REASON_EFFECT)~=0 if Duel.Destroy(g,REASON_EFFECT)~=0
and (Duel.CheckLocation(tp,LOCATION_SZONE,6) or Duel.CheckLocation(tp,LOCATION_SZONE,7)) and (Duel.CheckLocation(tp,LOCATION_SZONE,6) or Duel.CheckLocation(tp,LOCATION_SZONE,7))
and not tc:IsLocation(LOCATION_HAND+LOCATION_DECK) and not tc:IsLocation(LOCATION_HAND+LOCATION_DECK) and not tc:IsForbidden()
and Duel.SelectYesNo(tp,aux.Stringid(14756848,4)) then and Duel.SelectYesNo(tp,aux.Stringid(14756848,4)) then
Duel.BreakEffect() Duel.BreakEffect()
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
......
...@@ -26,7 +26,7 @@ function c18060565.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -26,7 +26,7 @@ function c18060565.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK)
end end
function c18060565.eqfilter(c) function c18060565.eqfilter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and c:IsLevelBelow(3) return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and c:IsLevelBelow(3) and not c:IsForbidden()
end end
function c18060565.eqop(e,tp,eg,ep,ev,re,r,rp) function c18060565.eqop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
......
...@@ -29,7 +29,7 @@ function c21249921.eqcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,7 +29,7 @@ function c21249921.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO
end end
function c21249921.filter(c) function c21249921.filter(c)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c21249921.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c21249921.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c21249921.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c21249921.filter(chkc) end
......
...@@ -30,7 +30,7 @@ function c21790410.initial_effect(c) ...@@ -30,7 +30,7 @@ function c21790410.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c21790410.filter(c) function c21790410.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c21790410.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c21790410.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -31,7 +31,7 @@ function c22842214.initial_effect(c) ...@@ -31,7 +31,7 @@ function c22842214.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c22842214.filter(c) function c22842214.filter(c)
return c:IsFaceup() and c:IsRace(RACE_FISH+RACE_AQUA+RACE_SEASERPENT) return c:IsFaceup() and c:IsRace(RACE_FISH+RACE_AQUA+RACE_SEASERPENT) and not c:IsForbidden()
end end
function c22842214.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c22842214.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c22842214.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c22842214.filter(chkc) end
......
...@@ -38,7 +38,7 @@ function c2461031.initial_effect(c) ...@@ -38,7 +38,7 @@ function c2461031.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c2461031.filter(c) function c2461031.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c2461031.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c2461031.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -27,7 +27,7 @@ function c25682811.eqcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -27,7 +27,7 @@ function c25682811.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO
end end
function c25682811.filter(c) function c25682811.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c25682811.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c25682811.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c25682811.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c25682811.filter(chkc) end
......
...@@ -20,12 +20,15 @@ function c26211048.eqcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -20,12 +20,15 @@ function c26211048.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c26211048.eqfilter(c)
return c:IsLocation(LOCATION_MZONE) or c:IsLocation(LOCATION_GRAVE) and not c:IsForbidden()
end
function c26211048.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c26211048.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsType(TYPE_MONSTER) end if chkc then return c26211048.eqfilter(chkc) and chkc:IsControler(1-tp) and chkc:IsType(TYPE_MONSTER) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(Card.IsType,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,nil,TYPE_MONSTER) end and Duel.IsExistingTarget(c26211048.eqfilter,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,Card.IsType,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,1,nil,TYPE_MONSTER) local g=Duel.SelectTarget(tp,c26211048.eqfilter,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,1,nil)
if g:GetFirst():IsLocation(LOCATION_GRAVE) then if g:GetFirst():IsLocation(LOCATION_GRAVE) then
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
end end
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c26885836.eqcon(e,tp,eg,ep,ev,re,r,rp) function c26885836.eqcon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetHandler():GetBattleTarget() local tc=e:GetHandler():GetBattleTarget()
e:SetLabelObject(tc) e:SetLabelObject(tc)
return aux.bdogcon(e,tp,eg,ep,ev,re,r,rp) return aux.bdogcon(e,tp,eg,ep,ev,re,r,rp) and not tc:IsForbidden()
end end
function c26885836.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c26885836.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not e:GetHandler():IsHasEffect(26885836) if chk==0 then return not e:GetHandler():IsHasEffect(26885836)
......
...@@ -26,7 +26,7 @@ function c28183605.atkval(e,c) ...@@ -26,7 +26,7 @@ function c28183605.atkval(e,c)
return Duel.GetMatchingGroupCount(c28183605.atkfilter,c:GetControler(),LOCATION_ONFIELD,0,nil)*200 return Duel.GetMatchingGroupCount(c28183605.atkfilter,c:GetControler(),LOCATION_ONFIELD,0,nil)*200
end end
function c28183605.filter(c) function c28183605.filter(c)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c28183605.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c28183605.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c28183605.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c28183605.filter(chkc) end
......
...@@ -23,7 +23,7 @@ function c3019642.initial_effect(c) ...@@ -23,7 +23,7 @@ function c3019642.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c3019642.filter(c) function c3019642.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c3019642.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c3019642.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c3019642.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c3019642.filter(chkc) end
......
...@@ -23,7 +23,7 @@ function c30312361.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -23,7 +23,7 @@ function c30312361.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RegisterFlagEffect(30312361,RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END,0,1) e:GetHandler():RegisterFlagEffect(30312361,RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END,0,1)
end end
function c30312361.filter(c) function c30312361.filter(c)
return c:IsType(TYPE_EFFECT) and not c:IsForbidden() and c:IsAbleToRemove() return c:IsType(TYPE_EFFECT) and c:IsAbleToRemove()
end end
function c30312361.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c30312361.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c30312361.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c30312361.filter(chkc) end
......
...@@ -20,7 +20,7 @@ function c31563350.eqcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -20,7 +20,7 @@ function c31563350.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c31563350.filter(c,tp) function c31563350.filter(c,tp)
return c:IsRace(RACE_WARRIOR) and c:CheckUniqueOnField(tp) return c:IsRace(RACE_WARRIOR) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
end end
function c31563350.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c31563350.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -24,7 +24,7 @@ function c33460840.initial_effect(c) ...@@ -24,7 +24,7 @@ function c33460840.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c33460840.filter(c,ec) function c33460840.filter(c,ec)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) and not c:IsForbidden()
end end
function c33460840.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c33460840.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -33,7 +33,7 @@ function c3428069.initial_effect(c) ...@@ -33,7 +33,7 @@ function c3428069.initial_effect(c)
end end
function c3428069.filter(c,e,tp) function c3428069.filter(c,e,tp)
return c:IsType(TYPE_MONSTER) and c:IsPreviousLocation(LOCATION_MZONE) and c:GetPreviousControler()==1-tp return c:IsType(TYPE_MONSTER) and c:IsPreviousLocation(LOCATION_MZONE) and c:GetPreviousControler()==1-tp
and c:IsLocation(LOCATION_GRAVE) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and c:IsCanBeEffectTarget(e) and c:IsLocation(LOCATION_GRAVE) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and c:IsCanBeEffectTarget(e) and not c:IsForbidden()
end end
function c3428069.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c3428069.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return eg:IsContains(chkc) and c3428069.filter(chkc,e,tp) end if chkc then return eg:IsContains(chkc) and c3428069.filter(chkc,e,tp) end
......
...@@ -33,7 +33,7 @@ function c38450736.initial_effect(c) ...@@ -33,7 +33,7 @@ function c38450736.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c38450736.filter(c) function c38450736.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c38450736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c38450736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -30,7 +30,7 @@ function c40418351.initial_effect(c) ...@@ -30,7 +30,7 @@ function c40418351.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c40418351.filter(c) function c40418351.filter(c)
return c:IsRace(RACE_DRAGON) return c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c40418351.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c40418351.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c40418351.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c40418351.filter(chkc) end
......
...@@ -17,7 +17,7 @@ function c41230939.initial_effect(c) ...@@ -17,7 +17,7 @@ function c41230939.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c41230939.filter(c) function c41230939.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c41230939.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c41230939.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c41230939.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c41230939.filter(chkc) end
......
...@@ -30,12 +30,15 @@ end ...@@ -30,12 +30,15 @@ end
function c44505297.eqcon(e,tp,eg,ep,ev,re,r,rp) function c44505297.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetSummonType()==SUMMON_TYPE_XYZ return e:GetHandler():GetSummonType()==SUMMON_TYPE_XYZ
end end
function c44505297.eqfilter(c)
return c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c44505297.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c44505297.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsType(TYPE_MONSTER) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c44505297.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(Card.IsType,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,TYPE_MONSTER) end and Duel.IsExistingTarget(c44505297.eqfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,Card.IsType,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,TYPE_MONSTER) local g=Duel.SelectTarget(tp,c44505297.eqfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
end end
function c44505297.eqop(e,tp,eg,ep,ev,re,r,rp) function c44505297.eqop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -54,12 +54,15 @@ function c47408488.pltg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -54,12 +54,15 @@ function c47408488.pltg(e,tp,eg,ep,ev,re,r,rp,chk)
return ct>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>=ct return ct>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>=ct
end end
end end
function c47408488.plfilter(c)
return c:IsSetCard(0x1034) and not c:IsForbidden()
end
function c47408488.plop(e,tp,eg,ep,ev,re,r,rp) function c47408488.plop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE) local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
if ft<=0 then return end if ft<=0 then return end
if ft>e:GetLabel() then ft=e:GetLabel() end if ft>e:GetLabel() then ft=e:GetLabel() end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,Card.IsSetCard,tp,LOCATION_DECK,0,ft,ft,nil,0x1034) local g=Duel.SelectMatchingCard(tp,c47408488.plfilter,tp,LOCATION_DECK,0,ft,ft,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
......
...@@ -13,7 +13,7 @@ function c51345461.initial_effect(c) ...@@ -13,7 +13,7 @@ function c51345461.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c51345461.filter(c,rc,tid) function c51345461.filter(c,rc,tid)
return c:IsReason(REASON_BATTLE) and c:GetReasonCard()==rc and c:GetTurnID()==tid return c:IsReason(REASON_BATTLE) and c:GetReasonCard()==rc and c:GetTurnID()==tid and not c:IsForbidden()
end end
function c51345461.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c51345461.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -27,7 +27,7 @@ function c52601736.initial_effect(c) ...@@ -27,7 +27,7 @@ function c52601736.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c52601736.filter(c) function c52601736.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c52601736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c52601736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -23,7 +23,7 @@ function c54578613.initial_effect(c) ...@@ -23,7 +23,7 @@ function c54578613.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c54578613.filter(c) function c54578613.filter(c)
return c:IsSetCard(0x29) and c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) return c:IsSetCard(0x29) and c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c54578613.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c54578613.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c54578613.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c54578613.filter(chkc) end
......
...@@ -46,7 +46,7 @@ function c56051086.eqcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -46,7 +46,7 @@ function c56051086.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c56051086.filter(c) function c56051086.filter(c)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c56051086.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c56051086.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c56051086.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c56051086.filter(chkc) end
......
...@@ -32,8 +32,8 @@ function c6075801.initial_effect(c) ...@@ -32,8 +32,8 @@ function c6075801.initial_effect(c)
e4:SetOperation(c6075801.spop) e4:SetOperation(c6075801.spop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c6075801.filter(c,ec) function c6075801.filter(c)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) and not c:IsForbidden()
end end
function c6075801.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c6075801.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return e:GetHandler():IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -16,7 +16,7 @@ function c61538782.eqcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -16,7 +16,7 @@ function c61538782.eqcon(e,tp,eg,ep,ev,re,r,rp)
local tc=c:GetBattleTarget() local tc=c:GetBattleTarget()
if not c:IsRelateToBattle() or c:IsFacedown() then return false end if not c:IsRelateToBattle() or c:IsFacedown() then return false end
e:SetLabelObject(tc) e:SetLabelObject(tc)
return tc:IsLocation(LOCATION_GRAVE) and tc:IsType(TYPE_MONSTER) and tc:IsReason(REASON_BATTLE) return tc:IsLocation(LOCATION_GRAVE) and tc:IsType(TYPE_MONSTER) and tc:IsReason(REASON_BATTLE) and not tc:IsForbidden()
end end
function c61538782.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c61538782.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -56,7 +56,7 @@ function c63487632.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -56,7 +56,7 @@ function c63487632.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.Remove(g,POS_FACEUP,REASON_COST)
end end
function c63487632.filter(c) function c63487632.filter(c)
return c:GetCode()~=63487632 and c:IsRace(RACE_DRAGON) return c:GetCode()~=63487632 and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c63487632.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c63487632.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c63487632.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c63487632.filter(chkc) end
......
...@@ -39,7 +39,7 @@ function c66066482.initial_effect(c) ...@@ -39,7 +39,7 @@ function c66066482.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c66066482.filter(c) function c66066482.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c66066482.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c66066482.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -30,7 +30,7 @@ function c68184115.initial_effect(c) ...@@ -30,7 +30,7 @@ function c68184115.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c68184115.filter(c) function c68184115.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c68184115.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c68184115.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -39,7 +39,7 @@ function c69207766.initial_effect(c) ...@@ -39,7 +39,7 @@ function c69207766.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c69207766.filter(c) function c69207766.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c69207766.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c69207766.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -26,7 +26,7 @@ function c77625948.initial_effect(c) ...@@ -26,7 +26,7 @@ function c77625948.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c77625948.filter(c) function c77625948.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c77625948.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c77625948.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c77625948.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c77625948.filter(chkc) end
......
...@@ -44,7 +44,7 @@ function c84769941.eqcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -44,7 +44,7 @@ function c84769941.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.RemoveCounter(tp,1,1,0x37,2,REASON_COST) Duel.RemoveCounter(tp,1,1,0x37,2,REASON_COST)
end end
function c84769941.eqfilter(c) function c84769941.eqfilter(c)
return c:IsSetCard(0xd3) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0xd3) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c84769941.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c84769941.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -42,7 +42,7 @@ function c876330.eqcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -42,7 +42,7 @@ function c876330.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetPreviousLocation()==LOCATION_HAND return e:GetHandler():GetPreviousLocation()==LOCATION_HAND
end end
function c876330.filter(c) function c876330.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c876330.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c876330.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c876330.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c876330.filter(chkc) end
......
...@@ -30,7 +30,7 @@ function c9161357.eqcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -30,7 +30,7 @@ function c9161357.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_XYZ)==SUMMON_TYPE_XYZ return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_XYZ)==SUMMON_TYPE_XYZ
end end
function c9161357.filter(c) function c9161357.filter(c)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c9161357.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9161357.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c9161357.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c9161357.filter(chkc) end
......
...@@ -222,7 +222,7 @@ function c93157004.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -222,7 +222,7 @@ function c93157004.desop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c93157004.eqfilter(c) function c93157004.eqfilter(c)
return c:IsSetCard(0x30) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x30) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c93157004.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c93157004.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -62,7 +62,7 @@ function c95090813.mtop(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,7 +62,7 @@ function c95090813.mtop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c95090813.filter(c) function c95090813.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_WARRIOR) return c:IsLevelBelow(3) and c:IsRace(RACE_WARRIOR) and not c:IsForbidden()
end end
function c95090813.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c95090813.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c95090813.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c95090813.filter(chkc) end
......
...@@ -35,7 +35,7 @@ function c95395761.initial_effect(c) ...@@ -35,7 +35,7 @@ function c95395761.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c95395761.filter(c) function c95395761.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end end
function c95395761.eqtg(e,tp,eg,ep,ev,re,r,rp,chk) function c95395761.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
...@@ -30,7 +30,7 @@ function c99659159.atktg(e,c) ...@@ -30,7 +30,7 @@ function c99659159.atktg(e,c)
return c:GetEquipGroup():IsExists(Card.IsSetCard,1,nil,0x29) return c:GetEquipGroup():IsExists(Card.IsSetCard,1,nil,0x29)
end end
function c99659159.filter(c) function c99659159.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end end
function c99659159.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c99659159.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() 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